Fix mingw cross-build of libxml2.
This commit is contained in:
parent
b6768c5073
commit
8e0c60ac14
2 changed files with 22 additions and 48 deletions
|
@ -1,48 +1,11 @@
|
|||
--- misc/libxml2-2.7.6/configure 2008-01-11 17:01:56.000000000 +0900
|
||||
+++ misc/build/libxml2-2.7.6/configure 2009-09-07 20:48:47.656250000 +0900
|
||||
@@ -19914,6 +19914,8 @@
|
||||
|
||||
if test "$with_modules" != "no" ; then
|
||||
case "$host" in
|
||||
+ *-*-mingw*)
|
||||
+ ;;
|
||||
*-*-cygwin*)
|
||||
MODULE_EXTENSION=".dll"
|
||||
{ $as_echo "$as_me:$LINENO: checking for dlopen in -lcygwin" >&5
|
||||
@@ -20632,11 +20636,10 @@
|
||||
|
||||
fi
|
||||
case $host_os in
|
||||
- *mingw32*) if test "$THREAD_LIBS" != "-lpthread"; then
|
||||
+ *mingw32*)
|
||||
WITH_THREADS="1"
|
||||
THREADS_W32="Win32"
|
||||
THREAD_CFLAGS="$THREAD_CFLAGS -DHAVE_WIN32_THREADS"
|
||||
- fi
|
||||
;;
|
||||
*cygwin*) THREAD_LIBS=""
|
||||
;;
|
||||
--- misc/libxml2-2.7.6/libxml.h 2007-11-23 19:47:23.000000000 +0900
|
||||
+++ misc/build/libxml2-2.7.6/libxml.h 2009-07-10 14:37:34.988250000 +0900
|
||||
@@ -30,6 +30,10 @@
|
||||
#include <libxml/xmlversion.h>
|
||||
#else
|
||||
#include "config.h"
|
||||
+#ifdef __MINGW32__
|
||||
+#undef HAVE_LIBPTHREAD
|
||||
+#undef HAVE_PTHREAD_H
|
||||
+#endif
|
||||
#include <libxml/xmlversion.h>
|
||||
#endif
|
||||
|
||||
--- misc/libxml2-2.7.6/include/libxml/xmlexports.h 2009-09-25 00:31:59.000000000 +0900
|
||||
+++ misc/build/libxml2-2.7.6/include/libxml/xmlexports.h 2010-06-06 11:15:54.160750000 +0900
|
||||
@@ -113,7 +113,7 @@
|
||||
* _imp__xmlFree listed as missing. Try to workaround the problem
|
||||
* by also making that declaration when compiling client code.
|
||||
*/
|
||||
- #if !defined(LIBXML_STATIC)
|
||||
+ #if defined(IN_LIBXML) && !defined(LIBXML_STATIC)
|
||||
--- misc/build/libxml2-2.7.6/include/libxml/xmlexports.h.orig 2011-08-23 10:26:54.000000000 +0200
|
||||
+++ misc/build/libxml2-2.7.6/include/libxml/xmlexports.h 2011-08-23 10:27:21.000000000 +0200
|
||||
@@ -56,7 +56,7 @@
|
||||
#undef XMLPUBVAR
|
||||
#undef XMLCALL
|
||||
#undef XMLCDECL
|
||||
- #if defined(IN_LIBXML) && !defined(LIBXML_STATIC)
|
||||
+ #if 0
|
||||
#define XMLPUBFUN __declspec(dllexport)
|
||||
#define XMLPUBVAR __declspec(dllexport)
|
||||
#else
|
||||
|
|
|
@ -54,7 +54,8 @@ PATCH_FILES=libxml2-configure.patch \
|
|||
libxml2-xpath.patch \
|
||||
libxml2-global-symbols.patch \
|
||||
libxml2-aix.patch \
|
||||
libxml2-vc10.patch
|
||||
libxml2-vc10.patch \
|
||||
libxml2-mingw.patch
|
||||
|
||||
.IF "$(OS)" == "WNT"
|
||||
PATCH_FILES+= libxml2-long-path.patch
|
||||
|
@ -74,8 +75,19 @@ xml2_LIBS+=$(MINGW_SHARED_LIBSTDCPP)
|
|||
.ENDIF
|
||||
CONFIGURE_DIR=
|
||||
CONFIGURE_ACTION=.$/configure
|
||||
CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --enable-static=no --without-debug --build=i586-pc-mingw32 --host=i586-pc-mingw32 lt_cv_cc_dll_switch="-shared" CC="$(xml2_CC)" LDFLAGS="-no-undefined -Wl,--enable-runtime-pseudo-reloc-v2 -L$(ILIB:s/;/ -L/)" LIBS="$(xml2_LIBS)" OBJDUMP=objdump
|
||||
.IF "$(CROSS_COMPILING)"=="YES"
|
||||
BUILD_AND_HOST=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
|
||||
.ELSE
|
||||
BUILD_AND_HOST=--build=i586-pc-mingw32 --host=i586-pc-mingw32
|
||||
.ENDIF
|
||||
.IF "$(ILIB)" == ""
|
||||
CONF_ILIB=
|
||||
.ELSE
|
||||
CONF_ILIB=-L$(ILIB:s/;/ -L/)
|
||||
.ENDIF
|
||||
CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --enable-static=no --without-debug $(BUILD_AND_HOST) lt_cv_cc_dll_switch="-shared" CC="$(xml2_CC)" LDFLAGS="-Wl,--no-undefined -Wl,--enable-runtime-pseudo-reloc-v2 $(CONF_ILIB)" LIBS="$(xml2_LIBS)" OBJDUMP=objdump
|
||||
BUILD_ACTION=$(GNUMAKE)
|
||||
BUILD_FLAGS+= -j$(EXTMAXPROCESS)
|
||||
BUILD_DIR=$(CONFIGURE_DIR)
|
||||
.ELSE
|
||||
CONFIGURE_DIR=win32
|
||||
|
@ -129,7 +141,6 @@ OUT2BIN+=xml2-config
|
|||
.ELIF "$(OS)"=="WNT"
|
||||
.IF "$(COM)"=="GCC"
|
||||
OUT2LIB+=.libs$/libxml2*.a
|
||||
OUT2BIN+=.libs$/libxml2*.dll
|
||||
OUT2BIN+=.libs$/xmllint.exe
|
||||
OUT2BIN+=xml2-config
|
||||
.ELSE
|
||||
|
|
Loading…
Reference in a new issue