aboutsummaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorThierry Thomas <thierry@FreeBSD.org>2020-06-28 14:06:58 +0000
committerThierry Thomas <thierry@FreeBSD.org>2020-06-28 14:06:58 +0000
commit65c574392ab62500a5b355503053896a81c57e98 (patch)
tree177cde9bde4d786b6b8aa93affc2efb049223481 /math
parente15a079223c8f7a32cc76544fd8312731f319ada (diff)
downloadports-65c574392ab62500a5b355503053896a81c57e98.tar.gz
ports-65c574392ab62500a5b355503053896a81c57e98.zip
- always --enable-build-as-root (DP)
- remove CONFLICTS with lang/python3 (DP) - remove future CONFLICTS with blas/lapack (PR 247542) - add a pkg-message for SAGE_ROOT / SAGE_LOCAL (DP) - remove the check of R´s Makevars.site (DP) see <https://trac.sagemath.org/ticket/29943> - use math/e-antic from the ports tree - make BROKEN on -CURRENT untill a solution is found / Python Reported by: Dima Pasechnik <dimpase (at) gmail.com> (DP)
Notes
Notes: svn path=/head/; revision=540720
Diffstat (limited to 'math')
-rw-r--r--math/sage/Makefile32
-rw-r--r--math/sage/files/e_antic_spkg-configure.m48
-rw-r--r--math/sage/files/patch-src_bin_sage-env29
-rw-r--r--math/sage/files/pkg-message.in5
-rw-r--r--math/sage/pkg-plist5
5 files changed, 61 insertions, 18 deletions
diff --git a/math/sage/Makefile b/math/sage/Makefile
index 2dbe42ac4cd2..28e82ad7038b 100644
--- a/math/sage/Makefile
+++ b/math/sage/Makefile
@@ -3,7 +3,7 @@
PORTNAME= sage
PORTVERSION= 9.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= math
MASTER_SITES= https://mirrors.xmission.com/sage/src/ \
http://mirrors.xmission.com/sage/src/ \
@@ -19,6 +19,9 @@ COMMENT= Open source Mathematics software
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING.txt
+# See https://lists.freebsd.org/pipermail/freebsd-python/2020-June/020710.html
+BROKEN_FreeBSD_13= Bad plist caused by changes in Python
+
BUILD_DEPENDS= bash:shells/bash \
dash:shells/dash \
cmake:devel/cmake \
@@ -140,6 +143,7 @@ LIB_DEPENDS= libarb.so:math/arb \
libcdd.so:math/cddlib \
libcliquer.so:math/cliquer \
libcurl.so:ftp/curl \
+ libeantic.so:math/e-antic \
libec.so:math/eclib \
libecl.so:lang/ecl \
libecm.so:math/gmp-ecm \
@@ -304,8 +308,7 @@ USE_GNOME= cairo glib20 pango
USE_PYTHON= cython
USE_JAVA= yes # for science/jmol
-CONFLICTS= python-3.* \
- ${PYTHON_PKGNAMEPREFIX}ipykernel5-5.* \
+CONFLICTS= ${PYTHON_PKGNAMEPREFIX}ipykernel5-5.* \
${PYTHON_PKGNAMEPREFIX}ipython-7.* \
${PYTHON_PKGNAMEPREFIX}ipywidgets-7.* \
${PYTHON_PKGNAMEPREFIX}notebook-6.* \
@@ -330,19 +333,17 @@ CONFIGURE_ENV= SAGE_PORT=yes CC=${CC} GCC=${CC} CXX=${CXX} AS=${AS} LD=${LD} \
DESTDIR=${BLDDIR}/${PREFIX} PATCH=${LOCALBASE}/bin/gpatch
CONFIGURE_ARGS= --with-system-gcc=force \
--with-system-python3=yes \
+ --enable-build-as-root \
--localstatedir=/var
MAKE_ENV= MAKE=${GMAKE} DESTDIR=${BLDDIR}
REINPLACE_ARGS= -i ''
BINARY_ALIAS= patch=${LOCALBASE}/bin/gpatch
PLIST_SUB= VER=${PORTVERSION}
+SUB_FILES= pkg-message
OPTIONS_DEFINE= DOCS
PORTDOCS= *
-.if defined(PACKAGE_BUILDING)
-CONFIGURE_ARGS+=--enable-build-as-root
-.endif
-
.include <bsd.port.pre.mk>
WSDIR= ${BLDDIR}${PREFIX}
@@ -370,8 +371,8 @@ PY_LIBS= alabaster babel bleach certifi configparser cvxopt cycler \
twisted vcversioner wcwidth webencodings werkzeug zope_interface
PY_FILES= sage_brial
JS_LIBS= jmol mathjax threejs
-SPKGCM4= brial ecl gap gc giac libhomfly linbox maxima palp pynac rubiks \
- singular suitesparse sympow zn_poly
+SPKGCM4= brial e_antic ecl gap gc giac libhomfly linbox maxima palp pynac \
+ rubiks singular suitesparse sympow zn_poly
post-patch:
${CP} ${FILESDIR}/psutil__arch__bsd__freebsd_socks.c.patch \
@@ -474,10 +475,10 @@ post-build:
.endfor
${RM} ${BLDDIR}${PYTHON_CMD} ${BADLN:C|^|${BLDDIR}${PREFIX}/share/jupyter/|}
${RM} -r ${BLDDIR}${PREFIX}/var
- ${RM} ${BLDDIR}${PREFIX}/lib64 ${BLDDIR}${PREFIX}/libdata/pkgconfig/blas.pc \
- ${BLDDIR}${PREFIX}/libdata/pkgconfig/cblas.pc \
- ${BLDDIR}${PREFIX}/libdata/pkgconfig/gsl.pc \
- ${BLDDIR}${PREFIX}/libdata/pkgconfig/lapack.pc
+ ${RM} ${BLDDIR}${PREFIX}/lib64 ${BLDDIR}${PREFIX}/lib/pkgconfig/blas.pc \
+ ${BLDDIR}${PREFIX}/lib/pkgconfig/cblas.pc \
+ ${BLDDIR}${PREFIX}/lib/pkgconfig/gsl.pc \
+ ${BLDDIR}${PREFIX}/lib/pkgconfig/lapack.pc
# Cannot use a package system for pip and setuptools
${RM} ${BLDDIR}${PREFIX}/bin/easy_install* ${BLDDIR}${PREFIX}/bin/pip*
${RM} -r ${BLDDIR}${PYTHON_SITELIBDIR}/pip-* ${BLDDIR}${PYTHON_SITELIBDIR}/pip/
@@ -498,6 +499,9 @@ post-build:
${RM} -r ${BLDDIR}${PREFIX}/bin/pygmentize \
${BLDDIR}${PYTHON_SITELIBDIR}/Pygments-* \
${BLDDIR}${PYTHON_SITELIBDIR}/pygments
+ # Remove CONFLICTS with lang/python3
+ ${RM} ${BLDDIR}${PREFIX}/bin/python ${BLDDIR}${PREFIX}/bin/python3
+ ${REINPLACE_CMD} -e '/exec/s|python3|${PYTHON_VERSION}|' ${BLDDIR}${PREFIX}/bin/sage
# ${TRUE} because compilation of some .py fails: compileall.py -q to see errors
(cd ${WSDIR} && (${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py \
-d ${PYTHONPREFIX_SITELIBDIR} -f ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;} || \
@@ -515,6 +519,8 @@ do-install:
${STAGEDIR}${PREFIX}/share/jupyter/nbextensions/mathjax
${LN} -sf ${LOCALBASE}/www/threejs \
${STAGEDIR}${PREFIX}/share/jupyter/nbextensions/threejs
+
+post-install:
${RM} ${STAGEDIR}${PREFIX}/lib64 ${STAGEDIR}${PREFIX}/libdata/pkgconfig/blas.pc \
${STAGEDIR}${PREFIX}/libdata/pkgconfig/cblas.pc \
${STAGEDIR}${PREFIX}/libdata/pkgconfig/gsl.pc \
diff --git a/math/sage/files/e_antic_spkg-configure.m4 b/math/sage/files/e_antic_spkg-configure.m4
new file mode 100644
index 000000000000..ce63c7c03783
--- /dev/null
+++ b/math/sage/files/e_antic_spkg-configure.m4
@@ -0,0 +1,8 @@
+SAGE_SPKG_CONFIGURE([e_antic], [
+ SAGE_SPKG_DEPCHECK([arb gmp flint], [
+ AC_CHECK_HEADER([e-antic/e-antic.h], [
+ AC_SEARCH_LIBS([nf_init], [eantic], [
+ ], [sage_spkg_install_e_antic=yes])
+ ], [sage_spkg_install_e_antic=yes])
+ ])
+])
diff --git a/math/sage/files/patch-src_bin_sage-env b/math/sage/files/patch-src_bin_sage-env
new file mode 100644
index 000000000000..49f158c59655
--- /dev/null
+++ b/math/sage/files/patch-src_bin_sage-env
@@ -0,0 +1,29 @@
+--- src/bin/sage-env.orig 2020-06-27 14:17:22 UTC
++++ src/bin/sage-env
+@@ -460,16 +460,16 @@ unset R_HOME
+ unset R_PROFILE
+ # Do not use the global Makevars.site and ~/.R/Makevars when installing R packages
+ # Provide empty files to appease some R packages' installation scripts.
+-if [ -d "$SAGE_LOCAL/lib/R/share" ] ; then
+- R_MAKEVARS_SITE="$SAGE_LOCAL/lib/R/share/Makevars.site" && export R_MAKEVARS_SITE
+- if ! [ -f "$R_MAKEVARS_SITE" ] ; then
+- if ! [ -a "$R_MAKEVARS_SITE" ] ; then
+- echo "## Empty site-wide Makevars file for Sage's R" > "$R_MAKEVARS_SITE"
+- else
+- >&2 echo "Warning: $R_MAKEVARS_SITE exists and is not a file : trouble ahead..."
+- fi
+- fi
+-fi
++#if [ -d "$SAGE_LOCAL/lib/R/share" ] ; then
++# R_MAKEVARS_SITE="$SAGE_LOCAL/lib/R/share/Makevars.site" && export R_MAKEVARS_SITE
++# if ! [ -f "$R_MAKEVARS_SITE" ] ; then
++# if ! [ -a "$R_MAKEVARS_SITE" ] ; then
++# echo "## Empty site-wide Makevars file for Sage's R" > "$R_MAKEVARS_SITE"
++# else
++# >&2 echo "Warning: $R_MAKEVARS_SITE exists and is not a file : trouble ahead..."
++# fi
++# fi
++#fi
+ if [ -d "$DOT_SAGE" ] ; then
+ if ! [ -d "$DOT_SAGE/R" ] ; then
+ if ! [ -a "$DOT_SAGE/R" ] ; then
diff --git a/math/sage/files/pkg-message.in b/math/sage/files/pkg-message.in
new file mode 100644
index 000000000000..2936192d8b0b
--- /dev/null
+++ b/math/sage/files/pkg-message.in
@@ -0,0 +1,5 @@
+Before running sage, please define and export the following variables:
+
+export SAGE_ROOT=%%PREFIX%%
+export SAGE_LOCAL=%%PREFIX%%
+
diff --git a/math/sage/pkg-plist b/math/sage/pkg-plist
index dc25ccf4406f..5ebf1678fe53 100644
--- a/math/sage/pkg-plist
+++ b/math/sage/pkg-plist
@@ -3,8 +3,6 @@ bin/jupyter-nbextension
bin/jupyter-notebook
bin/jupyter-serverextension
bin/math-readline
-bin/python
-bin/python3
bin/sage
bin/sage-cachegrind
bin/sage-callgrind
@@ -8490,9 +8488,6 @@ lib/libratpoints.a
%%PYTHON_SITELIBDIR%%/widgetsnbextension/static/extension.js
%%PYTHON_SITELIBDIR%%/widgetsnbextension/static/extension.js.map
lib/sage-current-location.txt
-libdata/pkgconfig/blas.pc
-libdata/pkgconfig/cblas.pc
-libdata/pkgconfig/lapack.pc
pyvenv.cfg
share/combinatorial_designs/MOLS_table.txt
share/conway_polynomials/conway_polynomials.p