summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Module_tail_build.mk1
-rw-r--r--RepositoryExternal.mk10
-rw-r--r--RepositoryModule_ooo.mk1
-rw-r--r--avmedia/Library_avmediagst_0_10.mk5
-rw-r--r--liblangtag/ExternalProject_langtag.mk3
-rw-r--r--libvisio/ExternalProject_libvisio.mk10
-rw-r--r--libxml2/ExternalPackage_xml2.mk43
-rw-r--r--libxml2/ExternalProject_xml2.mk51
-rw-r--r--libxml2/Makefile7
-rw-r--r--libxml2/Module_libxml2.mk22
-rw-r--r--libxml2/UnpackedTarball_xml2.mk27
-rw-r--r--libxml2/libxml2-configure.patch2
-rw-r--r--libxml2/libxml2-vc10.patch12
-rw-r--r--libxml2/makefile.mk178
-rw-r--r--libxml2/prj/build.lst3
-rw-r--r--libxml2/prj/d.lst13
-rw-r--r--libxml2/prj/dmake0
-rw-r--r--libxmlsec/ExternalProject_xmlsec.mk2
-rw-r--r--libxmlsec/xmlsec1-vc.patch2
-rw-r--r--libxslt/ExternalProject_xslt.mk2
-rw-r--r--libxslt/libxslt-vc10.patch2
-rw-r--r--redland/ExternalProject_raptor.mk2
-rw-r--r--redland/ExternalProject_rasqal.mk2
-rw-r--r--redland/ExternalProject_redland.mk2
-rw-r--r--tail_build/prj/build.lst2
25 files changed, 199 insertions, 205 deletions
diff --git a/Module_tail_build.mk b/Module_tail_build.mk
index 0df5ac2de156..01700279f0f3 100644
--- a/Module_tail_build.mk
+++ b/Module_tail_build.mk
@@ -115,6 +115,7 @@ $(eval $(call gb_Module_add_moduledirs,tail_build,\
$(call gb_Helper_optional,WPS,libwps) \
libxmlsec \
$(call gb_Helper_optional,LIBXSLT,libxslt) \
+ $(call gb_Helper_optional,LIBXML2,libxml2) \
lingucomponent \
linguistic \
lotuswordpro \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 785b680541c4..4253e2661fda 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -648,6 +648,7 @@ $(call gb_LinkTarget_set_include,$(1),\
$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
endef
+gb_ExternalProject__use_libxml2:=
else # !SYSTEM_LIBXML
@@ -656,9 +657,18 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
))
define gb_LinkTarget__use_libxml2
+$(call gb_LinkTarget_use_package,$(1),xml2)
$(call gb_LinkTarget_use_libraries,$(1),\
xml2 \
)
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ -I$(call gb_UnpackedTarball_get_dir,xml2)/include \
+)
+
+endef
+define gb_ExternalProject__use_libxml2
+$(call gb_ExternalProject_use_package,$(1),xml2)
endef
diff --git a/RepositoryModule_ooo.mk b/RepositoryModule_ooo.mk
index d1c312f8d4d6..8bf0eede520b 100644
--- a/RepositoryModule_ooo.mk
+++ b/RepositoryModule_ooo.mk
@@ -124,6 +124,7 @@ $(eval $(call gb_Module_add_moduledirs,ooo,\
$(call gb_Helper_optional,WPS,libwps) \
libxmlsec \
$(call gb_Helper_optional,LIBXSLT,libxslt) \
+ $(call gb_Helper_optional,LIBXML2,libxml2) \
lingucomponent \
linguistic \
lotuswordpro \
diff --git a/avmedia/Library_avmediagst_0_10.mk b/avmedia/Library_avmediagst_0_10.mk
index da3460610d2b..c12d6e156c60 100644
--- a/avmedia/Library_avmediagst_0_10.mk
+++ b/avmedia/Library_avmediagst_0_10.mk
@@ -36,7 +36,10 @@ $(eval $(call gb_Library_set_include,avmediagst_0_10,\
$(GSTREAMER_0_10_CFLAGS) \
))
-$(eval $(call gb_Library_use_external,avmediagst_0_10,boost_headers))
+$(eval $(call gb_Library_use_externals,avmediagst_0_10,\
+ boost_headers \
+ libxml2 \
+))
$(eval $(call gb_Library_use_sdk_api,avmediagst_0_10))
diff --git a/liblangtag/ExternalProject_langtag.mk b/liblangtag/ExternalProject_langtag.mk
index ca2a6502e7f3..81ec9a21d728 100644
--- a/liblangtag/ExternalProject_langtag.mk
+++ b/liblangtag/ExternalProject_langtag.mk
@@ -10,6 +10,7 @@
$(eval $(call gb_ExternalProject_ExternalProject,langtag))
$(eval $(call gb_ExternalProject_use_unpacked,langtag,langtag))
+$(eval $(call gb_ExternalProject_use_external,langtag,libxml2))
$(eval $(call gb_ExternalProject_register_targets,langtag,\
build \
@@ -25,7 +26,7 @@ $(call gb_ExternalProject_get_state_target,langtag,build):
&& ./configure --disable-modules --disable-test --disable-introspection --disable-shared --enable-static --with-pic \
$(if $(filter TRUE,$(HAVE_GCC_BUILTIN_ATOMIC)),"lt_cv_has_atomic=yes","lt_cv_has_atomic=no") \
$(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
- $(if $(filter NO,$(SYSTEM_LIBXML)),LIBXML2_CFLAGS="-I$(OUTDIR)/inc/external" \
+ $(if $(filter NO,$(SYSTEM_LIBXML)),LIBXML2_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,xml2)/include" \
$(if $(filter MSC,$(COM)),LIBXML2_LIBS="$(OUTDIR)/lib/libxml2.lib",LIBXML2_LIBS="-L$(OUTDIR)/lib -lxml2"),\
$(if $(filter MACOSX,$(OS)),LIBXML2_CFLAGS="$(LIBXML_CFLAGS)" LIBXML2_LIBS="$(LIBXML_LIBS)")) \
$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
diff --git a/libvisio/ExternalProject_libvisio.mk b/libvisio/ExternalProject_libvisio.mk
index 94f1b1d3ce9b..c133158d343f 100644
--- a/libvisio/ExternalProject_libvisio.mk
+++ b/libvisio/ExternalProject_libvisio.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_ExternalProject_use_externals,libvisio,\
boost_headers \
wpd \
wpg \
+ libxml2 \
))
ifeq ($(OS)$(COM),WNTMSC)
@@ -29,7 +30,7 @@ $(call gb_ExternalProject_get_state_target,libvisio,build) :
&& export BOOST_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,boost) \
&& export LIBWPD_INCLUDE_DIR=$(OUTDIR)/inc/external \
&& export LIBWPG_INCLUDE_DIR=$(OUTDIR)/inc/external \
- && export LIBXML_INCLUDE_DIR=$(OUTDIR)/inc/external \
+ && export LIBXML_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,xml2)/include \
&& export ZLIB_INCLUDE_DIR=$(OUTDIR)/inc/external/zlib \
&& $(COMPATH)/vcpackages/vcbuild.exe libvisio.vcproj "Release|Win32" \
&& touch $@
@@ -39,7 +40,7 @@ $(call gb_ExternalProject_get_state_target,libvisio,build) :
&& export BOOST_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,boost) \
&& export LIBWPD_INCLUDE_DIR=$(OUTDIR)/inc/external \
&& export LIBWPG_INCLUDE_DIR=$(OUTDIR)/inc/external \
- && export LIBXML_INCLUDE_DIR=$(OUTDIR)/inc/extrenal \
+ && export LIBXML_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,xml2)/include \
&& export ZLIB_INCLUDE_DIR=$(OUTDIR)/inc/external/zlib \
&& msbuild.exe libvisio.vcxproj /p:Configuration=Release \
&& touch $@
@@ -49,7 +50,7 @@ $(call gb_ExternalProject_get_state_target,libvisio,build) :
&& export BOOST_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,boost) \
&& export LIBWPD_INCLUDE_DIR=$(OUTDIR)/inc/external \
&& export LIBWPG_INCLUDE_DIR=$(OUTDIR)/inc/external \
- && export LIBXML_INCLUDE_DIR=$(OUTDIR)/inc/external \
+ && export LIBXML_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,xml2)/include \
&& export ZLIB_INCLUDE_DIR=$(OUTDIR)/inc/external/zlib \
&& msbuild.exe libvisio.vcxproj /p:PlatformToolset=v110 /p:VisualStudioVersion=11.0 /p:Configuration=Release \
&& touch $@
@@ -67,7 +68,8 @@ $(call gb_ExternalProject_get_state_target,libvisio,build) :
--without-docs \
--disable-debug \
--disable-werror \
- $(if $(filter NO,$(SYSTEM_BOOST)),CXXFLAGS=-I$(call gb_UnpackedTarball_get_dir,boost)) \
+ CXXFLAGS="$(if $(filter NO,$(SYSTEM_BOOST)),-I$(call gb_UnpackedTarball_get_dir,boost)) \
+ $(if $(filter NO,$(SYSTEM_LIBXML)),-I$(call gb_UnpackedTarball_get_dir,xml2)/include)" \
$(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
&& (cd $(EXTERNAL_WORKDIR)/src/lib && $(MAKE)) \
&& touch $@
diff --git a/libxml2/ExternalPackage_xml2.mk b/libxml2/ExternalPackage_xml2.mk
new file mode 100644
index 000000000000..7eafa376a107
--- /dev/null
+++ b/libxml2/ExternalPackage_xml2.mk
@@ -0,0 +1,43 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,xml2,xml2))
+
+$(eval $(call gb_ExternalPackage_use_external_project,xml2,xml2))
+
+ifneq ($(COM),MSC)
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/xml2-config,xml2-config))
+endif
+
+ifeq ($(OS),MACOSX)
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.2.dylib,.libs/libxml2.2.7.6.dylib))
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.dylib,.libs/libxml2.2.7.6.dylib))
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/xmllint,.libs/xmllint))
+else ifeq ($(DISABLE_DYNLOADING),TRUE)
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.a,libxml2/.libs/libxml2.a))
+ifneq ($(CROSS_COMPILING),YES)
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/xmllint,.libs/xmllint))
+endif
+else ifeq ($(OS),WNT)
+ifeq ($(COM),GCC)
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.dll.a,.libs/libxml2.dll.a))
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/libxml2.dll,.libs/libxml2.dll))
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/xmllint.exe,.libs/xmllint.exe))
+else # COM=MSC
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.lib,win32/bin.msvc/libxml2.lib))
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/libxml2.dll,win32/bin.msvc/libxml2.dll))
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/xmllint.exe,win32/bin.msvc/xmllint.exe))
+endif
+else # OS!=WNT
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.so.2.7.6,.libs/libxml2.so.2.7.6))
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.so.2,.libs/libxml2.so.2.7.6))
+$(eval $(call gb_ExternalPackage_add_file,xml2,lib/libxml2.so,.libs/libxml2.so.2.7.6))
+$(eval $(call gb_ExternalPackage_add_file,xml2,bin/xmllint,.libs/xmllint))
+endif
+# vim: set noet sw=4 ts=4:
diff --git a/libxml2/ExternalProject_xml2.mk b/libxml2/ExternalProject_xml2.mk
new file mode 100644
index 000000000000..cce11cd969d9
--- /dev/null
+++ b/libxml2/ExternalProject_xml2.mk
@@ -0,0 +1,51 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,xml2))
+
+$(eval $(call gb_ExternalProject_use_unpacked,xml2,xml2))
+
+$(eval $(call gb_ExternalProject_register_targets,xml2,\
+ build \
+))
+ifeq ($(OS),WNT)
+ifeq ($(COM),GCC)
+$(call gb_ExternalProject_get_state_target,xml2,build):
+ cd $(EXTERNAL_WORKDIR) \
+ && ./configure --disable-ipv6 --without-python --without-zlib \
+ --disable-static --without-debug lt_cv_cc_dll_switch="-shared" \
+ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
+ CC="$(CC) -mthreads $(if $(filter YES,$(MINGW_SHARED_GCCLIB)),-shared-libgcc)" \
+ LIBS="-lws2_32 $(if $(filter YES,$(MINGW_SHARED_GXXLIB)),$(MINGW_SHARED_LIBSTDCPP))" \
+ LDFLAGS="-Wl,--no-undefined -Wl,--enable-runtime-pseudo-reloc-v2" \
+ OBJDUMP=objdump \
+ && $(MAKE) \
+ && touch $@
+else # COM=MSC
+$(call gb_ExternalProject_get_state_target,xml2,build):
+ cd $(EXTERNAL_WORKDIR)/win32 \
+ && cscript configure.js iconv=no sax1=yes \
+ && unset MAKEFLAGS \
+ && LIB="$(ILIB)" nmake \
+ && touch $@
+endif
+else # OS!=WNT
+$(call gb_ExternalProject_get_state_target,xml2,build):
+ cd $(EXTERNAL_WORKDIR) \
+ && ./configure --disable-ipv6 --without-python --without-zlib --with-sax1 \
+ $(if $(debug),--with-mem-debug --with-run-debug) \
+ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
+ $(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
+ LDFLAGS="$(if $(SYSBASE),-L$(SYSBASE)/usr/lib)" \
+ CFLAGS="$(if $(SYSBASE),-I$(SYSBASE)/usr/include) $(if $(debug),-g)" \
+ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \
+ && $(MAKE) \
+ && touch $@
+endif
+# vim: set noet sw=4 ts=4:
diff --git a/libxml2/Makefile b/libxml2/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/libxml2/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/libxml2/Module_libxml2.mk b/libxml2/Module_libxml2.mk
new file mode 100644
index 000000000000..b02934dfa1f1
--- /dev/null
+++ b/libxml2/Module_libxml2.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,libxml2))
+
+ifeq ($(SYSTEM_LIBXML),NO)
+
+$(eval $(call gb_Module_add_targets,libxml2,\
+ ExternalPackage_xml2 \
+ ExternalProject_xml2 \
+ UnpackedTarball_xml2 \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/libxml2/UnpackedTarball_xml2.mk b/libxml2/UnpackedTarball_xml2.mk
new file mode 100644
index 000000000000..a417111dc84c
--- /dev/null
+++ b/libxml2/UnpackedTarball_xml2.mk
@@ -0,0 +1,27 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,xml2))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,xml2,$(LIBXML_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_add_patches,xml2,\
+ libxml2/libxml2-configure.patch \
+ libxml2/libxml2-gnome599717.patch \
+ libxml2/libxml2-xpath.patch \
+ libxml2/libxml2-global-symbols.patch \
+ libxml2/libxml2-aix.patch \
+ libxml2/libxml2-vc10.patch \
+ libxml2/libxml2-latin.patch \
+ $(if $(filter ANDROID,$(OS)),libxml2/libxml2-android.patch) \
+ $(if $(filter WNT,$(OS)),libxml2/libxml2-long-path.patch \
+ $(if $(filter GCC,$(COM)),libxml2/libxml2-mingw.patch)) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/libxml2/libxml2-configure.patch b/libxml2/libxml2-configure.patch
index d13d55e83ce7..125f6c052063 100644
--- a/libxml2/libxml2-configure.patch
+++ b/libxml2/libxml2-configure.patch
@@ -99,7 +99,7 @@
+
+prefix=${SOLARVERSION}/${INPATH}
+exec_prefix=${SOLARVERSION}/${INPATH}
-+includedir=${SOLARVERSION}/${INPATH}/inc${UPDMINOREXT}/external
++includedir=${WORKDIR}/UnpackedTarball/xml2/include
+libdir=${SOLARVERSION}/${INPATH}/lib${UPDMINOREXT}
usage()
diff --git a/libxml2/libxml2-vc10.patch b/libxml2/libxml2-vc10.patch
index 54d12f19c484..f29858029b27 100644
--- a/libxml2/libxml2-vc10.patch
+++ b/libxml2/libxml2-vc10.patch
@@ -1,5 +1,13 @@
---- misc/build/libxml2-2.7.6/win32/Makefile.msvc.old 2010-09-20 20:22:41.500000000 +0200
-+++ misc/build/libxml2-2.7.6/win32/Makefile.msvc 2010-09-20 20:23:00.250000000 +0200
+--- build/libxml2-2.7.6/win32/Makefile.msvc.old 2010-09-20 20:22:41.500000000 +0200
++++ build/libxml2-2.7.6/win32/Makefile.msvc 2010-09-20 20:23:00.250000000 +0200
+@@ -59,6 +59,7 @@
+ CFLAGS = $(CFLAGS) /D "HAVE_ZLIB_H"
+ !endif
+ CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE
++CFLAGS = $(CFLAGS) $(SOLARINC)
+
+ # The linker and its options.
+ LD = link.exe
@@ -91,8 +91,12 @@
LDFLAGS = $(LDFLAGS) /DEBUG
!else
diff --git a/libxml2/makefile.mk b/libxml2/makefile.mk
deleted file mode 100644
index 070d500f6b4b..000000000000
--- a/libxml2/makefile.mk
+++ /dev/null
@@ -1,178 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=libxml2
-TARGET=so_libxml2
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(SYSTEM_LIBXML)" == "YES"
-all:
- @echo "An already available installation of libxml should exist on your system."
- @echo "Therefore the version provided here does not need to be built in addition."
-.ENDIF
-
-# --- Files --------------------------------------------------------
-
-LIBXML2VERSION=2.7.6
-
-TARFILE_NAME=$(PRJNAME)-$(LIBXML2VERSION)
-TARFILE_MD5=7740a8ec23878a2f50120e1faa2730f2
-
-# libxml2-global-symbols: #i112480#: Solaris ld won't export non-listed symbols
-PATCH_FILES=libxml2-configure.patch \
- libxml2-gnome599717.patch \
- libxml2-xpath.patch \
- libxml2-global-symbols.patch \
- libxml2-aix.patch \
- libxml2-vc10.patch \
- libxml2-latin.patch
-
-.IF "$(OS)" == "WNT"
-PATCH_FILES+= libxml2-long-path.patch
-.IF "$(COM)"=="GCC"
-PATCH_FILES+= libxml2-mingw.patch
-.ENDIF
-.ENDIF
-
-.IF "$(OS)"=="ANDROID"
-PATCH_FILES+= libxml2-android.patch
-.ENDIF
-
-# This is only for UNX environment now
-
-.IF "$(OS)"=="WNT"
-.IF "$(COM)"=="GCC"
-xml2_CC=$(CC) -mthreads
-.IF "$(MINGW_SHARED_GCCLIB)"=="YES"
-xml2_CC+=-shared-libgcc
-.ENDIF
-xml2_LIBS=-lws2_32
-.IF "$(MINGW_SHARED_GXXLIB)"=="YES"
-xml2_LIBS+=$(MINGW_SHARED_LIBSTDCPP)
-.ENDIF
-CONFIGURE_DIR=
-CONFIGURE_ACTION=.$/configure
-.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
-CONFIGURE_ACTION=cscript configure.js
-CONFIGURE_FLAGS=iconv=no sax1=yes
-BUILD_ACTION=nmake
-BUILD_DIR=$(CONFIGURE_DIR)
-.ENDIF
-.ELSE
-
-.IF "$(debug)" != ""
-xml2_CFLAGS+=-g
-.ELSE
-xml2_CFLAGS+=-O
-.ENDIF
-
-xml2_CFLAGS+=$(ARCH_FLAGS)
-
-.IF "$(SYSBASE)"!=""
-xml2_CFLAGS+=-I$(SYSBASE)$/usr$/include
-.IF "$(COMNAME)"=="sunpro5"
-xml2_CFLAGS+=$(C_RESTRICTIONFLAGS)
-.ENDIF # "$(COMNAME)"=="sunpro5"
-xml2_LDFLAGS+=-L$(SYSBASE)$/usr$/lib
-.ENDIF # "$(SYSBASE)"!=""
-
-CONFIGURE_DIR=
-CONFIGURE_ACTION=.$/configure
-.IF "$(DISABLE_DYNLOADING)" == "TRUE"
-CONFIGURE_FLAGS=--disable-shared
-.ELSE
-CONFIGURE_FLAGS=--disable-static
-.ENDIF
-CONFIGURE_FLAGS+=--enable-ipv6=no --without-python --without-zlib --with-sax1=yes CFLAGS="$(xml2_CFLAGS) $(EXTRA_CFLAGS)" LDFLAGS="$(xml2_LDFLAGS) $(EXTRA_LINKFLAGS)"
-BUILD_ACTION=$(GNUMAKE)
-BUILD_FLAGS+= -j$(EXTMAXPROCESS)
-BUILD_DIR=$(CONFIGURE_DIR)
-.IF "$(debug)"!=""
-CONFIGURE_FLAGS+=--with-mem-debug --with-run-debug
-.ENDIF
-.IF "$(OS)" == "MACOSX"
-CONFIGURE_FLAGS += \
- --prefix=/@.__________________________________________________$(EXTRPATH)
-.END
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-.ENDIF
-.ENDIF
-
-
-OUTDIR2INC=include$/libxml
-
-.IF "$(OS)"=="MACOSX"
-EXTRPATH=URELIB
-OUT2LIB+=.libs$/libxml2.*.dylib
-OUT2BIN_NONE+=.libs$/xmllint
-OUT2BIN+=xml2-config
-.ELIF "$(DISABLE_DYNLOADING)" == "TRUE"
-OUT2LIB+=.libs$/libxml2.a
-OUT2BIN+=xml2-config
-.ELIF "$(OS)"=="WNT"
-.IF "$(COM)"=="GCC"
-OUT2LIB+=.libs$/libxml2*.a
-OUT2BIN+=.libs$/xmllint.exe
-OUT2BIN+=xml2-config
-.ELSE
-OUT2LIB+=win32$/bin.msvc$/libxml2.lib
-OUT2BIN+=win32$/bin.msvc$/libxml2.dll
-OUT2BIN+=win32$/bin.msvc$/xmllint.exe
-.ENDIF
-.ELSE
-OUT2LIB+=.libs$/libxml2.so*
-OUT2BIN+=.libs$/xmllint
-OUT2BIN+=xml2-config
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
-
diff --git a/libxml2/prj/build.lst b/libxml2/prj/build.lst
index 01d9b3fdee1b..18dd671ab066 100644
--- a/libxml2/prj/build.lst
+++ b/libxml2/prj/build.lst
@@ -1,3 +1,2 @@
lx libxml2 : soltools NULL
-lx libxml2 usr1 - all lx_mkout NULL
-lx libxml2 nmake - all lx_libxml2 NULL
+lx libxml2\prj nmake - all lx_libxml2 NULL
diff --git a/libxml2/prj/d.lst b/libxml2/prj/d.lst
index d5e98d445ddb..e69de29bb2d1 100644
--- a/libxml2/prj/d.lst
+++ b/libxml2/prj/d.lst
@@ -1,13 +0,0 @@
-mkdir: %_DEST%\inc\external\libxml
-..\%__SRC%\inc\libxml\*.h %_DEST%\inc\external\libxml\*.h
-..\%__SRC%\lib\libxml2.so.2 %_DEST%\lib\libxml2.so.2
-symlink: %_DEST%\lib\libxml2.so.2 %_DEST%\lib\libxml2.so
-..\%__SRC%\lib\libxml2.2.dylib %_DEST%\lib\libxml2.2.dylib
-symlink: %_DEST%\lib\libxml2.2.dylib %_DEST%\lib\libxml2.dylib
-..\%__SRC%\lib\libxml2.so %_DEST%\lib\libxml2.so
-..\%__SRC%\lib\*.lib %_DEST%\lib
-..\%__SRC%\lib\libxml2.dll.a %_DEST%\lib\libxml2.dll.a
-..\%__SRC%\lib\libxml2.a %_DEST%\lib\libxml2.a
-..\%__SRC%\bin\*.dll %_DEST%\bin
-..\%__SRC%\bin\xmllint* %_DEST%\bin
-..\%__SRC%\bin\xml2-config* %_DEST%\bin
diff --git a/libxml2/prj/dmake b/libxml2/prj/dmake
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/libxml2/prj/dmake
+++ /dev/null
diff --git a/libxmlsec/ExternalProject_xmlsec.mk b/libxmlsec/ExternalProject_xmlsec.mk
index ed9decc0dfc5..f603954ad9ac 100644
--- a/libxmlsec/ExternalProject_xmlsec.mk
+++ b/libxmlsec/ExternalProject_xmlsec.mk
@@ -11,6 +11,8 @@ $(eval $(call gb_ExternalProject_ExternalProject,xmlsec))
$(eval $(call gb_ExternalProject_use_unpacked,xmlsec,xmlsec))
+$(eval $(call gb_ExternalProject_use_external,xmlsec,libxml2))
+
$(eval $(call gb_ExternalProject_register_targets,xmlsec,\
build \
))
diff --git a/libxmlsec/xmlsec1-vc.patch b/libxmlsec/xmlsec1-vc.patch
index 3f3d00ec30f2..7cd8c4f2d00b 100644
--- a/libxmlsec/xmlsec1-vc.patch
+++ b/libxmlsec/xmlsec1-vc.patch
@@ -19,7 +19,7 @@
CFLAGS = $(CFLAGS) /D "HAVE_STDIO_H" /D "HAVE_STDLIB_H"
CFLAGS = $(CFLAGS) /D "HAVE_STRING_H" /D "HAVE_CTYPE_H"
CFLAGS = $(CFLAGS) /D "HAVE_MALLOC_H" /D "HAVE_MEMORY_H"
-+CFLAGS = $(CFLAGS) $(SOLARINC)
++CFLAGS = $(CFLAGS) $(SOLARINC) -I$(WORKDIR)\UnpackedTarball\xml2\include
# Optimisation and debug symbols.
!if "$(DEBUG)" == "1"
diff --git a/libxslt/ExternalProject_xslt.mk b/libxslt/ExternalProject_xslt.mk
index 42bf57a58140..b6aac212c8d0 100644
--- a/libxslt/ExternalProject_xslt.mk
+++ b/libxslt/ExternalProject_xslt.mk
@@ -11,6 +11,8 @@ $(eval $(call gb_ExternalProject_ExternalProject,xslt))
$(eval $(call gb_ExternalProject_use_unpacked,xslt,xslt))
+$(eval $(call gb_ExternalProject_use_external,xslt,libxml2))
+
$(eval $(call gb_ExternalProject_register_targets,xslt,\
build \
))
diff --git a/libxslt/libxslt-vc10.patch b/libxslt/libxslt-vc10.patch
index d9479f7fb5b5..b50f0abe2e80 100644
--- a/libxslt/libxslt-vc10.patch
+++ b/libxslt/libxslt-vc10.patch
@@ -4,7 +4,7 @@
CFLAGS = /nologo /D "WIN32" /D "_WINDOWS" /D "_MBCS" /W3 $(CRUNTIME) /D "_REENTRANT"
CFLAGS = $(CFLAGS) /I$(BASEDIR) /I$(XSLT_SRCDIR) /I$(INCPREFIX)
CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE
-+CFLAGS = $(CFLAGS) $(SOLARINC)
++CFLAGS = $(CFLAGS) $(SOLARINC) -I$(WORKDIR)\UnpackedTarball\xml2\include
# The linker and its options.
LD = link.exe
diff --git a/redland/ExternalProject_raptor.mk b/redland/ExternalProject_raptor.mk
index 4dae07e4ae49..b67467c507b1 100644
--- a/redland/ExternalProject_raptor.mk
+++ b/redland/ExternalProject_raptor.mk
@@ -11,6 +11,8 @@ $(eval $(call gb_ExternalProject_ExternalProject,raptor))
$(eval $(call gb_ExternalProject_use_unpacked,raptor,raptor))
+$(eval $(call gb_ExternalProject_use_external,raptor,libxml2))
+
$(eval $(call gb_ExternalProject_register_targets,raptor,\
build \
))
diff --git a/redland/ExternalProject_rasqal.mk b/redland/ExternalProject_rasqal.mk
index f19e19953da9..7d7ef9d2067e 100644
--- a/redland/ExternalProject_rasqal.mk
+++ b/redland/ExternalProject_rasqal.mk
@@ -11,6 +11,8 @@ $(eval $(call gb_ExternalProject_ExternalProject,rasqal))
$(eval $(call gb_ExternalProject_use_unpacked,rasqal,rasqal))
+$(eval $(call gb_ExternalProject_use_external,rasqal,libxml2))
+
$(eval $(call gb_ExternalProject_use_package,rasqal,raptor))
$(eval $(call gb_ExternalProject_register_targets,rasqal,\
diff --git a/redland/ExternalProject_redland.mk b/redland/ExternalProject_redland.mk
index a96eccf765fd..659e0ea76df3 100644
--- a/redland/ExternalProject_redland.mk
+++ b/redland/ExternalProject_redland.mk
@@ -11,6 +11,8 @@ $(eval $(call gb_ExternalProject_ExternalProject,redland))
$(eval $(call gb_ExternalProject_use_unpacked,redland,redland))
+$(eval $(call gb_ExternalProject_use_external,redland,libxml2))
+
$(eval $(call gb_ExternalProject_use_packages,redland, \
raptor \
rasqal \
diff --git a/tail_build/prj/build.lst b/tail_build/prj/build.lst
index 363dc0841584..b3643bb06134 100644
--- a/tail_build/prj/build.lst
+++ b/tail_build/prj/build.lst
@@ -1,2 +1,2 @@
-tb tail_build : EXPAT:expat LIBXML2:libxml2 MOZ:moz NSS:nss OPENSSL:openssl PYTHON:python3 XPDF:xpdf external solenv soltools NULL
+tb tail_build : EXPAT:expat MOZ:moz NSS:nss OPENSSL:openssl PYTHON:python3 XPDF:xpdf external solenv soltools NULL
tb tail_build\prj nmake - all tb_prj NULL