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# can't do this in manifest.mn because OS_TARGET isn't defined there.
7ifeq (,$(filter-out WIN%,$(OS_TARGET)))
8
9ifdef NS_USE_GCC
10EXTRA_SHARED_LIBS += \
11	-L$(DIST)/lib \
12	-L$(NSSUTIL_LIB_DIR) \
13	-lnssutil3 \
14	-L$(NSPR_LIB_DIR) \
15	-lplc4 \
16	-lplds4 \
17	-lnspr4\
18	$(NULL)
19else # ! NS_USE_GCC
20EXTRA_SHARED_LIBS += \
21	$(DIST)/lib/nssutil3.lib \
22	$(NSPR_LIB_DIR)/$(NSPR31_LIB_PREFIX)plc4.lib \
23	$(NSPR_LIB_DIR)/$(NSPR31_LIB_PREFIX)plds4.lib \
24	$(NSPR_LIB_DIR)/$(NSPR31_LIB_PREFIX)nspr4.lib \
25	$(NULL)
26endif # NS_USE_GCC
27
28else
29
30# $(PROGRAM) has NO explicit dependencies on $(EXTRA_SHARED_LIBS)
31# $(EXTRA_SHARED_LIBS) come before $(OS_LIBS), except on AIX.
32EXTRA_SHARED_LIBS += \
33	-L$(DIST)/lib \
34	-L$(NSSUTIL_LIB_DIR) \
35	-lnssutil3 \
36	-L$(NSPR_LIB_DIR) \
37	-lplc4 \
38	-lplds4 \
39	-lnspr4 \
40	$(NULL)
41
42endif
43
44
45# $(PROGRAM) has explicit dependencies on $(EXTRA_LIBS)
46SHARED_LIBRARY_LIBS = \
47	$(DIST)/lib/$(LIB_PREFIX)certhi.$(LIB_SUFFIX) \
48	$(DIST)/lib/$(LIB_PREFIX)cryptohi.$(LIB_SUFFIX) \
49	$(DIST)/lib/$(LIB_PREFIX)pk11wrap.$(LIB_SUFFIX) \
50	$(DIST)/lib/$(LIB_PREFIX)certdb.$(LIB_SUFFIX) \
51	$(DIST)/lib/$(LIB_PREFIX)nsspki.$(LIB_SUFFIX) \
52	$(DIST)/lib/$(LIB_PREFIX)nssdev.$(LIB_SUFFIX) \
53	$(DIST)/lib/$(LIB_PREFIX)nssb.$(LIB_SUFFIX) \
54	$(DIST)/lib/$(LIB_PREFIX)certsel.$(LIB_SUFFIX) \
55	$(DIST)/lib/$(LIB_PREFIX)checker.$(LIB_SUFFIX) \
56	$(DIST)/lib/$(LIB_PREFIX)params.$(LIB_SUFFIX) \
57	$(DIST)/lib/$(LIB_PREFIX)results.$(LIB_SUFFIX) \
58	$(DIST)/lib/$(LIB_PREFIX)top.$(LIB_SUFFIX) \
59	$(DIST)/lib/$(LIB_PREFIX)util.$(LIB_SUFFIX) \
60	$(DIST)/lib/$(LIB_PREFIX)crlsel.$(LIB_SUFFIX) \
61	$(DIST)/lib/$(LIB_PREFIX)store.$(LIB_SUFFIX) \
62	$(DIST)/lib/$(LIB_PREFIX)pki.$(LIB_SUFFIX) \
63	$(DIST)/lib/$(LIB_PREFIX)system.$(LIB_SUFFIX) \
64	$(DIST)/lib/$(LIB_PREFIX)module.$(LIB_SUFFIX) \
65	$(NULL)
66
67SHARED_LIBRARY_DIRS = \
68	../certhigh \
69	../cryptohi \
70	../pk11wrap \
71	../certdb \
72	../pki \
73	../dev \
74	../base \
75	$(NULL)
76
77ifndef NSS_DISABLE_LIBPKIX
78SHARED_LIBRARY_DIRS += \
79	../libpkix/pkix/certsel \
80	../libpkix/pkix/checker \
81	../libpkix/pkix/params \
82	../libpkix/pkix/results \
83	../libpkix/pkix/top \
84	../libpkix/pkix/util \
85	../libpkix/pkix/crlsel \
86	../libpkix/pkix/store \
87	../libpkix/pkix_pl_nss/pki \
88	../libpkix/pkix_pl_nss/system \
89	../libpkix/pkix_pl_nss/module \
90	$(NULL)
91endif
92
93ifeq (,$(filter-out WINNT WIN95,$(OS_TARGET)))
94ifndef NS_USE_GCC
95# Export 'mktemp' to be backward compatible with NSS 3.2.x and 3.3.x
96# but do not put it in the import library.  See bug 142575.
97DEFINES += -DWIN32_NSS3_DLL_COMPAT
98DLLFLAGS += -EXPORT:mktemp=nss_mktemp,PRIVATE
99endif
100endif
101
102ifdef POLICY_FILE
103ifndef POLICY_PATH
104$(error You must define POLICY_PATH if you set POLICY_FILE)
105endif
106DEFINES += -DPOLICY_FILE=\"$(POLICY_FILE)\" -DPOLICY_PATH=\"$(POLICY_PATH)\"
107endif
108