1 # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
4 # This file is part of the LibreOffice project.
6 # This Source Code Form is subject to the terms of the Mozilla Public
7 # License, v. 2.0. If a copy of the MPL was not distributed with this
8 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
12 $(eval
$(call gb_Module_Module
,libreoffice
))
14 # This makefile needs to be read first because some variables like T_LIBS
15 # for libmerged are cleared there and then later we append stuff to it
16 # through e.g. gb_Library_use_external for various libraries in libmerged.
18 $(eval
$(call gb_Module_add_targets
,libreoffice
,\
24 ifneq ($(ENABLE_WASM_STRIP_CHART
),TRUE
)
25 $(eval
$(call gb_Module_add_moduledirs
,libreoffice
,\
31 ifneq ($(ENABLE_WASM_STRIP_CANVAS
),TRUE
)
32 $(eval
$(call gb_Module_add_moduledirs
,libreoffice
,\
38 ifneq ($(ENABLE_WASM_STRIP_DBACCESS
),TRUE
)
39 $(eval
$(call gb_Module_add_moduledirs
,libreoffice
,\
44 ifneq ($(ENABLE_WASM_STRIP_ACCESSIBILITY
),TRUE
)
45 $(eval
$(call gb_Module_add_moduledirs
,libreoffice
,\
51 $(eval
$(call gb_Module_add_moduledirs
,libreoffice
,\
53 $(if
$(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS
),, \
58 $(if
$(ENABLE_WASM_STRIP_CALC
),, \
76 $(call gb_Helper_optional
,DICTIONARIES
,dictionaries
) \
87 $(call gb_Helper_optional
,DBCONNECTIVITY
,forms
) \
89 $(call gb_Helper_optional
,DESKTOP
,fpicker
) \
91 $(call gb_Helper_optionals_or
,HELPTOOLS XMLHELP
,helpcompiler
) \
92 $(call gb_Helper_optional
,HELP
,helpcontent2
) \
104 $(call gb_Helper_optional
,LIBRELOGO
,librelogo
) \
109 $(call gb_Helper_optional
,DESKTOP
,l10ntools
) \
110 $(call gb_Helper_optional
,NLPSOLVER
,nlpsolver
) \
112 $(call gb_Helper_optional
,ODK
,odk
) \
117 $(call gb_Helper_optional
,OPENCL
,opencl
) \
121 $(call gb_Helper_optional
,PYUNO
,pyuno
) \
122 $(call gb_Helper_optional
,QADEVOOO
,qadevOOo
) \
127 $(call gb_Helper_optional
,DBCONNECTIVITY
,reportdesign
) \
132 $(if
$(ENABLE_WASM_STRIP_CALC
),, \
137 $(call gb_Helper_optional
,DESKTOP
,scp2
) \
139 $(if
$(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS
),, \
143 $(call gb_Helper_optional
,DESKTOP
,setup_native
) \
146 $(if
$(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS
),, \
153 $(if
$(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS
),, \
156 $(if
$(ENABLE_CUSTOMTARGET_COMPONENTS
),static
) \
164 $(if
$(ENABLE_WASM_STRIP_WRITER
),, \
176 $(call gb_Helper_optional
,PYUNO
,uitest
) \
191 $(call gb_Helper_optional
,XMLHELP
,xmlhelp
) \
198 ifeq (,$(DISABLE_DYNLOADING
))
199 # Especially when building everything with symbols, the linking of the largest
200 # libraries takes enormous amounts of RAM. To prevent annoying OOM situations
201 # etc., try to prevent linking these in parallel by adding artificial build
202 # order dependencies here.
203 # Do this only if a linker is not explicitly set, as this should only apply
204 # to the BFD linker and any decently modern linker presumably performs better.
206 define repositorymodule_serialize1
207 $(call gb_Library_get_linktarget_target
,$(1)) :|
$(foreach lib
,$(2),$(call gb_Library_get_target
,$(lib
)))
210 define repositorymodule_serialize1
214 define repositorymodule_serialize
215 $(if
$(filter-out 0 1,$(words $(1))),\
216 $(call repositorymodule_serialize1
,$(firstword $(1)),$(wordlist
2,$(words $(1)),$(1))))
218 $(call repositorymodule_serialize
,$(wordlist
2,$(words $(1)),$(1))))
221 # DO NOT SORT ALPHABETICALLY: the libraries must be listed in dependency order,
222 # otherwise cyclic dependencies ruin everything.
223 # do not serialize on a partial build as that may fail due to missing deps.
224 # the default goal is build (see Module.mk)
225 ifeq (,$(filter-out build
check unitcheck slowcheck screenshot subsequentcheck uicheck coverage
,$(MAKECMDGOALS
)))
226 $(eval
$(call repositorymodule_serialize
,\
228 $(call gb_Helper_optional
,SCRIPTING
,vbaobj
) \
230 $(call gb_Helper_optional
,DESKTOP
,swui
) \
232 $(if
$(MERGELIBS_MORE
),, \
234 $(call gb_Helper_optional
,DBCONNECTIVITY
,dbu
) \
236 $(if
$(MERGELIBS
), merged
, \
237 chartcontroller chartcore oox svx svxcore xo sfx fwk svt vcl
) \
240 endif # !$(DISABLE_DYNLOADING)
242 # vim: set noet sw=4 ts=4: