diff mbox series

[meta-oe] nss: Fix build when using clang toolchain

Message ID 20250717232041.2532258-1-raj.khem@gmail.com
State New
Headers show
Series [meta-oe] nss: Fix build when using clang toolchain | expand

Commit Message

Khem Raj July 17, 2025, 11:20 p.m. UTC
When using clang cross compiler, nss make system adds
some clang specific options e.g. Qunused-options to CFLAGS
which is fine for cross/target compile but some portions e.g.
nsinstall is build natively so it uses NATIVE_CC to compile this
utility, its is set to BUILD_CC rightly but when using clang for CC
and gcc for BUILD_CC, nss build system is confused because its
trying to use the computed set of warnings for both native and cross
compile and they may not match between clang and gcc. So here we
explicitly use clang for NATIVE_CC when TOOLCHAIN is clang

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-support/nss/nss_3.112.bb | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/nss/nss_3.112.bb b/meta-oe/recipes-support/nss/nss_3.112.bb
index cf0b20d48b..804f4c8e07 100644
--- a/meta-oe/recipes-support/nss/nss_3.112.bb
+++ b/meta-oe/recipes-support/nss/nss_3.112.bb
@@ -73,11 +73,14 @@  do_compile:prepend:class-native() {
     RPATH="-Wl,-rpath-link,${STAGING_LIBDIR_NATIVE} -Wl,-rpath-link,${STAGING_BASE_LIBDIR_NATIVE} -Wl,-rpath,${STAGING_LIBDIR_NATIVE} -Wl,-rpath,${STAGING_BASE_LIBDIR_NATIVE}"
 }
 
+NATIVE_CC:toolchain-clang = "clang"
+NATIVE_CC ?= "${BUILD_CC}"
+
 do_compile() {
     export NSPR_INCLUDE_DIR=${STAGING_INCDIR}/nspr
 
     export CROSS_COMPILE=1
-    export NATIVE_CC="${BUILD_CC}"
+    export NATIVE_CC="${NATIVE_CC}"
     # Additional defines needed on Centos 7
     export NATIVE_FLAGS="${BUILD_CFLAGS} -DLINUX -Dlinux"
     export BUILD_OPT=1
@@ -91,7 +94,6 @@  do_compile() {
 
     export LIBDIR=${libdir}
     export MOZILLA_CLIENT=1
-    export NS_USE_GCC=1
     export NSS_USE_SYSTEM_SQLITE=1
     export NSS_ENABLE_ECC=1
     export NSS_ENABLE_WERROR=0
@@ -144,14 +146,13 @@  do_install:prepend:class-nativesdk() {
 
 do_install() {
     export CROSS_COMPILE=1
-    export NATIVE_CC="${BUILD_CC}"
+    export NATIVE_CC="${NATIVE_CC}"
     export BUILD_OPT=1
 
     export FREEBL_NO_DEPEND=1
 
     export LIBDIR=${libdir}
     export MOZILLA_CLIENT=1
-    export NS_USE_GCC=1
     export NSS_USE_SYSTEM_SQLITE=1
     export NSS_ENABLE_ECC=1