Magellan Linux

Contents of /trunk/mozilla-firefox/patches/mozilla-firefox-1.5.0.11-system-nss.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 153 - (show annotations) (download)
Tue May 8 20:52:56 2007 UTC (17 years ago) by niro
File size: 14562 byte(s)
-import

1 Index: mozilla/configure.in
2 ===================================================================
3 RCS file: /cvsroot/mozilla/configure.in,v
4 retrieving revision 1.1571
5 diff -u -r1.1571 configure.in
6 --- mozilla/configure.in 16 Dec 2005 20:55:43 -0000 1.1571
7 +++ mozilla/configure.in 20 Dec 2005 09:31:22 -0000
8 @@ -86,6 +86,7 @@
9 MOZPNG=10207
10 MOZZLIB=1.2.3
11 NSPR_VERSION=4
12 +NSS_VERSION=3
13
14 dnl Set the minimum version of toolkit libs used by mozilla
15 dnl ========================================================
16 @@ -3558,6 +3559,42 @@
17 fi
18 fi
19
20 +dnl ========================================================
21 +dnl = If NSS was not detected in the system,
22 +dnl = use the one in the source tree (mozilla/security/nss)
23 +dnl ========================================================
24 +
25 +MOZ_ARG_WITH_BOOL(system-nss,
26 +[ --with-system-nss Use system installed NSS],
27 + _USE_SYSTEM_NSS=1 )
28 +
29 +if test -n "$_USE_SYSTEM_NSS"; then
30 + AM_PATH_NSS(3.0.0, [MOZ_NATIVE_NSS=1], [MOZ_NATIVE_NSS=])
31 +fi
32 +
33 +if test -n "$MOZ_NATIVE_NSS"; then
34 + NSS_LIBS="$NSS_LIBS -lcrmf"
35 +else
36 + NSS_CFLAGS='-I$(DIST)/public/nss'
37 + NSS_DEP_LIBS='\\\
38 + $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \\\
39 + $(DIST)/lib/$(DLL_PREFIX)smime'$NSS_VERSION'$(DLL_SUFFIX) \\\
40 + $(DIST)/lib/$(DLL_PREFIX)ssl'$NSS_VERSION'$(DLL_SUFFIX) \\\
41 + $(DIST)/lib/$(DLL_PREFIX)nss'$NSS_VERSION'$(DLL_SUFFIX) \\\
42 + $(DIST)/lib/$(DLL_PREFIX)softokn'$NSS_VERSION'$(DLL_SUFFIX)'
43 +
44 + if test -z "$GNU_CC" && test "$OS_ARCH" = "WINNT" -o "$OS_ARCH" = "WINCE" -o "$OS_ARCH" = "OS2"; then
45 + NSS_LIBS='\\\
46 + $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \\\
47 + $(DIST)/lib/$(DLL_PREFIX)smime'$NSS_VERSION'$(IMPORT_LIB_SUFFIX) \\\
48 + $(DIST)/lib/$(DLL_PREFIX)ssl'$NSS_VERSION'$(IMPORT_LIB_SUFFIX) \\\
49 + $(DIST)/lib/$(DLL_PREFIX)nss'$NSS_VERSION'$(IMPORT_LIB_SUFFIX) \\\
50 + $(DIST)/lib/$(DLL_PREFIX)softokn'$NSS_VERSION'$(IMPORT_LIB_SUFFIX)'
51 + else
52 + NSS_LIBS='-L$(LIBS_DIR)'" -lcrmf -lsmime$NSS_VERSION -lssl$NSS_VERSION -lnss$NSS_VERSION -lsoftokn$NSS_VERSION"
53 + fi
54 +fi
55 +
56 if test -z "$SKIP_LIBRARY_CHECKS"; then
57 dnl system JPEG support
58 dnl ========================================================
59 @@ -7002,6 +7039,11 @@
60 AC_SUBST(NSPR_LIBS)
61 AC_SUBST(MOZ_NATIVE_NSPR)
62
63 +AC_SUBST(NSS_CFLAGS)
64 +AC_SUBST(NSS_LIBS)
65 +AC_SUBST(NSS_DEP_LIBS)
66 +AC_SUBST(MOZ_NATIVE_NSS)
67 +
68 AC_SUBST(CFLAGS)
69 AC_SUBST(CXXFLAGS)
70 AC_SUBST(CPPFLAGS)
71 Index: mozilla/aclocal.m4
72 ===================================================================
73 RCS file: /cvsroot/mozilla/aclocal.m4,v
74 retrieving revision 1.14
75 diff -u -r1.14 aclocal.m4
76 --- mozilla/aclocal.m4 13 May 2004 03:12:47 -0000 1.14
77 +++ mozilla/aclocal.m4 20 Dec 2005 09:31:35 -0000
78 @@ -8,6 +8,7 @@
79 builtin(include, build/autoconf/libIDL.m4)dnl
80 builtin(include, build/autoconf/libIDL-2.m4)dnl
81 builtin(include, build/autoconf/nspr.m4)dnl
82 +builtin(include, build/autoconf/nss.m4)dnl
83 builtin(include, build/autoconf/libart.m4)dnl
84 builtin(include, build/autoconf/pkg.m4)dnl
85 builtin(include, build/autoconf/freetype2.m4)dnl
86 Index: mozilla/config/autoconf.mk.in
87 ===================================================================
88 RCS file: /cvsroot/mozilla/config/autoconf.mk.in,v
89 retrieving revision 3.379
90 diff -u -r3.379 autoconf.mk.in
91 --- mozilla/config/autoconf.mk.in 16 Dec 2005 20:55:43 -0000 3.379
92 +++ mozilla/config/autoconf.mk.in 20 Dec 2005 09:31:36 -0000
93 @@ -236,6 +236,7 @@
94 MOZ_INSURE_EXCLUDE_DIRS = @MOZ_INSURE_EXCLUDE_DIRS@
95
96 MOZ_NATIVE_NSPR = @MOZ_NATIVE_NSPR@
97 +MOZ_NATIVE_NSS = @MOZ_NATIVE_NSS@
98
99 CROSS_COMPILE = @CROSS_COMPILE@
100
101 @@ -391,6 +392,11 @@
102 NSPR_CFLAGS = @NSPR_CFLAGS@
103 NSPR_LIBS = @NSPR_LIBS@
104
105 +NSS_CONFIG = @NSS_CONFIG@
106 +NSS_CFLAGS = @NSS_CFLAGS@
107 +NSS_LIBS = @NSS_LIBS@
108 +NSS_DEP_LIBS = @NSS_DEP_LIBS@
109 +
110 LDAP_CFLAGS = @LDAP_CFLAGS@
111 LDAP_LIBS = @LDAP_LIBS@
112 XPCOM_GLUE_LDOPTS = @XPCOM_GLUE_LDOPTS@
113 Index: mozilla/config/config.mk
114 ===================================================================
115 RCS file: /cvsroot/mozilla/config/config.mk,v
116 retrieving revision 3.344
117 diff -u -r3.344 config.mk
118 --- mozilla/config/config.mk 18 Dec 2005 17:09:20 -0000 3.344
119 +++ mozilla/config/config.mk 20 Dec 2005 09:31:36 -0000
120 @@ -136,39 +136,6 @@
121 FINAL_LINK_COMPS = $(DEPTH)/config/final-link-comps
122 FINAL_LINK_COMP_NAMES = $(DEPTH)/config/final-link-comp-names
123
124 -#
125 -# NSS libs needed for final link in static build
126 -#
127 -
128 -NSS_LIBS = \
129 - $(LIBS_DIR) \
130 - $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
131 - -lsmime3 \
132 - -lssl3 \
133 - -lnss3 \
134 - -lsoftokn3 \
135 - $(NULL)
136 -
137 -ifneq (,$(filter OS2 WINNT WINCE, $(OS_ARCH)))
138 -ifndef GNU_CC
139 -NSS_LIBS = \
140 - $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
141 - $(DIST)/lib/$(LIB_PREFIX)smime3.$(IMPORT_LIB_SUFFIX) \
142 - $(DIST)/lib/$(LIB_PREFIX)ssl3.$(IMPORT_LIB_SUFFIX) \
143 - $(DIST)/lib/$(LIB_PREFIX)nss3.$(IMPORT_LIB_SUFFIX) \
144 - $(DIST)/lib/$(LIB_PREFIX)softokn3.$(IMPORT_LIB_SUFFIX) \
145 - $(NULL)
146 -endif
147 -endif
148 -
149 -NSS_DEP_LIBS = \
150 - $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
151 - $(DIST)/lib/$(DLL_PREFIX)smime3$(DLL_SUFFIX) \
152 - $(DIST)/lib/$(DLL_PREFIX)ssl3$(DLL_SUFFIX) \
153 - $(DIST)/lib/$(DLL_PREFIX)nss3$(DLL_SUFFIX) \
154 - $(DIST)/lib/$(DLL_PREFIX)softokn3$(DLL_SUFFIX) \
155 - $(NULL)
156 -
157 MOZ_UNICHARUTIL_LIBS = $(DIST)/lib/$(LIB_PREFIX)unicharutil_s.$(LIB_SUFFIX)
158 MOZ_REGISTRY_LIBS = $(DIST)/lib/$(LIB_PREFIX)mozreg_s.$(LIB_SUFFIX)
159 MOZ_WIDGET_SUPPORT_LIBS = $(DIST)/lib/$(LIB_PREFIX)widgetsupport_s.$(LIB_SUFFIX)
160 Index: mozilla/build/autoconf/nss.m4
161 ===================================================================
162 RCS file: mozilla/build/autoconf/nss.m4
163 diff -N mozilla/build/autoconf/nss.m4
164 --- /dev/null 1 Jan 1970 00:00:00 -0000
165 +++ mozilla/build/autoconf/nss.m4 20 Dec 2005 09:31:36 -0000
166 @@ -0,0 +1,67 @@
167 +# -*- tab-width: 4; -*-
168 +# Configure paths for NSS
169 +# Public domain - Chris Seawood <cls@seawood.org> 2001-04-05
170 +# Based upon gtk.m4 (also PD) by Owen Taylor
171 +
172 +dnl AM_PATH_NSS([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
173 +dnl Test for NSS, and define NSS_CFLAGS and NSS_LIBS
174 +AC_DEFUN(AM_PATH_NSS,
175 +[dnl
176 +
177 +AC_ARG_WITH(nss-prefix,
178 + [ --with-nss-prefix=PFX Prefix where NSS is installed],
179 + nss_config_prefix="$withval",
180 + nss_config_prefix="")
181 +
182 +AC_ARG_WITH(nss-exec-prefix,
183 + [ --with-nss-exec-prefix=PFX
184 + Exec prefix where NSS is installed],
185 + nss_config_exec_prefix="$withval",
186 + nss_config_exec_prefix="")
187 +
188 + if test -n "$nss_config_exec_prefix"; then
189 + nss_config_args="$nss_config_args --exec-prefix=$nss_config_exec_prefix"
190 + if test -z "$NSS_CONFIG"; then
191 + NSS_CONFIG=$nss_config_exec_prefix/bin/nss-config
192 + fi
193 + fi
194 + if test -n "$nss_config_prefix"; then
195 + nss_config_args="$nss_config_args --prefix=$nss_config_prefix"
196 + if test -z "$NSS_CONFIG"; then
197 + NSS_CONFIG=$nss_config_prefix/bin/nss-config
198 + fi
199 + fi
200 +
201 + unset ac_cv_path_NSS_CONFIG
202 + AC_PATH_PROG(NSS_CONFIG, nss-config, no)
203 + min_nss_version=ifelse([$1], ,3.0.0,$1)
204 + AC_MSG_CHECKING(for NSS - version >= $min_nss_version (skipping))
205 +
206 + no_nss=""
207 + if test "$NSS_CONFIG" = "no"; then
208 + no_nss="yes"
209 + else
210 + NSS_CFLAGS=`$NSS_CONFIG $nss_config_args --cflags`
211 + NSS_LIBS=`$NSS_CONFIG $nss_config_args --libs`
212 +
213 + dnl Skip version check for now
214 + nss_config_major_version=`$NSS_CONFIG $nss_config_args --version | \
215 + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
216 + nss_config_minor_version=`$NSS_CONFIG $nss_config_args --version | \
217 + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
218 + nss_config_micro_version=`$NSS_CONFIG $nss_config_args --version | \
219 + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
220 + fi
221 +
222 + if test -z "$no_nss"; then
223 + AC_MSG_RESULT(yes)
224 + ifelse([$2], , :, [$2])
225 + else
226 + AC_MSG_RESULT(no)
227 + fi
228 +
229 +
230 + AC_SUBST(NSS_CFLAGS)
231 + AC_SUBST(NSS_LIBS)
232 +
233 +])
234 Index: mozilla/security/manager/Makefile.in
235 ===================================================================
236 RCS file: /cvsroot/mozilla/security/manager/Makefile.in,v
237 retrieving revision 1.59
238 diff -u -r1.59 Makefile.in
239 --- mozilla/security/manager/Makefile.in 2 Nov 2005 21:50:36 -0000 1.59
240 +++ mozilla/security/manager/Makefile.in 20 Dec 2005 09:31:37 -0000
241 @@ -46,6 +46,8 @@
242 MODULE = psm
243
244 PACKAGE_FILE = psm.pkg
245 +
246 +ifndef MOZ_NATIVE_NSS
247 PACKAGE_VARS += \
248 NSS3_LIB \
249 SMIME3_LIB \
250 @@ -57,6 +59,7 @@
251 $(NULL)
252
253 LOADABLE_ROOT_MODULE = $(DLL_PREFIX)nssckbi$(DLL_SUFFIX)
254 +endif
255
256 NSS3_LIB = $(DLL_PREFIX)nss3$(DLL_SUFFIX)
257 SMIME3_LIB = $(DLL_PREFIX)smime3$(DLL_SUFFIX)
258 @@ -150,6 +153,7 @@
259 export:: .nss.cleaned
260
261 .nss.cleaned: .nss.checkout
262 +ifndef MOZ_NATIVE_NSS
263 $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS) clean
264 $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS) clean
265 ifndef SKIP_CHK
266 @@ -157,9 +161,12 @@
267 $(MAKE) -C $(topsrcdir)/security/nss/cmd/shlibsign $(DEFAULT_GMAKE_FLAGS) clean
268 endif
269 touch $@
270 +endif
271
272 .nss.checkout:
273 +ifndef MOZ_NATIVE_NSS
274 touch $(srcdir)/$@
275 +endif
276
277 dependclean export packages chrome::
278 $(MAKE) -C boot $@
279 @@ -170,12 +177,15 @@
280 endif
281
282 libs::
283 +ifndef MOZ_NATIVE_NSS
284 $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS)
285 +endif
286 ifeq ($(OS_ARCH),WINNT)
287 cd $(DIST)/lib; cp -f $(LIB_PREFIX)dbm$(MOZ_BITS).$(LIB_SUFFIX) $(LIB_PREFIX)dbm.$(LIB_SUFFIX)
288 else
289 cd $(DIST)/lib; cp -f $(LIB_PREFIX)mozdbm_s.$(LIB_SUFFIX) $(LIB_PREFIX)dbm.$(LIB_SUFFIX); $(RANLIB) $(LIB_PREFIX)dbm.$(LIB_SUFFIX)
290 endif
291 +ifndef MOZ_NATIVE_NSS
292 $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS)
293 ifndef SKIP_CHK
294 $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS)
295 @@ -195,6 +205,7 @@
296 $(INSTALL) -m 644 $(DIST)/lib/$(FREEBL_HYBRID_CHK) $(DIST)/bin
297 $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_HYBRID_MODULE) $(DIST)/bin
298 endif
299 +endif
300 $(MAKE) -C boot $@
301 $(MAKE) -C ssl $@
302 $(MAKE) -C locales $@
303 @@ -203,6 +214,7 @@
304 endif
305
306 install::
307 +ifndef MOZ_NATIVE_NSS
308 $(SYSINSTALL) -m 755 $(DIST)/lib/$(LOADABLE_ROOT_MODULE) $(DESTDIR)$(mozappdir)
309 ifndef SKIP_CHK
310 $(SYSINSTALL) -m 644 $(DIST)/lib/$(SOFTOKEN3_CHK) $(DESTDIR)$(mozappdir)
311 @@ -217,6 +229,7 @@
312 $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_HYBRID_CHK) $(DESTDIR)$(mozappdir)
313 $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_HYBRID_MODULE) $(DESTDIR)$(mozappdir)
314 endif
315 +endif
316 $(MAKE) -C boot $@
317 $(MAKE) -C ssl $@
318 $(MAKE) -C locales $@
319 @@ -231,15 +244,18 @@
320 ifdef MOZ_XUL
321 $(MAKE) -C pki $@
322 endif
323 +ifndef MOZ_NATIVE_NSS
324 $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS) clean
325 $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS) clean
326 ifndef SKIP_CHK
327 $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS) clean
328 $(MAKE) -C $(topsrcdir)/security/nss/cmd/shlibsign $(DEFAULT_GMAKE_FLAGS) clean
329 endif
330 +endif
331
332 echo-requires-recursive::
333 $(MAKE) -C boot $@
334 $(MAKE) -C ssl $@
335 $(MAKE) -C pki $@
336 $(MAKE) -C locales $@
337 +
338 Index: mozilla/security/manager/ssl/src/Makefile.in
339 ===================================================================
340 RCS file: /cvsroot/mozilla/security/manager/ssl/src/Makefile.in,v
341 retrieving revision 1.68
342 diff -u -r1.68 Makefile.in
343 --- mozilla/security/manager/ssl/src/Makefile.in 1 Sep 2005 12:43:58 -0000 1.68
344 +++ mozilla/security/manager/ssl/src/Makefile.in 20 Dec 2005 09:31:37 -0000
345 @@ -123,8 +123,7 @@
346
347 # Use local includes because they are inserted before INCLUDES
348 # so that Mozilla's nss.h is used, not glibc's
349 -LOCAL_INCLUDES += -I$(DIST)/public/nss \
350 - $(NULL)
351 +LOCAL_INCLUDES = $(NSS_CFLAGS)
352
353 EXTRA_DSO_LDOPTS += \
354 $(MOZ_UNICHARUTIL_LIBS) \
355 Index: mozilla/security/manager/ssl/src/nsNSSComponent.cpp
356 ===================================================================
357 RCS file: /cvsroot/mozilla/security/manager/ssl/src/nsNSSComponent.cpp,v
358 retrieving revision 1.129
359 diff -u -r1.129 nsNSSComponent.cpp
360 --- mozilla/security/manager/ssl/src/nsNSSComponent.cpp 14 Nov 2005 20:09:49 -0000 1.129
361 +++ mozilla/security/manager/ssl/src/nsNSSComponent.cpp 20 Dec 2005 09:31:39 -0000
362 @@ -485,14 +485,6 @@
363 }
364
365
366 -#ifdef XP_MAC
367 -#ifdef DEBUG
368 -#define LOADABLE_CERTS_MODULE NS_LITERAL_CSTRING("NSSckbiDebug.shlb")
369 -#else
370 -#define LOADABLE_CERTS_MODULE NS_LITERAL_CSTRING("NSSckbi.shlb")
371 -#endif /*DEBUG*/
372 -#endif /*XP_MAC*/
373 -
374 static void setOCSPOptions(nsIPrefBranch * pref);
375
376 NS_IMETHODIMP
377 @@ -686,40 +678,42 @@
378
379 const char *possible_ckbi_locations[] = {
380 NS_GRE_DIR,
381 - NS_XPCOM_CURRENT_PROCESS_DIR
382 + NS_XPCOM_CURRENT_PROCESS_DIR,
383 + 0 // This special value means:
384 + // search for ckbi in the directories on the shared
385 + // library/DLL search path
386 };
387 -
388 +
389 for (size_t il = 0; il < sizeof(possible_ckbi_locations)/sizeof(const char*); ++il) {
390 nsCOMPtr<nsILocalFile> mozFile;
391 - directoryService->Get( possible_ckbi_locations[il],
392 - NS_GET_IID(nsILocalFile),
393 - getter_AddRefs(mozFile));
394 + char *fullModuleName = nsnull;
395 +
396 + if (!possible_ckbi_locations[il])
397 + {
398 + fullModuleName = PR_GetLibraryName(nsnull, "nssckbi");
399 + }
400 + else
401 + {
402 + directoryService->Get( possible_ckbi_locations[il],
403 + NS_GET_IID(nsILocalFile),
404 + getter_AddRefs(mozFile));
405
406 - if (!mozFile) {
407 - continue;
408 + if (!mozFile) {
409 + continue;
410 + }
411 +
412 + nsCAutoString processDir;
413 + mozFile->GetNativePath(processDir);
414 + fullModuleName = PR_GetLibraryName(processDir.get(), "nssckbi");
415 }
416
417 - char *fullModuleName = nsnull;
418 -#ifdef XP_MAC
419 - nsCAutoString nativePath;
420 - mozFile->AppendNative(NS_LITERAL_CSTRING("Essential Files"));
421 - mozFile->AppendNative(LOADABLE_CERTS_MODULE);
422 - mozFile->GetNativePath(nativePath);
423 - fullModuleName = (char *) nativePath.get();
424 -#else
425 - nsCAutoString processDir;
426 - mozFile->GetNativePath(processDir);
427 - fullModuleName = PR_GetLibraryName(processDir.get(), "nssckbi");
428 -#endif
429 /* If a module exists with the same name, delete it. */
430 NS_ConvertUCS2toUTF8 modNameUTF8(modName);
431 int modType;
432 SECMOD_DeleteModule(NS_CONST_CAST(char*, modNameUTF8.get()), &modType);
433 SECStatus rv_add =
434 SECMOD_AddNewModule(NS_CONST_CAST(char*, modNameUTF8.get()), fullModuleName, 0, 0);
435 -#ifndef XP_MAC
436 - PR_Free(fullModuleName); // allocated by NSPR
437 -#endif
438 + PR_FreeLibraryName(fullModuleName); // allocated by NSPR
439 if (SECSuccess == rv_add) {
440 // found a module, no need to try other directories
441 break;