[Buildroot] [PATCH 2/2] libnss: fix build with uClibc

Baruch Siach baruch at tkos.co.il
Tue Jun 26 10:28:23 UTC 2018


Add a patch defining AT_HWCAP2 locally since uClibc is missing this
macro. Once uClibc updates its elf.h copy we can remove this patch.

Cc: Joseph Kogut <joseph.kogut at gmail.com>
Signed-off-by: Baruch Siach <baruch at tkos.co.il>
---
 package/libnss/0001-fix-uclibc-build.patch | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
 create mode 100644 package/libnss/0001-fix-uclibc-build.patch

diff --git a/package/libnss/0001-fix-uclibc-build.patch b/package/libnss/0001-fix-uclibc-build.patch
new file mode 100644
index 000000000000..a9e84c264b04
--- /dev/null
+++ b/package/libnss/0001-fix-uclibc-build.patch
@@ -0,0 +1,22 @@
+Fix build with uClibc-ng
+
+The elf.h header in uClibc-ng is missing the AT_HWCAP2 definition. Add it in
+the code.
+
+Signed-off-by: Baruch Siach <baruch at tkos.co.il>
+---
+Upstream status: Not upstreamable; uClibc needs to update elf.h
+
+diff -Nuar nss-3.38.orig/nss/lib/freebl/blinit.c nss-3.38/nss/lib/freebl/blinit.c
+--- nss-3.38.orig/nss/lib/freebl/blinit.c	2018-06-21 12:24:45.000000000 +0300
++++ nss-3.38/nss/lib/freebl/blinit.c	2018-06-26 13:13:55.636434720 +0300
+@@ -100,6 +100,9 @@
+     defined(__GNUC__) && __GNUC__ >= 2 && defined(__ELF__)
+ #include <sys/auxv.h>
+ extern unsigned long getauxval(unsigned long type) __attribute__((weak));
++#ifndef AT_HWCAP2
++#define AT_HWCAP2	26
++#endif
+ #else
+ static unsigned long (*getauxval)(unsigned long) = NULL;
+ #define AT_HWCAP2 0
-- 
2.18.0



More information about the buildroot mailing list