xref: /minix3/crypto/external/bsd/openssl/dist/INSTALL.W64 (revision ebfedea0ce5bbe81e252ddf32d732e40fb633fae)
1*ebfedea0SLionel Sambuc
2*ebfedea0SLionel Sambuc INSTALLATION ON THE WIN64 PLATFORM
3*ebfedea0SLionel Sambuc ----------------------------------
4*ebfedea0SLionel Sambuc
5*ebfedea0SLionel Sambuc Caveat lector
6*ebfedea0SLionel Sambuc -------------
7*ebfedea0SLionel Sambuc
8*ebfedea0SLionel Sambuc As of moment of this writing Win64 support is classified "initial"
9*ebfedea0SLionel Sambuc for the following reasons.
10*ebfedea0SLionel Sambuc
11*ebfedea0SLionel Sambuc - No assembler modules are engaged upon initial 0.9.8 release.
12*ebfedea0SLionel Sambuc - API might change within 0.9.8 life-span, *but* in a manner which
13*ebfedea0SLionel Sambuc   doesn't break backward binary compatibility. Or in other words,
14*ebfedea0SLionel Sambuc   application programs compiled with initial 0.9.8 headers will
15*ebfedea0SLionel Sambuc   be expected to work with future minor release .DLL without need
16*ebfedea0SLionel Sambuc   to re-compile, even if future minor release features modified API.
17*ebfedea0SLionel Sambuc - Above mentioned API modifications have everything to do with
18*ebfedea0SLionel Sambuc   elimination of a number of limitations, which are normally
19*ebfedea0SLionel Sambuc   considered inherent to 32-bit platforms. Which in turn is why they
20*ebfedea0SLionel Sambuc   are treated as limitations on 64-bit platform such as Win64:-)
21*ebfedea0SLionel Sambuc   The current list comprises [but not necessarily limited to]:
22*ebfedea0SLionel Sambuc
23*ebfedea0SLionel Sambuc   - null-terminated strings may not be longer than 2G-1 bytes,
24*ebfedea0SLionel Sambuc     longer strings are treated as zero-length;
25*ebfedea0SLionel Sambuc   - dynamically and *internally* allocated chunks can't be larger
26*ebfedea0SLionel Sambuc     than 2G-1 bytes;
27*ebfedea0SLionel Sambuc   - inability to encrypt/decrypt chunks of data larger than 4GB
28*ebfedea0SLionel Sambuc     [it's possibly to *hash* chunks of arbitrary size through];
29*ebfedea0SLionel Sambuc
30*ebfedea0SLionel Sambuc   Neither of these is actually big deal and hardly encountered
31*ebfedea0SLionel Sambuc   in real-life applications.
32*ebfedea0SLionel Sambuc
33*ebfedea0SLionel Sambuc Compiling procedure
34*ebfedea0SLionel Sambuc -------------------
35*ebfedea0SLionel Sambuc
36*ebfedea0SLionel Sambuc You will need Perl. You can run under Cygwin or you can download
37*ebfedea0SLionel Sambuc ActiveState Perl from http://www.activestate.com/ActivePerl.
38*ebfedea0SLionel Sambuc
39*ebfedea0SLionel Sambuc You will need Microsoft Platform SDK, available for download at
40*ebfedea0SLionel Sambuc http://www.microsoft.com/msdownload/platformsdk/sdkupdate/. As per
41*ebfedea0SLionel Sambuc April 2005 Platform SDK is equipped with Win64 compilers, as well
42*ebfedea0SLionel Sambuc as assemblers, but it might change in the future.
43*ebfedea0SLionel Sambuc
44*ebfedea0SLionel Sambuc To build for Win64/x64:
45*ebfedea0SLionel Sambuc
46*ebfedea0SLionel Sambuc > perl Configure VC-WIN64A
47*ebfedea0SLionel Sambuc > ms\do_win64a
48*ebfedea0SLionel Sambuc > nmake -f ms\ntdll.mak
49*ebfedea0SLionel Sambuc > cd out32dll
50*ebfedea0SLionel Sambuc > ..\ms\test
51*ebfedea0SLionel Sambuc
52*ebfedea0SLionel Sambuc To build for Win64/IA64:
53*ebfedea0SLionel Sambuc
54*ebfedea0SLionel Sambuc > perl Configure VC-WIN64I
55*ebfedea0SLionel Sambuc > ms\do_win64i
56*ebfedea0SLionel Sambuc > nmake -f ms\ntdll.mak
57*ebfedea0SLionel Sambuc > cd out32dll
58*ebfedea0SLionel Sambuc > ..\ms\test
59*ebfedea0SLionel Sambuc
60*ebfedea0SLionel Sambuc Naturally test-suite itself has to be executed on the target platform.
61*ebfedea0SLionel Sambuc
62*ebfedea0SLionel Sambuc Installation
63*ebfedea0SLionel Sambuc ------------
64*ebfedea0SLionel Sambuc
65*ebfedea0SLionel Sambuc TBD, for now see INSTALL.W32.
66*ebfedea0SLionel Sambuc
67