More Win32 fixes and upsdate INSTALL.W32 documentation.
This commit is contained in:
parent
9becf66621
commit
5c00879ef0
6
CHANGES
6
CHANGES
@ -5,6 +5,12 @@
|
|||||||
|
|
||||||
Changes between 0.9.1c and 0.9.2
|
Changes between 0.9.1c and 0.9.2
|
||||||
|
|
||||||
|
*) Modify ms/do_ms.bat to not generate assembly language makefiles since
|
||||||
|
not many people have the assembler. Various Win32 compilation fixes and
|
||||||
|
update to the INSTALL.W32 file with (hopefully) more accurate Win32
|
||||||
|
build instructions.
|
||||||
|
[Steve Henson]
|
||||||
|
|
||||||
*) Modify configure script 'Configure' to automatically create crypto/date.h
|
*) Modify configure script 'Configure' to automatically create crypto/date.h
|
||||||
file under Win32 and also build pem.h from pem.org. New script
|
file under Win32 and also build pem.h from pem.org. New script
|
||||||
util/mkfiles.pl to create the MINFO file on environments that can't do a
|
util/mkfiles.pl to create the MINFO file on environments that can't do a
|
||||||
|
82
INSTALL.W32
82
INSTALL.W32
@ -1,3 +1,85 @@
|
|||||||
|
Building OpenSSL under Win32.
|
||||||
|
|
||||||
|
Heres a few comments about building OpenSSL in Windows environments. Most of
|
||||||
|
this is tested on Win32 but it may also work in Win 3.1 with some modification.
|
||||||
|
See the end of this file for Eric's original comments.
|
||||||
|
|
||||||
|
You will need perl for Win32 (which can be got from various sources) and Visual
|
||||||
|
C++.
|
||||||
|
|
||||||
|
If you are compiling from a tarball or a CVS snapshot then the Win32 files may
|
||||||
|
well be not up to date. This may mean that some "tweaking" is required to get
|
||||||
|
it all to work. See the trouble shooting section later on for if (when?) it
|
||||||
|
goes wrong.
|
||||||
|
|
||||||
|
Firstly you should run Configure:
|
||||||
|
|
||||||
|
perl Configure VC-WIN32
|
||||||
|
|
||||||
|
Then rebuild the Win32 Makefiles and friends:
|
||||||
|
|
||||||
|
ms\do_ms
|
||||||
|
|
||||||
|
if you get errors about things not having numbers assigned then check the
|
||||||
|
troubleshooting section: you probably wont be able to compile it as it stands.
|
||||||
|
|
||||||
|
then from the VC++ environment at a prompt do:
|
||||||
|
|
||||||
|
nmake -f ms\ntdll.mak
|
||||||
|
|
||||||
|
you may get a warning about too many rules but if all is well it should all
|
||||||
|
compile and you will have some DLLs and executables in out32dll.
|
||||||
|
|
||||||
|
Troubleshooting.
|
||||||
|
|
||||||
|
Since the Win32 build is only occasionally tested it may not always compile
|
||||||
|
cleanly.
|
||||||
|
|
||||||
|
If you get an error about functions not having numbers assigned when you
|
||||||
|
run ms\do_ms then this means the Win32 ordinal files are not up to date. You
|
||||||
|
can do:
|
||||||
|
|
||||||
|
perl util\mkdef.pl crypto ssl update
|
||||||
|
|
||||||
|
then ms\do_ms should not give a warning any more. However the numbers that get
|
||||||
|
assigned by this technique may not match those that eventually get assigned
|
||||||
|
in the CVS tree: so you anything linked against this version of the library
|
||||||
|
may need to be recompiled.
|
||||||
|
|
||||||
|
If you get errors about unresolved externals then this means that either you
|
||||||
|
didn't read the note above about functions not having numbers assigned or
|
||||||
|
someone forgot to add a function to the header file.
|
||||||
|
|
||||||
|
In this latter case check out the header file to see if the function is defined
|
||||||
|
in the header file: it should be defined twice: once with ANSI prototypes and
|
||||||
|
once without. If its missing from the non ASNI section then add an entry for
|
||||||
|
it: check that ms\do_ms now reports missing numbers and update the numbers as
|
||||||
|
above.
|
||||||
|
|
||||||
|
If you get warnings in the code then the compilation will halt.
|
||||||
|
|
||||||
|
The default Makefile for Win32 halts whenever any warnings occur. Since VC++
|
||||||
|
has its own ideas about warnings which don't always match up to other
|
||||||
|
environments this can happen. The best fix is to edit the file with the warning
|
||||||
|
in and fix it. Alternatively you can turn off the halt on warnings by editing
|
||||||
|
the CFLAG line in the Makefile and deleting the /WX option.
|
||||||
|
|
||||||
|
Finally you might get compilation errors. Again you will have to fix these or
|
||||||
|
report them.
|
||||||
|
|
||||||
|
Tweaks.
|
||||||
|
|
||||||
|
There are various changes you can make to the Win32 compile environment. If you
|
||||||
|
have the MASM assembler 'ml' then you can try the assembly language code. To
|
||||||
|
do this remove the 'no-asm' part from do_ms.bat.
|
||||||
|
|
||||||
|
You can also build a static version of the library using the Makefile ms\nt.mak
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
The orignal Windows build instructions from SSLeay follow. Note: some of this
|
||||||
|
may be out of date and no longer applicable
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
The Microsoft World.
|
The Microsoft World.
|
||||||
|
|
||||||
The good news, to build SSLeay for the Microsft World
|
The good news, to build SSLeay for the Microsft World
|
||||||
|
@ -633,8 +633,7 @@ char **argv;
|
|||||||
count*=2;
|
count*=2;
|
||||||
Time_F(START);
|
Time_F(START);
|
||||||
for (i=count; i; i--)
|
for (i=count; i; i--)
|
||||||
des_ecb_encrypt((C_Block *)buf,(C_Block *)buf,
|
des_ecb_encrypt(buf,buf, &(sch[0]),DES_ENCRYPT);
|
||||||
&(sch[0]),DES_ENCRYPT);
|
|
||||||
d=Time_F(STOP);
|
d=Time_F(STOP);
|
||||||
} while (d <3);
|
} while (d <3);
|
||||||
c[D_MD2][0]=count/10;
|
c[D_MD2][0]=count/10;
|
||||||
|
@ -271,6 +271,7 @@ void des_encrypt2();
|
|||||||
void des_encrypt3();
|
void des_encrypt3();
|
||||||
void des_decrypt3();
|
void des_decrypt3();
|
||||||
void des_ede3_cbc_encrypt();
|
void des_ede3_cbc_encrypt();
|
||||||
|
void des_ede3_cbcm_encrypt();
|
||||||
int des_enc_read();
|
int des_enc_read();
|
||||||
int des_enc_write();
|
int des_enc_write();
|
||||||
char *des_fcrypt();
|
char *des_fcrypt();
|
||||||
|
@ -204,7 +204,7 @@ int num;
|
|||||||
MD_Final(md,&m);
|
MD_Final(md,&m);
|
||||||
md_count[1]++;
|
md_count[1]++;
|
||||||
|
|
||||||
buf+=j;
|
buf=(char *)buf + j;
|
||||||
|
|
||||||
for (k=0; k<j; k++)
|
for (k=0; k<j; k++)
|
||||||
{
|
{
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
|
|
||||||
|
perl util\mkfiles.pl >MINFO
|
||||||
rem perl util\mk1mf.pl VC-MSDOS no-sock >ms\msdos.mak
|
rem perl util\mk1mf.pl VC-MSDOS no-sock >ms\msdos.mak
|
||||||
rem perl util\mk1mf.pl VC-W31-32 >ms\w31.mak
|
rem perl util\mk1mf.pl VC-W31-32 >ms\w31.mak
|
||||||
perl util\mk1mf.pl VC-W31-32 dll >ms\w31dll.mak
|
perl util\mk1mf.pl VC-W31-32 dll >ms\w31dll.mak
|
||||||
rem perl util\mk1mf.pl VC-WIN32 >ms\nt.mak
|
perl util\mk1mf.pl VC-WIN32 no-asm >ms\nt.mak
|
||||||
perl util\mk1mf.pl VC-WIN32 dll >ms\ntdll.mak
|
perl util\mk1mf.pl VC-WIN32 dll no-asm >ms\ntdll.mak
|
||||||
|
|
||||||
perl util\mkdef.pl 16 libeay > ms\libeay16.def
|
perl util\mkdef.pl 16 libeay > ms\libeay16.def
|
||||||
perl util\mkdef.pl 32 libeay > ms\libeay32.def
|
perl util\mkdef.pl 32 libeay > ms\libeay32.def
|
||||||
|
@ -1196,3 +1196,4 @@ s2i_ASN1_OCTET_STRING 1221
|
|||||||
X509V3_EXT_check_conf 1222
|
X509V3_EXT_check_conf 1222
|
||||||
hex_to_string 1223
|
hex_to_string 1223
|
||||||
string_to_hex 1224
|
string_to_hex 1224
|
||||||
|
des_ede3_cbcm_encrypt 1225
|
||||||
|
Loading…
x
Reference in New Issue
Block a user