Simplify a bit
[LibreOffice.git] / RepositoryModule_host.mk
blob0679096de9e85c44c754cee4ad8f8e2d06e0bf52
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.
17 ifneq ($(MERGELIBS),)
18 $(eval $(call gb_Module_add_targets,libreoffice,\
19 Library_merged \
21 endif
23 # WASM_CHART change
24 ifneq ($(ENABLE_WASM_STRIP_CHART),TRUE)
25 $(eval $(call gb_Module_add_moduledirs,libreoffice,\
26 chart2 \
28 endif
30 # WASM_CANVAS change
31 ifneq ($(ENABLE_WASM_STRIP_CANVAS),TRUE)
32 $(eval $(call gb_Module_add_moduledirs,libreoffice,\
33 canvas \
34 cppcanvas \
36 endif
38 ifneq ($(ENABLE_WASM_STRIP_DBACCESS),TRUE)
39 $(eval $(call gb_Module_add_moduledirs,libreoffice,\
40 dbaccess \
42 endif
44 ifneq ($(ENABLE_WASM_STRIP_ACCESSIBILITY),TRUE)
45 $(eval $(call gb_Module_add_moduledirs,libreoffice,\
46 accessibility \
47 winaccessibility \
49 endif
51 $(eval $(call gb_Module_add_moduledirs,libreoffice,\
52 android \
53 $(if $(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS),, \
54 animations \
55 ) \
56 apple_remote \
57 avmedia \
58 $(if $(ENABLE_WASM_STRIP_CALC),, \
59 basctl \
60 ) \
61 basegfx \
62 basic \
63 bean \
64 binaryurp \
65 bridges \
66 cli_ure \
67 codemaker \
68 comphelper \
69 configmgr \
70 connectivity \
71 cppu \
72 cppuhelper \
73 cpputools \
74 cui \
75 desktop \
76 $(call gb_Helper_optional,DICTIONARIES,dictionaries) \
77 docmodel\
78 drawinglayer \
79 editeng \
80 embeddedobj \
81 embedserv \
82 eventattacher \
83 extensions \
84 external \
85 extras \
86 filter \
87 $(call gb_Helper_optional,DBCONNECTIVITY,forms) \
88 formula \
89 $(call gb_Helper_optional,DESKTOP,fpicker) \
90 framework \
91 $(call gb_Helper_optionals_or,HELPTOOLS XMLHELP,helpcompiler) \
92 $(call gb_Helper_optional,HELP,helpcontent2) \
93 hwpfilter \
94 i18nlangtag \
95 i18npool \
96 i18nutil \
97 idl \
98 instsetoo_native \
99 io \
100 javaunohelper \
101 jurt \
102 jvmaccess \
103 jvmfwk \
104 $(call gb_Helper_optional,LIBRELOGO,librelogo) \
105 libreofficekit \
106 lingucomponent \
107 linguistic \
108 lotuswordpro \
109 $(call gb_Helper_optional,DESKTOP,l10ntools) \
110 $(call gb_Helper_optional,NLPSOLVER,nlpsolver) \
111 o3tl \
112 $(call gb_Helper_optional,ODK,odk) \
113 offapi \
114 officecfg \
115 oovbaapi \
116 oox \
117 $(call gb_Helper_optional,OPENCL,opencl) \
118 package \
119 pch \
120 postprocess \
121 $(call gb_Helper_optional,PYUNO,pyuno) \
122 $(call gb_Helper_optional,QADEVOOO,qadevOOo) \
123 readlicense_oo \
124 registry \
125 remotebridges \
126 reportbuilder \
127 $(call gb_Helper_optional,DBCONNECTIVITY,reportdesign) \
128 ridljar \
129 sal \
130 salhelper \
131 sax \
132 $(if $(ENABLE_WASM_STRIP_CALC),, \
133 sc \
134 scaddins \
135 sccomp \
137 $(call gb_Helper_optional,DESKTOP,scp2) \
138 scripting \
139 $(if $(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS),, \
140 sd \
141 sdext \
143 $(call gb_Helper_optional,DESKTOP,setup_native) \
144 sfx2 \
145 shell \
146 $(if $(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS),, \
147 slideshow \
149 smoketest \
150 solenv \
151 soltools \
152 sot \
153 $(if $(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS),, \
154 starmath \
156 $(if $(ENABLE_CUSTOMTARGET_COMPONENTS),static) \
157 stoc \
158 store \
159 svl \
160 svtools \
161 svgio \
162 emfio \
163 svx \
164 $(if $(ENABLE_WASM_STRIP_WRITER),, \
165 sw \
166 swext \
168 sysui \
169 test \
170 testtools \
171 toolkit \
172 tools \
173 ucb \
174 ucbhelper \
175 udkapi \
176 $(call gb_Helper_optional,PYUNO,uitest) \
177 UnoControls \
178 unodevtools \
179 unoil \
180 unoidl \
181 unotest \
182 unotools \
183 unoxml \
184 ure \
185 uui \
186 vbahelper \
187 vcl \
188 wizards \
189 writerperfect \
190 xmerge \
191 $(call gb_Helper_optional,XMLHELP,xmlhelp) \
192 xmloff \
193 xmlreader \
194 xmlscript \
195 xmlsecurity \
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.
205 ifeq (,$(USE_LD))
206 define repositorymodule_serialize1
207 $(call gb_Library_get_linktarget_target,$(1)) :| $(foreach lib,$(2),$(call gb_Library_get_target,$(lib)))
208 endef
209 else
210 define repositorymodule_serialize1
211 endef
212 endif
214 define repositorymodule_serialize
215 $(if $(filter-out 0 1,$(words $(1))),\
216 $(call repositorymodule_serialize1,$(firstword $(1)),$(wordlist 2,$(words $(1)),$(1))))
217 $(if $(strip $(1)),\
218 $(call repositorymodule_serialize,$(wordlist 2,$(words $(1)),$(1))))
219 endef
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,\
227 scfilt \
228 $(call gb_Helper_optional,SCRIPTING,vbaobj) \
229 sc msword \
230 $(call gb_Helper_optional,DESKTOP,swui) \
231 sw \
232 $(if $(MERGELIBS_MORE),, \
233 sd \
234 $(call gb_Helper_optional,DBCONNECTIVITY,dbu) \
235 cui) \
236 $(if $(MERGELIBS), merged, \
237 chartcontroller chartcore oox svx svxcore xo sfx fwk svt vcl) \
239 endif
240 endif # !$(DISABLE_DYNLOADING)
242 # vim: set noet sw=4 ts=4: