[2.30] bump webkit to 1.1.16
[jhbuild/xnox.git] / patches / nss.sonames.patch
blob0f4b13e38424e58cae39d8f0ede3b224165d0277
1 #! /bin/sh /usr/share/dpatch/dpatch-run
2 ## 81_sonames.dpatch by Mike Hommey <glandium@debian.org>
3 ##
4 ## All lines beginning with `## DP:' are a description of the patch.
5 ## DP: Add soname support
7 @DPATCH@
9 --- nss/mozilla/security/coreconf/BSD_OS.mk
10 +++ nss/mozilla/security/coreconf/BSD_OS.mk
11 @@ -73,7 +73,7 @@
12 DSO_CFLAGS = -fPIC -DPIC
13 DSO_LDOPTS = -shared
14 DSO_LDFLAGS =
15 -DSO_LDOPTS += -Wl,-soname,lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)
16 +DSO_LDOPTS += -Wl,-soname,$(SONAME)
18 ifdef LIBRUNPATH
19 DSO_LDOPTS += -Wl,-R$(LIBRUNPATH)
20 --- nss/mozilla/security/coreconf/BeOS.mk
21 +++ nss/mozilla/security/coreconf/BeOS.mk
22 @@ -59,7 +59,7 @@
23 CPU_ARCH = x86
24 endif
26 -MKSHLIB = $(CC) -nostart -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
27 +MKSHLIB = $(CC) -nostart -Wl,-soname -Wl,$(SONAME)
28 ifdef BUILD_OPT
29 OPTIMIZER = -O2
30 endif
31 --- nss/mozilla/security/coreconf/FreeBSD.mk
32 +++ nss/mozilla/security/coreconf/FreeBSD.mk
33 @@ -51,7 +51,7 @@
34 OS_CFLAGS = $(DSO_CFLAGS) -ansi -Wall -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK
36 DSO_CFLAGS = -fPIC
37 -DSO_LDOPTS = -shared -Wl,-soname -Wl,$(notdir $@)
38 +DSO_LDOPTS = -shared -Wl,-soname -Wl,$(SONAME)
41 # The default implementation strategy for FreeBSD is pthreads.
42 --- nss/mozilla/security/coreconf/HP-UX.mk
43 +++ nss/mozilla/security/coreconf/HP-UX.mk
44 @@ -83,7 +83,7 @@
45 PROCESS_MAP_FILE = grep -v ';+' $< | grep -v ';-' | \
46 sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' -e 's,^,+e ,' > $@
48 -DSO_LDOPTS = -b +h $(notdir $@)
49 +DSO_LDOPTS = -b +h $(SONAME)
50 ifeq ($(OS_TEST),ia64)
51 DSO_LDOPTS += +b '$$ORIGIN'
52 endif
53 --- nss/mozilla/security/coreconf/IRIX.mk
54 +++ nss/mozilla/security/coreconf/IRIX.mk
55 @@ -102,7 +102,7 @@
56 SHLIB_LD_OPTS += -n32 -mips3
57 endif
59 -MKSHLIB += $(LD) $(SHLIB_LD_OPTS) -shared -soname $(@:$(OBJDIR)/%.so=%.so)
60 +MKSHLIB += $(LD) $(SHLIB_LD_OPTS) -shared -soname $(SONAME)
61 ifdef MAPFILE
62 # Add LD options to restrict exported symbols to those in the map file
63 endif
64 --- nss/mozilla/security/coreconf/Linux.mk
65 +++ nss/mozilla/security/coreconf/Linux.mk
66 @@ -139,7 +139,7 @@
68 ifeq ($(KERNEL)-$(OS_RELEASE),linux-2.0)
69 OS_REL_CFLAGS += -DLINUX2_0
70 - MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
71 + MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(SONAME)
72 ifdef MAPFILE
73 MKSHLIB += -Wl,--version-script,$(MAPFILE)
74 endif
75 --- nss/mozilla/security/coreconf/Linux2.1.mk
76 +++ nss/mozilla/security/coreconf/Linux2.1.mk
77 @@ -38,7 +38,7 @@
78 include $(CORE_DEPTH)/coreconf/Linux.mk
79 ifeq ($(OS_RELEASE),2.1)
80 OS_REL_CFLAGS += -DLINUX2_1
81 - MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
82 + MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(SONAME)
83 ifdef MAPFILE
84 MKSHLIB += -Wl,--version-script,$(MAPFILE)
85 endif
86 --- nss/mozilla/security/coreconf/Linux2.2.mk
87 +++ nss/mozilla/security/coreconf/Linux2.2.mk
88 @@ -38,7 +38,7 @@
89 include $(CORE_DEPTH)/coreconf/Linux.mk
91 OS_REL_CFLAGS += -DLINUX2_1
92 -MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
93 +MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(SONAME)
95 ifdef MAPFILE
96 MKSHLIB += -Wl,--version-script,$(MAPFILE)
97 --- nss/mozilla/security/coreconf/Linux2.4.mk
98 +++ nss/mozilla/security/coreconf/Linux2.4.mk
99 @@ -38,7 +38,7 @@
100 include $(CORE_DEPTH)/coreconf/Linux.mk
102 OS_REL_CFLAGS += -DLINUX2_1
103 -MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
104 +MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(SONAME)
106 ifdef MAPFILE
107 MKSHLIB += -Wl,--version-script,$(MAPFILE)
108 --- nss/mozilla/security/coreconf/Linux2.5.mk
109 +++ nss/mozilla/security/coreconf/Linux2.5.mk
110 @@ -38,7 +38,7 @@
111 include $(CORE_DEPTH)/coreconf/Linux.mk
113 OS_REL_CFLAGS += -DLINUX2_1
114 -MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
115 +MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(SONAME)
117 ifdef MAPFILE
118 MKSHLIB += -Wl,--version-script,$(MAPFILE)
119 --- nss/mozilla/security/coreconf/Linux2.6.mk
120 +++ nss/mozilla/security/coreconf/Linux2.6.mk
121 @@ -38,7 +38,7 @@
122 include $(CORE_DEPTH)/coreconf/Linux.mk
124 OS_REL_CFLAGS += -DLINUX2_1
125 -MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
126 +MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(SONAME)
128 ifdef MAPFILE
129 MKSHLIB += -Wl,--version-script,$(MAPFILE)
130 --- nss/mozilla/security/coreconf/NetBSD.mk
131 +++ nss/mozilla/security/coreconf/NetBSD.mk
132 @@ -68,7 +68,7 @@
133 DSO_LDOPTS = -shared
134 DSO_LDFLAGS =
135 ifeq ($(OBJECT_FMT),ELF)
136 -DSO_LDOPTS += -Wl,-soname,lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)
137 +DSO_LDOPTS += -Wl,-soname,$(SONAME)
138 endif
140 ifdef LIBRUNPATH
141 --- nss/mozilla/security/coreconf/OSF1.mk
142 +++ nss/mozilla/security/coreconf/OSF1.mk
143 @@ -64,7 +64,7 @@
144 endif
146 # The command to build a shared library on OSF1.
147 -MKSHLIB += ld -shared -expect_unresolved "*" -soname $(notdir $@)
148 +MKSHLIB += ld -shared -expect_unresolved "*" -soname $(SONAME)
149 ifdef MAPFILE
150 MKSHLIB += -hidden -input $(MAPFILE)
151 endif
152 --- nss/mozilla/security/coreconf/OpenBSD.mk
153 +++ nss/mozilla/security/coreconf/OpenBSD.mk
154 @@ -64,7 +64,7 @@
155 ARCH = openbsd
157 DSO_CFLAGS = -fPIC -DPIC
158 -DSO_LDOPTS = -shared -fPIC -Wl,-soname,lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)
159 +DSO_LDOPTS = -shared -fPIC -Wl,-soname,$(SONAME)
160 DSO_LDFLAGS =
162 MKSHLIB = $(CC) $(DSO_LDOPTS)
163 --- nss/mozilla/security/coreconf/QNX.mk
164 +++ nss/mozilla/security/coreconf/QNX.mk
165 @@ -54,7 +54,7 @@
166 CPU_ARCH = x86
167 endif
169 -MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
170 +MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(SONAME)
171 ifdef BUILD_OPT
172 OPTIMIZER = -O2
173 endif
174 --- nss/mozilla/security/coreconf/ReliantUNIX.mk
175 +++ nss/mozilla/security/coreconf/ReliantUNIX.mk
176 @@ -51,7 +51,7 @@
177 OPTIMIZER += -O6
178 endif
179 MKSHLIB = $(LD)
180 - MKSHLIB += -G -h $(@:$(OBJDIR)/%.so=%.so)
181 + MKSHLIB += -G -h $(SONAME)
182 DSO_LDOPTS += -G -Xlinker -Blargedynsym
183 else
184 ## native compiler (CDS++ 1.0)
185 --- nss/mozilla/security/coreconf/SunOS5.mk
186 +++ nss/mozilla/security/coreconf/SunOS5.mk
187 @@ -170,7 +170,7 @@
188 ifeq ($(USE_64), 1)
189 DSO_LDOPTS += -m64
190 endif
191 - DSO_LDOPTS += -shared -h $(notdir $@)
192 + DSO_LDOPTS += -shared -h $(SONAME)
193 else
194 ifeq ($(USE_64), 1)
195 ifeq ($(OS_TEST),i86pc)
196 @@ -179,7 +179,7 @@
197 DSO_LDOPTS +=-xarch=v9
198 endif
199 endif
200 - DSO_LDOPTS += -G -h $(notdir $@)
201 + DSO_LDOPTS += -G -h $(SONAME)
202 endif
203 DSO_LDOPTS += -z combreloc -z defs -z ignore
205 --- nss/mozilla/security/coreconf/rules.mk
206 +++ nss/mozilla/security/coreconf/rules.mk
207 @@ -119,6 +119,7 @@
208 $(INSTALL) -m 644 $(SHARED_LIBRARY:$(DLL_SUFFIX)=pdb) $(SOURCE_LIB_DIR)
209 endif
210 endif
211 + $(call MKSHLINKS,$(SOURCE_LIB_DIR))
212 endif
213 ifdef IMPORT_LIBRARY
214 $(INSTALL) -m 775 $(IMPORT_LIBRARY) $(SOURCE_LIB_DIR)
215 @@ -268,6 +269,7 @@
216 release_md::
217 ifneq ($(MD_LIB_RELEASE_FILES),)
218 $(INSTALL) -m 444 $(MD_LIB_RELEASE_FILES) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_LIB_DIR)
219 + $(call MKSHLINKS,$(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_LIB_DIR))
220 endif
221 ifneq ($(MD_BIN_RELEASE_FILES),)
222 $(INSTALL) -m 555 $(MD_BIN_RELEASE_FILES) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_BIN_DIR)
223 @@ -328,6 +330,8 @@
224 endif
225 endif
227 +$(SHARED_LIBRARY_LINKS): %: $(SHARED_LIBRARY)
229 $(SHARED_LIBRARY): $(OBJS) $(RES) $(MAPFILE) $(SUB_SHLOBJS)
230 @$(MAKE_OBJDIR)
231 rm -f $@
232 --- nss/mozilla/security/coreconf/ruleset.mk
233 +++ nss/mozilla/security/coreconf/ruleset.mk
234 @@ -123,6 +123,25 @@
235 ifndef SHARED_LIBRARY
236 SHARED_LIBRARY = $(OBJDIR)/$(DLL_PREFIX)$(LIBRARY_NAME)$(LIBRARY_VERSION)$(JDK_DEBUG_SUFFIX).$(DLL_SUFFIX)
237 endif
238 + SONAME = $(notdir $(SHARED_LIBRARY))
239 + ifdef SO_VERSION
240 + ifneq (,$(findstring $(SONAME),$(MKSHLIB)))
241 + SO_VERSION_MAJOR := $(shell echo $(SO_VERSION) | sed 's/^\([^.]*\)\(\.[^.]*\)\?\(\.[^.]*\)\?/\1/')
242 + SO_VERSION_MINOR := $(shell echo $(SO_VERSION) | sed 's/^\([^.]*\)\(\.[^.]*\)\?\(\.[^.]*\)\?/\2/')
243 + SO_VERSION_MICRO := $(shell echo $(SO_VERSION) | sed 's/^\([^.]*\)\(\.[^.]*\)\?\(\.[^.]*\)\?/\3/')
245 + SHARED_LIBRARY_LINKS := $(SONAME)
246 + ifdef SO_VERSION_MINOR
247 + SHARED_LIBRARY_LINKS += $(SONAME).$(SO_VERSION_MAJOR)
248 + endif
250 + SONAME := $(SONAME).$(SO_VERSION_MAJOR)
251 + SHARED_LIBRARY := $(SHARED_LIBRARY).$(SO_VERSION)
253 + MKSHLINKS = (cd $(1) && for link in $(SHARED_LIBRARY_LINKS); do rm -f $$link; ln -s $(notdir $(SHARED_LIBRARY)) $$link; done)
254 + endif
255 + endif
257 ifndef MAPFILE_SOURCE
258 MAPFILE_SOURCE = $(LIBRARY_NAME).def
259 endif
260 @@ -177,7 +196,7 @@
261 endif
263 ALL_TRASH = $(TARGETS) $(OBJS) $(OBJDIR) LOGS TAGS $(GARBAGE) \
264 - so_locations $(BUILT_SRCS) $(NOSUCHFILE)
265 + so_locations $(BUILT_SRCS) $(NOSUCHFILE) $(SHARED_LIBRARY_LINKS)
267 ifdef NS_USE_JDK
268 ALL_TRASH += $(JDK_HEADER_CFILES) $(JDK_STUB_CFILES) \
269 --- nss/mozilla/security/nss/lib/nss/manifest.mn
270 +++ nss/mozilla/security/nss/lib/nss/manifest.mn
271 @@ -57,6 +57,7 @@
273 LIBRARY_NAME = nss
274 LIBRARY_VERSION = 3
275 +SO_VERSION = 1d
277 # This part of the code, including all sub-dirs, can be optimized for size
278 export ALLOW_OPT_CODE_SIZE = 1
279 --- nss/mozilla/security/nss/lib/smime/manifest.mn
280 +++ nss/mozilla/security/nss/lib/smime/manifest.mn
281 @@ -79,6 +79,7 @@
283 LIBRARY_NAME = smime
284 LIBRARY_VERSION = 3
285 +SO_VERSION = 1d
287 # This part of the code, including all sub-dirs, can be optimized for size
288 export ALLOW_OPT_CODE_SIZE = 1
289 --- nss/mozilla/security/nss/lib/ssl/manifest.mn
290 +++ nss/mozilla/security/nss/lib/ssl/manifest.mn
291 @@ -86,6 +86,7 @@
293 LIBRARY_NAME = ssl
294 LIBRARY_VERSION = 3
295 +SO_VERSION = 1d
297 # This part of the code, including all sub-dirs, can be optimized for size
298 export ALLOW_OPT_CODE_SIZE = 1
299 --- nss/mozilla/security/nss/lib/util/manifest.mn
300 +++ nss/mozilla/security/nss/lib/util/manifest.mn
301 @@ -101,6 +101,7 @@
303 LIBRARY_NAME = nssutil
304 LIBRARY_VERSION = 3
305 +SO_VERSION = 1d
307 # This part of the code, including all sub-dirs, can be optimized for size
308 export ALLOW_OPT_CODE_SIZE = 1