Kaydet (Commit) 77d90bd7 authored tarafından Tor Lillqvist's avatar Tor Lillqvist

Fix OpenSSL build for x64 Windows

For wntmscx, pass the platform code as VC-WIN64A to the OpenSSL build
mechanism. Add the additional steps described in INSTALL.W64 to
do_ms.bat: generate uptable.asm and assemble it. Avoid a problem with
_vsnprintf by defining _CRT_NON_CONFORMING_SWPRINTFS.
üst 5fbc20da
...@@ -152,8 +152,13 @@ OUT2BIN += out/libeay32.dll ...@@ -152,8 +152,13 @@ OUT2BIN += out/libeay32.dll
#CONFIGURE_ACTION=cmd /c $(PERL:s!\!/!) configure #CONFIGURE_ACTION=cmd /c $(PERL:s!\!/!) configure
CONFIGURE_ACTION=$(PERL) configure CONFIGURE_ACTION=$(PERL) configure
CONFIGURE_FLAGS=VC-WIN32 no-idea .IF "$(CPU") == "I"
BUILD_ACTION=cmd /c "ms$(EMQ)\do_ms.bat $(subst,/,\ $(normpath,1 $(PERL)))" && nmake -f ms/ntdll.mak OPENSSL_PLATFORM=VC-WIN32
.ELSE
OPENSSL_PLATFORM=VC-WIN64A
.ENDIF
CONFIGURE_FLAGS=$(OPENSSL_PLATFORM) no-idea
BUILD_ACTION=cmd /c "ms$(EMQ)\do_ms.bat $(subst,/,\ $(normpath,1 $(PERL))) $(OPENSSL_PLATFORM)" && nmake -f ms/ntdll.mak
OUT2LIB = out32dll$/ssleay32.lib OUT2LIB = out32dll$/ssleay32.lib
OUT2LIB += out32dll$/libeay32.lib OUT2LIB += out32dll$/libeay32.lib
......
...@@ -28,14 +28,16 @@ ...@@ -28,14 +28,16 @@
-perl util\mk1mf.pl no-asm VC-WIN32 >ms\nt.mak -perl util\mk1mf.pl no-asm VC-WIN32 >ms\nt.mak
-perl util\mk1mf.pl dll no-asm VC-WIN32 >ms\ntdll.mak -perl util\mk1mf.pl dll no-asm VC-WIN32 >ms\ntdll.mak
+%1 util\mkfiles.pl >MINFO +%1 util\mkfiles.pl >MINFO
+%1 util\mk1mf.pl no-asm VC-WIN32 >ms\nt.mak +if %2 == VC-WIN32 goto not64a
+%1 util\mk1mf.pl dll no-asm VC-WIN32 >ms\ntdll.mak +perl ms\uplink.pl win64a > ms\uptable.asm
if x%OSVERSION% == x goto skipce +ml64 -c -Foms\uptable.obj ms\uptable.asm
+:not64a
+%1 util\mk1mf.pl no-asm %2 >ms\nt.mak
+%1 util\mk1mf.pl dll no-asm %2 >ms\ntdll.mak
-if x%OSVERSION% == x goto skipce
-perl util\mk1mf.pl no-asm VC-CE >ms\ce.mak -perl util\mk1mf.pl no-asm VC-CE >ms\ce.mak
-perl util\mk1mf.pl dll no-asm VC-CE >ms\cedll.mak -perl util\mk1mf.pl dll no-asm VC-CE >ms\cedll.mak
+%1 util\mk1mf.pl no-asm VC-CE >ms\ce.mak -:skipce
+%1 util\mk1mf.pl dll no-asm VC-CE >ms\cedll.mak
:skipce
-perl util\mkdef.pl 32 libeay > ms\libeay32.def -perl util\mkdef.pl 32 libeay > ms\libeay32.def
-perl util\mkdef.pl 32 ssleay > ms\ssleay32.def -perl util\mkdef.pl 32 ssleay > ms\ssleay32.def
...@@ -132,3 +134,12 @@ ...@@ -132,3 +134,12 @@
sub do_lib_rule sub do_lib_rule
{ {
--- misc/build/openssl-0.9.8o/ms/uplink.c
+++ misc/build/openssl-0.9.8o/ms/uplink.c
@@ -1,5 +1,6 @@
#if (defined(_WIN64) || defined(_WIN32_WCE)) && !defined(UNICODE)
#define UNICODE
+#define _CRT_NON_CONFORMING_SWPRINTFS
#endif
#if defined(UNICODE) && !defined(_UNICODE)
#define _UNICODE
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment