oops, forgot the patch...

--- On Thu, 4/1/10, Ray Satiro <raysat...@yahoo.com> wrote:

> From: Ray Satiro <raysat...@yahoo.com>
> Subject: [PATCH] for compiling OpenSSL 1.0.0 (3/29/10) using MinGW
> To: openssl-dev@openssl.org
> Date: Thursday, April 1, 2010, 1:25 PM
> Third time's the charm, hopefully...
> --
> Without this patch the make will error with "Pick one
> target type from" and a list of assembler types.
> "mingw32-make: *** [tmp\x86cpuid.asm] Error 1"
> --
> 
> I had to make some changes to compile OpenSSL 1.0.0
> (3/29/10) using MinGW. The asmtype is not specified in MinGW
> builds so I added it to Mingw32.pl. I changed -mcpu back to
> -march.
> Configure was now missing its mk1mf check, so I changed
> that back.
> Also a minor type field character change in speed.c
> 
> My compiler coughed a lot of errors in e_capi.c, looked
> like wintrust.h stuff. I realized I didn't have this problem
> because in previous versions  no-capieng used to be a
> default option. After I passed it the compile was
> successful.
> 
> I have two unknown option messages:
> Generating makefile
> unknown option - no-capieng
> unknown option - static-engine
> 
> However as implied above the script seems to be picking up
> on no-capieng when I specify it, although
> -DOPENSSL_NO_CAPIENG does not appear to be added to CFLAGS
> any longer. Is this expected? Not sure why static-engine was
> there and I can't reproduce that line. INSTALL.W32 reads
> like the behavior of making libs for ENGINES has changed
> since 0.9.8 but it's my understanding this still doesn't
> apply to MinGW and so static-engine opt is probably not
> needed there.
> 
> Also it appears that the resource ms\version32.rc file
> isn't compiled or added in.
> 
> If anyone has trouble you might try using a clean copy with
> these steps from a command prompt (not msys):
> 
> decompressed with winrar
> cd openssl-1.0.0
> unix2dos ..\openssl.patch
> patch -p1 < ..\openssl.patch
> ms\mingw32.bat no-capieng >ms_make.out 2>&1
> cd out
> ..\ms\test > ..\ms_test.out 2>&1
> 
> 
> Thanks,
> 
> Jay
> 
> 
> 
>       
> 
> ______________________________________________________________________
> OpenSSL Project           
>                
>      http://www.openssl.org
> Development Mailing List         
>              openssl-...@openssl.org
> Automated List Manager         
>              
>    majord...@openssl.org
>


      
diff -ru openssl-1.0.0-orig/apps/speed.c openssl-1.0.0/apps/speed.c
--- openssl-1.0.0-orig/apps/speed.c	2010-03-03 14:56:18.000000000 -0500
+++ openssl-1.0.0/apps/speed.c	2010-03-30 02:06:56.763000000 -0400
@@ -295,7 +295,7 @@
 		if (thr==NULL)
 			{
 			DWORD ret=GetLastError();
-			BIO_printf(bio_err,"unable to CreateThread (%d)",ret);
+			BIO_printf(bio_err,"unable to CreateThread (%u)",ret);
 			ExitProcess(ret);
 			}
 		CloseHandle(thr);		/* detach the thread	*/
diff -ru openssl-1.0.0-orig/Configure openssl-1.0.0/Configure
--- openssl-1.0.0-orig/Configure	2010-01-19 16:40:54.000000000 -0500
+++ openssl-1.0.0/Configure	2010-03-30 02:06:49.782000000 -0400
@@ -1035,6 +1035,8 @@
 
 my $IsMK1MF=scalar grep /^$target$/,@MK1MF_Builds;
 
+$IsMK1MF=1 if ($target eq "mingw" && $^O ne "cygwin" && !is_msys());
+
 $exe_ext=".exe" if ($target eq "Cygwin" || $target eq "DJGPP" || $target =~ /^mingw/);
 $exe_ext=".nlm" if ($target =~ /netware/);
 $exe_ext=".pm"  if ($target =~ /vos/);
@@ -2040,3 +2042,11 @@
 	print STDERR "No sanity errors detected!\n" if $errorcnt == 0;
 	return $errorcnt;
 	}
+
+# Attempt to detect MSYS environment
+
+sub is_msys
+	{
+	return 1 if (exists $ENV{"TERM"} && $ENV{"TERM"} eq "msys");
+	return 0;
+	}
diff -ru openssl-1.0.0-orig/util/pl/Mingw32.pl openssl-1.0.0/util/pl/Mingw32.pl
--- openssl-1.0.0-orig/util/pl/Mingw32.pl	2008-04-17 06:19:16.000000000 -0400
+++ openssl-1.0.0/util/pl/Mingw32.pl	2010-03-30 02:06:53.097000000 -0400
@@ -19,7 +19,7 @@
 if ($debug)
 	{ $cflags="-DL_ENDIAN -DDSO_WIN32 -g2 -ggdb"; }
 else
-	{ $cflags="-DL_ENDIAN -DDSO_WIN32 -fomit-frame-pointer -O3 -mcpu=i486 -Wall"; }
+	{ $cflags="-DL_ENDIAN -DDSO_WIN32 -fomit-frame-pointer -O3 -march=i486 -Wall"; }
 
 if ($gaswin and !$no_asm)
 	{
@@ -66,6 +66,7 @@
 $shlibp=".a";
 $lfile='';
 
+$asmtype='coff';
 $asm='as';
 $afile='-o ';
 #$bn_asm_obj="";

Reply via email to