blob: decd24926a5f8b018f7e1084dc87837349ea9770 [file] [log] [blame]
diff -ur misc/nss-3.25/nspr/config/rules.mk misc/build/nss-3.25/nspr/config/rules.mk
--- misc/nss-3.25/nspr/config/rules.mk 2016-02-12 05:51:25.000000000 -0800
+++ misc/build/nss-3.25/nspr/config/rules.mk 2016-07-14 23:47:54.492034000 -0700
@@ -382,7 +382,12 @@
ifdef NS_USE_GCC
$(RC) $(RCFLAGS) $(filter-out -U%,$(DEFINES)) $(INCLUDES:-I%=--include-dir %) -o $@ $<
else
- $(RC) $(RCFLAGS) $(filter-out -U%,$(DEFINES)) $(INCLUDES) -Fo$@ $<
+ #We remove stl from the paths to avoid that rc.exe finds the stl wrapper
+ #of AOO. stlport includes the system stl which will fail. By removing it,
+ #rc will use the stl from the system if the path is in the INCLUDE
+ #variable.
+ INCLUDE="$(subst /stl,,$(INCLUDE))" $(RC) $(RCFLAGS) $(filter-out -U%,$(DEFINES)) $(INCLUDES) -Fo$@ $<
+
endif # GCC
@echo $(RES) finished
endif
diff -ur misc/nss-3.25/nspr/configure misc/build/nss-3.25/nspr/configure
--- misc/nss-3.25/nspr/configure 2016-02-12 05:51:25.000000000 -0800
+++ misc/build/nss-3.25/nspr/configure 2016-07-14 23:47:54.531323000 -0700
@@ -6992,7 +6992,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,-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
diff -ur misc/nss-3.25/nspr/pr/include/pratom.h misc/build/nss-3.25/nspr/pr/include/pratom.h
--- misc/nss-3.25/nspr/pr/include/pratom.h 2016-02-12 05:51:25.000000000 -0800
+++ misc/build/nss-3.25/nspr/pr/include/pratom.h 2016-07-14 23:47:54.538325000 -0700
@@ -81,7 +81,9 @@
#if defined(_WIN32) && !defined(_WIN32_WCE) && \
(!defined(_MSC_VER) || (_MSC_VER >= 1310))
+PR_END_EXTERN_C
#include <intrin.h>
+PR_BEGIN_EXTERN_C
#ifdef _MSC_VER
#pragma intrinsic(_InterlockedIncrement)
diff -ur misc/nss-3.25/nss/Makefile misc/build/nss-3.25/nss/Makefile
--- misc/nss-3.25/nss/Makefile 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/Makefile 2016-07-14 23:47:54.544021000 -0700
@@ -76,6 +76,9 @@
ifeq ($(OS_TARGET),WIN95)
NSPR_CONFIGURE_OPTS += --enable-win32-target=WIN95
endif
+ifdef MACOS_SDK_DIR
+NSPR_CONFIGURE_OPTS += --with-macos-sdk=$(MACOS_SDK_DIR)
+endif
ifdef USE_DEBUG_RTL
NSPR_CONFIGURE_OPTS += --enable-debug-rtl
endif
diff -ur misc/nss-3.25/nss/cmd/platlibs.mk misc/build/nss-3.25/nss/cmd/platlibs.mk
--- misc/nss-3.25/nss/cmd/platlibs.mk 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/cmd/platlibs.mk 2016-07-14 23:47:54.549839000 -0700
@@ -10,17 +10,18 @@
ifeq ($(OS_ARCH), SunOS)
ifeq ($(USE_64), 1)
-EXTRA_SHARED_LIBS += -R '$$ORIGIN/../lib:/usr/lib/mps/secv1/64:/usr/lib/mps/64'
+#In AOO 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
endif
ifeq ($(OS_ARCH), Linux)
ifeq ($(USE_64), 1)
-EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN/../lib64:/opt/sun/private/lib64:$$ORIGIN/../lib'
+EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN'
else
-EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN/../lib:/opt/sun/private/lib'
+EXTRA_SHARED_LIBS += -Wl,-rpath,'$$ORIGIN'
endif
endif
diff -ur misc/nss-3.25/nss/cmd/shlibsign/Makefile misc/build/nss-3.25/nss/cmd/shlibsign/Makefile
--- misc/nss-3.25/nss/cmd/shlibsign/Makefile 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/cmd/shlibsign/Makefile 2016-07-14 23:47:54.554784000 -0700
@@ -49,10 +49,15 @@
CHECKLIBS =
CHECKLOC =
else
-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)
diff -ur misc/nss-3.25/nss/coreconf/Darwin.mk misc/build/nss-3.25/nss/coreconf/Darwin.mk
--- misc/nss-3.25/nss/coreconf/Darwin.mk 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/coreconf/Darwin.mk 2016-07-14 23:47:54.560325000 -0700
@@ -4,12 +4,14 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
include $(CORE_DEPTH)/coreconf/UNIX.mk
-include $(CORE_DEPTH)/coreconf/Werror.mk
+#include $(CORE_DEPTH)/coreconf/Werror.mk
-DEFAULT_COMPILER = gcc
+DEFAULT_COMPILER = cc
+
+# CC is taken from environment automatically.
+#CC = cc
+CCC = $(CXX) -stdlib=libc++ -std=c++11
-CC = gcc
-CCC = g++
RANLIB = ranlib
ifndef CPU_ARCH
diff -ur misc/nss-3.25/nss/coreconf/FreeBSD.mk misc/build/nss-3.25/nss/coreconf/FreeBSD.mk
--- misc/nss-3.25/nss/coreconf/FreeBSD.mk 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/coreconf/FreeBSD.mk 2016-07-14 23:47:54.564724000 -0700
@@ -5,9 +5,8 @@
include $(CORE_DEPTH)/coreconf/UNIX.mk
-DEFAULT_COMPILER = gcc
-CC = gcc
-CCC = g++
+DEFAULT_COMPILER = $(CC)
+CCC = $(CXX)
RANLIB = ranlib
CPU_ARCH = $(OS_TEST)
@@ -21,7 +20,7 @@
CPU_ARCH = x86_64
endif
-OS_CFLAGS = $(DSO_CFLAGS) -Wall -Wno-switch -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK
+OS_CFLAGS = $(DSO_CFLAGS) -Wall -Wno-switch -DFREEBSD -DHAVE_STRERROR -DHAVE_UNISTD_H -DHAVE_BSD_FLOCK
DSO_CFLAGS = -fPIC
DSO_LDOPTS = -shared -Wl,-soname -Wl,$(notdir $@)
diff -ur misc/nss-3.25/nss/coreconf/Linux.mk misc/build/nss-3.25/nss/coreconf/Linux.mk
--- misc/nss-3.25/nss/coreconf/Linux.mk 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/coreconf/Linux.mk 2016-07-14 23:47:54.569918000 -0700
@@ -16,8 +16,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
@@ -139,7 +142,7 @@
OS_PTHREAD = -lpthread
endif
-OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) $(ARCHFLAG) -pipe -ffunction-sections -fdata-sections -DLINUX -Dlinux -DHAVE_STRERROR
+OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) $(ARCHFLAG) -pipe -ffunction-sections -fdata-sections -DLINUX -Dlinux -DHAVE_STRERROR -DHAVE_UNISTD_H
OS_LIBS = $(OS_PTHREAD) -ldl -lc
ifdef USE_PTHREADS
@@ -149,7 +152,7 @@
ARCH = linux
DSO_CFLAGS = -fPIC
-DSO_LDOPTS = -shared $(ARCHFLAG) -Wl,--gc-sections
+DSO_LDOPTS = -shared $(ARCHFLAG) -Wl,--gc-sections '-Wl,-rpath,$$ORIGIN'
# The linker on Red Hat Linux 7.2 and RHEL 2.1 (GNU ld version 2.11.90.0.8)
# incorrectly reports undefined references in the libraries we link with, so
# we don't use -z defs there.
@@ -189,8 +192,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.
diff -ur misc/nss-3.25/nss/coreconf/SunOS5.mk misc/build/nss-3.25/nss/coreconf/SunOS5.mk
--- misc/nss-3.25/nss/coreconf/SunOS5.mk 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/coreconf/SunOS5.mk 2016-07-14 23:47:54.575211000 -0700
@@ -48,8 +48,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
diff -ur misc/nss-3.25/nss/coreconf/arch.mk misc/build/nss-3.25/nss/coreconf/arch.mk
--- misc/nss-3.25/nss/coreconf/arch.mk 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/coreconf/arch.mk 2016-07-14 23:47:54.579901000 -0700
@@ -294,7 +294,12 @@
ifdef CROSS_COMPILE
OBJDIR_NAME = $(OS_TARGET)$(OS_RELEASE)$(CPU_TAG)$(LIBC_TAG)$(IMPL_STRATEGY)$(OBJDIR_TAG).OBJ
else
-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
endif
diff -ur misc/nss-3.25/nss/coreconf/rules.mk misc/build/nss-3.25/nss/coreconf/rules.mk
--- misc/nss-3.25/nss/coreconf/rules.mk 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/coreconf/rules.mk 2016-07-14 23:47:54.586736000 -0700
@@ -322,7 +322,12 @@
ifdef NS_USE_GCC
$(RC) $(filter-out -U%,$(DEFINES)) $(INCLUDES:-I%=--include-dir %) -o $@ $<
else
- $(RC) $(filter-out -U%,$(DEFINES)) $(INCLUDES) -Fo$@ $<
+ #We remove stl from the paths to avoid that rc.exe finds the stlport of
+ #OOo. stlport includes the system stl which will fail. By removing it,
+ #rc will use the stl from the system if the path is in the INCLUDE
+ #variable.
+ INCLUDE="$(subst /stl,,$(INCLUDE))" $(RC) $(filter-out -U%,$(DEFINES)) $(INCLUDES) -Fo$@ $<
+
endif
@echo $(RES) finished
endif
diff -ur misc/nss-3.25/nss/lib/zlib/inflate.c misc/build/nss-3.25/nss/lib/zlib/inflate.c
--- misc/nss-3.25/nss/lib/zlib/inflate.c 2016-06-20 10:11:28.000000000 -0700
+++ misc/build/nss-3.25/nss/lib/zlib/inflate.c 2016-07-14 23:47:54.598199000 -0700
@@ -1472,9 +1472,9 @@
{
struct inflate_state FAR *state;
- if (strm == Z_NULL || strm->state == Z_NULL) return -1L << 16;
+ if (strm == Z_NULL || strm->state == Z_NULL) return ~0UL << 16;
state = (struct inflate_state FAR *)strm->state;
- return ((long)(state->back) << 16) +
+ return ((unsigned long)(state->back) << 16) +
(state->mode == COPY ? state->length :
(state->mode == MATCH ? state->was - state->length : 0));
}
diff -ur misc/nss-3.25/nss/external_tests/common/gtest.mk misc/build/nss-3.25/nss/external_tests/common/gtest.mk
--- misc/nss-3.25/nss/external_tests/common/gtest.mk 2017-10-09 14:16:48.000000000 -0400
+++ misc/build/nss-3.25/nss/external_tests/common/gtest.mk 2017-10-09 14:17:55.000000000 -0400
@@ -16,6 +16,9 @@
# platform.
ifeq (-Werror,$(filter -Werror -Wsign-compare,$(WARNING_CFLAGS)))
WARNING_CFLAGS += -Wsign-compare
+ifeq (Darwin,$(OS_ARCH))
+ WARNING_CFLAGS += -Wno-error=deprecated -Wno-error=c++11-extensions
+endif
endif
WARNING_CFLAGS := $(filter-out -w44018,$(WARNING_CFLAGS))
@@ -32,5 +35,9 @@
# Needed because we include files from a subdirectory
MAKE_OBJDIR = $(INSTALL) -D $(dir $@)
else
- CXXFLAGS += -std=c++0x
+ ifeq (Darwin,$(OS_ARCH))
+ CXXFLAGS += -stdlib=libc++ -std=c++11
+ else
+ CXXFLAGS += -std=c++0x
+ endif
endif