summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xRepository.mk20
-rw-r--r--RepositoryExternal.mk281
-rwxr-xr-xRepositoryFixes.mk21
-rw-r--r--solenv/gbuild/platform/linux.mk4
-rw-r--r--solenv/gbuild/platform/macosx.mk2
-rw-r--r--solenv/gbuild/platform/solaris.mk2
-rw-r--r--solenv/gbuild/platform/windows.mk2
-rw-r--r--solenv/gbuild/platform/winmingw.mk2
8 files changed, 283 insertions, 51 deletions
diff --git a/Repository.mk b/Repository.mk
index 0ea7d9b53fc5..0a4f00c9c355 100755
--- a/Repository.mk
+++ b/Repository.mk
@@ -100,18 +100,14 @@ $(eval $(call gb_Helper_register_libraries,OOOLIBS, \
))
$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
- xml2 \
xmlreader \
))
$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
cppunit \
- icuuc \
icule \
graphite_dll \
cppunit \
- rdf \
- xslt \
))
@@ -161,23 +157,11 @@ $(eval $(call gb_Helper_register_libraries,UNOVERLIBS, \
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
basegfx_s \
- jpeglib \
+ graphite \
ooopathutils \
salcpprt \
+ vclmain \
zlib \
- graphite \
- vclmain \
))
-ifeq ($(SYSTEM_EXPAT),YES)
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE, \
- expat \
-))
-else
-$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
- expat_xmlparse \
- expat_xmltok \
-))
-endif
-
# vim: set noet sw=4 ts=4:
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
new file mode 100644
index 000000000000..13985e8a5424
--- /dev/null
+++ b/RepositoryExternal.mk
@@ -0,0 +1,281 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2009 by Sun Microsystems, Inc.
+#
+# 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.
+#
+#*************************************************************************
+
+# this file describes all the external libraries
+# depending on the configure options these may be taken from the system,
+# or the internal/bundled copy may be built.
+
+# for every external, a function gb_LinkTarget_use__FOO is defined,
+# once for the system case, once for the internal case.
+
+# in the system case, no libraries should be registered, but the target-local
+# variable LIBS should be set to FOO_LIBS, and INCLUDES to FOO_CFLAGS.
+
+
+ifeq ($(SYSTEM_ZLIB),YES)
+
+define gb_LinkTarget__use_zlib
+$(call gb_LinkTarget_set_defs,$(1),\
+ $$(DEFS) \
+ -DSYSTEM_ZLIB \
+)
+$(call gb_LinkTarget_add_libs,$(1),-lz)
+endef
+
+else # !SYSTEM_ZLIB
+
+$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
+ zlib \
+))
+
+define gb_LinkTarget__use_zlib
+$(call gb_LinkTarget_add_linked_static_libs,$(1),\
+ zlib \
+)
+endef
+
+endif # SYSTEM_ZLIB
+
+
+ifeq ($(SYSTEM_JPEG),YES)
+
+define gb_LinkTarget__use_jpeg
+$(call gb_LinkTarget_add_libs,$(1),-ljpeg)
+$(call gb_LinkTarget_set_ldflags,$(1),\
+ $$(filter-out -L/usr/lib/jvm%,$$(LDFLAGS)) \
+)
+endef
+
+else # !SYSTEM_JPEG
+
+$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
+ jpeglib \
+))
+
+define gb_LinkTarget__use_jpeg
+$(call gb_LinkTarget_add_linked_static_libs,$(1),\
+ jpeglib \
+)
+endef
+
+endif # SYSTEM_JPEG
+
+
+ifeq ($(SYSTEM_EXPAT),YES)
+
+define gb_LinkTarget__use_expat
+$(if $(2),,$(error gb_LinkTarget__use_expat needs additional parameter))
+
+$(call gb_LinkTarget_set_defs,$(1),\
+ $$(DEFS) \
+ -DSYSTEM_EXPAT \
+)
+
+$(call gb_LinkTarget_add_libs,$(1),-lexpat)
+endef
+
+else # !SYSTEM_EXPAT
+
+$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
+ ascii_expat_xmlparse \
+ expat_xmlparse \
+ expat_xmltok \
+))
+
+define gb_LinkTarget__use_expat
+$(if $(2),,$(error gb_LinkTarget__use_expat needs additional parameter))
+
+$(if $(filter-out ascii_expat_xmlparse,$(2)),\
+ $(call gb_LinkTarget_set_defs,$(1),\
+ $$(DEFS) \
+ -DXML_UNICODE \
+))
+
+$(call gb_LinkTarget_add_linked_static_libs,$(1),\
+ $(2) \
+ expat_xmltok \
+)
+endef
+
+endif # SYSTEM_EXPAT
+
+# now define 2 wrappers that select which internal static library to use...
+define gb_LinkTarget__use_expat_utf8
+$(call gb_LinkTarget__use_expat,$(1),ascii_expat_xmlparse)
+endef
+
+define gb_LinkTarget__use_expat_utf16
+$(call gb_LinkTarget__use_expat,$(1),expat_xmlparse)
+endef
+
+
+ifeq ($(SYSTEM_LIBXML),YES)
+
+define gb_LinkTarget__use_libxml2
+$(call gb_LinkTarget_set_defs,$(1),\
+ $$(DEFS) \
+ -DSYSTEM_LIBXML \
+)
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ $(LIBXML_CFLAGS) \
+)
+$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
+endef
+
+else # !SYSTEM_LIBXML
+
+$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
+ xml2 \
+))
+
+define gb_LinkTarget__use_libxml2
+$(call gb_LinkTarget_add_linked_libs,$(1),\
+ xml2 \
+)
+endef
+
+endif # SYSTEM_LIBXML
+
+
+ifeq ($(SYSTEM_LIBXSLT),YES)
+
+define gb_LinkTarget__use_libxslt
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ $(LIBXSLT_CFLAGS) \
+)
+$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
+endef
+
+else # !SYSTEM_LIBXSLT
+
+$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
+ xslt \
+))
+
+define gb_LinkTarget__use_libxslt
+$(call gb_LinkTarget_add_linked_libs,$(1),\
+ xslt \
+)
+endef
+
+endif # SYSTEM_LIBXSLT
+
+
+ifeq ($(SYSTEM_REDLAND),YES)
+
+define gb_LinkTarget__use_librdf
+$(call gb_LinkTarget_set_defs,$(1),\
+ $$(DEFS) \
+ -DSYSTEM_REDLAND \
+)
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ $(REDLAND_CFLAGS) \
+)
+$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
+endef
+
+else # !SYSTEM_REDLAND
+
+$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
+ rdf \
+))
+
+define gb_LinkTarget__use_librdf
+$(call gb_LinkTarget_add_linked_libs,$(1),\
+ rdf \
+)
+endef
+
+endif # SYSTEM_REDLAND
+
+
+ifeq ($(SYSTEM_CAIRO),YES)
+
+# FREETYPE_CLAGS from environment if ENABLE_CAIRO is used
+define gb_LinkTarget__use_cairo
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ $(FREETYPE_CFLAGS) \
+ $(CAIRO_CFLAGS) \
+)
+$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
+endef
+
+else # !SYSTEM_CAIRO
+
+$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
+ cairo \
+))
+ifneq ($(OS),WNT)
+$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
+ pixman-1 \
+))
+endif # WNT
+
+define gb_LinkTarget__use_cairo
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ -I$(OUTDIR)/inc/cairo \
+ $(FREETYPE_CFLAGS) \
+)
+$(call gb_LinkTarget_add_linked_libs,$(1),\
+ cairo \
+)
+ifneq ($(OS),WNT)
+$(call gb_LinkTarget_add_linked_libs,$(1),\
+ pixman-1 \
+)
+endif
+endef
+
+endif # SYSTEM_CAIRO
+
+
+ifeq ($(SYSTEM_ICU),YES)
+
+define gb_LinkTarget__use_icuuc
+$(call gb_LinkTarget_add_libs,$(1),-licuuc)
+endef
+
+else # !SYSTEM_ICU
+
+$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
+ icuuc \
+))
+
+define gb_LinkTarget__use_icuuc
+$(call gb_LinkTarget_add_linked_libs,$(1),\
+ icuuc \
+)
+endef
+
+endif # SYSTEM_ICU
+
+# vim: set noet sw=4 ts=4:
diff --git a/RepositoryFixes.mk b/RepositoryFixes.mk
index 7286f2724135..fa3eb27efaa7 100755
--- a/RepositoryFixes.mk
+++ b/RepositoryFixes.mk
@@ -184,25 +184,4 @@ ifeq ($(USE_SYSTEM_STL),YES)
gb_Library_TARGETS := $(filter-out stl,$(gb_Library_TARGETS))
endif
-ifeq ($(SYSTEM_LIBXML),YES)
-gb_Library_TARGETS := $(filter-out xml2,$(gb_Library_TARGETS))
-endif
-
-ifeq ($(SYSTEM_LIBXSLT),YES)
-gb_Library_TARGETS := $(filter-out xslt,$(gb_Library_TARGETS))
-endif
-
-ifeq ($(SYSTEM_REDLAND),YES)
-gb_Library_TARGETS := $(filter-out rdf,$(gb_Library_TARGETS))
-endif
-
-ifeq ($(SYSTEM_ICU),YES)
-gb_Library_TARGETS := $(filter-out icuuc,$(gb_Library_TARGETS))
-endif
-
-ifeq ($(SYSTEM_CAIRO),YES)
-gb_Library_TARGETS := $(filter-out cairo,$(gb_Library_TARGETS))
-gb_Library_TARGETS := $(filter-out pixman-1,$(gb_Library_TARGETS))
-endif
-
# vim: set noet sw=4 ts=4:
diff --git a/solenv/gbuild/platform/linux.mk b/solenv/gbuild/platform/linux.mk
index 43b4f4fbfce9..2bc0a52e4c83 100644
--- a/solenv/gbuild/platform/linux.mk
+++ b/solenv/gbuild/platform/linux.mk
@@ -277,20 +277,16 @@ gb_Library_UNOEXT := .uno$(gb_Library_PLAINEXT)
endif
gb_Library_PLAINLIBS_NONE += \
- cairo \
fontconfig \
Xrender \
- pixman-1 \
dl \
freetype \
- jpeg \
m \
pthread \
X11 \
Xext \
SM \
ICE \
- z
gb_Library_FILENAMES := \
$(foreach lib,$(gb_Library_OOOLIBS),$(lib):$(gb_Library_SYSPRE)$(lib)$(gb_Library_OOOEXT)) \
diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk
index 5100d1717b0c..7b325a03fa3c 100644
--- a/solenv/gbuild/platform/macosx.mk
+++ b/solenv/gbuild/platform/macosx.mk
@@ -325,10 +325,8 @@ gb_Library__FRAMEWORKS := \
gb_Library_PLAINLIBS_NONE += \
Cocoa \
objc \
- jpeg \
m \
pthread \
- z \
gb_Library_FILENAMES := \
$(foreach lib,$(gb_Library_OOOLIBS),$(lib):$(gb_Library_SYSPRE)$(lib)$(gb_Library_OOOEXT)) \
diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index 98a7b8187b7b..0ba0d0028929 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -260,13 +260,11 @@ gb_Library_PLAINLIBS_NONE += \
$(gb_STDLIBS) \
dl \
freetype \
- jpeg \
pthread \
X11 \
Xext \
SM \
ICE \
- z
gb_Library_FILENAMES := \
$(foreach lib,$(gb_Library_OOOLIBS),$(lib):$(gb_Library_SYSPRE)$(lib)$(gb_Library_OOOEXT)) \
diff --git a/solenv/gbuild/platform/windows.mk b/solenv/gbuild/platform/windows.mk
index 320dc110516a..52b9ed0d6935 100644
--- a/solenv/gbuild/platform/windows.mk
+++ b/solenv/gbuild/platform/windows.mk
@@ -449,7 +449,6 @@ gb_Library_PLAINEXT := .lib
gb_Library_PLAINLIBS_NONE += \
advapi32 \
- cairo \
d3d9 \
d3dx \
ddraw \
@@ -471,7 +470,6 @@ gb_Library_PLAINLIBS_NONE += \
uwinapi \
winmm \
winspool \
- z \
gb_Library_LAYER := \
$(foreach lib,$(gb_Library_OOOLIBS),$(lib):OOO) \
diff --git a/solenv/gbuild/platform/winmingw.mk b/solenv/gbuild/platform/winmingw.mk
index 5f4ac60d78f8..7c00399034ca 100644
--- a/solenv/gbuild/platform/winmingw.mk
+++ b/solenv/gbuild/platform/winmingw.mk
@@ -471,7 +471,6 @@ gb_Library_PLAINLIBS_NONE += \
$(gb_MINGW_LIBSTDCPP) \
$(gb_MINGW_LIBGCC) \
advapi32 \
- cairo \
d3d9 \
d3dx \
ddraw \
@@ -489,7 +488,6 @@ gb_Library_PLAINLIBS_NONE += \
uuid \
uwinapi \
winmm \
- z \
gb_Library_LAYER := \
$(foreach lib,$(gb_Library_OOOLIBS),$(lib):OOO) \