Tor doesn't build under musl-libc
Tor's common/sandbox.c is making use of an internal header, bits/signum.h which is causing compilation failures under musl-libc. This should result in issues even under glibc... Relevant log snippet is below x86_64-gentoo-linux-musl-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I./src/ext -Isrc/ext -I./src/ext/trunnel -I./src/trunnel -I./src/common -Isrc/common -I./src/ext/trunnel -I./src/trun nel -I./src/or -Isrc/or -DSHARE_DATADIR="\"/usr/share\"" -DLOCALSTATEDIR="\"/var/lib\"" -DBINDIR="\"/usr/bin\"" -I./src/common -march=core-avx-i -O2 -fstack-protector-all -fom it-frame-pointer -fasynchronous-unwind-tables -Wall -fno-strict-aliasing -c -o src/common/sandbox.o src/common/sandbox.c src/common/sandbox.c:51:25: fatal error: bits/signum.h: No such file or directory #include <bits/signum.h> ^ compilation terminated. Makefile:2967: recipe for target 'src/common/sandbox.o' failed make[1]: *** [src/common/sandbox.o] Error 1 make[1]: Leaving directory '/var/tmp/portage/net-misc/tor-0.2.6.10/work/tor-0.2.6.10' Makefile:1688: recipe for target 'all' failed make: *** [all] Error 2 A patch I have used to make it build is below as well. --- a/src/common/sandbox.c 2015-07-10 17:54:28.000000000 +0200 +++ b/src/common/sandbox.c 2015-08-31 18:33:17.178104105 +0200 @@ -48,7 +48,7 @@ #include <sys/epoll.h> #include <sys/prctl.h> #include <linux/futex.h> -#include <bits/signum.h> +#include <sys/file.h> #include <stdarg.h> #include <seccomp.h> --- a/src/common/sandbox.h 2015-06-22 19:42:28.000000000 +0200 +++ b/src/common/sandbox.h 2015-08-31 18:33:01.806151831 +0200 @@ -41,6 +41,7 @@ #ifndef __USE_GNU #define __USE_GNU +#define _GNU_SOURCE #endif #include <sys/ucontext.h> #include <seccomp.h> **Trac**: **Username**: jamestk
issue