summaryrefslogtreecommitdiff
path: root/external/nss/nss_macosx.patch
blob: 456bd62d509b8026e4863731ac496121b64a5350 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
diff -ru a/nspr/configure b/nspr/configure
--- a/a/nspr/configure	2014-09-29 16:50:33.907375937 +0100
+++ b/b/nspr/configure	2014-09-29 16:51:59.213931947 +0100
@@ -6448,6 +6448,9 @@
     AS='$(CC) -x assembler-with-cpp'
     CFLAGS="$CFLAGS -Wall -fno-common"
     case "${target_cpu}" in
+        aarch64)
+            CPU_ARCH=arm64
+            ;;
         arm*)
             CPU_ARCH=arm
             ;;
@@ -6483,7 +6486,7 @@
 
 
     DSO_CFLAGS=-fPIC
-    DSO_LDOPTS='-dynamiclib -compatibility_version 1 -current_version 1 -all_load -install_name @executable_path/$@ -headerpad_max_install_names'
+    DSO_LDOPTS='-dynamiclib -compatibility_version 1 -current_version 1 -all_load -install_name @__________________________________________________OOO/$@ -headerpad_max_install_names'
     _OPTIMIZE_FLAGS=-O2
     MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@'
     STRIP="$STRIP -x -S"
diff -ru a/nss/coreconf/Darwin.mk b/nss/coreconf/Darwin.mk
--- a/a/nss/coreconf/Darwin.mk	2014-09-29 16:50:22.992304799 +0100
+++ b/b/nss/coreconf/Darwin.mk	2014-09-29 16:51:59.214931953 +0100
@@ -20,13 +20,17 @@
 
 ifeq (,$(filter-out i%86,$(CPU_ARCH)))
 ifdef USE_64
+ifeq (,$(findstring -arch ,$(CC)))
 CC              += -arch x86_64
 CCC             += -arch x86_64
+endif
 override CPU_ARCH	= x86_64
 else
 OS_REL_CFLAGS	= -Di386
+ifeq (,$(findstring -arch ,$(CC)))
 CC              += -arch i386
 CCC             += -arch i386
+endif
 override CPU_ARCH	= x86
 endif
 else
@@ -33,19 +37,20 @@
 ifeq (arm,$(CPU_ARCH))
 # Nothing set for arm currently.
 else
-OS_REL_CFLAGS	= -Dppc
-CC              += -arch ppc
-CCC             += -arch ppc
 endif
 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))
@@ -108,7 +113,7 @@
 # May override this with different compatibility and current version numbers.
 DARWIN_DYLIB_VERSIONS = -compatibility_version 1 -current_version 1
 # May override this with -bundle to create a loadable module.
-DSO_LDOPTS	= -dynamiclib $(DARWIN_DYLIB_VERSIONS) -install_name @executable_path/$(notdir $@) -headerpad_max_install_names
+DSO_LDOPTS	= -dynamiclib $(DARWIN_DYLIB_VERSIONS) -install_name @__________________________________________________OOO/$(notdir $@) -headerpad_max_install_names
 
 ifdef USE_GCOV
    OS_CFLAGS += --coverage
diff -ru a/nss/Makefile b/nss/Makefile
--- a/a/nss/Makefile	2014-09-29 16:50:22.990304789 +0100
+++ b/b/nss/Makefile	2014-09-29 16:51:59.207931908 +0100
@@ -82,6 +82,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