blob: 58eb4f5fb2811bf432595122e684deba67d11ab9 [file] [log] [blame]
Takeshi Abeb2bd33e2011-08-10 02:12:48 +09001# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
Norbert Thiebaud7c1026a2011-04-23 21:14:25 -05002#
3# Version: MPL 1.1 / GPLv3+ / LGPLv3+
4#
5# The contents of this file are subject to the Mozilla Public License Version
6# 1.1 (the "License"); you may not use this file except in compliance with
7# the License. You may obtain a copy of the License at
8# http://www.mozilla.org/MPL/
9#
10# Software distributed under the License is distributed on an "AS IS" basis,
11# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12# for the specific language governing rights and limitations under the
13# License.
14#
15# The Initial Developer of the Original Code is
16# Norbert Thiebaud <nthiebaud@gmail.com> (C) 2011, All Rights Reserved.
17#
18# Alternatively, the contents of this file may be used under the terms of
19# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
20# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
21# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
22# instead of those above.
23
24
Bjoern Michaelsen3b9483e2012-12-04 16:36:59 +010025$(eval $(call gb_Module_Module,tail_build))
Norbert Thiebaud7c1026a2011-04-23 21:14:25 -050026
Bjoern Michaelsen3b9483e2012-12-04 16:36:59 +010027$(eval $(call gb_Module_add_moduledirs,tail_build,\
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050028 accessibility \
29 $(call gb_Helper_optional,AFMS,afms) \
30 animations \
Norbert Thiebaud4df639b2012-09-29 02:34:58 -050031 $(call gb_Helper_optional,APACHE_COMMONS,apache-commons) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050032 apple_remote \
David Tardonbcd0b2a2012-08-02 17:57:23 +020033 autodoc \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050034 avmedia \
35 basctl \
36 basebmp \
David Tardon5e4eee12012-05-24 12:00:51 +020037 basegfx \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050038 basic \
39 bean \
Peter Foley0d909e72012-11-09 18:47:06 -050040 $(call gb_Helper_optional,BOOST,boost) \
David Ostrovsky02e40082012-10-02 09:31:35 +020041 $(call gb_Helper_optional,BSH,beanshell) \
David Tardonfa871912012-05-24 12:11:58 +020042 binaryurp \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050043 $(call gb_Helper_optional,BLUEZ,bluez_bluetooth) \
David Tardonf60ee812012-07-29 11:59:35 +020044 bridges \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +010045 $(call gb_Helper_optional,CAIRO,cairo) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050046 canvas \
47 chart2 \
David Tardonf60ee812012-07-29 11:59:35 +020048 cli_ure \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050049 $(call gb_Helper_optional,CLUCENE,clucene) \
50 $(call gb_Helper_optional,DESKTOP,codemaker) \
51 comphelper \
52 configmgr \
53 connectivity \
David Tardonbcd0b2a2012-08-02 17:57:23 +020054 cosv \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050055 cppcanvas \
David Tardonf60ee812012-07-29 11:59:35 +020056 cppu \
57 cppuhelper \
David Tardonabcab9d2012-05-24 12:13:37 +020058 cpputools \
Peter Foley4dc53ab2012-10-23 16:55:04 -040059 $(call gb_Helper_optional,CT2N,ct2n) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050060 cui \
Peter Foley0f075122012-10-29 10:50:32 -040061 $(call gb_Helper_optional,CURL,curl) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050062 dbaccess \
63 desktop \
64 $(call gb_Helper_optional,DICTIONARIES,dictionaries) \
65 dtrans \
66 drawinglayer \
67 editeng \
68 embeddedobj \
David Tardone767cc772012-05-24 12:21:14 +020069 embedserv \
Matúš Kukan51fca812012-10-28 12:01:09 +010070 $(call gb_Helper_optional,EPM,epm) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050071 eventattacher \
72 extensions \
David Tardon04e69632012-08-22 13:16:39 +020073 extras \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050074 fileaccess \
75 filter \
76 forms \
77 formula \
78 fpicker \
79 framework \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +020080 $(call gb_Helper_optional,GRAPHITE,graphite) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050081 $(call gb_Helper_optional,DESKTOP,helpcompiler) \
82 $(call gb_Helper_optional,HSQLDB,hsqldb) \
Peter Foley2e4ab692012-10-28 13:43:54 -040083 $(call gb_Helper_optional,HUNSPELL,hunspell) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050084 hwpfilter \
Peter Foleydd584cb2012-11-03 13:54:46 -040085 $(call gb_Helper_optional,HYPHEN,hyphen) \
David Tardond2f23a22012-05-24 11:59:16 +020086 i18npool \
David Tardonee28c182012-05-24 12:08:45 +020087 i18nutil \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -050088 idl \
89 $(call gb_Helper_optional,DESKTOP,idlc) \
David Tardon3018f4f2012-05-24 12:12:43 +020090 io \
David Tardon87e0c602012-05-24 12:15:38 +020091 javaunohelper \
David Ostrovsky368e23a2012-10-04 09:41:00 +020092 $(call gb_Helper_optional,JFREEREPORT,jfreereport) \
Matúš Kukane7d94922012-11-10 12:48:30 +010093 $(call gb_Helper_optional,JPEG,jpeg) \
David Tardonf60ee812012-07-29 11:59:35 +020094 jurt \
95 jvmaccess \
96 jvmfwk \
Matúš Kukan72258d12012-10-28 00:39:39 +020097 $(call gb_Helper_optional,LANGUAGETOOL,languagetool) \
Peter Foleyf7452122012-11-04 08:46:44 -050098 $(call gb_Helper_optional,LCMS2,lcms2) \
Matúš Kukan0c6fbca2012-09-04 13:21:43 +020099 libcdr \
Matúš Kukan707194e2012-09-06 18:19:34 +0200100 libcmis \
Peter Foley31219f02012-11-09 17:25:56 -0500101 $(call gb_Helper_optional,LIBEXTTEXTCAT,libexttextcat) \
Peter Foley782151a2012-11-11 16:02:36 -0500102 $(call gb_Helper_optional,LIBLANGTAG,liblangtag) \
Matúš Kukan105edf32012-09-04 13:11:45 +0200103 libmspub \
Matúš Kukan1ee76032012-09-09 15:29:43 +0200104 liborcus \
Andras Timar74abeff2012-11-07 23:31:44 +0100105 librelogo \
Matúš Kukan97ed2612012-09-03 13:57:46 +0200106 libvisio \
Matúš Kukan85e34a42012-09-04 14:08:14 +0200107 libwpd \
Matúš Kukanbe742b22012-09-04 14:00:07 +0200108 libwpg \
Matúš Kukan71a3db72012-09-04 12:55:40 +0200109 libwps \
Peter Foleyec6af412012-11-29 20:50:15 -0500110 libxmlsec \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500111 lingucomponent \
112 linguistic \
113 lotuswordpro \
Peter Foley085346f2012-11-03 19:19:30 -0400114 $(call gb_Helper_optional,LPSOLVE,lpsolve) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500115 $(call gb_Helper_optional,DESKTOP,l10ntools) \
116 MathMLDTD \
Matúš Kukana1417c72012-09-11 14:34:48 +0200117 mdds \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500118 Mesa \
119 $(call gb_Helper_optional,MORE_FONTS,more_fonts) \
Peter Foley7e2c27c2012-10-28 09:39:23 -0400120 $(call gb_Helper_optional,MYTHES,mythes) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500121 $(call gb_Helper_optional,NEON,neon) \
122 $(call gb_Helper_optional,NLPSOLVER,nlpsolver) \
123 np_sdk \
David Tardon5e4eee12012-05-24 12:00:51 +0200124 o3tl \
David Tardonf60ee812012-07-29 11:59:35 +0200125 offapi \
126 officecfg \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500127 oovbaapi \
128 oox \
Matúš Kukanc3a586a2012-10-28 12:35:07 +0100129 $(call gb_Helper_optional,OPENLDAP,openldap) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500130 package \
131 padmin \
Peter Foleyffcaa762012-10-21 09:15:12 -0400132 $(call gb_Helper_optional,POSTGRESQL,postgresql) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500133 psprint_config \
134 $(call gb_Helper_optional,PYUNO,pyuno) \
135 $(call gb_Helper_optional,QADEVOOO,qadevOOo) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500136 readlicense_oo \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500137 registry \
138 remotebridges \
139 reportbuilder \
140 reportdesign \
David Ostrovskyae1f2f62012-10-02 23:22:37 +0200141 $(call gb_Helper_optional,RHINO,rhino) \
David Tardonf60ee812012-07-29 11:59:35 +0200142 ridljar \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500143 rsc \
Peter Foley42adaa02012-10-25 20:26:22 -0400144 sal \
David Tardonf60ee812012-07-29 11:59:35 +0200145 salhelper \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500146 sane \
David Tardon0799823e2012-05-24 12:05:01 +0200147 sax \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500148 sc \
149 scaddins \
150 sccomp \
151 $(call gb_Helper_optional,DESKTOP,scp2) \
152 scripting \
153 sd \
154 sdext \
155 sfx2 \
156 shell \
157 slideshow \
158 smoketest \
159 sot \
160 starmath \
David Tardonf60ee812012-07-29 11:59:35 +0200161 stoc \
162 store \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500163 svl \
164 svtools \
Michael Meeks44cfc7c2012-10-09 12:22:23 +0100165 svgio \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500166 svx \
167 sw \
168 swext \
169 test \
170 testtools \
Norbert Thiebaud8f2859a2012-09-29 02:42:25 -0500171 $(call gb_Helper_optional,TOMCAT,tomcat) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500172 toolkit \
David Tardond7767f62012-05-24 11:56:50 +0200173 tools \
Tor Lillqvist92f23292012-06-05 16:35:49 +0300174 touch \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500175 tubes \
176 twain \
177 ucb \
David Tardonf60ee812012-07-29 11:59:35 +0200178 ucbhelper \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500179 $(call gb_Helper_optional,UCPP,ucpp) \
David Tardonf60ee812012-07-29 11:59:35 +0200180 udkapi \
David Tardonbcd0b2a2012-08-02 17:57:23 +0200181 udm \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500182 unixODBC \
183 UnoControls \
184 unodevtools \
David Tardon1d5c70b2012-05-24 12:17:24 +0200185 unoil \
David Tardon77fa4ee2012-05-24 12:02:36 +0200186 unotest \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500187 unotools \
188 unoxml \
David Tardon6b78dd32012-05-24 12:10:14 +0200189 ure \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500190 uui \
191 vbahelper \
192 vcl \
Matúš Kukan54a06c62012-08-25 01:29:00 +0200193 vigra \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500194 wizards \
195 writerfilter \
196 writerperfect \
Fridrich Štrbaec6013c2012-11-21 16:28:14 +0100197 $(call gb_Helper_optional,X11_EXTENSIONS,x11_extensions) \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500198 xmerge \
199 $(call gb_Helper_optional,DESKTOP,xmlhelp) \
200 xmloff \
David Tardonf60ee812012-07-29 11:59:35 +0200201 xmlreader \
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500202 xmlscript \
203 xmlsecurity \
Matúš Kukanc640a422012-09-24 13:49:02 +0200204 xsltml \
Norbert Thiebaud7c1026a2011-04-23 21:14:25 -0500205))
206
Michael Meeks87610042011-08-24 14:23:13 +0100207ifeq ($(MERGELIBS),TRUE)
Bjoern Michaelsen3b9483e2012-12-04 16:36:59 +0100208$(eval $(call gb_Module_add_targets,tail_build,\
Matúš Kukan75fac982011-08-24 12:17:31 +0100209 Library_merged \
210))
211endif
212
Michael Stahl6d1cef52012-05-15 19:34:46 +0200213# Especially when building everything with symbols, the linking of the largest
Norbert Thiebaud47894cd2012-09-29 02:21:20 -0500214# libraries takes enormous amounts of RAM. To prevent annoying OOM situations
Michael Stahl6d1cef52012-05-15 19:34:46 +0200215# etc., try to prevent linking these in parallel by adding artificial build
216# order dependencies here.
217define tailbuild_serialize1
218$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,$(1))) \
219 :| $(foreach lib,$(2),$(call gb_Library_get_target,$(lib)))
220endef
221
222define tailbuild_serialize
223$(if $(filter-out 0 1,$(words $(1))),\
224$(call tailbuild_serialize1,$(firstword $(1)),$(wordlist 2,$(words $(1)),$(1))))
225$(if $(strip $(1)),\
226$(call tailbuild_serialize,$(wordlist 2,$(words $(1)),$(1))))
227endef
228
Matúš Kukanf1835782012-08-09 10:35:24 +0200229ifeq (all,$(filter all,$(MAKECMDGOALS)))
Michael Meeks88880512012-07-11 09:54:22 +0100230$(eval $(call tailbuild_serialize,\
Tor Lillqvist7617e9c2012-08-02 14:24:00 +0300231 scfilt \
232 $(if $(filter SCRIPTING,$(BUILD_TYPE)),vbaobj) \
233 sc msword swui sw sd \
Michael Meeks88880512012-07-11 09:54:22 +0100234 $(if $(filter DBCONNECTIVITY,$(BUILD_TYPE)),dbu) \
Caolán McNamarab1cab9f2012-07-11 13:35:02 +0100235 writerfilter cui chartcontroller oox \
Caolán McNamaraa248f1b2012-07-11 12:40:49 +0100236 $(if $(filter TRUE,$(MERGELIBS)),merged,svxcore) \
Caolán McNamarab1cab9f2012-07-11 13:35:02 +0100237 vcl xo \
Michael Meeks88880512012-07-11 09:54:22 +0100238))
Matúš Kukanf1835782012-08-09 10:35:24 +0200239endif
Michael Stahl6d1cef52012-05-15 19:34:46 +0200240
Tor Lillqvist35491072011-08-02 21:22:35 +0300241# vim: set noet sw=4 ts=4: