git: 58cdedf75024 - main - New port: math/jacop: Java Constraint Programming solve

Yuri Victorovich yuri at FreeBSD.org
Tue May 4 06:06:35 UTC 2021


The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=58cdedf7502425d186ef9fa868f436e18acc823f

commit 58cdedf7502425d186ef9fa868f436e18acc823f
Author:     Yuri Victorovich <yuri at FreeBSD.org>
AuthorDate: 2021-05-04 05:43:18 +0000
Commit:     Yuri Victorovich <yuri at FreeBSD.org>
CommitDate: 2021-05-04 06:06:32 +0000

    New port: math/jacop: Java Constraint Programming solve
---
 math/Makefile                |  1 +
 math/jacop/Makefile          | 67 ++++++++++++++++++++++++++++++++++++
 math/jacop/distinfo          |  5 +++
 math/jacop/files/jacop.sh.in |  3 ++
 math/jacop/pkg-descr         |  3 ++
 math/jacop/pkg-plist         | 81 ++++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 160 insertions(+)

diff --git a/math/Makefile b/math/Makefile
index f84f605e5c66..df7e7a52b6af 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -346,6 +346,7 @@
     SUBDIR += ipopt
     SUBDIR += ised
     SUBDIR += jacal
+    SUBDIR += jacop
     SUBDIR += jags
     SUBDIR += jama
     SUBDIR += jeuclid
