aboutsummaryrefslogtreecommitdiff
path: root/math/e-antic
diff options
context:
space:
mode:
authorThierry Thomas <thierry@FreeBSD.org>2021-01-23 18:58:34 +0000
committerThierry Thomas <thierry@FreeBSD.org>2021-01-23 18:58:34 +0000
commita964469cc30e342dadc117d9d631f9e3972dfb0d (patch)
treed0c04e3e0a1e3493f47a7b5c3d69638bb51faa92 /math/e-antic
parent3f2006faf47f102fe69d496e5599d48a5ea6f8b7 (diff)
Notes
Diffstat (limited to 'math/e-antic')
-rw-r--r--math/e-antic/Makefile54
-rw-r--r--math/e-antic/distinfo16
-rw-r--r--math/e-antic/files/patch-libeantic_src_fmpz__poly__extra_randtest__irreducible.c40
-rw-r--r--math/e-antic/pkg-plist40
4 files changed, 126 insertions, 24 deletions
diff --git a/math/e-antic/Makefile b/math/e-antic/Makefile
index b233d93bb634..bc1e43e7f53b 100644
--- a/math/e-antic/Makefile
+++ b/math/e-antic/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= e-antic
-PORTVERSION= 0.1.8
+DISTVERSION= 1.0.0-rc.12
#MASTER_SITES= https://www.labri.fr/perso/vdelecro/e-antic/
CATEGORIES= math
@@ -12,25 +12,55 @@ COMMENT= Real Embedded Algebraic Number Theory In C
LICENSE= GPLv3 LGPL3
LICENSE_COMB= dual
-LIB_DEPENDS= libarb.so:math/arb \
- libgmp.so:math/gmp \
- libflint.so:math/flint2
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR}
+LIB_DEPENDS= libarb.so:math/arb \
+ libgmp.so:math/gmp \
+ libantic.so:math/antic \
+ libflint.so:math/flint2 \
+ libbenchmark.so:devel/benchmark \
+ libboost_thread.so:devel/boost-libs
-USE_GITHUB= yes
-GH_ACCOUNT= videlec
+USES= autoreconf compiler:c++11-lang gmake libtool localbase \
+ python:3.7+
-USES= autoreconf compiler:c++11-lang gmake libtool localbase
+USE_GITHUB= yes
+ANTIC_TAG= f4e8a60
+CATCH_TAG= ff349a5
+CEREAL_TAG= 51cbda5
+FLINT_TAG= ae7ec89
+UF_TAG= 0000f42
+GH_ACCOUNT= flatsurf catchorg:c1 USCiLab:c2 wbhart:f flatsurf:u
+GH_PROJECT= ${PORTNAME} antic:a Catch2:c1 cereal:c2 flint2:f \
+ unique-factory:u
+GH_TAGNAME= ${ANTIC_TAG}:a ${CATCH_TAG}:c1 ${CEREAL_TAG}:c2 ${FLINT_TAG}:f \
+ ${UF_TAG}:u
-OPTIONS_DEFINE= DOCS VALGRIND
+CONFIGURE_ARGS= --without-pytest # pytest requires cppyy
LIBS+= "-lm"
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
TEST_TARGET= check
-VALGRIND_DESC= Enable Valgrind on the unit tests
-VALGRIND_BUILD_DEPENDS= valgrind:devel/valgrind
-VALGRIND_TEST_DEPENDS= valgrind:devel/valgrind
-VALGRIND_CONFIGURE_ENABLE= valgrind
+PLIST_SUB= VER=1.0.0rc12
+
+post-extract:
+ ${CP} -R ${WRKDIR}/antic-${ANTIC_TAG}/* ${WRKSRC}/libeantic/upstream/antic/
+ ${CP} -R ${WRKDIR}/Catch2-${CATCH_TAG}/* \
+ ${WRKSRC}/libeantic/test/external/catch2/
+ ${CP} -R ${WRKDIR}/cereal-${CEREAL_TAG}/* \
+ ${WRKSRC}/libeantic/test/external/cereal/
+ ${CP} -R ${WRKDIR}/flint2-${FLINT_TAG}/* ${WRKSRC}/libeantic/upstream/antic/
+ ${CP} -R ${WRKDIR}/unique-factory-${UF_TAG}/* \
+ ${WRKSRC}/libeantic/srcxx/external/unique-factory
+
+post-install:
+ ${REINPLACE_CMD} -e 's|${STAGEDIR}||' \
+ ${STAGEDIR}${PREFIX}/lib/python3.7/site-packages/pyeantic/install_files.txt
+ ${RM} ${STAGEDIR}${PREFIX}/lib/python3.7/site-packages/pyeantic/install_files.txt.bak
+ ${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py -d \
+ ${PYTHONPREFIX_SITELIBDIR} -f ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+ ${PYTHON_CMD} -O ${PYTHON_LIBDIR}/compileall.py -d \
+ ${PYTHONPREFIX_SITELIBDIR} -f ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
.include <bsd.port.mk>
diff --git a/math/e-antic/distinfo b/math/e-antic/distinfo
index 39c2a1384635..2ddb1eacaf71 100644
--- a/math/e-antic/distinfo
+++ b/math/e-antic/distinfo
@@ -1,3 +1,13 @@
-TIMESTAMP = 1596476102
-SHA256 (videlec-e-antic-0.1.8_GH0.tar.gz) = 7c7c7693f86d8bb6d849d903cdb6796491d845a9fd79e8a3c9166edbf2436bc0
-SIZE (videlec-e-antic-0.1.8_GH0.tar.gz) = 127960
+TIMESTAMP = 1611416419
+SHA256 (flatsurf-e-antic-1.0.0-rc.12_GH0.tar.gz) = df42a10a2381cebf401d920258db6ad2599a0e64bd4866c8b6df41128df48e28
+SIZE (flatsurf-e-antic-1.0.0-rc.12_GH0.tar.gz) = 122879
+SHA256 (catchorg-Catch2-ff349a5_GH0.tar.gz) = 45983da4c511bc6ed68e391178ead52b0b40c5e8ad7ea5f3fc8c376432d1b6b7
+SIZE (catchorg-Catch2-ff349a5_GH0.tar.gz) = 655437
+SHA256 (USCiLab-cereal-51cbda5_GH0.tar.gz) = efa214cfc850a4a2360baf4419b88c93be2a08b09ff5f9bac604a18498b83cfb
+SIZE (USCiLab-cereal-51cbda5_GH0.tar.gz) = 335754
+SHA256 (wbhart-flint2-ae7ec89_GH0.tar.gz) = b31afe615382f2174b19a951d89602787a0314d8ae0602be8a2987c7861d5aca
+SIZE (wbhart-flint2-ae7ec89_GH0.tar.gz) = 4526427
+SHA256 (flatsurf-unique-factory-0000f42_GH0.tar.gz) = 69c9ee22e36ff871709403f4715f9acff3b9cfa5e6b715ec1e21543bb8f32419
+SIZE (flatsurf-unique-factory-0000f42_GH0.tar.gz) = 8247
+SHA256 (flatsurf-antic-f4e8a60_GH0.tar.gz) = e3dc2b4caf4c80f83c2e391ff6b8bce2c4b3694028a4fe7b07696411be0a07e4
+SIZE (flatsurf-antic-f4e8a60_GH0.tar.gz) = 73895
diff --git a/math/e-antic/files/patch-libeantic_src_fmpz__poly__extra_randtest__irreducible.c b/math/e-antic/files/patch-libeantic_src_fmpz__poly__extra_randtest__irreducible.c
new file mode 100644
index 000000000000..94d5c649054a
--- /dev/null
+++ b/math/e-antic/files/patch-libeantic_src_fmpz__poly__extra_randtest__irreducible.c
@@ -0,0 +1,40 @@
+--- libeantic/src/fmpz_poly_extra/randtest_irreducible.c.orig 2021-01-21 20:23:35 UTC
++++ libeantic/src/fmpz_poly_extra/randtest_irreducible.c
+@@ -18,14 +18,25 @@ void fmpz_poly_randtest_irreducible(fmpz_poly_t p, fli
+ slong i;
+ fmpz_t c;
+ fmpz_mod_poly_t q;
++#if __FLINT_RELEASE >= 20700
++ fmpz_mod_ctx_t ctx;
++#endif
+
+ fmpz_init(c);
+
+ fmpz_randprime(c, state, bits, 0);
++#if __FLINT_RELEASE >= 20700
++ fmpz_mod_ctx_init(ctx, c);
++ fmpz_mod_poly_init(q, ctx);
++ fmpz_mod_poly_randtest_irreducible(q, state, len, ctx);
++
++ fmpz_mod_poly_get_fmpz_poly(p, q, ctx);
++#else
+ fmpz_mod_poly_init(q, c);
+ fmpz_mod_poly_randtest_irreducible(q, state, len);
+
+ fmpz_mod_poly_get_fmpz_poly(p, q);
++#endif
+
+ /* After lifting, the coefficients belong to {0, ..., c-1}. We now */
+ /* randomly subtract c so that some of them become negative. */
+@@ -38,6 +49,11 @@ void fmpz_poly_randtest_irreducible(fmpz_poly_t p, fli
+ c);
+ }
+
++#if __FLINT_RELEASE >= 20700
++ fmpz_mod_poly_clear(q, ctx);
++ fmpz_mod_ctx_clear(ctx);
++#else
+ fmpz_mod_poly_clear(q);
++#endif
+ fmpz_clear(c);
+ }
diff --git a/math/e-antic/pkg-plist b/math/e-antic/pkg-plist
index 8981cee25fd7..c79fd05ee42a 100644
--- a/math/e-antic/pkg-plist
+++ b/math/e-antic/pkg-plist
@@ -1,17 +1,39 @@
+include/e-antic/cppyy.h
include/e-antic/e-antic.h
-include/e-antic/nf.h
-include/e-antic/nf_elem.h
-include/e-antic/poly_extra.h
+include/e-antic/fmpq_poly_extra.h
+include/e-antic/fmpz_poly_extra.h
include/e-antic/renf.h
include/e-antic/renf_elem.h
include/e-antic/renfxx.h
+include/e-antic/renfxx_cereal.h
+include/e-antic/renfxx_fwd.h
+include/libeantic/e-antic.h
lib/libeantic.a
lib/libeantic.so
-lib/libeantic.so.0
-lib/libeantic.so.0.0.0
+lib/libeantic.so.1
+lib/libeantic.so.1.0.0
lib/libeanticxx.a
lib/libeanticxx.so
-lib/libeanticxx.so.0
-lib/libeanticxx.so.0.0.0
-%%PORTDOCS%%%%DOCSDIR%%/README
-%%PORTDOCS%%%%DOCSDIR%%/poly_extra.txt
+lib/libeanticxx.so.1
+lib/libeanticxx.so.1.0.0
+%%PYTHON_SITELIBDIR%%/pyeantic-1.0.0rc12-py%%PYTHON_VER%%.egg-info/PKG-INFO
+%%PYTHON_SITELIBDIR%%/pyeantic-1.0.0rc12-py%%PYTHON_VER%%.egg-info/SOURCES.txt
+%%PYTHON_SITELIBDIR%%/pyeantic-1.0.0rc12-py%%PYTHON_VER%%.egg-info/dependency_links.txt
+%%PYTHON_SITELIBDIR%%/pyeantic-1.0.0rc12-py%%PYTHON_VER%%.egg-info/requires.txt
+%%PYTHON_SITELIBDIR%%/pyeantic-1.0.0rc12-py%%PYTHON_VER%%.egg-info/top_level.txt
+%%PYTHON_SITELIBDIR%%/pyeantic/__init__.py
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/cppyy_eantic.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/cppyy_eantic.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/real_embedded_number_field.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/real_embedded_number_field.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/realalg_conversion.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/realalg_conversion.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/sage_conversion.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/__pycache__/sage_conversion.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/pyeantic/cppyy_eantic.py
+%%PYTHON_SITELIBDIR%%/pyeantic/install_files.txt
+%%PYTHON_SITELIBDIR%%/pyeantic/real_embedded_number_field.py
+%%PYTHON_SITELIBDIR%%/pyeantic/realalg_conversion.py
+%%PYTHON_SITELIBDIR%%/pyeantic/sage_conversion.py