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
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.
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 *****
39 $(error toolkit-tiers.mk is not compatible with
--enable-libxul-sdk
=)
42 include $(topsrcdir
)/config
/nspr
/build.mk
43 include $(topsrcdir
)/config
/js
/build.mk
48 tier_platform_dirs
= tools
/trace-malloc
/lib
51 ifdef MOZ_TREE_FREETYPE
52 tier_platform_staticdirs
+= modules
/freetype2
55 tier_platform_dirs
+= xpcom
57 ifndef MOZ_NATIVE_ZLIB
58 tier_platform_dirs
+= modules
/zlib
62 tier_platform_dirs
+= modules
/libreg
65 tier_platform_dirs
+= \
71 ifdef MOZ_AUTH_EXTENSION
72 tier_platform_dirs
+= extensions
/auth
76 # "external" - 3rd party individual libraries
79 ifndef MOZ_NATIVE_JPEG
80 tier_platform_dirs
+= jpeg
83 # Installer needs standalone libjar, hence standalone zlib
85 tier_platform_dirs
+= modules
/zlib
/standalone
90 tier_platform_dirs
+= modules
/libbz2
92 tier_platform_dirs
+= modules
/libmar
93 tier_platform_dirs
+= other-licenses
/bsdiff
96 tier_platform_dirs
+= gfx
/qcms
98 ifeq ($(OS_ARCH
),WINCE
)
99 tier_platform_dirs
+= modules
/lib7z
103 # "gecko" - core components
107 tier_platform_dirs
+= ipc js
/ipc js
/jetpack
110 tier_platform_dirs
+= \
115 ifdef MOZ_ENABLE_GTK2
117 tier_platform_dirs
+= widget
/src
/gtkxtbin
121 tier_platform_dirs
+= \
126 ifdef MOZ_PERMISSIONS
127 tier_platform_dirs
+= \
129 extensions
/permissions \
134 tier_platform_dirs
+= storage
138 tier_platform_dirs
+= rdf
142 tier_platform_dirs
+= js
/jsd
146 tier_platform_dirs
+= \
152 tier_platform_dirs
+= \
158 tier_platform_dirs
+= media
/libnestegg
159 ifndef MOZ_NATIVE_LIBVPX
160 tier_platform_dirs
+= media
/libvpx
165 tier_platform_dirs
+= \
171 ifdef MOZ_SYDNEYAUDIO
172 tier_platform_dirs
+= \
173 media
/libsydneyaudio \
177 tier_platform_dirs
+= \
197 ifdef MOZ_UNIVERSALCHARDET
198 tier_platform_dirs
+= extensions
/universalchardet
202 tier_platform_dirs
+= accessible
206 # "toolkit" - xpfe & toolkit
209 tier_platform_dirs
+= profile
211 # This must preceed xpfe
213 tier_platform_dirs
+= tools
/jprof
216 tier_platform_dirs
+= xpfe
/components
218 ifdef MOZ_ENABLE_XREMOTE
219 tier_platform_dirs
+= widget
/src
/xremoteclient
223 tier_platform_dirs
+= extensions
/spellcheck
226 tier_platform_dirs
+= toolkit
229 tier_platform_dirs
+= security
/manager
231 tier_platform_dirs
+= security
/manager
/boot
/public security
/manager
/ssl
/public
234 ifdef MOZ_PREF_EXTENSIONS
235 tier_platform_dirs
+= extensions
/pref
238 tier_platform_dirs
+= services
/crypto
/component
240 # JavaXPCOM JNI code is compiled into libXUL
242 tier_platform_dirs
+= extensions
/java
/xpcom
/src
245 ifndef BUILD_STATIC_LIBS
246 ifneq (,$(MOZ_ENABLE_GTK2
))
247 tier_platform_dirs
+= embedding
/browser
/gtk
251 ifdef MOZ_ENABLE_LIBXUL
252 tier_platform_dirs
+= startupcache
255 ifndef BUILD_STATIC_LIBS
256 ifdef APP_LIBXUL_STATICDIRS
257 # Applications can cheat and ask for code to be
258 # built before libxul so libxul can be linked against it.
259 tier_platform_staticdirs
+= $(APP_LIBXUL_STATICDIRS
)
261 ifdef APP_LIBXUL_DIRS
262 # Applications can cheat and ask for code to be
263 # built before libxul so it can be linked into libxul.
264 tier_platform_dirs
+= $(APP_LIBXUL_DIRS
)
267 tier_platform_dirs
+= toolkit
/library
270 ifdef MOZ_ENABLE_LIBXUL
271 tier_platform_dirs
+= xpcom
/stub
274 ifdef NS_TRACE_MALLOC
275 tier_platform_dirs
+= tools
/trace-malloc
278 ifdef MOZ_ENABLE_GNOME_COMPONENT
279 tier_platform_dirs
+= toolkit
/system
/gnome
282 ifndef MOZ_ENABLE_LIBCONIC
283 # if libconic is present, it will do its own network monitoring
284 ifdef MOZ_ENABLE_DBUS
285 tier_platform_dirs
+= toolkit
/system
/dbus
290 tier_platform_dirs
+= tools
/leaky
294 tier_platform_dirs
+= tools
/codesighs
298 tier_platform_dirs
+= testing
/mochitest
299 tier_platform_dirs
+= testing
/xpcshell
300 tier_platform_dirs
+= testing
/mozmill
301 tier_platform_dirs
+= testing
/tools
/screenshot