diff options
author | Peter Foley <pefoley2@verizon.net> | 2013-04-10 19:02:44 -0400 |
---|---|---|
committer | Peter Foley <pefoley2@verizon.net> | 2013-04-11 19:00:12 -0400 |
commit | 0e5f2ea0de71439fe121da47deaba68585541808 (patch) | |
tree | f44a0d2e0a1f3a9e8e5cae3f8e2f916c546ed7fd | |
parent | 6524435017f38759476970447007364e762134d0 (diff) |
create --enable-mergelibs=all option
Support cramming everything into one big merged library as well as
only the libraries depended upon by almost everything.
Change-Id: I69647037dc62840294ba670d5d6c172a4608bf3f
-rw-r--r-- | RepositoryModule_host.mk | 4 | ||||
-rw-r--r-- | configure.ac | 16 | ||||
-rw-r--r-- | solenv/gbuild/extensions/pre_MergedLibsList.mk | 50 | ||||
-rw-r--r-- | solenv/gbuild/platform/com_GCC_defs.mk | 2 | ||||
-rw-r--r-- | solenv/gbuild/platform/com_MSC_defs.mk | 2 |
5 files changed, 41 insertions, 33 deletions
diff --git a/RepositoryModule_host.mk b/RepositoryModule_host.mk index c67bd61f6577..f163ac27ca8e 100644 --- a/RepositoryModule_host.mk +++ b/RepositoryModule_host.mk @@ -237,7 +237,7 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\ $(call gb_Helper_optional,ZLIB,zlib) \ )) -ifeq ($(MERGELIBS),TRUE) +ifneq ($(MERGELIBS),) $(eval $(call gb_Module_add_targets,libreoffice,\ Library_merged \ $(if $(URELIBS),Library_urelibs) \ @@ -267,7 +267,7 @@ $(eval $(call repositorymodule_serialize,\ sc msword swui sw sd \ $(if $(filter DBCONNECTIVITY,$(BUILD_TYPE)),dbu) \ writerfilter cui chartcontroller oox \ - $(if $(filter TRUE,$(MERGELIBS)),merged,svxcore) \ + $(if $(MERGELIBS),merged,svxcore) \ xo vcl \ )) endif diff --git a/configure.ac b/configure.ac index 512db8012811..96ddaf761b54 100644 --- a/configure.ac +++ b/configure.ac @@ -709,9 +709,10 @@ AC_ARG_ENABLE([hardlink-deliver], ) AC_ARG_ENABLE(mergelibs, - AS_HELP_STRING([--enable-mergelibs], + AS_HELP_STRING([--enable-mergelibs=<all/yes>], [Enables linking of big, merged, library. Experimental feature tested - only on Linux and Android.]) + only on Linux and Android. All will link a lot more libraries into libmerged + while yes or no argument will simply enable a core set of libraries.]) ) AC_ARG_ENABLE(graphite, @@ -11632,16 +11633,21 @@ fi # =================================================================== AC_MSG_CHECKING([whether to create huge library]) MERGELIBS= -if test "$enable_mergelibs" = "yes"; then +if test "$enable_mergelibs" != "no"; then if test $_os != Linux -a $_os != Android -a $_os != WINNT; then add_warning "--enable-mergelibs is not tested for this platform" fi - MERGELIBS="TRUE" + if test "$enable_mergelibs" = "all"; then + MERGELIBS="ALL" + URELIBS="TRUE" + else + MERGELIBS="CORE" + fi AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi -AC_SUBST(MERGELIBS) +AC_SUBST([MERGELIBS]) AC_SUBST([URELIBS]) # =================================================================== diff --git a/solenv/gbuild/extensions/pre_MergedLibsList.mk b/solenv/gbuild/extensions/pre_MergedLibsList.mk index 28558fb1f531..115e2613ca05 100644 --- a/solenv/gbuild/extensions/pre_MergedLibsList.mk +++ b/solenv/gbuild/extensions/pre_MergedLibsList.mk @@ -25,31 +25,44 @@ # in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable # instead of those above. -ifeq ($(MERGELIBS),TRUE) - -# FIXME: just retaining these for now - they currently crash & need thought. +ifneq ($(MERGELIBS),) # set of libraries to link even more stuff into one merged library gb_EXTRAMERGEDLIBS := \ - analysis \ $(if $(filter unx,$(GUIBASE)),basebmp) \ - $(call gb_Helper_optional,DBCONNECTIVITY,calc) \ chartcore \ + $(call gb_Helper_optional,DBCONNECTIVITY,dba) \ + $(call gb_Helper_optional,DBCONNECTIVITY,dbtools) \ + $(call gb_Helper_optional,DBCONNECTIVITY,dbu) \ + $(call gb_Helper_optional,DBCONNECTIVITY,file) \ + for \ + forui \ + fwl \ + $(if $(filter-out ANDROID IOS,$(OS)),odbcbase) \ + oox \ + $(call gb_Helper_optional,PYUNO,pyuno) \ + $(call gb_Helper_optional,DBCONNECTIVITY,rpt) \ + sc \ + sd \ + sw \ + swd \ + test \ + unotest \ + $(if $(DISABLE_SCRIPTING),,vbahelper) \ + xmlsecurity + +# FIXME: just retaining these for now - they currently crash & need thought. +#gb_EXTRAMERGEDLIBS := \ + analysis \ + $(call gb_Helper_optional,DBCONNECTIVITY,calc) \ ctl \ cui \ date \ - $(call gb_Helper_optional,DBCONNECTIVITY,dba) \ $(call gb_Helper_optional,DBCONNECTIVITY,dbase) \ - $(call gb_Helper_optional,DBCONNECTIVITY,dbtools) \ - $(call gb_Helper_optional,DBCONNECTIVITY,dbu) \ embobj \ evtatt \ fastsax \ - $(call gb_Helper_optional,DBCONNECTIVITY,file) \ $(call gb_Helper_optional,DBCONNECTIVITY,flat) \ - for \ - forui \ $(call gb_Helper_optional,DBCONNECTIVITY,frm) \ - fwl \ fwm \ hwp \ hyphen \ @@ -65,38 +78,26 @@ gb_EXTRAMERGEDLIBS := \ localedata_euro \ localedata_others \ $(if $(filter-out ANDROID IOS,$(OS)),odbc) \ - $(if $(filter-out ANDROID IOS,$(OS)),odbcbase) \ - oox \ pricing \ $(call gb_Helper_optional,PYUNO,pythonloader) \ - $(call gb_Helper_optional,PYUNO,pyuno) \ - $(call gb_Helper_optional,DBCONNECTIVITY,rpt) \ $(call gb_Helper_optional,DBCONNECTIVITY,rptui) \ $(call gb_Helper_optional,DBCONNECTIVITY,rptxml) \ - sc \ $(if $(DISABLE_SCRIPTING),,scriptframe) \ scui \ scfilt \ - sd \ sdui \ $(if $(filter-out IOS,$(OS)),solver) \ spell \ $(if $(DISABLE_SCRIPTING),,stringresource) \ subsequenttest \ - sw \ swui \ - swd \ - test \ textfd \ ucpcmis1 \ - unotest \ - $(if $(DISABLE_SCRIPTING),,vbahelper) \ $(if $(filter-out IOS,$(OS)),wpftdraw) \ $(if $(filter-out IOS,$(OS)),wpftwriter) \ writerfilter \ xmlfa \ xmlfd \ - xmlsecurity # we link all object files from these libraries into one, merged library gb_MERGEDLIBS := \ @@ -142,6 +143,7 @@ gb_MERGEDLIBS := \ xmlscript \ xo \ xstor \ + $(if $(filter ALL,$(MERGELIBS)),$(gb_EXTRAMERGEDLIBS)) ifneq (,$(URELIBS)) gb_URELIBS := \ diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk index aedd7036b0de..2f4b36749945 100644 --- a/solenv/gbuild/platform/com_GCC_defs.mk +++ b/solenv/gbuild/platform/com_GCC_defs.mk @@ -106,7 +106,7 @@ gb_CFLAGS_WERROR := -Werror gb_CXXFLAGS_WERROR := -Werror endif -ifeq ($(MERGELIBS),TRUE) +ifneq ($(MERGELIBS),) gb_CFLAGS_COMMON += -DLIBO_MERGELIBS gb_CXXFLAGS_COMMON += -DLIBO_MERGELIBS endif diff --git a/solenv/gbuild/platform/com_MSC_defs.mk b/solenv/gbuild/platform/com_MSC_defs.mk index e8488ef74c3a..153b2fb0f06d 100644 --- a/solenv/gbuild/platform/com_MSC_defs.mk +++ b/solenv/gbuild/platform/com_MSC_defs.mk @@ -237,7 +237,7 @@ gb_CFLAGS_WERROR := -WX gb_CXXFLAGS_WERROR := -WX endif -ifeq ($(MERGELIBS),TRUE) +ifneq ($(MERGELIBS),) gb_CFLAGS += -DLIBO_MERGELIBS gb_CXXFLAGS += -DLIBO_MERGELIBS endif |