Attached patches add:
- a compiler switch to suppress warnings about missing return values 
which are wrong since the functions do return but inside switch cases 
which bcc32 doesnt seem to detect correctly.
- assembler detection (nasm vs. nasmw)

and for 1.0.0 branch:
- add crypt32.lib needed for evp_test linking

.\crypto\evp\evp_test.c:
        ilink32 -ap -Tpe -x -Gn tmp32\evp_test.obj c0x32.obj, 
out32\evp_test.exe,, out32\ssleay32.lib out32\libeay32.lib cw32mt.lib 
import32.lib
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external 'CertGetCertificateContextProperty' 
referenced from D:\PROJECTS\BCC\OPENSSL-1.0.0C\OUT32\LIBEAY32.LIB|e_capi
Error: Unresolved external 'CertOpenStore' referenced from 
D:\PROJECTS\BCC\OPENSSL-1.0.0C\OUT32\LIBEAY32.LIB|e_capi
Error: Unresolved external 'CertFindCertificateInStore' referenced from 
D:\PROJECTS\BCC\OPENSSL-1.0.0C\OUT32\LIBEAY32.LIB|e_capi
Error: Unresolved external 'CertEnumCertificatesInStore' referenced from 
D:\PROJECTS\BCC\OPENSSL-1.0.0C\OUT32\LIBEAY32.LIB|e_capi
Error: Unresolved external 'CertDuplicateCertificateContext' referenced 
from D:\PROJECTS\BCC\OPENSSL-1.0.0C\OUT32\LIBEAY32.LIB|e_capi
Error: Unresolved external 'CertFreeCertificateContext' referenced from 
D:\PROJECTS\BCC\OPENSSL-1.0.0C\OUT32\LIBEAY32.LIB|e_capi
Error: Unresolved external 'CertCloseStore' referenced from 
D:\PROJECTS\BCC\OPENSSL-1.0.0C\OUT32\LIBEAY32.LIB|e_capi


--- util/pl/BC-32.pl.orig       Thu Apr 17 11:19:16 2008
+++ util/pl/BC-32.pl    Tue Jan 11 16:53:58 2011
@@ -18,7 +18,7 @@
 $tmp_def="tmp32";
 $inc_def="inc32";
 #enable max error messages, disable most common warnings
-$cflags="-DWIN32_LEAN_AND_MEAN -q -w-ccc -w-rch -w-pia -w-aus -w-par -w-inl  
-c -tWC -tWM -DOPENSSL_SYSNAME_WIN32 -DL_ENDIAN -DDSO_WIN32 -D_stricmp=stricmp 
-D_strnicmp=strnicmp ";
+$cflags="-DWIN32_LEAN_AND_MEAN -q -w-ccc -w-rch -w-pia -w-aus -w-par -w-inl 
-w-rvl -c -tWC -tWM -DOPENSSL_SYSNAME_WIN32 -DL_ENDIAN -DDSO_WIN32 
-D_stricmp=stricmp -D_strnicmp=strnicmp ";
 if ($debug)
 {
     $cflags.="-Od -y -v -vi- -D_DEBUG";
@@ -38,7 +38,7 @@
 $exep='.exe';
 if ($no_sock)
        { $ex_libs=""; }
-else   { $ex_libs="cw32mt.lib import32.lib"; }
+else   { $ex_libs="cw32mt.lib import32.lib crypt32.lib"; }
 
 # static library stuff
 $mklib='tlib /P64';
@@ -51,7 +51,8 @@
 $shlib_ex_obj="";
 $app_ex_obj="c0x32.obj"; 
 
-$asm='nasmw -f obj -d__omf__';
+$asm=(`nasm -v 2>NUL` gt `nasmw -v 2>NUL`?"nasm":"nasmw");
+$asm.=' -f obj -d__omf__';
 $asm.=" /Zi" if $debug;
 $afile='-o';
 
--- util/pl/BC-32.pl.orig       Tue Sep 20 08:09:29 2005
+++ util/pl/BC-32.pl    Tue Jan 11 16:53:28 2011
@@ -18,7 +18,7 @@
 $tmp_def="tmp32";
 $inc_def="inc32";
 #enable max error messages, disable most common warnings
-$cflags="-DWIN32_LEAN_AND_MEAN -q -w-ccc -w-rch -w-pia -w-aus -w-par -w-inl  
-c -tWC -tWM -DOPENSSL_SYSNAME_WIN32 -DL_ENDIAN -DDSO_WIN32 -D_stricmp=stricmp 
-D_strnicmp=strnicmp ";
+$cflags="-DWIN32_LEAN_AND_MEAN -q -w-ccc -w-rch -w-pia -w-aus -w-par -w-inl 
-w-rvl -c -tWC -tWM -DOPENSSL_SYSNAME_WIN32 -DL_ENDIAN -DDSO_WIN32 
-D_stricmp=stricmp -D_strnicmp=strnicmp ";
 if ($debug)
 {
     $cflags.="-Od -y -v -vi- -D_DEBUG";
@@ -51,7 +51,8 @@
 $shlib_ex_obj="";
 $app_ex_obj="c0x32.obj"; 
 
-$asm='nasmw -f obj -d__omf__';
+$asm=(`nasm -v 2>NUL` gt `nasmw -v 2>NUL`?"nasm":"nasmw");
+$asm.=' -f obj -d__omf__';
 $asm.=" /Zi" if $debug;
 $afile='-o';
 

Reply via email to