macOS /w Xcode 15: force the old linker when targeting macOS 11 or lower
[libreoffice.git] / RepositoryModule_host.mk
blob2fbee39dc6105cc7f4d86751cbf04892015fe25a
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 onlineupdate \
116 oovbaapi \
117 oox \
118 $(call gb_Helper_optional,OPENCL,opencl) \
119 package \
120 pch \
121 postprocess \
122 $(call gb_Helper_optional,PYUNO,pyuno) \
123 $(call gb_Helper_optional,QADEVOOO,qadevOOo) \
124 readlicense_oo \
125 registry \
126 remotebridges \
127 reportbuilder \
128 $(call gb_Helper_optional,DBCONNECTIVITY,reportdesign) \
129 ridljar \
130 sal \
131 salhelper \
132 sax \
133 $(if $(ENABLE_WASM_STRIP_CALC),, \
134 sc \
135 scaddins \
136 sccomp \
138 $(call gb_Helper_optional,DESKTOP,scp2) \
139 scripting \
140 $(if $(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS),, \
141 sd \
142 sdext \
144 $(call gb_Helper_optional,DESKTOP,setup_native) \
145 sfx2 \
146 shell \
147 $(if $(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS),, \
148 slideshow \
150 smoketest \
151 solenv \
152 soltools \
153 sot \
154 $(if $(ENABLE_WASM_STRIP_BASIC_DRAW_MATH_IMPRESS),, \
155 starmath \
157 $(if $(ENABLE_CUSTOMTARGET_COMPONENTS),static) \
158 stoc \
159 store \
160 svl \
161 svtools \
162 svgio \
163 emfio \
164 svx \
165 $(if $(ENABLE_WASM_STRIP_WRITER),, \
166 sw \
167 swext \
169 sysui \
170 test \
171 testtools \
172 toolkit \
173 tools \
174 ucb \
175 ucbhelper \
176 udkapi \
177 $(call gb_Helper_optional,PYUNO,uitest) \
178 UnoControls \
179 unodevtools \
180 unoil \
181 unoidl \
182 unotest \
183 unotools \
184 unoxml \
185 ure \
186 uui \
187 vbahelper \
188 vcl \
189 wizards \
190 writerfilter \
191 writerperfect \
192 xmerge \
193 $(call gb_Helper_optional,XMLHELP,xmlhelp) \
194 xmloff \
195 xmlreader \
196 xmlscript \
197 xmlsecurity \
200 ifeq (,$(DISABLE_DYNLOADING))
201 # Especially when building everything with symbols, the linking of the largest
202 # libraries takes enormous amounts of RAM. To prevent annoying OOM situations
203 # etc., try to prevent linking these in parallel by adding artificial build
204 # order dependencies here.
205 # Do this only if a linker is not explicitly set, as this should only apply
206 # to the BFD linker and any decently modern linker presumably performs better.
207 ifeq (,$(USE_LD))
208 define repositorymodule_serialize1
209 $(call gb_Library_get_linktarget_target,$(1)) :| $(foreach lib,$(2),$(call gb_Library_get_target,$(lib)))
210 endef
211 else
212 define repositorymodule_serialize1
213 endef
214 endif
216 define repositorymodule_serialize
217 $(if $(filter-out 0 1,$(words $(1))),\
218 $(call repositorymodule_serialize1,$(firstword $(1)),$(wordlist 2,$(words $(1)),$(1))))
219 $(if $(strip $(1)),\
220 $(call repositorymodule_serialize,$(wordlist 2,$(words $(1)),$(1))))
221 endef
223 # DO NOT SORT ALPHABETICALLY: the libraries must be listed in dependency order,
224 # otherwise cyclic dependencies ruin everything.
225 # do not serialize on a partial build as that may fail due to missing deps.
226 # the default goal is build (see Module.mk)
227 ifeq (,$(filter-out build check unitcheck slowcheck screenshot subsequentcheck uicheck coverage,$(MAKECMDGOALS)))
228 $(eval $(call repositorymodule_serialize,\
229 scfilt \
230 $(call gb_Helper_optional,SCRIPTING,vbaobj) \
231 sc msword \
232 $(call gb_Helper_optional,DESKTOP,swui) \
233 sw sd \
234 $(call gb_Helper_optional,DBCONNECTIVITY,dbu) \
235 writerfilter cui chartcontroller chartcore oox \
236 $(if $(MERGELIBS), merged, \
237 svx svxcore xo sfx fwk svt vcl) \
239 endif
240 endif # !$(DISABLE_DYNLOADING)
242 # vim: set noet sw=4 ts=4: