BUILD: tools: properly guard __GLIBC__ with defined()
The test on the glibc versions based on #if (__GLIBC > 2 ...) fails to
build under -Wundef, let's prepend defined(__GLIBC__) first.
(cherry picked from commit 7b2108cad1aa963dae663bdabb3840132afbe6b5)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/tools.c b/src/tools.c
index 2f3534d..959b9b8 100644
--- a/src/tools.c
+++ b/src/tools.c
@@ -43,7 +43,7 @@
#include <netinet/in.h>
#include <arpa/inet.h>
-#if (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
+#if defined(__GLIBC__) && (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
#include <sys/auxv.h>
#endif
@@ -4767,7 +4767,7 @@
{
const char *ret = NULL;
-#if (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
+#if defined(__GLIBC__) && (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
long execfn = getauxval(AT_EXECFN);
if (execfn && execfn != ENOENT)
@@ -4799,7 +4799,7 @@
static int dladdr_and_size(const void *addr, Dl_info *dli, size_t *size)
{
int ret;
-#if (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) // most detailed one
+#if defined(__GLIBC__) && (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) // most detailed one
const ElfW(Sym) *sym;
ret = dladdr1(addr, dli, (void **)&sym, RTLD_DL_SYMENT);