Bug 594821 - Trigger a sync paint on intial window show. r=roc, a=final.
[mozilla-central.git] / toolkit / toolkit-tiers.mk
blobc399c40d14e898791cce2b08fe486b904166eaf7
1 # ***** BEGIN LICENSE BLOCK *****
2 # Version: MPL 1.1/GPL 2.0/LGPL 2.1
4 # The contents of this file are subject to the Mozilla Public License Version
5 # 1.1 (the "License"); you may not use this file except in compliance with
6 # the License. You may obtain a copy of the License at
7 # http://www.mozilla.org/MPL/
9 # Software distributed under the License is distributed on an "AS IS" basis,
10 # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11 # for the specific language governing rights and limitations under the
12 # License.
14 # The Original Code is the Mozilla build system.
16 # The Initial Developer of the Original Code is
17 # the Mozilla Foundation <http://www.mozilla.org/>.
18 # Portions created by the Initial Developer are Copyright (C) 2006
19 # the Initial Developer. All Rights Reserved.
21 # Contributor(s):
22 # Benjamin Smedberg <benjamin@smedbergs.us> (Initial Code)
24 # Alternatively, the contents of this file may be used under the terms of
25 # either the GNU General Public License Version 2 or later (the "GPL"), or
26 # the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
27 # in which case the provisions of the GPL or the LGPL are applicable instead
28 # of those above. If you wish to allow use of your version of this file only
29 # under the terms of either the GPL or the LGPL, and not to allow others to
30 # use your version of this file under the terms of the MPL, indicate your
31 # decision by deleting the provisions above and replace them with the notice
32 # and other provisions required by the GPL or the LGPL. If you do not delete
33 # the provisions above, a recipient may use your version of this file under
34 # the terms of any one of the MPL, the GPL or the LGPL.
36 # ***** END LICENSE BLOCK *****
38 ifdef LIBXUL_SDK
39 $(error toolkit-tiers.mk is not compatible with --enable-libxul-sdk=)
40 endif
42 include $(topsrcdir)/config/nspr/build.mk
43 include $(topsrcdir)/config/js/build.mk
45 TIERS += platform
47 ifdef NS_TRACE_MALLOC
48 tier_platform_dirs = tools/trace-malloc/lib
49 endif
51 ifdef MOZ_TREE_FREETYPE
52 tier_platform_dirs += modules/freetype2
53 endif
55 tier_platform_dirs += xpcom
57 ifndef MOZ_NATIVE_ZLIB
58 tier_platform_dirs += modules/zlib
59 endif
61 ifndef WINCE
62 tier_platform_dirs += modules/libreg
63 endif
65 tier_platform_dirs += \
66 modules/libpref \
67 intl \
68 netwerk \
69 $(NULL)
71 ifdef MOZ_AUTH_EXTENSION
72 tier_platform_dirs += extensions/auth
73 endif
76 # "external" - 3rd party individual libraries
79 ifndef MOZ_NATIVE_JPEG
80 tier_platform_dirs += jpeg
81 endif
83 # Installer needs standalone libjar, hence standalone zlib
84 ifdef MOZ_INSTALLER
85 tier_platform_dirs += modules/zlib/standalone
86 endif
88 ifdef MOZ_UPDATER
89 ifndef MOZ_NATIVE_BZ2
90 tier_platform_dirs += modules/libbz2
91 endif
92 tier_platform_dirs += modules/libmar
93 tier_platform_dirs += other-licenses/bsdiff
94 endif
96 tier_platform_dirs += gfx/qcms
98 ifeq ($(OS_ARCH),WINCE)
99 tier_platform_dirs += modules/lib7z
100 endif
103 # "gecko" - core components
106 ifdef MOZ_IPC
107 tier_platform_dirs += ipc js/ipc js/jetpack
108 endif
110 tier_platform_dirs += \
111 js/src/xpconnect \
112 intl/chardet \
113 $(NULL)
115 ifdef MOZ_ENABLE_GTK2
116 ifdef MOZ_X11
117 tier_platform_dirs += widget/src/gtkxtbin
118 endif
119 endif
121 tier_platform_dirs += \
122 modules/libjar \
123 db \
124 $(NULL)
126 ifdef MOZ_PERMISSIONS
127 tier_platform_dirs += \
128 extensions/cookie \
129 extensions/permissions \
130 $(NULL)
131 endif
133 ifdef MOZ_STORAGE
134 tier_platform_dirs += storage
135 endif
137 ifdef MOZ_RDF
138 tier_platform_dirs += rdf
139 endif
141 ifdef MOZ_JSDEBUGGER
142 tier_platform_dirs += js/jsd
143 endif
145 ifdef MOZ_VORBIS
146 tier_platform_dirs += \
147 media/libvorbis \
148 $(NULL)
149 endif
151 ifdef MOZ_WEBM
152 tier_platform_dirs += \
153 media/libnestegg \
154 media/libvpx \
155 $(NULL)
156 endif
158 ifdef MOZ_OGG
159 tier_platform_dirs += \
160 media/libogg \
161 media/libtheora \
162 $(NULL)
163 endif
165 ifdef MOZ_SYDNEYAUDIO
166 tier_platform_dirs += \
167 media/libsydneyaudio \
168 $(NULL)
169 endif
171 tier_platform_dirs += \
172 uriloader \
173 modules/libimg \
174 caps \
175 parser \
176 gfx \
177 modules/libpr0n \
178 modules/plugin \
179 dom \
180 view \
181 widget \
182 content \
183 editor \
184 layout \
185 docshell \
186 webshell \
187 embedding \
188 xpfe/appshell \
189 $(NULL)
191 ifdef MOZ_UNIVERSALCHARDET
192 tier_platform_dirs += extensions/universalchardet
193 endif
195 ifdef ACCESSIBILITY
196 tier_platform_dirs += accessible
197 endif
200 # "toolkit" - xpfe & toolkit
203 tier_platform_dirs += profile
205 # This must preceed xpfe
206 ifdef MOZ_JPROF
207 tier_platform_dirs += tools/jprof
208 endif
210 tier_platform_dirs += xpfe/components
212 ifdef MOZ_ENABLE_XREMOTE
213 tier_platform_dirs += widget/src/xremoteclient
214 endif
216 ifdef MOZ_SPELLCHECK
217 tier_platform_dirs += extensions/spellcheck
218 endif
220 tier_platform_dirs += toolkit
222 ifdef MOZ_PSM
223 tier_platform_dirs += security/manager
224 else
225 tier_platform_dirs += security/manager/boot/public security/manager/ssl/public
226 endif
228 ifdef MOZ_PREF_EXTENSIONS
229 tier_platform_dirs += extensions/pref
230 endif
232 # JavaXPCOM JNI code is compiled into libXUL
233 ifdef MOZ_JAVAXPCOM
234 tier_platform_dirs += extensions/java/xpcom/src
235 endif
237 ifndef BUILD_STATIC_LIBS
238 ifneq (,$(MOZ_ENABLE_GTK2))
239 tier_platform_dirs += embedding/browser/gtk
240 endif
241 endif
243 ifdef MOZ_ENABLE_LIBXUL
244 tier_platform_dirs += startupcache
245 endif
247 ifndef BUILD_STATIC_LIBS
248 ifdef APP_LIBXUL_STATICDIRS
249 # Applications can cheat and ask for code to be
250 # built before libxul so libxul can be linked against it.
251 tier_platform_staticdirs += $(APP_LIBXUL_STATICDIRS)
252 endif
253 ifdef APP_LIBXUL_DIRS
254 # Applications can cheat and ask for code to be
255 # built before libxul so it can be linked into libxul.
256 tier_platform_dirs += $(APP_LIBXUL_DIRS)
257 endif
259 tier_platform_dirs += toolkit/library
260 endif
262 ifdef MOZ_ENABLE_LIBXUL
263 tier_platform_dirs += xpcom/stub
264 endif
266 ifdef NS_TRACE_MALLOC
267 tier_platform_dirs += tools/trace-malloc
268 endif
270 ifdef MOZ_ENABLE_GNOME_COMPONENT
271 tier_platform_dirs += toolkit/system/gnome
272 endif
274 ifndef MOZ_ENABLE_LIBCONIC
275 # if libconic is present, it will do its own network monitoring
276 ifdef MOZ_ENABLE_DBUS
277 tier_platform_dirs += toolkit/system/dbus
278 endif
279 endif
281 ifdef MOZ_LEAKY
282 tier_platform_dirs += tools/leaky
283 endif
285 ifdef MOZ_MAPINFO
286 tier_platform_dirs += tools/codesighs
287 endif
289 ifdef ENABLE_TESTS
290 tier_platform_dirs += testing/mochitest
291 tier_platform_dirs += testing/xpcshell
292 tier_platform_dirs += testing/mozmill
293 tier_platform_dirs += testing/tools/screenshot
294 endif