some gnu software wrongly uses "struct siginfo" instead of siginfo_t...
[musl] / include / signal.h
index d69419e..9db7b2e 100644 (file)
@@ -46,8 +46,6 @@ union sigval
        void *sival_ptr;
 };
 
-#include <bits/signal.h>
-
 int __libc_current_sigrtmin(void);
 int __libc_current_sigrtmax(void);
 
@@ -90,8 +88,11 @@ void (*sigset(int, void (*)(int)))(int);
 #ifdef _GNU_SOURCE
 typedef int (*sighandler_t)(int);
 void (*bsd_signal(int, void (*)(int)))(int);
+#define __siginfo siginfo
 #endif
 
+#include <bits/signal.h>
+
 typedef int sig_atomic_t;
 
 void (*signal(int, void (*)(int)))(int);