summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firefox-1.5-with-system-nss.patch627
-rwxr-xr-xfirefox-mozconfig1
-rw-r--r--firefox.spec14
3 files changed, 638 insertions, 4 deletions
diff --git a/firefox-1.5-with-system-nss.patch b/firefox-1.5-with-system-nss.patch
new file mode 100644
index 0000000..1e9c701
--- /dev/null
+++ b/firefox-1.5-with-system-nss.patch
@@ -0,0 +1,627 @@
+Index: mozilla/configure.in
+===================================================================
+RCS file: /cvsroot/mozilla/configure.in,v
+retrieving revision 1.1503.2.15
+diff -u -r1.1503.2.15 configure.in
+--- mozilla/configure.in 4 Oct 2005 05:53:49 -0000 1.1503.2.15
++++ mozilla/configure.in 15 Dec 2005 05:40:40 -0000
+@@ -86,6 +86,7 @@
+ MOZPNG=10207
+ MOZZLIB=1.2.3
+ NSPR_VERSION=4
++NSS_VERSION=3
+
+ dnl Set the minimum version of toolkit libs used by mozilla
+ dnl ========================================================
+@@ -3472,6 +3473,19 @@
+ fi
+ fi
+
++dnl ========================================================
++dnl = If NSS was not detected in the system,
++dnl = use the one in the source tree (mozilla/security/nss)
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-nss,
++[ --with-system-nss Use system installed NSS],
++ _USE_SYSTEM_NSS=1 )
++
++if test -n "$_USE_SYSTEM_NSS"; then
++ AM_PATH_NSS(3.0.0, [MOZ_NATIVE_NSS=1], [MOZ_NATIVE_NSS=])
++fi
++
+ if test -z "$SKIP_LIBRARY_CHECKS"; then
+ dnl system JPEG support
+ dnl ========================================================
+@@ -6698,6 +6712,10 @@
+ AC_SUBST(NSPR_LIBS)
+ AC_SUBST(MOZ_NATIVE_NSPR)
+
++AC_SUBST(NSS_CFLAGS)
++AC_SUBST(NSS_LIBS)
++AC_SUBST(MOZ_NATIVE_NSS)
++
+ AC_SUBST(CFLAGS)
+ AC_SUBST(CXXFLAGS)
+ AC_SUBST(CPPFLAGS)
+Index: mozilla/configure
+===================================================================
+RCS file: /cvsroot/mozilla/configure,v
+retrieving revision 1.1492.2.17
+diff -u -r1.1492.2.17 configure
+--- mozilla/configure 4 Oct 2005 06:01:48 -0000 1.1492.2.17
++++ mozilla/configure 15 Dec 2005 05:40:53 -0000
+@@ -44,6 +44,13 @@
+ --with-nspr-exec-prefix=PFX
+ Exec prefix where NSPR is installed"
+ ac_help="$ac_help
++ --with-system-nss Use system installed NSS"
++ac_help="$ac_help
++ --with-nss-prefix=PFX Prefix where NSS is installed"
++ac_help="$ac_help
++ --with-nss-exec-prefix=PFX
++ Exec prefix where NSS is installed"
++ac_help="$ac_help
+ --with-system-jpeg[=PFX]
+ Use system libjpeg [installed at prefix PFX]"
+ ac_help="$ac_help
+@@ -1020,6 +1027,7 @@
+ MOZPNG=10207
+ MOZZLIB=1.2.3
+ NSPR_VERSION=4
++NSS_VERSION=3
+
+ GLIB_VERSION=1.2.0
+ GTK_VERSION=1.2.0
+@@ -11300,6 +11308,123 @@
+ fi
+ fi
+
++
++# Check whether --with-system-nss or --without-system-nss was given.
++if test "${with_system_nss+set}" = set; then
++ withval="$with_system_nss"
++ if test "$withval" = "yes"; then
++ _USE_SYSTEM_NSS=1
++ elif test "$withval" = "no"; then
++ :
++ else
++ { echo "configure: error: Option, system-nss, does not take an argument ($withval)." 1>&2; exit 1; }
++ fi
++fi
++
++
++if test -n "$_USE_SYSTEM_NSS"; then
++
++# Check whether --with-nss-prefix or --without-nss-prefix was given.
++if test "${with_nss_prefix+set}" = set; then
++ withval="$with_nss_prefix"
++ nss_config_prefix="$withval"
++else
++ nss_config_prefix=""
++fi
++
++
++# Check whether --with-nss-exec-prefix or --without-nss-exec-prefix was given.
++if test "${with_nss_exec_prefix+set}" = set; then
++ withval="$with_nss_exec_prefix"
++ nss_config_exec_prefix="$withval"
++else
++ nss_config_exec_prefix=""
++fi
++
++
++ if test -n "$nss_config_exec_prefix"; then
++ nss_config_args="$nss_config_args --exec-prefix=$nss_config_exec_prefix"
++ if test -z "$NSS_CONFIG"; then
++ NSS_CONFIG=$nss_config_exec_prefix/bin/nss-config
++ fi
++ fi
++ if test -n "$nss_config_prefix"; then
++ nss_config_args="$nss_config_args --prefix=$nss_config_prefix"
++ if test -z "$NSS_CONFIG"; then
++ NSS_CONFIG=$nss_config_prefix/bin/nss-config
++ fi
++ fi
++
++ unset ac_cv_path_NSS_CONFIG
++ # Extract the first word of "nss-config", so it can be a program name with args.
++set dummy nss-config; ac_word=$2
++echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
++echo "configure:11363: checking for $ac_word" >&5
++if eval "test \"`echo '$''{'ac_cv_path_NSS_CONFIG'+set}'`\" = set"; then
++ echo $ac_n "(cached) $ac_c" 1>&6
++else
++ case "$NSS_CONFIG" in
++ /*)
++ ac_cv_path_NSS_CONFIG="$NSS_CONFIG" # Let the user override the test with a path.
++ ;;
++ ?:/*)
++ ac_cv_path_NSS_CONFIG="$NSS_CONFIG" # Let the user override the test with a dos path.
++ ;;
++ *)
++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
++ ac_dummy="$PATH"
++ for ac_dir in $ac_dummy; do
++ test -z "$ac_dir" && ac_dir=.
++ if test -f $ac_dir/$ac_word; then
++ ac_cv_path_NSS_CONFIG="$ac_dir/$ac_word"
++ break
++ fi
++ done
++ IFS="$ac_save_ifs"
++ test -z "$ac_cv_path_NSS_CONFIG" && ac_cv_path_NSS_CONFIG="no"
++ ;;
++esac
++fi
++NSS_CONFIG="$ac_cv_path_NSS_CONFIG"
++if test -n "$NSS_CONFIG"; then
++ echo "$ac_t""$NSS_CONFIG" 1>&6
++else
++ echo "$ac_t""no" 1>&6
++fi
++
++ min_nss_version=3.0.0
++ echo $ac_n "checking for NSS - version >= $min_nss_version (skipping)""... $ac_c" 1>&6
++echo "configure:11398: checking for NSS - version >= $min_nss_version (skipping)" >&5
++
++ no_nss=""
++ if test "$NSS_CONFIG" = "no"; then
++ no_nss="yes"
++ else
++ NSS_CFLAGS=`$NSS_CONFIG $nss_config_args --cflags`
++ NSS_LIBS=`$NSS_CONFIG $nss_config_args --libs`
++
++ nss_config_major_version=`$NSS_CONFIG $nss_config_args --version | \
++ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`
++ nss_config_minor_version=`$NSS_CONFIG $nss_config_args --version | \
++ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'`
++ nss_config_micro_version=`$NSS_CONFIG $nss_config_args --version | \
++ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'`
++ fi
++
++ if test -z "$no_nss"; then
++ echo "$ac_t""yes" 1>&6
++ MOZ_NATIVE_NSS=1
++ else
++ echo "$ac_t""no" 1>&6
++ fi
++
++
++
++
++
++
++fi
++
+ if test -z "$SKIP_LIBRARY_CHECKS"; then
+ # Check whether --with-system-jpeg or --without-system-jpeg was given.
+ if test "${with_system_jpeg+set}" = set; then
+@@ -19473,6 +19602,9 @@
+ s%@NSPR_CONFIG@%$NSPR_CONFIG%g
+ s%@NSPR_CFLAGS@%$NSPR_CFLAGS%g
+ s%@NSPR_LIBS@%$NSPR_LIBS%g
++s%@NSS_CONFIG@%$NSS_CONFIG%g
++s%@NSS_CFLAGS@%$NSS_CFLAGS%g
++s%@NSS_LIBS@%$NSS_LIBS%g
+ s%@GTK_CONFIG@%$GTK_CONFIG%g
+ s%@GTK_CFLAGS@%$GTK_CFLAGS%g
+ s%@GTK_LIBS@%$GTK_LIBS%g
+@@ -19753,6 +19885,7 @@
+ s%@MOZ_PNG_CFLAGS@%$MOZ_PNG_CFLAGS%g
+ s%@MOZ_PNG_LIBS@%$MOZ_PNG_LIBS%g
+ s%@MOZ_NATIVE_NSPR@%$MOZ_NATIVE_NSPR%g
++s%@MOZ_NATIVE_NSS@%$MOZ_NATIVE_NSS%g
+ s%@COMPILE_CFLAGS@%$COMPILE_CFLAGS%g
+ s%@COMPILE_CXXFLAGS@%$COMPILE_CXXFLAGS%g
+ s%@CROSS_COMPILE@%$CROSS_COMPILE%g
+Index: mozilla/aclocal.m4
+===================================================================
+RCS file: /cvsroot/mozilla/aclocal.m4,v
+retrieving revision 1.14
+diff -u -r1.14 aclocal.m4
+--- mozilla/aclocal.m4 13 May 2004 03:12:47 -0000 1.14
++++ mozilla/aclocal.m4 15 Dec 2005 05:40:53 -0000
+@@ -8,6 +8,7 @@
+ builtin(include, build/autoconf/libIDL.m4)dnl
+ builtin(include, build/autoconf/libIDL-2.m4)dnl
+ builtin(include, build/autoconf/nspr.m4)dnl
++builtin(include, build/autoconf/nss.m4)dnl
+ builtin(include, build/autoconf/libart.m4)dnl
+ builtin(include, build/autoconf/pkg.m4)dnl
+ builtin(include, build/autoconf/freetype2.m4)dnl
+Index: mozilla/config/autoconf.mk.in
+===================================================================
+RCS file: /cvsroot/mozilla/config/autoconf.mk.in,v
+retrieving revision 3.363.2.1
+diff -u -r3.363.2.1 autoconf.mk.in
+--- mozilla/config/autoconf.mk.in 17 Aug 2005 17:17:17 -0000 3.363.2.1
++++ mozilla/config/autoconf.mk.in 15 Dec 2005 05:40:53 -0000
+@@ -229,6 +229,7 @@
+ MOZ_INSURE_EXCLUDE_DIRS = @MOZ_INSURE_EXCLUDE_DIRS@
+
+ MOZ_NATIVE_NSPR = @MOZ_NATIVE_NSPR@
++MOZ_NATIVE_NSS = @MOZ_NATIVE_NSS@
+
+ CROSS_COMPILE = @CROSS_COMPILE@
+
+@@ -384,6 +385,48 @@
+ NSPR_CFLAGS = @NSPR_CFLAGS@
+ NSPR_LIBS = @NSPR_LIBS@
+
++NSS_CONFIG = @NSS_CONFIG@
++NSS_CFLAGS = @NSS_CFLAGS@
++NSS_LIBS = @NSS_LIBS@
++
++ifdef MOZ_NATIVE_NSS
++NSS_DEP_LIBS = \
++ $(NULL)
++NSS_LIBS += \
++ -lcrmf \
++ $(NULL)
++else
++NSS_DEP_LIBS = \
++ $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
++ $(DIST)/lib/$(DLL_PREFIX)smime3$(DLL_SUFFIX) \
++ $(DIST)/lib/$(DLL_PREFIX)ssl3$(DLL_SUFFIX) \
++ $(DIST)/lib/$(DLL_PREFIX)nss3$(DLL_SUFFIX) \
++ $(DIST)/lib/$(DLL_PREFIX)softokn3$(DLL_SUFFIX) \
++ $(NULL)
++NSS_LIBS = \
++ $(LIBS_DIR) \
++ $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
++ -lsmime3 \
++ -lssl3 \
++ -lnss3 \
++ -lsoftokn3 \
++ $(NULL)
++endif
++
++ifneq (,$(filter OS2 WINNT WINCE, $(OS_ARCH)))
++ifndef GNU_CC
++ifndef MOZ_NATIVE_NSS
++NSS_LIBS = \
++ $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
++ $(DIST)/lib/$(LIB_PREFIX)smime3.$(IMPORT_LIB_SUFFIX) \
++ $(DIST)/lib/$(LIB_PREFIX)ssl3.$(IMPORT_LIB_SUFFIX) \
++ $(DIST)/lib/$(LIB_PREFIX)nss3.$(IMPORT_LIB_SUFFIX) \
++ $(DIST)/lib/$(LIB_PREFIX)softokn3.$(IMPORT_LIB_SUFFIX) \
++ $(NULL)
++endif
++endif
++endif
++
+ LDAP_CFLAGS = @LDAP_CFLAGS@
+ LDAP_LIBS = @LDAP_LIBS@
+ XPCOM_GLUE_LDOPTS = @XPCOM_GLUE_LDOPTS@
+Index: mozilla/config/config.mk
+===================================================================
+RCS file: /cvsroot/mozilla/config/config.mk,v
+retrieving revision 3.337
+diff -u -r3.337 config.mk
+--- mozilla/config/config.mk 28 Jul 2005 19:48:11 -0000 3.337
++++ mozilla/config/config.mk 15 Dec 2005 05:40:54 -0000
+@@ -138,39 +138,6 @@
+ FINAL_LINK_COMPS = $(DEPTH)/config/final-link-comps
+ FINAL_LINK_COMP_NAMES = $(DEPTH)/config/final-link-comp-names
+
+-#
+-# NSS libs needed for final link in static build
+-#
+-
+-NSS_LIBS = \
+- $(LIBS_DIR) \
+- $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
+- -lsmime3 \
+- -lssl3 \
+- -lnss3 \
+- -lsoftokn3 \
+- $(NULL)
+-
+-ifneq (,$(filter OS2 WINNT WINCE, $(OS_ARCH)))
+-ifndef GNU_CC
+-NSS_LIBS = \
+- $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
+- $(DIST)/lib/$(LIB_PREFIX)smime3.$(IMPORT_LIB_SUFFIX) \
+- $(DIST)/lib/$(LIB_PREFIX)ssl3.$(IMPORT_LIB_SUFFIX) \
+- $(DIST)/lib/$(LIB_PREFIX)nss3.$(IMPORT_LIB_SUFFIX) \
+- $(DIST)/lib/$(LIB_PREFIX)softokn3.$(IMPORT_LIB_SUFFIX) \
+- $(NULL)
+-endif
+-endif
+-
+-NSS_DEP_LIBS = \
+- $(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \
+- $(DIST)/lib/$(DLL_PREFIX)smime3$(DLL_SUFFIX) \
+- $(DIST)/lib/$(DLL_PREFIX)ssl3$(DLL_SUFFIX) \
+- $(DIST)/lib/$(DLL_PREFIX)nss3$(DLL_SUFFIX) \
+- $(DIST)/lib/$(DLL_PREFIX)softokn3$(DLL_SUFFIX) \
+- $(NULL)
+-
+ MOZ_UNICHARUTIL_LIBS = $(DIST)/lib/$(LIB_PREFIX)unicharutil_s.$(LIB_SUFFIX)
+ MOZ_REGISTRY_LIBS = $(DIST)/lib/$(LIB_PREFIX)mozreg_s.$(LIB_SUFFIX)
+ MOZ_WIDGET_SUPPORT_LIBS = $(DIST)/lib/$(LIB_PREFIX)widgetsupport_s.$(LIB_SUFFIX)
+Index: mozilla/build/autoconf/nss.m4
+===================================================================
+RCS file: mozilla/build/autoconf/nss.m4
+diff -N mozilla/build/autoconf/nss.m4
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ mozilla/build/autoconf/nss.m4 15 Dec 2005 05:40:54 -0000
+@@ -0,0 +1,67 @@
++# -*- tab-width: 4; -*-
++# Configure paths for NSS
++# Public domain - Chris Seawood <cls@seawood.org> 2001-04-05
++# Based upon gtk.m4 (also PD) by Owen Taylor
++
++dnl AM_PATH_NSS([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
++dnl Test for NSS, and define NSS_CFLAGS and NSS_LIBS
++AC_DEFUN(AM_PATH_NSS,
++[dnl
++
++AC_ARG_WITH(nss-prefix,
++ [ --with-nss-prefix=PFX Prefix where NSS is installed],
++ nss_config_prefix="$withval",
++ nss_config_prefix="")
++
++AC_ARG_WITH(nss-exec-prefix,
++ [ --with-nss-exec-prefix=PFX
++ Exec prefix where NSS is installed],
++ nss_config_exec_prefix="$withval",
++ nss_config_exec_prefix="")
++
++ if test -n "$nss_config_exec_prefix"; then
++ nss_config_args="$nss_config_args --exec-prefix=$nss_config_exec_prefix"
++ if test -z "$NSS_CONFIG"; then
++ NSS_CONFIG=$nss_config_exec_prefix/bin/nss-config
++ fi
++ fi
++ if test -n "$nss_config_prefix"; then
++ nss_config_args="$nss_config_args --prefix=$nss_config_prefix"
++ if test -z "$NSS_CONFIG"; then
++ NSS_CONFIG=$nss_config_prefix/bin/nss-config
++ fi
++ fi
++
++ unset ac_cv_path_NSS_CONFIG
++ AC_PATH_PROG(NSS_CONFIG, nss-config, no)
++ min_nss_version=ifelse([$1], ,3.0.0,$1)
++ AC_MSG_CHECKING(for NSS - version >= $min_nss_version (skipping))
++
++ no_nss=""
++ if test "$NSS_CONFIG" = "no"; then
++ no_nss="yes"
++ else
++ NSS_CFLAGS=`$NSS_CONFIG $nss_config_args --cflags`
++ NSS_LIBS=`$NSS_CONFIG $nss_config_args --libs`
++
++ dnl Skip version check for now
++ nss_config_major_version=`$NSS_CONFIG $nss_config_args --version | \
++ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
++ nss_config_minor_version=`$NSS_CONFIG $nss_config_args --version | \
++ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
++ nss_config_micro_version=`$NSS_CONFIG $nss_config_args --version | \
++ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
++ fi
++
++ if test -z "$no_nss"; then
++ AC_MSG_RESULT(yes)
++ ifelse([$2], , :, [$2])
++ else
++ AC_MSG_RESULT(no)
++ fi
++
++
++ AC_SUBST(NSS_CFLAGS)
++ AC_SUBST(NSS_LIBS)
++
++])
+Index: mozilla/security/manager/Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/security/manager/Makefile.in,v
+retrieving revision 1.57
+diff -u -r1.57 Makefile.in
+--- mozilla/security/manager/Makefile.in 2 Jun 2005 02:03:05 -0000 1.57
++++ mozilla/security/manager/Makefile.in 15 Dec 2005 05:40:54 -0000
+@@ -46,6 +46,8 @@
+ MODULE = psm
+
+ PACKAGE_FILE = psm.pkg
++
++ifndef MOZ_NATIVE_NSS
+ PACKAGE_VARS += \
+ NSS3_LIB \
+ SMIME3_LIB \
+@@ -57,6 +59,7 @@
+ $(NULL)
+
+ LOADABLE_ROOT_MODULE = $(DLL_PREFIX)nssckbi$(DLL_SUFFIX)
++endif
+
+ NSS3_LIB = $(DLL_PREFIX)nss3$(DLL_SUFFIX)
+ SMIME3_LIB = $(DLL_PREFIX)smime3$(DLL_SUFFIX)
+@@ -147,6 +150,7 @@
+ export:: .nss.cleaned
+
+ .nss.cleaned: .nss.checkout
++ifndef MOZ_NATIVE_NSS
+ $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS) clean
+ $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS) clean
+ ifndef SKIP_CHK
+@@ -154,9 +158,12 @@
+ $(MAKE) -C $(topsrcdir)/security/nss/cmd/shlibsign $(DEFAULT_GMAKE_FLAGS) clean
+ endif
+ touch $@
++endif
+
+ .nss.checkout:
++ifndef MOZ_NATIVE_NSS
+ touch $(srcdir)/$@
++endif
+
+ dependclean export packages chrome::
+ $(MAKE) -C boot $@
+@@ -167,12 +174,15 @@
+ endif
+
+ libs::
++ifndef MOZ_NATIVE_NSS
+ $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS)
++endif
+ ifeq ($(OS_ARCH),WINNT)
+ cd $(DIST)/lib; cp -f $(LIB_PREFIX)dbm$(MOZ_BITS).$(LIB_SUFFIX) $(LIB_PREFIX)dbm.$(LIB_SUFFIX)
+ else
+ cd $(DIST)/lib; cp -f $(LIB_PREFIX)mozdbm_s.$(LIB_SUFFIX) $(LIB_PREFIX)dbm.$(LIB_SUFFIX); $(RANLIB) $(LIB_PREFIX)dbm.$(LIB_SUFFIX)
+ endif
++ifndef MOZ_NATIVE_NSS
+ $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS)
+ ifndef SKIP_CHK
+ $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS)
+@@ -210,6 +220,7 @@
+ $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_HYBRID_MODULE) $(DIST)/bin
+ endif
+ endif
++endif
+ $(MAKE) -C boot $@
+ $(MAKE) -C ssl $@
+ $(MAKE) -C locales $@
+@@ -218,6 +229,7 @@
+ endif
+
+ install::
++ifndef MOZ_NATIVE_NSS
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(LOADABLE_ROOT_MODULE) $(DESTDIR)$(mozappdir)
+ ifndef SKIP_CHK
+ $(SYSINSTALL) -m 644 $(DIST)/lib/$(SOFTOKEN3_CHK) $(DESTDIR)$(mozappdir)
+@@ -232,6 +244,7 @@
+ $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_HYBRID_CHK) $(DESTDIR)$(mozappdir)
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_HYBRID_MODULE) $(DESTDIR)$(mozappdir)
+ endif
++endif
+ $(MAKE) -C boot $@
+ $(MAKE) -C ssl $@
+ $(MAKE) -C locales $@
+@@ -246,15 +259,18 @@
+ ifdef MOZ_XUL
+ $(MAKE) -C pki $@
+ endif
++ifndef MOZ_NATIVE_NSS
+ $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS) clean
+ $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS) clean
+ ifndef SKIP_CHK
+ $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS) clean
+ $(MAKE) -C $(topsrcdir)/security/nss/cmd/shlibsign $(DEFAULT_GMAKE_FLAGS) clean
+ endif
++endif
+
+ echo-requires-recursive::
+ $(MAKE) -C boot $@
+ $(MAKE) -C ssl $@
+ $(MAKE) -C pki $@
+ $(MAKE) -C locales $@
++
+Index: mozilla/security/manager/ssl/src/Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/security/manager/ssl/src/Makefile.in,v
+retrieving revision 1.67
+diff -u -r1.67 Makefile.in
+--- mozilla/security/manager/ssl/src/Makefile.in 3 Aug 2005 05:24:18 -0000 1.67
++++ mozilla/security/manager/ssl/src/Makefile.in 15 Dec 2005 05:40:56 -0000
+@@ -123,8 +123,13 @@
+
+ # Use local includes because they are inserted before INCLUDES
+ # so that Mozilla's nss.h is used, not glibc's
++ifdef MOZ_NATIVE_NSS
++LOCAL_INCLUDES += $(NSS_CFLAGS) \
++ $(NULL)
++else
+ LOCAL_INCLUDES += -I$(DIST)/public/nss \
+ $(NULL)
++endif
+
+ EXTRA_DSO_LDOPTS += \
+ $(MOZ_UNICHARUTIL_LIBS) \
+Index: mozilla/security/manager/ssl/src/nsNSSComponent.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/security/manager/ssl/src/nsNSSComponent.cpp,v
+retrieving revision 1.126.2.1
+diff -u -r1.126.2.1 nsNSSComponent.cpp
+--- mozilla/security/manager/ssl/src/nsNSSComponent.cpp 26 Aug 2005 06:41:50 -0000 1.126.2.1
++++ mozilla/security/manager/ssl/src/nsNSSComponent.cpp 15 Dec 2005 05:41:00 -0000
+@@ -488,14 +488,6 @@
+ }
+
+
+-#ifdef XP_MAC
+-#ifdef DEBUG
+-#define LOADABLE_CERTS_MODULE NS_LITERAL_CSTRING("NSSckbiDebug.shlb")
+-#else
+-#define LOADABLE_CERTS_MODULE NS_LITERAL_CSTRING("NSSckbi.shlb")
+-#endif /*DEBUG*/
+-#endif /*XP_MAC*/
+-
+ static void setOCSPOptions(nsIPrefBranch * pref);
+
+ NS_IMETHODIMP
+@@ -689,40 +681,40 @@
+
+ const char *possible_ckbi_locations[] = {
+ NS_GRE_DIR,
+- NS_XPCOM_CURRENT_PROCESS_DIR
++ NS_XPCOM_CURRENT_PROCESS_DIR,
++ 0
+ };
+-
++
+ for (size_t il = 0; il < sizeof(possible_ckbi_locations)/sizeof(const char*); ++il) {
+ nsCOMPtr<nsILocalFile> mozFile;
+- directoryService->Get( possible_ckbi_locations[il],
+- NS_GET_IID(nsILocalFile),
+- getter_AddRefs(mozFile));
++ char *fullModuleName = nsnull;
++
++ if (!possible_ckbi_locations[il])
++ {
++ fullModuleName = PR_GetLibraryName(nsnull, "nssckbi");
++ }
++ else
++ {
++ directoryService->Get( possible_ckbi_locations[il],
++ NS_GET_IID(nsILocalFile),
++ getter_AddRefs(mozFile));
+
+- if (!mozFile) {
+- continue;
++ if (!mozFile) {
++ continue;
++ }
++
++ nsCAutoString processDir;
++ mozFile->GetNativePath(processDir);
++ fullModuleName = PR_GetLibraryName(processDir.get(), "nssckbi");
+ }
+
+- char *fullModuleName = nsnull;
+-#ifdef XP_MAC
+- nsCAutoString nativePath;
+- mozFile->AppendNative(NS_LITERAL_CSTRING("Essential Files"));
+- mozFile->AppendNative(LOADABLE_CERTS_MODULE);
+- mozFile->GetNativePath(nativePath);
+- fullModuleName = (char *) nativePath.get();
+-#else
+- nsCAutoString processDir;
+- mozFile->GetNativePath(processDir);
+- fullModuleName = PR_GetLibraryName(processDir.get(), "nssckbi");
+-#endif
+ /* If a module exists with the same name, delete it. */
+ NS_ConvertUCS2toUTF8 modNameUTF8(modName);
+ int modType;
+ SECMOD_DeleteModule(NS_CONST_CAST(char*, modNameUTF8.get()), &modType);
+ SECStatus rv_add =
+ SECMOD_AddNewModule(NS_CONST_CAST(char*, modNameUTF8.get()), fullModuleName, 0, 0);
+-#ifndef XP_MAC
+- PR_Free(fullModuleName); // allocated by NSPR
+-#endif
++ PR_FreeLibraryName(fullModuleName); // allocated by NSPR
+ if (SECSuccess == rv_add) {
+ // found a module, no need to try other directories
+ break;
diff --git a/firefox-mozconfig b/firefox-mozconfig
index b7e9f64..b483b48 100755
--- a/firefox-mozconfig
+++ b/firefox-mozconfig
@@ -1,6 +1,7 @@
. $topsrcdir/browser/config/mozconfig
ac_add_options --with-system-nspr
+ac_add_options --with-system-nss
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib
ac_add_options --with-system-png
diff --git a/firefox.spec b/firefox.spec
index 35a9874..ca4b0ae 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -1,9 +1,7 @@
-# Temporary until this works again
-ExcludeArch: ppc64
-
%define indexhtml file:///usr/share/doc/HTML/index.html
%define desktop_file_utils_version 0.9
%define nspr_version 4.6
+%define nss_version 3.10
%define cairo_version 0.5
%define official_branding 1
@@ -11,7 +9,7 @@ ExcludeArch: ppc64
Summary: Mozilla Firefox Web browser.
Name: firefox
Version: 1.5
-Release: 1.1
+Release: 2
URL: http://www.mozilla.org/projects/firefox/
License: MPL/LGPL
Group: Applications/Internet
@@ -39,6 +37,7 @@ Source100: find-external-requires
# build patches
Patch1: firefox-1.0-prdtoa.patch
Patch3: firefox-1.1-nss-system-nspr.patch
+Patch4: firefox-1.5-with-system-nss.patch
Patch5: firefox-1.1-visibility.patch
# customization patches
@@ -66,6 +65,7 @@ Patch100: firefox-bug305970.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: nspr-devel >= %{nspr_version}
+BuildRequires: nss-devel >= %{nss_version}
BuildRequires: cairo-devel >= %{cairo_version}
BuildRequires: libpng-devel, libjpeg-devel
BuildRequires: zlib-devel, zip
@@ -80,6 +80,7 @@ BuildRequires: pango-devel
BuildRequires: freetype-devel >= 2.1.9
Requires: nspr >= %{nspr_version}
+Requires: nss >= %{nss_version}
Requires: desktop-file-utils >= %{desktop_file_utils_version}
Obsoletes: phoenix, mozilla-firebird, MozillaFirebird
Provides: mozilla-firebird = %{epoch}:%{version}, MozillaFirebird = %{epoch}:%{version}
@@ -100,6 +101,7 @@ compliance, performance and portability.
%setup -q -n mozilla
#%{__tar} -xzf %{SOURCE1}
%patch3 -p1
+%patch4 -p1
# Pragma visibility is broken on most platforms for some reason.
# It works on i386 so leave it alone there. Disable elsewhere.
@@ -254,6 +256,10 @@ fi
#---------------------------------------------------------------------
%changelog
+* Thu Dec 15 2005 Christopher Aillon <caillon@redhat.com> - 1.5-2
+- Use the system NSS libraries
+- Build on ppc64
+
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
bgstack15