Noted build procedure change for autotools
[asdcplib.git] / win32 / README.txt
1 I. INTRODUCTION\r
2 ===============\r
3 \r
4 Hello, and welcome to the Windows build instructions for asdcplib.\r
5 \r
6 \r
7 II. DEPENDENCIES\r
8 ================\r
9 \r
10 First, you'll need Microsoft's Visual Studio 2005 or later. A heavyweight edition isn't needed;\r
11 the freely downloadable Express edition works fine.\r
12 \r
13 Next, you'll need an OpenSSL distribution. The absolute, bare minimum needed is 0.9.7. However,\r
14 if this will be used in conjunction with CineCert's other software, the later 0.9.8b\r
15 is needed. That said, the latest revision of OpenSSL as of this writing (0.9.8j) works great.\r
16 Extract and build in the directory of your choice.\r
17 \r
18 For optional XML parsing support, you'll need to use Xerces-C++ 2.7 or 3.x, or Expat 2.0.1\r
19 (supported in previous versions of asdcplib). If you'll be using this software in conjuction with\r
20 CineCert's other software, the use of Xerces-C++ is required. As with OpenSSL above, if you\r
21 need/desire XML parsing, extract the source package and build in a directory of your choice.\r
22 \r
23 Header files and libraries from the OpenSSL and XML packages must be available to the compiler\r
24 and linker. You may need to modify the makefile to make include files (/I...) and library files\r
25 (/LIBPATH...) available.\r
26 \r
27 \r
28 III. BUILDING\r
29 =============\r
30 \r
31 There's a build option that changes the behavior of UUID generation. If ENABLE_RANDOM_UUID is\r
32 set at build, then mixed-case UUID generation will be enabled if (and only if) the environment\r
33 variable KM_USE_RANDOM_UUID is set during runtime.\r
34 \r
35 Open a command prompt in which the VS build tools are available on the command line (e.g., the\r
36 "Visual Studio command prompt"). The nmake invocation follows this form:\r
37 C:\>nmake WITH_OPENSSL=<OpenSSL directory> [WITH_XERCES=<Xerces directory>|\r
38         WITH_XML_PARSER=<Expat directory>] [ENABLE_RANDOM_UUID=1] /f Makefile.mak\r
39 \r
40 On our Windows development machine, the invocation with XML parsing by Xerces-C++ is as such:\r
41 C:\Program Files\asdcplib\win32>nmake WITH_OPENSSL="c:\Program Files\openssl-0.9.8j"\r
42         WITH_XERCES="C:\Program Files\xerces-c_2_8_0-x86-windows-vc_8_0" /f Makefile.mak\r
43 \r
44 With XML parsing by Expat and random UUID generation enabled:\r
45 C:\Program Files\asdcplib\win32>nmake WITH_OPENSSL="c:\Program Files\openssl-0.9.8j"\r
46         WITH_XML_PARSER="C:\Program Files\Expat 2.0.1" ENABLE_RANDOM_UUID=1 /f Makefile.mak\r
47 \r
48 Without XML parsing:\r
49 C:\Program Files\asdcplib\win32>nmake WITH_OPENSSL="c:\Program Files\openssl-0.9.8j"\r
50         /f Makefile.mak\r
51 \r
52 Without XML parsing but with the AS-02 library and executables:\r
53 C:\Program Files\asdcplib\win32>nmake WITH_OPENSSL="c:\Program Files\openssl-0.9.8j"\r
54         USE_AS_02=1 /f Makefile.mak\r
55 \r
56 Want a 64-bit build? Change the following line in Makefile.mak:\r
57     LINKFLAGS1 = /NOLOGO /SUBSYSTEM:console /MACHINE:I386 /LIBPATH:. /DEBUG\r
58 to\r
59     LINKFLAGS1 = /NOLOGO /SUBSYSTEM:console /MACHINE:X64 /LIBPATH:. /DEBUG\r
60 \r
61 \r
62 IV. CONCLUSION\r
63 ==============\r
64 \r
65 For answers to questions, please send a message to <asdcplib@cinecert.com>.\r