aboutsummaryrefslogtreecommitdiffstats
path: root/math
diff options
context:
space:
mode:
authoryuri <yuri@FreeBSD.org>2018-01-02 01:11:44 +0800
committeryuri <yuri@FreeBSD.org>2018-01-02 01:11:44 +0800
commit5eed9ed58b62a2a4f5d9c0874c834544a030256a (patch)
tree8b4c9f7509820131ff59863a35752b6584fdfeaf /math
parent54ec7aa29eb521922168fb89e76854a6d6959d8d (diff)
downloadfreebsd-ports-gnome-5eed9ed58b62a2a4f5d9c0874c834544a030256a.tar.gz
freebsd-ports-gnome-5eed9ed58b62a2a4f5d9c0874c834544a030256a.tar.zst
freebsd-ports-gnome-5eed9ed58b62a2a4f5d9c0874c834544a030256a.zip
New port: math/symmetrica: Collection of routines for combinatorial mathematics
Submitted by: myself Approved by: tcberner (mentor) Differential Revision: https://reviews.freebsd.org/D13711
Diffstat (limited to 'math')
-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