diff options
author | glarkin <glarkin@FreeBSD.org> | 2012-02-04 05:40:00 +0800 |
---|---|---|
committer | glarkin <glarkin@FreeBSD.org> | 2012-02-04 05:40:00 +0800 |
commit | 09ad7d5514db5a066de0aca734a0737541aab220 (patch) | |
tree | 6705bfbe87222f9a39b9e75994b137e936eeaa96 /devel/gearmand | |
parent | f9b47982a73cee8760b54a7a95be424b73a090a9 (diff) | |
download | freebsd-ports-gnome-09ad7d5514db5a066de0aca734a0737541aab220.tar.gz freebsd-ports-gnome-09ad7d5514db5a066de0aca734a0737541aab220.tar.zst freebsd-ports-gnome-09ad7d5514db5a066de0aca734a0737541aab220.zip |
- Unbreak on 7.x due to missing sigignore()
Submitted by: pointyhat (via pav)
Diffstat (limited to 'devel/gearmand')
-rw-r--r-- | devel/gearmand/Makefile | 6 | ||||
-rw-r--r-- | devel/gearmand/files/extra-patch-libtest__test.cc | 14 |
2 files changed, 18 insertions, 2 deletions
diff --git a/devel/gearmand/Makefile b/devel/gearmand/Makefile index b6f4fb146195..372bc6e4cd3c 100644 --- a/devel/gearmand/Makefile +++ b/devel/gearmand/Makefile @@ -191,8 +191,10 @@ MAN8= gearmand.8 .include <bsd.port.pre.mk> -.if ${OSVERSION} < 800000 -BROKEN= does not compile on FreeBSD 7.X +# Workaround for missing sigignore that wasn't introduced until +# FreeBSD 8.0 +.if ${OSVERSION} < 800500 +EXTRA_PATCHES+= ${FILESDIR}/extra-patch-libtest__test.cc .endif # This hack is required for the test programs invoked by configure, diff --git a/devel/gearmand/files/extra-patch-libtest__test.cc b/devel/gearmand/files/extra-patch-libtest__test.cc new file mode 100644 index 000000000000..c4098399716e --- /dev/null +++ b/devel/gearmand/files/extra-patch-libtest__test.cc @@ -0,0 +1,14 @@ +--- ./libtest/test.cc.orig 2012-01-27 17:12:33.000000000 -0500 ++++ ./libtest/test.cc 2012-01-27 17:14:02.000000000 -0500 +@@ -113,7 +113,10 @@ + return EXIT_FAILURE; + } + +- assert(sigignore(SIGPIPE) == 0); ++ struct sigaction ignore_action; ++ ignore_action.sa_handler = SIG_IGN; ++ ignore_action.sa_flags = SA_RESTART; ++ assert(sigaction(SIGPIPE, &ignore_action, NULL) == 0); + + libtest::SignalThread signal; + if (not signal.setup()) |