My goal: compile opensc, openssl and putty for windows,
but using linux and mingw (on i686 machine, debian sarge).
that way opensc could build nightly binary pacakges for windows.

so, here is a patch for openssl, so it can be compiled with
mingw under linux. no big changes, mostly using the existing
code, changed paths from \ to / and used the i586-mingw32msvc-*
tools (thats how they are called on debian gnu/linux).

install procedure:

wget http://www.openssl.org/source/openssl-0.9.8-beta5.tar.gz
tar xfvz openssl-0.9.8-beta5.tar.gz
cd openssl-0.9.8-beta5
patch -p1 < ../diff5
sh -x ms/mingw32.sh

- gaswin option is being phased out and should not be used;
- can you confirm that just issuing 'make' right after 'perl Configure mingwx' doesn't work?
- if you can confirm that it doesn't, can you show how does it fail?

Point is that I'd rather see it cross-built by 'make' [which is known to work at least under cygwin], than by an extra script. In other words you should be able to get away with single extra mingwx line to ./Configure and patch for $exe_ext line... No extra scripts should be required...

------------------------------------------------------------------------

diff -udrNP openssl-0.9.8-beta4.orig/Configure openssl-0.9.8-beta4/Configure
--- openssl-0.9.8-beta4.orig/Configure  2005-06-06 00:19:34.000000000 +0200
+++ openssl-0.9.8-beta4/Configure       2005-06-19 18:38:18.195835720 +0200
@@ -474,6 +474,9 @@
 # MinGW
 "mingw", "gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall 
-D_WIN32_WINNT=0x333:::MINGW32:-lwsock32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} 
EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin 
-shared:.dll.a",
+# MinGW cross compile
+"mingwx", "i586-mingw32msvc-cc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 
-march=i486 -Wall -D_WIN32_WINNT=0x333:::MINGW32:-lwsock32 -lgdi32:BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL 
-DOPENSSL_USE_APPLINK:-mno-cygwin -shared:.dll.a",
+
# UWIN "UWIN", "cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32", @@ -908,9 +911,9 @@ my $IsMK1MF=scalar grep /^$target$/,@MK1MF_Builds; -$IsMK1MF=1 if ($target eq "mingw" && $^O ne "cygwin");
+$IsMK1MF=1 if ($target eq "mingw" && $^O ne "mingwx" && $^O ne "cygwin");

That's not the way to extend this expression... And how does it help in your case anyway? Indeed, first comparison is false [in your case] and IsMK1MF is assigned zero [in your case] regardless $^O... A.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to