diff --git a/math/jacop/Makefile b/math/jacop/Makefile
new file mode 100644
index 000000000000..76e4ec354425
--- /dev/null
+++ b/math/jacop/Makefile
@@ -0,0 +1,67 @@
+PORTNAME=	jacop
+DISTVERSIONPREFIX=	v
+DISTVERSION=	4.0.0-1162
+DISTVERSIONSUFFIX=	-gd37f3c23
+CATEGORIES=	math java
+MASTER_SITES=	LOCAL/yuri/:maven \
+		http://people.freebsd.org/~yuri/:maven
+
+MAINTAINER=	yuri at FreeBSD.org
+COMMENT=	Java Constraint Programming solver
+
+LICENSE=	AGPLv3
+LICENSE_FILE=	${WRKSRC}/LICENSE.md
+
+BUILD_DEPENDS=	mvn:devel/maven
+
+USE_JAVA=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	radsz
+
+NO_ARCH=	yes
+
+SUB_FILES=	${PORTNAME}.sh
+SUB_LIST=	PORTVERSION=${PORTVERSION} JAVA=${JAVA}
+
+# to rebuild the deps archive:
+#   1. set DEV_UPDATE_MODE=yes
+#   2. make makesum build
+#   3. upload the *-deps archive
+#   4. set DEV_UPDATE_MODE=no
+#   5. make clean makesum
+
+DEV_UPDATE_MODE=	no
+
+.if (${DEV_UPDATE_MODE} == "yes")
+post-build:
+	@cd ${WRKDIR} && ${TAR} czf ${DISTDIR}/${PORTNAME}-${DISTVERSION}-deps${EXTRACT_SUFX} .m2
+	@${ECHO} "(!!!) Please upload the maven deps archive: ${DISTDIR}/${PORTNAME}-${DISTVERSION}-deps${EXTRACT_SUFX}"
+.else
+MASTER_SITES+=	LOCAL/yuri/:maven
+DISTFILES+=	${PORTNAME}-${DISTVERSION}-deps${EXTRACT_SUFX}:maven
+MVN_ARGS=	--offline
+.endif
+
+do-build:
+	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
+		${LOCALBASE}/bin/mvn ${MVN_ARGS} \
+		-fae install \
+		-Dmaven.test.skip=true \
+		-Duser.home=${WRKDIR} \
+		compile
+
+do-install:
+	# script
+	${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME}.sh ${STAGEDIR}${PREFIX}/bin/fzn-${PORTNAME}
+	# jar
+	${INSTALL_DATA} ${WRKSRC}/target/${PORTNAME}-*-SNAPSHOT.jar ${STAGEDIR}${JAVAJARDIR}/${PORTNAME}-${PORTVERSION}.jar
+	# MiniZinc config file
+	${MKDIR} ${STAGEDIR}${PREFIX}/share/minizinc/solvers
+	${INSTALL_DATA} ${WRKSRC}/src/main/minizinc/org.jacop.msc ${STAGEDIR}${PREFIX}/share/minizinc/solvers
+	# jacop library
+	#${MKDIR} ${STAGEDIR}${PREFIX}/share/minizinc/jacop
+	#src/main/minizinc/org/jacop/minizinc
+	cd ${WRKSRC}/src/main/minizinc/org/jacop/minizinc && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/share/minizinc/jacop
+
+.include <bsd.port.mk>
diff --git a/math/jacop/distinfo b/math/jacop/distinfo
new file mode 100644
index 000000000000..991265ef638b
--- /dev/null
+++ b/math/jacop/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1620103183
+SHA256 (jacop-4.0.0-1162-deps.tar.gz) = 1c4aa41dff58aad875feac6ade8129ffb689b37038eb2c765d81305b58e15868
+SIZE (jacop-4.0.0-1162-deps.tar.gz) = 54183631
+SHA256 (radsz-jacop-v4.0.0-1162-gd37f3c23_GH0.tar.gz) = 3eed60b57e4e3e7e668f8c6d84c98b2fe7a22b8878205086b0c1f1932a4b6db2
+SIZE (radsz-jacop-v4.0.0-1162-gd37f3c23_GH0.tar.gz) = 154140130
diff --git a/math/jacop/files/jacop.sh.in b/math/jacop/files/jacop.sh.in
new file mode 100644
index 000000000000..35035ce472ce
--- /dev/null
+++ b/math/jacop/files/jacop.sh.in
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+%%JAVA%% -jar %%JAVAJARDIR%%/jacop-%%PORTVERSION%%.jar "$@"
diff --git a/math/jacop/pkg-descr b/math/jacop/pkg-descr
new file mode 100644
index 000000000000..950ccacbbe01
--- /dev/null
+++ b/math/jacop/pkg-descr
@@ -0,0 +1,3 @@
+Java Constraint Programming (JaCoP) solver for MiniZinc.
+
+WWW: https://github.com/radsz/jacop
diff --git a/math/jacop/pkg-plist b/math/jacop/pkg-plist
new file mode 100644
index 000000000000..12c919183a64
--- /dev/null
+++ b/math/jacop/pkg-plist
@@ -0,0 +1,81 @@
+bin/fzn-jacop
+%%JAVAJARDIR%%/jacop-4.0.0.1162.jar
+share/minizinc/jacop/GCC.mzn
+share/minizinc/jacop/all_distinct.mzn
+share/minizinc/jacop/among_var.mzn
+share/minizinc/jacop/channel.mzn
+share/minizinc/jacop/diff2.mzn
+share/minizinc/jacop/fzn_all_different_int.mzn
+share/minizinc/jacop/fzn_alldifferent_except_0.mzn
+share/minizinc/jacop/fzn_among.mzn
+share/minizinc/jacop/fzn_among_reif.mzn
+share/minizinc/jacop/fzn_arg_max_int.mzn
+share/minizinc/jacop/fzn_arg_min_int.mzn
+share/minizinc/jacop/fzn_at_least_int.mzn
+share/minizinc/jacop/fzn_at_least_int_reif.mzn
+share/minizinc/jacop/fzn_at_most_int.mzn
+share/minizinc/jacop/fzn_at_most_int_reif.mzn
+share/minizinc/jacop/fzn_bin_packing.mzn
+share/minizinc/jacop/fzn_bin_packing_capa.mzn
+share/minizinc/jacop/fzn_bin_packing_load.mzn
+share/minizinc/jacop/fzn_circuit.mzn
+share/minizinc/jacop/fzn_count_eq.mzn
+share/minizinc/jacop/fzn_count_eq_par.mzn
+share/minizinc/jacop/fzn_count_eq_par_reif.mzn
+share/minizinc/jacop/fzn_count_eq_reif.mzn
+share/minizinc/jacop/fzn_count_geq_par.mzn
+share/minizinc/jacop/fzn_count_geq_par_reif.mzn
+share/minizinc/jacop/fzn_count_gt_par.mzn
+share/minizinc/jacop/fzn_count_gt_par_reif.mzn
+share/minizinc/jacop/fzn_count_leq_par.mzn
+share/minizinc/jacop/fzn_count_leq_par_reif.mzn
+share/minizinc/jacop/fzn_count_lt_par.mzn
+share/minizinc/jacop/fzn_count_lt_par_reif.mzn
+share/minizinc/jacop/fzn_cumulative.mzn
+share/minizinc/jacop/fzn_diffn.mzn
+share/minizinc/jacop/fzn_diffn_nonstrict.mzn
+share/minizinc/jacop/fzn_disjoint.mzn
+share/minizinc/jacop/fzn_disjunctive.mzn
+share/minizinc/jacop/fzn_disjunctive_strict.mzn
+share/minizinc/jacop/fzn_distribute.mzn
+share/minizinc/jacop/fzn_exactly_int.mzn
+share/minizinc/jacop/fzn_geost.mzn
+share/minizinc/jacop/fzn_geost_bb.mzn
+share/minizinc/jacop/fzn_global_cardinality.mzn
+share/minizinc/jacop/fzn_global_cardinality_closed.mzn
+share/minizinc/jacop/fzn_global_cardinality_low_up.mzn
+share/minizinc/jacop/fzn_global_cardinality_low_up_closed.mzn
+share/minizinc/jacop/fzn_if_then_else_bool.mzn
+share/minizinc/jacop/fzn_if_then_else_float.mzn
+share/minizinc/jacop/fzn_if_then_else_int.mzn
+share/minizinc/jacop/fzn_if_then_else_set.mzn
+share/minizinc/jacop/fzn_if_then_else_var_bool.mzn
+share/minizinc/jacop/fzn_if_then_else_var_float.mzn
+share/minizinc/jacop/fzn_if_then_else_var_int.mzn
+share/minizinc/jacop/fzn_if_then_else_var_set.mzn
+share/minizinc/jacop/fzn_inverse.mzn
+share/minizinc/jacop/fzn_knapsack.mzn
+share/minizinc/jacop/fzn_lex_less_bool.mzn
+share/minizinc/jacop/fzn_lex_less_int.mzn
+share/minizinc/jacop/fzn_lex_lesseq_bool.mzn
+share/minizinc/jacop/fzn_lex_lesseq_int.mzn
+share/minizinc/jacop/fzn_member_bool.mzn
+share/minizinc/jacop/fzn_member_bool_reif.mzn
+share/minizinc/jacop/fzn_member_int.mzn
+share/minizinc/jacop/fzn_member_int_reif.mzn
+share/minizinc/jacop/fzn_network_flow.mzn
+share/minizinc/jacop/fzn_network_flow_cost.mzn
+share/minizinc/jacop/fzn_nvalue.mzn
+share/minizinc/jacop/fzn_nvalue_reif.mzn
+share/minizinc/jacop/fzn_regular.mzn
+share/minizinc/jacop/fzn_subcircuit.mzn
+share/minizinc/jacop/fzn_table_bool.mzn
+share/minizinc/jacop/fzn_table_int.mzn
+share/minizinc/jacop/fzn_value_precede_int.mzn
+share/minizinc/jacop/jacop.mzn
+share/minizinc/jacop/redefinitions-2.0.mzn
+share/minizinc/jacop/redefinitions.mzn
+share/minizinc/jacop/soft_all_different_int.mzn
+share/minizinc/jacop/soft_global_cardinality_int.mzn
+share/minizinc/jacop/stretch.mzn
+share/minizinc/solvers/org.jacop.msc


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