summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/postgresql-1-fixes.patch59
-rw-r--r--src/postgresql.mk10
2 files changed, 61 insertions, 8 deletions
diff --git a/src/postgresql-1-fixes.patch b/src/postgresql-1-fixes.patch
new file mode 100644
index 0000000..0be138e
--- /dev/null
+++ b/src/postgresql-1-fixes.patch
@@ -0,0 +1,59 @@
+This file is part of mingw-cross-env.
+See doc/index.html for further information.
+
+Contains ad hoc patches for cross building.
+
+From 778910e8d10e548c50abe80342490b8725ea6244 Mon Sep 17 00:00:00 2001
+From: mingw-cross-env
+Date: Mon, 24 Oct 2011 14:02:33 +0200
+Subject: [PATCH 1/2] use unix style names for openssl on mingw-cross-env
+
+
+diff --git a/configure.in b/configure.in
+index 79b565d..db30511 100644
+--- a/configure.in
++++ b/configure.in
+@@ -941,13 +941,8 @@ fi
+
+ if test "$with_openssl" = yes ; then
+ dnl Order matters!
+- if test "$PORTNAME" != "win32"; then
+- AC_CHECK_LIB(crypto, CRYPTO_new_ex_data, [], [AC_MSG_ERROR([library 'crypto' is required for OpenSSL])])
+- AC_CHECK_LIB(ssl, SSL_library_init, [], [AC_MSG_ERROR([library 'ssl' is required for OpenSSL])])
+- else
+- AC_CHECK_LIB(eay32, CRYPTO_new_ex_data, [], [AC_MSG_ERROR([library 'eay32' is required for OpenSSL])])
+- AC_CHECK_LIB(ssleay32, SSL_library_init, [], [AC_MSG_ERROR([library 'ssleay32' is required for OpenSSL])])
+- fi
++ AC_CHECK_LIB(crypto, CRYPTO_new_ex_data, [], [AC_MSG_ERROR([library 'crypto' is required for OpenSSL])])
++ AC_CHECK_LIB(ssl, SSL_library_init, [], [AC_MSG_ERROR([library 'ssl' is required for OpenSSL])])
+ fi
+
+ if test "$with_pam" = yes ; then
+--
+1.7.7
+
+
+From ebeea4b87a1b11205b5870e738882117ad0f628c Mon Sep 17 00:00:00 2001
+From: mingw-cross-env
+Date: Mon, 24 Oct 2011 14:09:38 +0200
+Subject: [PATCH 2/2] do not check autoconf version
+
+
+diff --git a/configure.in b/configure.in
+index db30511..4da0143 100644
+--- a/configure.in
++++ b/configure.in
+@@ -19,10 +19,6 @@ m4_pattern_forbid(^PGAC_)dnl to catch undefined macros
+
+ AC_INIT([PostgreSQL], [9.1.1], [pgsql-bugs@postgresql.org])
+
+-m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.63], [], [m4_fatal([Autoconf version 2.63 is required.
+-Untested combinations of 'autoconf' and PostgreSQL versions are not
+-recommended. You can remove the check from 'configure.in' but it is then
+-your responsibility whether the result works or not.])])
+ AC_COPYRIGHT([Copyright (c) 1996-2011, PostgreSQL Global Development Group])
+ AC_CONFIG_SRCDIR([src/backend/access/common/heaptuple.c])
+ AC_CONFIG_AUX_DIR(config)
+--
+1.7.7
+
diff --git a/src/postgresql.mk b/src/postgresql.mk
index 06423ca..902e97a 100644
--- a/src/postgresql.mk
+++ b/src/postgresql.mk
@@ -23,14 +23,8 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
+ cd '$(1)' && autoconf
cp -Rp '$(1)' '$(1).native'
- # The static OpenSSL libraries are in unix (not win32) naming style.
- $(SED) -i 's,SSLEAY32,SSL,' '$(1)'/configure
- $(SED) -i 's,ssleay32,ssl,' '$(1)'/configure
- $(SED) -i 's,EAY32,CRYPTO,' '$(1)'/configure
- $(SED) -i 's,eay32,crypto,' '$(1)'/configure
- $(SED) -i 's,ssleay32,ssl,' '$(1)'/src/interfaces/libpq/Makefile
- $(SED) -i 's,eay32,crypto,' '$(1)'/src/interfaces/libpq/Makefile
# Since we build only client libary, use bogus tzdata to satisfy configure.
cd '$(1)' && ./configure \
--prefix='$(PREFIX)/$(TARGET)' \
@@ -52,7 +46,7 @@ define $(PKG)_BUILD
--without-libxslt \
--with-zlib \
--with-system-tzdata=/dev/null \
- LIBS='-lsecur32 -lws2_32 -lgdi32'
+ LIBS="-lsecur32 `'i686-pc-mingw32-pkg-config' openssl --libs`"
$(MAKE) -C '$(1)'/src/interfaces/libpq -j '$(JOBS)' install haslibarule= shlib=
$(MAKE) -C '$(1)'/src/port -j '$(JOBS)' haslibarule= shlib=
$(MAKE) -C '$(1)'/src/bin/psql -j '$(JOBS)' install haslibarule= shlib=