package/libnss: fix build failure on powerpc without <sys/auxv.h>
authorGiulio Benetti <giulio.benetti@benettiengineering.com>
Tue, 10 Dec 2019 12:13:22 +0000 (13:13 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Mon, 23 Dec 2019 22:44:34 +0000 (23:44 +0100)
Add patch to fix build failure on PowerPc without <sys/auxv.h>. The patch
inserts #if statements to include or note <sys/auxv.h> prior it exists.

Fixes:
http://autobuild.buildroot.net/results/8bf95bd8a0aec8c53889308ab1e00d0a94f53d57/

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/libnss/0004-Bug-1602743-Fix-PowerPc-build-sys-auxv.h-failure.patch [new file with mode: 0644]

diff --git a/package/libnss/0004-Bug-1602743-Fix-PowerPc-build-sys-auxv.h-failure.patch b/package/libnss/0004-Bug-1602743-Fix-PowerPc-build-sys-auxv.h-failure.patch
new file mode 100644 (file)
index 0000000..c8f12d7
--- /dev/null
@@ -0,0 +1,40 @@
+From efe0fd875c80ff6e3a05db6c5e15b07c173530a6 Mon Sep 17 00:00:00 2001
+From: Giulio Benetti <giulio.benetti@benettiengineering.com>
+Date: Tue, 10 Dec 2019 13:06:01 +0100
+Subject: [PATCH] Bug 1602743 - Fix PowerPc build sys/auxv.h failure
+
+Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
+---
+ nss/lib/freebl/blinit.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/nss/lib/freebl/blinit.c b/nss/lib/freebl/blinit.c
+index 959109b60..f0654595d 100644
+--- a/nss/lib/freebl/blinit.c
++++ b/nss/lib/freebl/blinit.c
+@@ -357,7 +357,9 @@ ppc_crypto_support()
+ #if defined(__powerpc__)
++#if (__has_include(<sys/auxv.h>))
+ #include <sys/auxv.h>
++#endif
+ // Defines from cputable.h in Linux kernel - PPC, letting us build on older kernels
+ #ifndef PPC_FEATURE2_VEC_CRYPTO
+@@ -368,8 +370,11 @@ static void
+ CheckPPCSupport()
+ {
+     char *disable_hw_crypto = PR_GetEnvSecure("NSS_DISABLE_PPC_GHASH");
++    long hwcaps = 0;
+-    long hwcaps = getauxval(AT_HWCAP2);
++#if (__has_include(<sys/auxv.h>))
++    hwcaps = getauxval(AT_HWCAP2);
++#endif
+     ppc_crypto_support_ = hwcaps & PPC_FEATURE2_VEC_CRYPTO && disable_hw_crypto == NULL;
+ }
+-- 
+2.20.1
+