i686-gentoo-freebsd7.1-gcc -DHAVE_CONFIG_H -I. -I../../sandbox-9999/src -I.. -I../../sandbox-9999 -I../../sandbox-9999/libsbutil -I../../sandbox-9999/libsbutil/include -DETCDIR="\"/etc\"" -DLIBSANDBOX_PATH="\"/usr/lib\"" -DSANDBOX_BASHRC_PATH="\"/usr/share/sandbox\"" -DPIC -fPIC -D_REENTRANT -O2 -march=k8 -pipe -Wall -fdata-sections -ffunction-sections -MT sandbox.o -MD -MP -MF .deps/sandbox.Tpo -c -o sandbox.o ../../sandbox-9999/src/sandbox.c ../../sandbox-9999/src/sandbox.c: In function 'main': ../../sandbox-9999/src/sandbox.c:320: error: 'sighandler_t' undeclared (first use in this function) ../../sandbox-9999/src/sandbox.c:320: error: (Each undeclared identifier is reported only once ../../sandbox-9999/src/sandbox.c:320: error: for each function it appears in.) ../../sandbox-9999/src/sandbox.c:320: error: expected ';' before '_old' ../../sandbox-9999/src/sandbox.c:320: error: '_old' undeclared (first use in this function) ../../sandbox-9999/src/sandbox.c:321: error: expected ';' before '_old' ../../sandbox-9999/src/sandbox.c:322: error: expected ';' before '_old' FreeBSD lacks the `typedef __sighandler_t sighandler_t;' declaration on signal.h. Sidenote, I'm compiling git trying to stay ahead of the release, but I had to extract some autoconf macros from the tarball (AX_CHECK ones), are these added later or whut?.
the AX macros come from the autoconf-archive package
Created attachment 182467 [details, diff] sighandler_t.patch Thanks, found that out a little later. There is: [...] #if __BSD_VISIBLE typedef __sighandler_t *sig_t; /* type of pointer to a signal function */ typedef void __siginfohandler_t(int, struct __siginfo *, void *); #endif [...] in <sys/signal.h> on FreeBSD (included from <signal.h>), and also [...] #ifdef __USE_GNU typedef __sighandler_t sighandler_t; #endif /* 4.4 BSD uses the name `sig_t' for this. */ #ifdef __USE_BSD typedef __sighandler_t sig_t; #endif [...] in <signal.h> on glibc. The patch works on linux and fbsd.
fixed in git http://git.overlays.gentoo.org/gitweb/?p=proj/sandbox.git;a=commitdiff;h=7b0076ad9a24f29da59146c345801b142cfe1368