summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2018-01-01 17:11:44 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2018-01-01 17:11:44 +0000
commit4280dcf14be2504cc4dac30796e25979f4a2e4dc (patch)
tree8b4c9f7509820131ff59863a35752b6584fdfeaf
parent- Update to 20180101 (diff)
New port: math/symmetrica: Collection of routines for combinatorial mathematics
Submitted by: myself Approved by: tcberner (mentor) Differential Revision: https://reviews.freebsd.org/D13711
-rw-r--r--math/Makefile1
-rw-r--r--math/symmetrica/Makefile23
-rw-r--r--math/symmetrica/distinfo3
-rw-r--r--math/symmetrica/files/patch-makefile11
-rw-r--r--math/symmetrica/files/patch-part.c13
-rw-r--r--math/symmetrica/pkg-descr6
6 files changed, 57 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index 5793ea48ad14..6b96fcbfa386 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -733,6 +733,7 @@
SUBDIR += superlu
SUBDIR += superlu_mt
SUBDIR += surf
+ SUBDIR += symmetrica
SUBDIR += tablix
SUBDIR += taucs
SUBDIR += testu01
diff --git a/math/symmetrica/Makefile b/math/symmetrica/Makefile
new file mode 100644
index 000000000000..42a6761b7371
--- /dev/null
+++ b/math/symmetrica/Makefile
@@ -0,0 +1,23 @@
+# $FreeBSD$
+
+PORTNAME= symmetrica
+DISTVERSION= 2.0
+CATEGORIES= math
+MASTER_SITES= http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/
+DISTFILES= SYM2_0_tar.gz
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Collection of routines for combinatorial mathematics
+
+LICENSE= PD
+
+USES= gmake
+MAKEFILE= makefile
+NO_WRKSUBDIR= yes
+
+PLIST_FILES= bin/${PORTNAME}
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/test ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
+
+.include <bsd.port.mk>
diff --git a/math/symmetrica/distinfo b/math/symmetrica/distinfo
new file mode 100644
index 000000000000..37f192c73030
--- /dev/null
+++ b/math/symmetrica/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1514705794
+SHA256 (SYM2_0_tar.gz) = bf52788dedc14c482e89f5e7efe8c60864a633314ddd446dd4602d5fdaca0ee2
+SIZE (SYM2_0_tar.gz) = 720154
diff --git a/math/symmetrica/files/patch-makefile b/math/symmetrica/files/patch-makefile
new file mode 100644
index 000000000000..c3c340551dcb
--- /dev/null
+++ b/math/symmetrica/files/patch-makefile
@@ -0,0 +1,11 @@
+--- makefile.orig 2007-12-07 07:03:22 UTC
++++ makefile
+@@ -1,4 +1,6 @@
++all: test
++
+ .c.o:
+- cc -c -O2 -DFAST -DALLTRUE $<
++ $(CC) -c $(CFLAGS) -DFAST -DALLTRUE $<
+ test: test.c bar.o bi.o boe.o bruch.o classical.o de.o di.o ff.o galois.o ga.o gra.o hash.o hiccup.o io.o ko.o list.o lo.o ma.o mee.o mem.o mes.o mhe.o mhh.o mhm.o mhp.o mhs.o mmm.o mms.o mod_dg_sbd.o mo.o mpp.o mps.o mse.o msh.o msm.o mss.o muir.o na.o nb.o nc.o nu.o part.o pee.o peh.o pem.o perm.o pes.o phe.o phh.o phm.o phs.o plet.o pme.o pmh.o poly.o ppe.o pph.o ppm.o ppp.o pps.o pr.o pse.o psh.o psm.o pss.o rest.o rh.o sab.o sb.o sc.o sr.o ta.o teh.o tem.o tep.o tes.o the.o thm.o thp.o ths.o tme.o tmh.o tmp.o tms.o tpe.o tph.o tpm.o tps.o tse.o tsh.o tsm.o tsp.o vc.o zo.o zykelind.o zyk.o
+- gcc -DALLTRUE -DFAST test.c bar.o bi.o boe.o bruch.o classical.o de.o di.o ff.o galois.o ga.o gra.o hash.o hiccup.o io.o ko.o list.o lo.o ma.o mee.o mem.o mes.o mhe.o mhh.o mhm.o mhp.o mhs.o mmm.o mms.o mod_dg_sbd.o mo.o mpp.o mps.o mse.o msh.o msm.o mss.o muir.o na.o nb.o nc.o nu.o part.o pee.o peh.o pem.o perm.o pes.o phe.o phh.o phm.o phs.o plet.o pme.o pmh.o poly.o ppe.o pph.o ppm.o ppp.o pps.o pr.o pse.o psh.o psm.o pss.o rest.o rh.o sab.o sb.o sc.o sr.o ta.o teh.o tem.o tep.o tes.o the.o thm.o thp.o ths.o tme.o tmh.o tmp.o tms.o tpe.o tph.o tpm.o tps.o tse.o tsh.o tsm.o tsp.o vc.o zo.o zykelind.o zyk.o -o test -lm
++ $(CC) -DALLTRUE -DFAST test.c bar.o bi.o boe.o bruch.o classical.o de.o di.o ff.o galois.o ga.o gra.o hash.o hiccup.o io.o ko.o list.o lo.o ma.o mee.o mem.o mes.o mhe.o mhh.o mhm.o mhp.o mhs.o mmm.o mms.o mod_dg_sbd.o mo.o mpp.o mps.o mse.o msh.o msm.o mss.o muir.o na.o nb.o nc.o nu.o part.o pee.o peh.o pem.o perm.o pes.o phe.o phh.o phm.o phs.o plet.o pme.o pmh.o poly.o ppe.o pph.o ppm.o ppp.o pps.o pr.o pse.o psh.o psm.o pss.o rest.o rh.o sab.o sb.o sc.o sr.o ta.o teh.o tem.o tep.o tes.o the.o thm.o thp.o ths.o tme.o tmh.o tmp.o tms.o tpe.o tph.o tpm.o tps.o tse.o tsh.o tsm.o tsp.o vc.o zo.o zykelind.o zyk.o -o test -lm
diff --git a/math/symmetrica/files/patch-part.c b/math/symmetrica/files/patch-part.c
new file mode 100644
index 000000000000..8615b51317b9
--- /dev/null
+++ b/math/symmetrica/files/patch-part.c
@@ -0,0 +1,13 @@
+--- part.c.orig 2017-12-31 07:40:55 UTC
++++ part.c
+@@ -1767,8 +1767,8 @@ static int rec01(INT ni, OP vec)
+ /* to compute number of partitions */
+ {
+ INT erg = OK;
+- if (ni<0) return;
+- if (not EMPTYP(S_V_I(vec,ni))) return;
++ if (ni<0) return 0;
++ if (not EMPTYP(S_V_I(vec,ni))) return 0;
+ else if (ni<=1) M_I_I(1,S_V_I(vec,ni));
+ else {
+
diff --git a/math/symmetrica/pkg-descr b/math/symmetrica/pkg-descr
new file mode 100644
index 000000000000..8647908a09ef
--- /dev/null
+++ b/math/symmetrica/pkg-descr
@@ -0,0 +1,6 @@
+Symmetrica is a collection of routines, written in the programming language C,
+through which the user can readily write his/her own programs. Routines which
+manipulate many types of mathematical objects are available. Their use is
+facilitated by Symmetrica's object oriented style.
+
+WWW: http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA