diff options
author | Khaled Hosny <khaledhosny@eglug.org> | 2013-11-03 20:15:13 +0200 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2013-11-04 02:26:20 -0600 |
commit | 55df380f008851af859970bfb88942b8872f9cda (patch) | |
tree | 7896b02e186deac342c09aaa12f201de9a2a5526 /external/nss/nss.patch | |
parent | 11d41e980a5e2d5a4f75183af422a99a79692fc4 (diff) |
fdo#70393: move nss to a subdir of external
Change-Id: Ibbeb6b284c6c5fb9bba4ad52abed69321bba90d8
Reviewed-on: https://gerrit.libreoffice.org/6545
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
Diffstat (limited to 'external/nss/nss.patch')
-rw-r--r-- | external/nss/nss.patch | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/external/nss/nss.patch b/external/nss/nss.patch new file mode 100644 index 000000000000..e2d7d7653308 --- /dev/null +++ b/external/nss/nss.patch @@ -0,0 +1,242 @@ +--- misc/nss-3.13.5/mozilla/nsprpub/configure 2010-02-08 19:41:35.000000000 +0100 ++++ misc/build/nss-3.13.5/mozilla/nsprpub/configure 2010-06-11 16:35:54.960188991 +0200 +@@ -3900,7 +3900,7 @@ + PR_MD_CSRCS=linux.c + MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' + DSO_CFLAGS=-fPIC +- DSO_LDOPTS='-shared -Wl,-soname -Wl,$(notdir $@)' ++ DSO_LDOPTS='-shared -Wl,-z,origin -Wl,-rpath,\$$ORIGIN -Wl,-soname -Wl,$(notdir $@)' + _OPTIMIZE_FLAGS=-O2 + _DEBUG_FLAGS="-g -fno-inline" # most people on linux use gcc/gdb, and that + # combo is not yet good at debugging inlined +--- misc/nss-3.13.5/mozilla/security/coreconf/Darwin.mk 2010-02-04 19:59:10.000000000 +0100 ++++ misc/build/nss-3.13.5/mozilla/security/coreconf/Darwin.mk 2010-06-11 16:35:54.966185975 +0200 +@@ -39,8 +39,12 @@ + + DEFAULT_COMPILER = gcc + +-CC = gcc +-CCC = g++ ++# CC is taken from environment automatically. ++#CC = cc ++# Use CCC from environment. ++#CCC = c++ ++CCC = $(CXX) ++ + RANLIB = ranlib + + ifndef CPU_ARCH +@@ -57,19 +57,25 @@ + + ifeq (,$(filter-out i%86,$(CPU_ARCH))) + ifdef USE_64 ++ifeq (,$(findstring -arch ,$(CC))) + CC += -arch x86_64 ++endif + override CPU_ARCH = x86_64 + else + OS_REL_CFLAGS = -Di386 ++ifeq (,$(findstring -arch ,$(CC))) + CC += -arch i386 ++endif + override CPU_ARCH = x86 + endif + else + ifeq (arm,$(CPU_ARCH)) + # Nothing set for arm currently. + else + OS_REL_CFLAGS = -Dppc ++ifeq (,$(findstring -arch ,$(CC))) + CC += -arch ppc ++endif + endif + endif + +--- misc/nss-3.13.5/mozilla/security/coreconf/FreeBSD.mk 2009-11-23 05:06:29.000000000 -0500 ++++ misc/build/nss-3.13.5/mozilla/security/coreconf/FreeBSD.mk 2012-08-28 20:27:20.000000000 -0400 +@@ -57,6 +57,7 @@ + + DSO_CFLAGS = -fPIC + DSO_LDOPTS = -shared -Wl,-soname -Wl,$(notdir $@) ++DSO_LDOPTS += -Wl,-z,origin '-Wl,-rpath,$$ORIGIN' + + # + # The default implementation strategy for FreeBSD is pthreads. +--- misc/nss-3.13.5/mozilla/security/coreconf/Linux.mk 2010-01-15 23:19:00.000000000 +0100 ++++ misc/build/nss-3.13.5/mozilla/security/coreconf/Linux.mk 2010-06-11 16:35:54.981151732 +0200 +@@ -46,8 +46,11 @@ + IMPL_STRATEGY = _PTH + endif + +-CC = gcc +-CCC = g++ ++# CC is taken from environment automatically. ++#CC = gcc ++# Use CCC from environment. ++#CCC = g++ ++CCC = $(CXX) + RANLIB = ranlib + + DEFAULT_COMPILER = gcc +@@ -147,7 +150,7 @@ + # incorrectly reports undefined references in the libraries we link with, so + # we don't use -z defs there. + ZDEFS_FLAG = -Wl,-z,defs +-DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell ld -v)),,$(ZDEFS_FLAG)) ++DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell ld -v)),,$(ZDEFS_FLAG)) -Wl,-z,origin '-Wl,-rpath,$$ORIGIN' + LDFLAGS += $(ARCHFLAG) + + # On Maemo, we need to use the -rpath-link flag for even the standard system +@@ -158,8 +161,13 @@ + endif + endif + ++ifeq ($(SYSTEM_ZLIB),YES) ++# Currently (3.12.4) only the tools modutil and signtool are linked with libz ++# If USE_SYSTEM_ZLIB is not set then the tools link statically libzlib.a which ++# is also build in nss. + USE_SYSTEM_ZLIB = 1 + ZLIB_LIBS = -lz ++endif + + # The -rpath '$$ORIGIN' linker option instructs this library to search for its + # dependencies in the same directory where it resides. +--- misc/nss-3.13.5/mozilla/security/coreconf/SunOS5.mk 2009-06-11 02:55:32.000000000 +0200 ++++ misc/build/nss-3.13.5/mozilla/security/coreconf/SunOS5.mk 2010-06-11 16:35:54.985571182 +0200 +@@ -89,8 +89,12 @@ + # OPTIMIZER += -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer + endif + else +- CC = cc +- CCC = CC ++# CC is taken from environment automatically. ++# CC = cc ++# Use CXX from environment. ++# CCC = CC ++ CCC = $(CXX) ++ + ASFLAGS += -Wa,-P + OS_CFLAGS += $(NOMD_OS_CFLAGS) $(ARCHFLAG) + ifndef BUILD_OPT +--- misc/nss-3.13.5/mozilla/security/coreconf/arch.mk 2009-06-05 04:14:49.000000000 +0200 ++++ misc/build/nss-3.13.5/mozilla/security/coreconf/arch.mk 2010-06-11 16:35:54.990913282 +0200 +@@ -324,10 +324,15 @@ + # IMPL_STRATEGY may be defined too. + # + +-OBJDIR_NAME = $(OS_TARGET)$(OS_RELEASE)$(CPU_TAG)$(COMPILER_TAG)$(LIBC_TAG)$(IMPL_STRATEGY)$(OBJDIR_TAG).OBJ ++# OBJDIR_NAME is used to build the directory containing the built objects, for ++# example mozilla/dist/Linux2.6_x86_glibc_PTH_DBG.OBJ ++# We need to deliver the contents of that folder into the solver. To make that easier ++# in the makefile we rename this directory to "out". ++#OBJDIR_NAME = $(OS_TARGET)$(OS_RELEASE)$(CPU_TAG)$(COMPILER_TAG)$(LIBC_TAG)$(IMPL_STRATEGY)$(OBJDIR_TAG).OBJ ++OBJDIR_NAME = out + + ifeq (,$(filter-out WIN%,$(OS_TARGET))) +-ifndef BUILD_OPT ++ifdef THIS_HAS_BEEN_DISABLED_TO_GET_out + # + # Define USE_DEBUG_RTL if you want to use the debug runtime library + # (RTL) in the debug build +--- misc/nss-3.13.5/mozilla/security/coreconf/rules.mk ++++ misc/build/nss-3.13.5/mozilla/security/coreconf/rules.mk +@@ -293,7 +293,7 @@ + ifeq (,$(filter-out _WIN%,$(NS_USE_GCC)_$(OS_TARGET))) + $(AR) $(subst /,\\,$(OBJS)) + else +- $(AR) $(OBJS) ++ $(AR) cr $@ $(OBJS) + endif + $(RANLIB) $@ + +--- misc/nss-3.13.5/mozilla/security/nss/Makefile ++++ misc/build/nss-3.13.5/mozilla/security/nss/Makefile +@@ 1,0 +1,0 @@ ++export AR ++export RANLIB + #! gmake + # + # ***** BEGIN LICENSE BLOCK ***** +--- misc/nss-3.13.5/mozilla/security/nss/cmd/platlibs.mk 2010-02-04 19:59:10.000000000 +0100 ++++ misc/build/nss-3.13.5/mozilla/security/nss/cmd/platlibs.mk 2010-06-11 16:35:55.004869805 +0200 +@@ -41,27 +41,32 @@ + ifeq ($(OS_ARCH), SunOS) + ifeq ($(BUILD_SUN_PKG), 1) + ifeq ($(USE_64), 1) +-EXTRA_SHARED_LIBS += -R '$$ORIGIN/../lib:/usr/lib/mps/secv1/64:/usr/lib/mps/64' ++#In OOo we would probable put the executables next to libs ++EXTRA_SHARED_LIBS += -R '$$ORIGIN' + else +-EXTRA_SHARED_LIBS += -R '$$ORIGIN/../lib:/usr/lib/mps/secv1:/usr/lib/mps' ++EXTRA_SHARED_LIBS += -R '$$ORIGIN' + endif + else +-EXTRA_SHARED_LIBS += -R '$$ORIGIN/../lib' ++EXTRA_SHARED_LIBS += -R '$$ORIGIN' + endif + endif + ++ifeq ($(OS_ARCH), FreeBSD) ++EXTRA_SHARED_LIBS += -Wl,-z,origin -Wl,-rpath,'$$ORIGIN' ++endif ++ + ifeq ($(OS_ARCH), Linux) + ifeq ($(BUILD_SUN_PKG), 1) + ifeq ($(USE_64), 1) +-EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN/../lib64:/opt/sun/private/lib64:$$ORIGIN/../lib' ++EXTRA_SHARED_LIBS += -Wl,-z,origin -Wl,-rpath,'$$ORIGIN' + else +-EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN/../lib:/opt/sun/private/lib' ++EXTRA_SHARED_LIBS += -Wl,-z,origin -Wl,-rpath,'$$ORIGIN' + endif + else + ifeq ($(USE_64), 1) +-EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN/../lib64:$$ORIGIN/../lib' ++EXTRA_SHARED_LIBS += -Wl,-z,origin -Wl,-rpath,'$$ORIGIN' + else +-EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN/../lib' ++EXTRA_SHARED_LIBS += -Wl,-z,origin -Wl,-rpath,'$$ORIGIN' + endif + endif + endif +--- misc/nss-3.13.5/mozilla/security/nss/cmd/shlibsign/Makefile 2009-08-07 21:06:37.000000000 +0200 ++++ misc/build/nss-3.13.5/mozilla/security/nss/cmd/shlibsign/Makefile 2010-06-11 16:35:55.009851148 +0200 +@@ -78,10 +78,15 @@ + + # sign any and all shared libraries that contain the word freebl + +-CHECKLIBS = $(DIST)/lib/$(DLL_PREFIX)softokn3.$(DLL_SUFFIX) +-CHECKLIBS += $(wildcard $(DIST)/lib/$(DLL_PREFIX)freebl*3.$(DLL_SUFFIX)) ++# Signing causes loading of some system library which in turn loads ++# libsqlite3. Then it loads libsqulite3 from nss, which does not have the proper ++# version. Therefore signing fails. ++# We cannot build with the system sqlite3, because it is too old (SDK ++# 10.4). Otherwise one could set NSS_USE_SYSTEM_SQLITE=1 and use the system lib. ++#CHECKLIBS = $(DIST)/lib/$(DLL_PREFIX)softokn3.$(DLL_SUFFIX) ++#CHECKLIBS += $(wildcard $(DIST)/lib/$(DLL_PREFIX)freebl*3.$(DLL_SUFFIX)) + ifndef NSS_DISABLE_DBM +-CHECKLIBS += $(DIST)/lib/$(DLL_PREFIX)nssdbm3.$(DLL_SUFFIX) ++#CHECKLIBS += $(DIST)/lib/$(DLL_PREFIX)nssdbm3.$(DLL_SUFFIX) + endif + CHECKLOC = $(CHECKLIBS:.$(DLL_SUFFIX)=.chk) + +--- misc/nss-3.13.5/mozilla/security/coreconf/Darwin.mk ++++ misc/build/nss-3.13.5/mozilla/security/coreconf/Darwin.mk +@@ -64,12 +64,16 @@ + endif + + ifneq (,$(MACOS_SDK_DIR)) ++ CLANG_VERSION_FULL := $(shell $(CC) -v 2>&1 | grep "clang version" | sed -e "s/^.*clang version[ ]*//" | awk '{ print $$1 }') + GCC_VERSION_FULL := $(shell $(CC) -dumpversion) + GCC_VERSION_MAJOR := $(shell echo $(GCC_VERSION_FULL) | awk -F. '{ print $$1 }') + GCC_VERSION_MINOR := $(shell echo $(GCC_VERSION_FULL) | awk -F. '{ print $$2 }') + GCC_VERSION = $(GCC_VERSION_MAJOR).$(GCC_VERSION_MINOR) ++ ifneq (,$(CLANG_VERSION_FULL)) ++ DARWIN_SDK_CFLAGS = -isysroot $(MACOS_SDK_DIR) ++ DARWIN_SDK_SHLIBFLAGS = -isysroot $(MACOS_SDK_DIR) + +- ifeq (,$(filter-out 2 3,$(GCC_VERSION_MAJOR))) ++ else ifeq (,$(filter-out 2 3,$(GCC_VERSION_MAJOR))) + # GCC <= 3 + DARWIN_SDK_FRAMEWORKS = -F$(MACOS_SDK_DIR)/System/Library/Frameworks + ifneq (,$(shell find $(MACOS_SDK_DIR)/Library/Frameworks -maxdepth 0)) |