git: 6ae00aea2cdb - main - New port: math/chuffed: Lazy clause generation CP solver for MiniZinc

Yuri Victorovich yuri at FreeBSD.org
Mon May 3 18:59:10 UTC 2021


The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6ae00aea2cdbffa61b2a70d222d6d453e50cd9fb

commit 6ae00aea2cdbffa61b2a70d222d6d453e50cd9fb
Author:     Yuri Victorovich <yuri at FreeBSD.org>
AuthorDate: 2021-05-03 18:48:29 +0000
Commit:     Yuri Victorovich <yuri at FreeBSD.org>
CommitDate: 2021-05-03 18:59:07 +0000

    New port: math/chuffed: Lazy clause generation CP solver for MiniZinc
---
 math/Makefile          |  1 +
 math/chuffed/Makefile  | 30 ++++++++++++++++++++++++++++++
 math/chuffed/distinfo  |  5 +++++
 math/chuffed/pkg-descr |  3 +++
 math/chuffed/pkg-plist | 28 ++++++++++++++++++++++++++++
 5 files changed, 67 insertions(+)

diff --git a/math/Makefile b/math/Makefile
index bfa68868a903..c8a77c380365 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -185,6 +185,7 @@
     SUBDIR += cglm
     SUBDIR += chaco
     SUBDIR += chryzodus
+    SUBDIR += chuffed
     SUBDIR += clasp
     SUBDIR += clblas
     SUBDIR += clblast
diff --git a/math/chuffed/Makefile b/math/chuffed/Makefile
new file mode 100644
index 000000000000..218e4b15bc49
--- /dev/null
+++ b/math/chuffed/Makefile
@@ -0,0 +1,30 @@
+PORTNAME=	chuffed
+DISTVERSION=	0.10.4
+CATEGORIES=	math
+
+MAINTAINER=	yuri at FreeBSD.org
+COMMENT=	Lazy clause generation CP solver for MiniZinc
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		bison cmake compiler:c++11-lang
+USE_GITHUB=	yes
+
+GH_TUPLE=	cp-profiler:cpp-integration:d695d93:cpi/submodules/cp-profiler-integration
+
+CXXFLAGS+=	-I${BUILD_WRKSRC}/chuffed/flatzinc # workaround for: fatal error: 'parser.tab.h' file not found, see https://github.com/chuffed/chuffed/issues/75
+
+post-patch: # workaround for: unknown symbol YYEMPTY: wrong parser.tab.h is used by the build, see https://github.com/chuffed/chuffed/issues/75
+	@${RM} ${WRKSRC}/chuffed/flatzinc/parser.tab.h
+
+post-install:
+	# move the msc file where MiniZinc looks for it, see https://github.com/chuffed/chuffed/issues/74
+	cd ${STAGEDIR}${PREFIX} && \
+		${MKDIR} share/minizinc/solvers && \
+		${MV} chuffed.msc share/minizinc/solvers
+	# adjust mzn executable and lib paths for MiniZinc to find them
+	${REINPLACE_CMD} -i '' -e 's|bin/|${PREFIX}/&| ; s|share/chuffed/|${PREFIX}/&|' \
+		${STAGEDIR}${PREFIX}/share/minizinc/solvers/chuffed.msc
+
+.include <bsd.port.mk>
diff --git a/math/chuffed/distinfo b/math/chuffed/distinfo
new file mode 100644
index 000000000000..d420e4c6986a
--- /dev/null
+++ b/math/chuffed/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1620064310
+SHA256 (chuffed-chuffed-0.10.4_GH0.tar.gz) = f7e7028d5a6b0d936f39d33e1e70ff71ccd34e39a5728928699132b213e52fde
+SIZE (chuffed-chuffed-0.10.4_GH0.tar.gz) = 308901
+SHA256 (cp-profiler-cpp-integration-d695d93_GH0.tar.gz) = ff556f0fcbdf4e438226c070bdf41e04b584bd193501b8882c6a1de8d4756ea9
+SIZE (cp-profiler-cpp-integration-d695d93_GH0.tar.gz) = 403484
diff --git a/math/chuffed/pkg-descr b/math/chuffed/pkg-descr
new file mode 100644
index 000000000000..356459fc8be7
--- /dev/null
+++ b/math/chuffed/pkg-descr
@@ -0,0 +1,3 @@
+The Chuffed CP solver backend for the MiniZinc constraint modelling language.
+
+WWW: https://github.com/chuffed/chuffed
diff --git a/math/chuffed/pkg-plist b/math/chuffed/pkg-plist
new file mode 100644
index 000000000000..41b89998f06f
--- /dev/null
+++ b/math/chuffed/pkg-plist
@@ -0,0 +1,28 @@
+bin/fzn-chuffed
+%%DATADIR%%/mznlib/all_different_int.mzn
+%%DATADIR%%/mznlib/arg_max_bool.mzn
+%%DATADIR%%/mznlib/at_least_int.mzn
+%%DATADIR%%/mznlib/at_most_int.mzn
+%%DATADIR%%/mznlib/chuffed.mzn
+%%DATADIR%%/mznlib/circuit.mzn
+%%DATADIR%%/mznlib/cost_regular.mzn
+%%DATADIR%%/mznlib/count.mzn
+%%DATADIR%%/mznlib/cumulative.mzn
+%%DATADIR%%/mznlib/disjunctive.mzn
+%%DATADIR%%/mznlib/disjunctive_strict.mzn
+%%DATADIR%%/mznlib/distribute.mzn
+%%DATADIR%%/mznlib/exactly_int.mzn
+%%DATADIR%%/mznlib/global_cardinality_low_up.mzn
+%%DATADIR%%/mznlib/inverse.mzn
+%%DATADIR%%/mznlib/maximum_int.mzn
+%%DATADIR%%/mznlib/minimum_int.mzn
+%%DATADIR%%/mznlib/nvalue.mzn
+%%DATADIR%%/mznlib/redefinitions.mzn
+%%DATADIR%%/mznlib/regular.mzn
+%%DATADIR%%/mznlib/subcircuit.mzn
+%%DATADIR%%/mznlib/table_int.mzn
+%%DATADIR%%/mznlib/values_interchange.mzn
+%%DATADIR%%/mznlib/values_sequences.mzn
+%%DATADIR%%/mznlib/variables_interchange.mzn
+%%DATADIR%%/mznlib/variables_sequences.mzn
+share/minizinc/solvers/chuffed.msc


More information about the dev-commits-ports-all mailing list