summaryrefslogtreecommitdiffstats
path: root/security/nss/lib/Makefile
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /security/nss/lib/Makefile
parentInitial commit. (diff)
downloadfirefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz
firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'security/nss/lib/Makefile')
-rw-r--r--security/nss/lib/Makefile109
1 files changed, 109 insertions, 0 deletions
diff --git a/security/nss/lib/Makefile b/security/nss/lib/Makefile
new file mode 100644
index 0000000000..6e26e32410
--- /dev/null
+++ b/security/nss/lib/Makefile
@@ -0,0 +1,109 @@
+#! gmake
+#
+# 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/.
+
+CORE_DEPTH = ..
+DEPTH = ..
+
+include $(CORE_DEPTH)/coreconf/config.mk
+
+# This "jungle" of conditionals evaluates which DIRS to build!
+# The main reason for it is AFAIK /automation/taskcluster/scripts/split.sh
+#
+# The fundamental organisation is:
+# if NSS_BUILD_UTIL_ONLY
+# else
+# if NSS_BUILD_SOFTOKEN_ONLY
+# else # build "all" the rest of NSS
+# endif
+#
+# But there is even some build (NSS_BUILD_WITHOUT_SOFTOKEN), which
+# depends on a previous partial build!
+#
+# FWIW, the dependencies are sorted and "compacted" instead of single
+# lines for smaller patches, as these probably won't change much and
+# it's easier to read this way.
+
+# Building softoken (and freebl) only requires that the paths
+# to the locations where the util headers and libraries were
+# previously installed by a prior util-only build - likely in
+# in a system location that varies with the distribution. This
+# cannot be addressed here and requires that downstream package
+# mantainers add suitable modifications. Building full nss will
+# not have that problem as everything is available.
+
+ifndef USE_SYSTEM_ZLIB
+ZLIB_SRCDIR = zlib
+endif
+
+ifndef MOZILLA_CLIENT
+ifndef NSS_USE_SYSTEM_SQLITE
+SQLITE_SRCDIR = sqlite
+endif
+
+ifeq ($(OS_ARCH),Linux)
+SYSINIT_SRCDIR = sysinit
+endif
+endif # MOZILLA_CLIENT
+
+ifndef NSS_DISABLE_DBM
+DBM_SRCDIR = dbm
+endif
+
+ifndef NSS_DISABLE_LIBPKIX
+LIBPKIX_SRCDIR = libpkix
+endif
+
+ifeq ($(NSS_BUILD_UTIL_ONLY),1)
+ UTIL_SRCDIR = util
+
+else
+ ifeq ($(NSS_BUILD_SOFTOKEN_ONLY),1)
+ FREEBL_SRCDIR = freebl
+ SOFTOKEN_SRCDIR = softoken
+ else
+ # Not included when building nss without softoken
+ # This build type uses the build results of the prior
+ # NSS_BUILD_UTIL_ONLY and NSS_BUILD_SOFTOKEN_ONLY builds
+ ifneq ($(NSS_BUILD_WITHOUT_SOFTOKEN),1)
+ FREEBL_SRCDIR = freebl
+ SOFTOKEN_SRCDIR = softoken
+ UTIL_SRCDIR = util
+ endif
+ endif
+
+ SOFTOKEN_SRCDIRS = \
+ $(DBM_SRCDIR) $(FREEBL_SRCDIR) $(SOFTOKEN_SRCDIR) \
+ $(SQLITE_SRCDIR) $(NULL)
+
+ ifneq (,$(FREEBL_SRCDIR))
+ $(FREEBL_SRCDIR): $(UTIL_SRCDIR)
+ endif
+
+ ifneq (,$(SOFTOKEN_SRCDIR))
+ $(SOFTOKEN_SRCDIR): $(DBM_SRCDIR) $(FREEBL_SRCDIR) $(SQLITE_SRCDIR) $(UTIL_SRCDIR)
+ endif
+
+ ifndef NSS_BUILD_SOFTOKEN_ONLY
+ NSS_SRCDIRS = \
+ base certdb certhigh ckfw crmf cryptohi dev jar $(LIBPKIX_SRCDIR) \
+ nss pk11wrap pkcs12 pkcs7 pki smime ssl $(SYSINIT_SRCDIR) $(ZLIB_SRCDIR)
+
+ ifneq (,$(SYSINIT_SRCDIR))
+ $(SYSINIT_SRCDIR): $(UTIL_SRCDIR)
+ endif
+
+ nss: base certdb certhigh cryptohi dev $(LIBPKIX_SRCDIR) pk11wrap pki $(UTIL_SRCDIR)
+ smime: nss pkcs7 pkcs12
+ ssl: nss
+ ckfw: nss
+
+ endif # !NSS_BUILD_SOFTOKEN_ONLY
+endif # !NSS_BUILD_UTIL_ONLY
+
+DIRS = \
+ $(NSS_SRCDIRS) $(SOFTOKEN_SRCDIRS) $(UTIL_SRCDIR) $(NULL)
+
+include $(CORE_DEPTH)/coreconf/rules.mk