1 # vim:set ts=8 sw=8 sts=8 noet:
2 # ***** BEGIN LICENSE BLOCK *****
3 # Version: MPL 1.1/GPL 2.0/LGPL 2.1
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/
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
15 # The Original Code is mozilla.org code.
17 # The Initial Developer of the Original Code is IBM Corporation.
18 # Portions created by IBM Corporation are Copyright (C) 2004
19 # IBM Corporation. All Rights Reserved.
22 # Darin Fisher <darin@meer.net>
24 # Alternatively, the contents of this file may be used under the terms of
25 # either of the GNU General Public License Version 2 or later (the "GPL"),
26 # or 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 topsrcdir
= @top_srcdir@
43 include $(DEPTH
)/config
/autoconf.mk
48 # The XPCOM glue uses realpath() on libxpcom.so to resolve any symlinks. We
49 # want it to find dist/bin and not xpcom/stub so we copy instead of symlinking.
52 # Do not set EXPORT_LIBRARY as we do not want xpcom in the static libs list
55 MOZILLA_INTERNAL_API
= 1
60 LOCAL_INCLUDES
= -I
$(srcdir)/..
/build
62 CPPSRCS
= nsXPComStub.
cpp
64 ifndef MOZ_ENABLE_LIBXUL
65 ifeq ($(OS_TARGET
),OS2
)
66 ifndef MOZ_OS2_HIGH_MEMORY
67 CPPSRCS
+= nsOS2VACLegacy.
cpp
72 # If we have an import library, then copy that to the SDK. Otherwise,
73 # copy the shared library.
74 ifneq (,$(filter OS2 WINCE WINNT
,$(OS_ARCH
)))
75 SDK_LIBRARY
= $(IMPORT_LIBRARY
)
77 SDK_LIBRARY
= $(SHARED_LIBRARY
)
85 EXTRA_DSO_LDOPTS
= $(LIBS_DIR
)
87 DEPENDENT_LIBS_LIST
+= \
88 $(LIB_PREFIX
)nspr4
$(DLL_SUFFIX
) \
89 $(LIB_PREFIX
)plc4
$(DLL_SUFFIX
) \
90 $(LIB_PREFIX
)plds4
$(DLL_SUFFIX
) \
93 ifdef MOZ_ENABLE_LIBXUL
95 DEPENDENT_LIBS_LIST
+= \
96 $(LIB_PREFIX
)sqlite3
$(DLL_SUFFIX
) \
97 $(LIB_PREFIX
)nssutil3
$(DLL_SUFFIX
) \
98 $(LIB_PREFIX
)softokn3
$(DLL_SUFFIX
) \
99 $(LIB_PREFIX
)nss3
$(DLL_SUFFIX
) \
100 $(LIB_PREFIX
)ssl3
$(DLL_SUFFIX
) \
101 $(LIB_PREFIX
)smime3
$(DLL_SUFFIX
) \
104 ifeq (,$(filter-out WINNT WINCE
,$(OS_ARCH
)))
105 DEPENDENT_LIBS_LIST
+= js
$(MOZ_BITS
)$(VERSION_NUMBER
)$(DLL_SUFFIX
)
107 DEPENDENT_LIBS_LIST
+= $(LIB_PREFIX
)mozjs
$(DLL_SUFFIX
)
110 ifeq (Darwin
,$(OS_ARCH
))
111 EXTRA_DSO_LDOPTS
+= $(DIST
)/bin
/XUL
112 DEPENDENT_LIBS_LIST
+= XUL
115 DEPENDENT_LIBS_LIST
+= $(LIB_PREFIX
)xul
$(DLL_SUFFIX
)
118 else #!MOZ_ENABLE_LIBXUL
120 ifeq ($(OS_TARGET
),OS2
)
121 EXTRA_DSO_LIBS
= xpcomcor
122 DEPENDENT_LIBS_LIST
+= xpcomcor.dll
124 EXTRA_DSO_LIBS
= xpcom_core
125 DEPENDENT_LIBS_LIST
+= $(LIB_PREFIX
)xpcom_core
$(DLL_SUFFIX
)
130 EXTRA_DSO_LDOPTS
+= $(EXTRA_DSO_LIBS
) $(NSPR_LIBS
)
132 include $(topsrcdir
)/config
/rules.mk
134 libs
:: $(FINAL_TARGET
)/dependentlibs.list
136 $(FINAL_TARGET
)/dependentlibs.list
: Makefile.in
138 ( $(foreach dlib
,$(DEPENDENT_LIBS_LIST
),echo
$(dlib
);) ) > $@