summaryrefslogtreecommitdiffstats
path: root/security/nss/coreconf/SunOS5.mk
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:44:51 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:44:51 +0000
commit9e3c08db40b8916968b9f30096c7be3f00ce9647 (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /security/nss/coreconf/SunOS5.mk
parentInitial commit. (diff)
downloadthunderbird-upstream.tar.xz
thunderbird-upstream.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'security/nss/coreconf/SunOS5.mk')
-rw-r--r--security/nss/coreconf/SunOS5.mk142
1 files changed, 142 insertions, 0 deletions
diff --git a/security/nss/coreconf/SunOS5.mk b/security/nss/coreconf/SunOS5.mk
new file mode 100644
index 0000000000..024c8a7041
--- /dev/null
+++ b/security/nss/coreconf/SunOS5.mk
@@ -0,0 +1,142 @@
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+include $(CORE_DEPTH)/coreconf/UNIX.mk
+
+# Sun's WorkShop defines v8, v8plus and v9 architectures.
+# gcc on Solaris defines v8 and v9 "cpus".
+# gcc's v9 is equivalent to Workshop's v8plus.
+# gcc's -m64 is equivalent to Workshop's v9
+
+ifeq ($(USE_64), 1)
+ ifdef NS_USE_GCC
+ ARCHFLAG=-m64
+ else
+ ifeq ($(OS_TEST),i86pc)
+ ARCHFLAG=-xarch=amd64
+ else
+ ARCHFLAG=-xarch=v9
+ endif
+ endif
+else
+ ifneq ($(OS_TEST),i86pc)
+ ifdef NS_USE_GCC
+ ARCHFLAG=-mcpu=v9
+ else
+ ARCHFLAG=-xarch=v8plus
+ endif
+ endif
+endif
+
+DEFAULT_COMPILER = cc
+
+ifdef NS_USE_GCC
+ CC = gcc
+ OS_CFLAGS += -Wall -Wno-format -Werror-implicit-function-declaration -Wno-switch
+ OS_CFLAGS += -D__EXTENSIONS__
+ CCC = g++
+ CCC += -Wall -Wno-format
+ ASFLAGS += -x assembler-with-cpp
+ OS_CFLAGS += $(NOMD_OS_CFLAGS) $(ARCHFLAG)
+ ifdef BUILD_OPT
+ OPTIMIZER = -O2
+ # Enable this for accurate dtrace profiling
+ # OPTIMIZER += -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer
+ endif
+else
+ CC = cc
+ CCC = CC
+ ASFLAGS += -Wa,-P
+ OS_CFLAGS += $(NOMD_OS_CFLAGS) $(ARCHFLAG)
+ ifndef BUILD_OPT
+ OS_CFLAGS += -xs
+ else
+ OPTIMIZER = -xO4
+ endif
+ ifdef USE_TCOV
+ CC += -xprofile=tcov
+ CCC += -xprofile=tcov
+ endif
+endif
+
+RANLIB = echo
+CPU_ARCH = sparc
+OS_DEFINES += -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS -D_REENTRANT
+
+ifeq ($(OS_TEST),i86pc)
+ifeq ($(USE_64),1)
+ CPU_ARCH = x86_64
+else
+ CPU_ARCH = x86
+ OS_DEFINES += -Di386
+endif
+endif
+
+# Purify doesn't like -MDupdate
+NOMD_OS_CFLAGS += $(DSO_CFLAGS) $(OS_DEFINES) $(SOL_CFLAGS)
+
+MKSHLIB = $(CC) $(DSO_LDOPTS) $(RPATH)
+ifdef NS_USE_GCC
+ifeq (GNU,$(findstring GNU,$(shell `$(CC) -print-prog-name=ld` -v 2>&1)))
+ GCC_USE_GNU_LD = 1
+endif
+endif
+ifdef MAPFILE
+ifdef NS_USE_GCC
+ifdef GCC_USE_GNU_LD
+ MKSHLIB += -Wl,--version-script,$(MAPFILE)
+else
+ MKSHLIB += -Wl,-M,$(MAPFILE)
+endif
+else
+ MKSHLIB += -M $(MAPFILE)
+endif
+endif
+PROCESS_MAP_FILE = grep -v ';-' $< | \
+ sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
+
+# ld options:
+# -G: produce a shared object
+# -z defs: no unresolved symbols allowed
+ifdef NS_USE_GCC
+ifeq ($(USE_64), 1)
+ DSO_LDOPTS += -m64
+endif
+ DSO_LDOPTS += -shared -h $(notdir $@)
+else
+ifeq ($(USE_64), 1)
+ ifeq ($(OS_TEST),i86pc)
+ DSO_LDOPTS +=-xarch=amd64
+ else
+ DSO_LDOPTS +=-xarch=v9
+ endif
+endif
+ DSO_LDOPTS += -G -h $(notdir $@)
+endif
+DSO_LDOPTS += -z combreloc -z defs -z ignore
+
+# -KPIC generates position independent code for use in shared libraries.
+# (Similarly for -fPIC in case of gcc.)
+ifdef NS_USE_GCC
+ DSO_CFLAGS += -fPIC
+else
+ DSO_CFLAGS += -KPIC
+endif
+
+NOSUCHFILE = /solaris-rm-f-sucks
+
+ifeq ($(BUILD_SUN_PKG), 1)
+# The -R '$ORIGIN' linker option instructs this library to search for its
+# dependencies in the same directory where it resides.
+ifeq ($(USE_64), 1)
+RPATH = -R '$$ORIGIN:/usr/lib/mps/secv1/64:/usr/lib/mps/64'
+else
+RPATH = -R '$$ORIGIN:/usr/lib/mps/secv1:/usr/lib/mps'
+endif
+else
+RPATH = -R '$$ORIGIN'
+endif
+
+OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc