|
1 # |
|
2 # This Source Code Form is subject to the terms of the Mozilla Public |
|
3 # License, v. 2.0. If a copy of the MPL was not distributed with this |
|
4 # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|
5 |
|
6 include $(topsrcdir)/config/rules.mk |
|
7 |
|
8 ifdef LIBXUL_SDK |
|
9 $(error config/nspr/Makefile.in is not compatible with --enable-libxul-sdk=) |
|
10 endif |
|
11 ifdef MOZ_NATIVE_NSPR |
|
12 $(error config/nspr/Makefile.in is not compatible with MOZ_NATIVE_NSPR) |
|
13 endif |
|
14 |
|
15 # Copy NSPR to the SDK |
|
16 ABS_DIST = $(abspath $(DIST)) |
|
17 |
|
18 ifdef MOZ_FOLD_LIBS |
|
19 # Trick the nspr build system into not building shared libraries. |
|
20 # bug #851869. |
|
21 EXTRA_MAKE_FLAGS := SHARED_LIBRARY= IMPORT_LIBRARY= SHARED_LIB_PDB= |
|
22 |
|
23 # Work around libVersionPoint conflict between all three libraries. |
|
24 # See bug #838566. |
|
25 EXTRA_MAKE_FLAGS += XP_DEFINE=-DlibVersionPoint='libVersionPoint$$(LIBRARY_NAME)' |
|
26 else |
|
27 # nspr's make export compiles and links everything, but linking can't happen |
|
28 # during export on platforms where nspr is linked against mozcrt/mozglue. |
|
29 export:: EXTRA_MAKE_FLAGS := SHARED_LIBRARY= IMPORT_LIBRARY= SHARED_LIB_PDB= |
|
30 endif |
|
31 |
|
32 libs export clean distclean:: |
|
33 $(MAKE) -C $(DEPTH)/nsprpub $@ $(EXTRA_MAKE_FLAGS) |
|
34 |
|
35 libs:: |
|
36 $(MAKE) -C $(DEPTH)/nsprpub install prefix=$(ABS_DIST)/sdk exec_prefix=$(ABS_DIST)/sdk bindir=$(ABS_DIST)/sdk/dummy includedir=$(ABS_DIST)/include/nspr libdir=$(ABS_DIST)/sdk/lib datadir=$(ABS_DIST)/sdk/dummy DESTDIR= $(EXTRA_MAKE_FLAGS) |
|
37 $(INSTALL) $(DEPTH)/nsprpub/config/nspr-config $(DIST)/sdk/bin |
|
38 $(RM) -rf $(DIST)/sdk/dummy |
|
39 ifneq (,$(filter WINNT,$(OS_ARCH))) # { |
|
40 $(RM) -f $(DIST)/sdk/lib/$(DLL_PREFIX)nspr4$(DLL_SUFFIX) $(DIST)/sdk/lib/$(DLL_PREFIX)plc4$(DLL_SUFFIX) $(DIST)/sdk/lib/$(DLL_PREFIX)plds4$(DLL_SUFFIX) |
|
41 $(RM) -f $(DIST)/sdk/lib/$(LIB_PREFIX)nspr4_s.$(LIB_SUFFIX) $(DIST)/sdk/lib/$(LIB_PREFIX)plc4_s.$(LIB_SUFFIX) $(DIST)/sdk/lib/$(LIB_PREFIX)plds4_s.$(LIB_SUFFIX) |
|
42 else # } { |
|
43 $(RM) -f $(DIST)/sdk/lib/$(LIB_PREFIX)nspr4.$(LIB_SUFFIX) $(DIST)/sdk/lib/$(LIB_PREFIX)plc4.$(LIB_SUFFIX) $(DIST)/sdk/lib/$(LIB_PREFIX)plds4.$(LIB_SUFFIX) |
|
44 endif # } |