Patchwork [07/10] fix build error on ARM due to wrong glibc check

login
register
mail settings
Submitter Stefan Hajnoczi
Date Dec. 18, 2012, 4:51 p.m.
Message ID <1355849477-1226-8-git-send-email-stefanha@redhat.com>
Download mbox | patch
Permalink /patch/207168/
State New
Headers show

Comments

Stefan Hajnoczi - Dec. 18, 2012, 4:51 p.m.
From: John Spencer <maillist-qemu@barfooze.de>

the test for glibc < 2 "succeeds" wrongly for any non-glibc C library,
and breaks the build on musl libc.
we must first test if __GLIBC__ is defined at all, before using it
unconditionally.

Signed-off-by: John Spencer <maillist-qemu@barfooze.de>
Reviewed-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 user-exec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch

diff --git a/user-exec.c b/user-exec.c
index 1185cb0..5863b9f 100644
--- a/user-exec.c
+++ b/user-exec.c
@@ -436,7 +436,7 @@  int cpu_signal_handler(int host_signum, void *pinfo,
     unsigned long pc;
     int is_write;
 
-#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
+#if defined(__GLIBC__) && (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
     pc = uc->uc_mcontext.gregs[R15];
 #else
     pc = uc->uc_mcontext.arm_pc;