aboutsummaryrefslogtreecommitdiffstats
path: root/math
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2017-11-20 05:59:32 +0800
committerYuri Victorovich <yuri@FreeBSD.org>2017-11-20 05:59:32 +0800
commit91d97411aeff915c05ac6684a55d7679a8145ee0 (patch)
tree1da8c7554cc6e8791d3dec68aba87c041d179f7b /math
parentad276c7647e1e35619b8e0ff8a48aa23622f044a (diff)
downloadfreebsd-ports-gnome-91d97411aeff915c05ac6684a55d7679a8145ee0.tar.gz
freebsd-ports-gnome-91d97411aeff915c05ac6684a55d7679a8145ee0.tar.zst
freebsd-ports-gnome-91d97411aeff915c05ac6684a55d7679a8145ee0.zip
New port: math/eprover : Theorem prover for full first-order logic with equality
PR: 211903 Submitted by: Greg V <greg@unrelenting.technology> Approved by: tcberner (mentor) Differential Revision: https://reviews.freebsd.org/D13150
Diffstat (limited to 'math')
-rw-r--r--math/Makefile1
-rw-r--r--math/eprover/Makefile48
-rw-r--r--math/eprover/distinfo3
-rw-r--r--math/eprover/files/patch-Makefile10
-rw-r--r--math/eprover/files/patch-Makefile.vars24
-rw-r--r--math/eprover/pkg-descr7
-rw-r--r--math/eprover/pkg-plist26
7 files changed, 119 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index dd434cc0d188..dbef4a96dac8 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -166,6 +166,7 @@
SUBDIR += emc2
SUBDIR += ent
SUBDIR += entropy
+ SUBDIR += eprover
SUBDIR += ess
SUBDIR += eukleides
SUBDIR += eval
diff --git a/math/eprover/Makefile b/math/eprover/Makefile
new file mode 100644
index 000000000000..36a58736397e
--- /dev/null
+++ b/math/eprover/Makefile
@@ -0,0 +1,48 @@
+# $FreeBSD$
+
+PORTNAME= eprover
+DISTVERSIONPREFIX= E-
+DISTVERSION= 2.0
+CATEGORIES= math
+
+MAINTAINER= greg@unrelenting.technology
+COMMENT= Theorem prover for full first-order logic with equality
+
+LICENSE= LGPL20+ GPLv2+
+LICENSE_COMB= dual
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+BUILD_DEPENDS= bash:shells/bash \
+ help2man:misc/help2man
+RUN_DEPENDS= bash:shells/bash
+
+USES= shebangfix
+USE_GITHUB= yes
+
+HAS_CONFIGURE= yes
+CONFIGURE_ARGS= --bindir=${STAGEDIR}${PREFIX}/bin/ \
+ --man-prefix=${STAGEDIR}${PREFIX}/man/man1/
+SHEBANG_FILES= PROVER/eproof PROVER/eproof_ram
+
+post-build:
+ @cd ${WRKSRC} && ${MAKE} man
+ @${REINPLACE_CMD} -e 's|EXECPATH=.|EXECPATH=${PREFIX}/bin|' \
+ ${WRKSRC}/PROVER/eproof ${WRKSRC}/PROVER/eproof_ram
+
+post-install:
+.for f in checkproof e_axfilter e_deduction_server e_ltb_runner eground \
+ ekb_create ekb_delete ekb_ginsert ekb_insert epclextract eprover
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${f}
+.endfor
+
+.include <bsd.port.pre.mk>
+
+.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100000
+# the default compiler hangs on 10
+BUILD_DEPENDS+= clang40:devel/llvm40
+RUN_DEPENDS+= clang40:devel/llvm40
+CC= clang40
+CXX= clang++40
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/math/eprover/distinfo b/math/eprover/distinfo
new file mode 100644
index 000000000000..cb94072c149c
--- /dev/null
+++ b/math/eprover/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1508690062
+SHA256 (eprover-eprover-E-2.0_GH0.tar.gz) = 63986bcfa139381831c14af5ef83e350f8efb169b1d22d15cb92026259ea14d2
+SIZE (eprover-eprover-E-2.0_GH0.tar.gz) = 1315451
diff --git a/math/eprover/files/patch-Makefile b/math/eprover/files/patch-Makefile
new file mode 100644
index 000000000000..6a45f6aa974d
--- /dev/null
+++ b/math/eprover/files/patch-Makefile
@@ -0,0 +1,10 @@
+--- Makefile.orig 2017-11-18 22:48:40 UTC
++++ Makefile
+@@ -175,6 +175,7 @@ documentation:
+
+ man: E
+ mkdir -p DOC/man
++ help2man -N -i DOC/bug_reporting PROVER/e_deduction_server > DOC/man/e_deduction_server.1
+ help2man -N -i DOC/bug_reporting PROVER/eproof > DOC/man/eproof.1
+ help2man -N -i DOC/bug_reporting PROVER/eproof_ram > DOC/man/eproof_ram.1
+ help2man -N -i DOC/bug_reporting PROVER/eprover > DOC/man/eprover.1
diff --git a/math/eprover/files/patch-Makefile.vars b/math/eprover/files/patch-Makefile.vars
new file mode 100644
index 000000000000..fa864acda681
--- /dev/null
+++ b/math/eprover/files/patch-Makefile.vars
@@ -0,0 +1,24 @@
+--- Makefile.vars.orig 2017-07-07 12:35:57 UTC
++++ Makefile.vars
+@@ -134,17 +134,17 @@ PROFFLAGS = # -pg
+ DEBUGGER = # -g -ggdb
+ LTOFLAGS = # -flto
+ WFLAGS = -Wall
+-OPTFLAGS = -O3 -fomit-frame-pointer -fno-common
++OPTFLAGS =
+
+
+ DEBUGFLAGS = $(PROFFLAGS) $(MEMDEBUG) $(DEBUGGER) $(NODEBUG)
+-CFLAGS = $(OPTFLAGS) $(LTOFLAGS) $(WFLAGS) $(DEBUGFLAGS) $(BUILDFLAGS) -std=gnu99 -I../include
+-LDFLAGS = $(OPTFLAGS) $(LTOFLAGS) $(PROFFLAGS) $(DEBUGGER)
++CFLAGS += $(OPTFLAGS) $(LTOFLAGS) $(WFLAGS) $(DEBUGFLAGS) $(BUILDFLAGS) -std=gnu99 -I../include
++LDFLAGS += $(OPTFLAGS) $(LTOFLAGS) $(PROFFLAGS) $(DEBUGGER)
+ LD = $(CC) $(LDFLAGS)
+
+ # Generic
+ AR = ar rcs
+- CC = gcc
++ CC ?= gcc
+
+ # Builds with link time optimization
+ #
diff --git a/math/eprover/pkg-descr b/math/eprover/pkg-descr
new file mode 100644
index 000000000000..a24dbd17aa1f
--- /dev/null
+++ b/math/eprover/pkg-descr
@@ -0,0 +1,7 @@
+A saturating theorem prover for full first-order logic with equality. It accepts
+a problem specification, typically consisting of a number of first-order clauses
+or formulas, and a conjecture, again either in clausal or full first-order
+form. The system will then try to find a formal proof for the conjecture,
+assuming the axioms.
+
+WWW: http://www.eprover.org
diff --git a/math/eprover/pkg-plist b/math/eprover/pkg-plist
new file mode 100644
index 000000000000..b06233797330
--- /dev/null
+++ b/math/eprover/pkg-plist
@@ -0,0 +1,26 @@
+bin/checkproof
+bin/e_axfilter
+bin/e_deduction_server
+bin/e_ltb_runner
+bin/eground
+bin/ekb_create
+bin/ekb_delete
+bin/ekb_ginsert
+bin/ekb_insert
+bin/epclextract
+bin/eproof
+bin/eproof_ram
+bin/eprover
+man/man1/checkproof.1.gz
+man/man1/e_axfilter.1.gz
+man/man1/e_deduction_server.1.gz
+man/man1/e_ltb_runner.1.gz
+man/man1/eground.1.gz
+man/man1/ekb_create.1.gz
+man/man1/ekb_delete.1.gz
+man/man1/ekb_ginsert.1.gz
+man/man1/ekb_insert.1.gz
+man/man1/epclextract.1.gz
+man/man1/eproof.1.gz
+man/man1/eproof_ram.1.gz
+man/man1/eprover.1.gz