aboutsummaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorSteven Kreuzer <skreuzer@FreeBSD.org>2017-06-06 21:34:35 +0000
committerSteven Kreuzer <skreuzer@FreeBSD.org>2017-06-06 21:34:35 +0000
commitd9df368cea29b83ca4ab167a7c635ec1b4f9f11f (patch)
tree63f96bd37377e05cd151f24b8f5bd92a8f0b9da0 /math
parenta41997696e63d47bc260b499c65521c7c94916fd (diff)
downloadports-d9df368cea29b83ca4ab167a7c635ec1b4f9f11f.tar.gz
ports-d9df368cea29b83ca4ab167a7c635ec1b4f9f11f.zip
Notes
Diffstat (limited to 'math')
-rw-r--r--math/moo/Makefile5
-rw-r--r--math/moo/files/patch-Makefile2
-rw-r--r--math/moo/files/patch-moo.y34
3 files changed, 34 insertions, 7 deletions
diff --git a/math/moo/Makefile b/math/moo/Makefile
index 8da7f1b2f7ba..3433139fcf4b 100644
--- a/math/moo/Makefile
+++ b/math/moo/Makefile
@@ -3,6 +3,7 @@
PORTNAME= moo
PORTVERSION= 1.5
+PORTREVISION= 1
CATEGORIES= math
MAINTAINER= skreuzer@FreeBSD.org
@@ -16,6 +17,10 @@ GH_TAGNAME= ${PORTVERSION}
PLIST_FILES= bin/moo man/man1/moo.1.gz
+.if exists(/usr/include/sys/capsicum.h)
+CFLAGS+= -DHAVE_CAPSICUM
+.endif
+
MAKE_JOBS_UNSAFE= yes
do-install:
diff --git a/math/moo/files/patch-Makefile b/math/moo/files/patch-Makefile
index 82a526073e7e..3bad622fceb5 100644
--- a/math/moo/files/patch-Makefile
+++ b/math/moo/files/patch-Makefile
@@ -1,4 +1,4 @@
---- Makefile.orig 2017-06-01 18:24:01 UTC
+--- Makefile.orig 2016-06-04 10:05:27 UTC
+++ Makefile
@@ -1,14 +1,14 @@
PROG= moo
diff --git a/math/moo/files/patch-moo.y b/math/moo/files/patch-moo.y
index 9d9ea2a78efe..646bcef4ff14 100644
--- a/math/moo/files/patch-moo.y
+++ b/math/moo/files/patch-moo.y
@@ -1,6 +1,18 @@
--- moo.y.orig 2016-06-04 10:05:27 UTC
+++ moo.y
-@@ -34,7 +34,7 @@ static int used_oct;
+@@ -4,6 +4,11 @@
+ * Public domain.
+ */
+
++#ifdef HAVE_CAPSICUM
++#include <sys/capsicum.h>
++#include <capsicum_helpers.h>
++#endif
++
+ #include <ctype.h>
+ #include <err.h>
+ #include <errno.h>
+@@ -34,7 +39,7 @@ static int used_oct;
static void divbyzero(void);
static void printnum(int64_t);
@@ -9,17 +21,27 @@
void yyerror(char *);
int yylex(void);
int yyparse(void);
-@@ -317,9 +317,6 @@ main(int argc, char *argv[])
+@@ -315,10 +320,16 @@ getnum(const char *nptr)
+ int
+ main(int argc, char *argv[])
{
- int ch;
+- int ch;
++#ifdef HAVE_CAPSICUM
++ if (caph_limit_stdio() < 0)
++ err(1, "unable to limit capabilities for stdio");
- if (pledge("stdio tmppath", NULL) == -1)
- err(1, "pledge");
--
++ caph_cache_catpages();
++ if (cap_enter() < 0 && errno != ENOSYS)
++ err(1, "unable to enter capability mode");
++#endif
++
++ int ch;
+
while ((ch = getopt(argc, argv, "0123456789b:lsuw:")) != -1)
switch (ch) {
- /*
-@@ -403,9 +400,6 @@ DONEPARSING:
+@@ -403,9 +414,6 @@ DONEPARSING:
yyin = sfp;
}