summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@anytun.org>2012-07-17 22:51:23 (GMT)
committerChristian Pointner <equinox@anytun.org>2012-07-17 22:51:23 (GMT)
commit5fa7195bd0cd8559c62ff62a812ee1f593cc0af7 (patch)
tree53fa2160e15531a0638de74b4fb3e403fa6f50c8
parente7212d0ae0e2108e3cd734b2ebb74c85f321e298 (diff)
upgraded mingw build scripts and patches
-rwxr-xr-xcontrib/build-boost-mingw-cross.sh2
-rwxr-xr-xcontrib/build-openssl-mingw-cross.sh8
-rw-r--r--contrib/openssl-1.0.1c-configure.patch50
3 files changed, 56 insertions, 4 deletions
diff --git a/contrib/build-boost-mingw-cross.sh b/contrib/build-boost-mingw-cross.sh
index 859f8e9..5379a3d 100755
--- a/contrib/build-boost-mingw-cross.sh
+++ b/contrib/build-boost-mingw-cross.sh
@@ -1,6 +1,6 @@
#!/bin/sh
set -e
-BOOST=1.48.0
+BOOST=1.50.0
BOOST_DASH=`echo $BOOST | perl -ne 's/\./_/g; print'`
echo $BOOST_DASH
diff --git a/contrib/build-openssl-mingw-cross.sh b/contrib/build-openssl-mingw-cross.sh
index 39f73eb..e2b47d8 100755
--- a/contrib/build-openssl-mingw-cross.sh
+++ b/contrib/build-openssl-mingw-cross.sh
@@ -1,12 +1,14 @@
#!/bin/sh
-set -e
-OPENSSL=openssl-1.0.0f
+set -e
+OPENSSL=openssl-1.0.1c
BASE=`pwd`
wget http://openssl.org/source/$OPENSSL.tar.gz -O - | tar xz
cd $OPENSSL
-patch -p1 < ../openssl-1.0.0f-configure.patch
+if [ -e ../$OPENSSL\-configure.patch ]; then
+ patch -p1 < ../$OPENSSL\-configure.patch
+fi
./config --cross-compile-prefix=x86_64-w64-mingw32- shared mingw64 --prefix=$BASE/openssl-w64/
make
make install
diff --git a/contrib/openssl-1.0.1c-configure.patch b/contrib/openssl-1.0.1c-configure.patch
new file mode 100644
index 0000000..3684601
--- /dev/null
+++ b/contrib/openssl-1.0.1c-configure.patch
@@ -0,0 +1,50 @@
+diff -ur openssl-1.0.1c.orig/config openssl-1.0.1c/config
+--- openssl-1.0.1c.orig/config 2011-11-14 22:12:53.000000000 +0100
++++ openssl-1.0.1c/config 2012-07-18 00:29:49.145918677 +0200
+@@ -857,11 +857,11 @@
+ # options="$options -DATALLA"
+ #fi
+
+-if expr "$options" : '.*no\-asm' > /dev/null; then :; else
+- sh -c "$CROSS_COMPILE${CC:-gcc} -Wa,--help -c -o /tmp/null.$$.o -x assembler /dev/null && rm /tmp/null.$$.o" 2>&1 | \
+- grep \\--noexecstack >/dev/null && \
+- options="$options -Wa,--noexecstack"
+-fi
++#if expr "$options" : '.*no\-asm' > /dev/null; then :; else
++# sh -c "$CROSS_COMPILE${CC:-gcc} -Wa,--help -c -o /tmp/null.$$.o -x assembler /dev/null && rm /tmp/null.$$.o" 2>&1 | \
++# grep \\--noexecstack >/dev/null && \
++# options="$options -Wa,--noexecstack"
++#fi
+
+ # gcc < 2.8 does not support -march=ultrasparc
+ if [ "$OUT" = solaris-sparcv9-gcc -a $GCCVER -lt 28 ]
+diff -ur openssl-1.0.1c.orig/Configure openssl-1.0.1c/Configure
+--- openssl-1.0.1c.orig/Configure 2012-03-14 23:20:40.000000000 +0100
++++ openssl-1.0.1c/Configure 2012-07-18 00:25:25.278997860 +0200
+@@ -531,7 +531,7 @@
+ "BC-32","bcc32::::WIN32::BN_LLONG DES_PTR RC4_INDEX EXPORT_VAR_AS_FN:${no_asm}:win32",
+
+ # MinGW
+-"mingw", "gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall::-D_MT:MINGW32:-lws2_32 -lgdi32 -lcrypt32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_asm}:coff:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a",
++"mingw", "gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall::-D_MT:MINGW32:-lws2_32 -lgdi32 -lcrypt32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_asm}:coff:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin -Wl,--export-all -shared:.dll.a",
+ # As for OPENSSL_USE_APPLINK. Applink makes it possible to use .dll
+ # compiled with one compiler with application compiled with another
+ # compiler. It's possible to engage Applink support in mingw64 build,
+@@ -539,7 +539,7 @@
+ # handling, one can't seriously consider its binaries for using with
+ # non-mingw64 run-time environment. And as mingw64 is always consistent
+ # with itself, Applink is never engaged and can as well be omitted.
+-"mingw64", "gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE::-D_MT:MINGW64:-lws2_32 -lgdi32 -lcrypt32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${x86_64_asm}:mingw64:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a",
++"mingw64", "gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE::-D_MT:MINGW64:-lws2_32 -lgdi32 -lcrypt32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${x86_64_asm}:mingw64:win32:cygwin-shared:-D_WINDLL:-mno-cygwin -Wl,--export-all -shared:.dll.a",
+
+ # UWIN
+ "UWIN", "cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32",
+@@ -931,7 +931,7 @@
+ }
+ else
+ {
+- die "target already defined - $target (offending arg: $_)\n" if ($target ne "");
++ #die "target already defined - $target (offending arg: $_)\n" if ($target ne "");
+ $target=$_;
+ }
+