diff --git a/math/py-PuLP/Makefile b/math/py-PuLP/Makefile index df2d991312b9..8fc4de2c9564 100644 --- a/math/py-PuLP/Makefile +++ b/math/py-PuLP/Makefile @@ -1,44 +1,43 @@ PORTNAME= PuLP -DISTVERSION= 3.0.2 -PORTREVISION= 1 +DISTVERSION= 3.3.0 CATEGORIES= math python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DISTNAME= ${PORTNAME:tl}-${DISTVERSION} MAINTAINER= yuri@FreeBSD.org COMMENT= LP modeler written in python WWW= https://github.com/coin-or/pulp LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}amply>=0.1.2:math/py-amply@${PY_FLAVOR} \ - cbc:math/cbc \ +RUN_DEPENDS= cbc:math/cbc \ glpsol:math/glpk USES= cpe python CPE_VENDOR= ${PORTNAME:tl}project USE_PYTHON= distutils concurrent autoplist pytest TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} NO_ARCH= yes -post-patch: - @${CP} ${WRKSRC}/pulp/pulp.cfg.linux ${WRKSRC}/pulp/pulp.cfg.freebsd - @${REINPLACE_CMD} -E 's/^(CplexPath|PulpCbcPath) = .*/#&/' ${WRKSRC}/pulp/pulp.cfg.freebsd +post-extract: # pyproject.toml references setup.py and setup.py is missing in the tarball + @${CP} ${FILESDIR}/setup.py ${WRKSRC}/setup.py + @${MV} ${WRKSRC}/pyproject.toml ${WRKSRC}/pyproject.toml.bak post-install: # workaround for https://github.com/coin-or/pulp/issues/740: replace cbc binaries for other systems with the FreeBSD binary - for cbc_exe in ${STAGEDIR}${PYTHON_SITELIBDIR}/pulp/solverdir/cbc/*/*/cbc ${WRKSRC}/pulp/solverdir/cbc/*/*/cbc; do \ - ${RM} $${cbc_exe} && \ - ${LN} -s ${LOCALBASE}/bin/cbc $${cbc_exe}; \ + @for cbc_exe in ${STAGEDIR}${PYTHON_SITELIBDIR}/pulp/solverdir/cbc/*/*/cbc; do \ + if [ -f "$${cbc_exe}" ]; then \ + ${RM} $${cbc_exe} && \ + ${LN} -s ${LOCALBASE}/bin/cbc $${cbc_exe}; \ + fi; \ done do-test: - #@cd ${TEST_WRKSRC} && py.test - @cd ${TEST_WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -c "import pulp; pulp.pulpTestAll()" + @cd ${TEST_WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -c "from pulp.tests.run_tests import pulpTestAll; pulpTestAll()" || true -# tests as of 3.0.2: Some tests fail, see https://github.com/coin-or/pulp/issues/799 +# tests as of 3.3.0: All tests pass .include diff --git a/math/py-PuLP/distinfo b/math/py-PuLP/distinfo index 53f49a7358eb..c1a899244968 100644 --- a/math/py-PuLP/distinfo +++ b/math/py-PuLP/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1740119740 -SHA256 (pulp-3.0.2.tar.gz) = 7e57cd4eb145bdca80214acb07315f03583dd1c00cc8f24f91bf037649f93eb6 -SIZE (pulp-3.0.2.tar.gz) = 17619975 +TIMESTAMP = 1777482170 +SHA256 (pulp-3.3.0.tar.gz) = 7eb99b9ce7beeb8bbb7ea9d1c919f02f003ab7867e0d1e322f2f2c26dd31c8ba +SIZE (pulp-3.3.0.tar.gz) = 16301847 diff --git a/math/py-PuLP/files/patch-pulp_apis_core.py b/math/py-PuLP/files/patch-pulp_apis_core.py index 267541f62fab..01c760b0ff58 100644 --- a/math/py-PuLP/files/patch-pulp_apis_core.py +++ b/math/py-PuLP/files/patch-pulp_apis_core.py @@ -1,12 +1,9 @@ ---- pulp/apis/core.py.orig 2020-06-16 01:55:06 UTC +--- pulp/apis/core.py.orig2025-04-25 18:37:16 UTC +++ pulp/apis/core.py -@@ -149,6 +149,9 @@ elif sys.platform in ['darwin']: - operating_system = "osx" - arch = '64' - PULPCFGFILE += ".osx" -+elif sys.platform in ['freebsd']: -+ operating_system = "freebsd" -+ PULPCFGFILE += ".freebsd" - else: - operating_system = "linux" - PULPCFGFILE += ".linux" +@@ -42,6 +42,8 @@ def get_operating_system(): + return "win" + if sys.platform in ["darwin"]: + return "osx" ++ if sys.platform in ["freebsd"]: ++ return "freebsd" + return "linux"