Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
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/.
6 #! gmake
8 MOD_DEPTH = ../..
9 topsrcdir = @top_srcdir@
10 srcdir = @srcdir@
11 VPATH = @srcdir@
13 include $(MOD_DEPTH)/config/autoconf.mk
15 include $(topsrcdir)/config/config.mk
17 INCLUDES = -I$(dist_includedir) -I$(topsrcdir)/pr/include
19 CSRCS = \
20 plarena.c \
21 plhash.c \
22 plvrsion.c \
23 $(NULL)
25 HEADERS = \
26 plarenas.h \
27 plarena.h \
28 plhash.h \
29 $(NULL)
31 HEADERS := $(addprefix $(srcdir)/, $(HEADERS))
33 ifeq ($(OS_ARCH), WINNT)
34 RES=$(OBJDIR)/plds.res
35 RESNAME=plds.rc
36 endif # WINNT
38 ifeq ($(OS_ARCH), AIX)
39 ifeq ($(CLASSIC_NSPR),1)
40 OS_LIBS = -lc
41 else
42 OS_LIBS = -lc_r
43 endif
44 endif
46 ifeq ($(OS_ARCH),IRIX)
47 OS_LIBS = -lc
48 endif
50 ifeq ($(OS_ARCH),SunOS)
51 OS_LIBS = -lc
52 MAPFILE = $(OBJDIR)/pldsmap.sun
53 GARBAGE += $(MAPFILE)
54 ifdef NS_USE_GCC
55 ifdef GCC_USE_GNU_LD
56 MKSHLIB += -Wl,--version-script,$(MAPFILE)
57 else
58 MKSHLIB += -Wl,-M,$(MAPFILE)
59 endif
60 else
61 MKSHLIB += -M $(MAPFILE)
62 endif
63 # The -R '$ORIGIN' linker option instructs this library to search for its
64 # dependencies in the same directory where it resides.
65 MKSHLIB += -R '$$ORIGIN'
66 endif
68 ifeq ($(OS_ARCH),OS2)
69 MAPFILE = $(OBJDIR)/$(LIBRARY_NAME)$(LIBRARY_VERSION).def
70 GARBAGE += $(MAPFILE)
71 MKSHLIB += $(MAPFILE)
72 endif
74 EXTRA_LIBS = $(LIBNSPR)
76 # On SCOOS, we can't link with extra libraries when
77 # we build a shared library. If we do so, the linker doesn't
78 # complain, but we would run into weird problems at run-time.
79 # Therefore on these platforms, we link just the .o files.
80 ifeq ($(OS_ARCH),SCOOS)
81 EXTRA_LIBS =
82 endif
84 ifdef RESOLVE_LINK_SYMBOLS
85 EXTRA_LIBS += $(OS_LIBS)
86 endif
88 LIBRARY_NAME = plds
89 LIBRARY_VERSION = $(MOD_MAJOR_VERSION)
91 RELEASE_HEADERS = $(HEADERS)
92 RELEASE_HEADERS_DEST = $(RELEASE_INCLUDE_DIR)
93 RELEASE_LIBS = $(TARGETS)
95 include $(topsrcdir)/config/rules.mk
97 #
98 # Version information generation (begin)
99 #
100 ECHO = echo
101 TINC = $(OBJDIR)/_pl_bld.h
102 PROD = $(notdir $(SHARED_LIBRARY))
103 NOW = $(MOD_DEPTH)/config/$(OBJDIR)/now
104 SH_DATE = $(shell date "+%Y-%m-%d %T")
105 SH_NOW = $(shell $(NOW))
107 ifeq ($(NS_USE_GCC)_$(OS_ARCH),_WINNT)
108 SUF = i64
109 else
110 SUF = LL
111 endif
113 GARBAGE += $(TINC)
115 $(TINC):
116 @$(MAKE_OBJDIR)
117 @$(ECHO) '#define _BUILD_STRING "$(SH_DATE)"' > $(TINC)
118 @if test ! -z "$(SH_NOW)"; then \
119 $(ECHO) '#define _BUILD_TIME $(SH_NOW)$(SUF)' >> $(TINC); \
120 else \
121 true; \
122 fi
123 @$(ECHO) '#define _PRODUCTION "$(PROD)"' >> $(TINC)
126 $(OBJDIR)/plvrsion.$(OBJ_SUFFIX): plvrsion.c $(TINC)
127 ifeq ($(NS_USE_GCC)_$(OS_ARCH),_WINNT)
128 $(CC) -Fo$@ -c $(CFLAGS) -I$(OBJDIR) $<
129 else
130 $(CC) -o $@ -c $(CFLAGS) -I$(OBJDIR) $<
131 endif
132 #
133 # Version information generation (end)
134 #
136 #
137 # The Client build wants the shared libraries in $(dist_bindir),
138 # so we also install them there.
139 #
141 export:: $(TARGETS)
142 $(INSTALL) -m 444 $(HEADERS) $(dist_includedir)
143 $(INSTALL) -m 444 $(TARGETS) $(dist_libdir)
144 ifdef SHARED_LIBRARY
145 ifeq ($(OS_ARCH),HP-UX)
146 $(INSTALL) -m 755 $(SHARED_LIBRARY) $(dist_libdir)
147 $(INSTALL) -m 755 $(SHARED_LIBRARY) $(dist_bindir)
148 else
149 $(INSTALL) -m 444 $(SHARED_LIBRARY) $(dist_bindir)
150 endif
151 endif