diff --git a/math/petiga/Makefile b/math/petiga/Makefile index d473c9d8907d..5bb862f9f480 100644 --- a/math/petiga/Makefile +++ b/math/petiga/Makefile @@ -1,36 +1,37 @@ PORTNAME= petiga DISTVERSION= g20221208 +PORTREVISION= 1 CATEGORIES= math python MAINTAINER= yuri@FreeBSD.org COMMENT= Framework for High Performance Isogeometric Analysis WWW= https://github.com/dalcinl/PetIGA LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.rst LIB_DEPENDS= libblas.so:math/blas \ liblapack.so:math/lapack \ libmpich.so:net/mpich \ libpetsc.so:science/PETSc USES= gmake compiler:c++14-lang fortran xorg USE_LDCONFIG= yes USE_XORG= x11 MAKEFILE= makefile MAKE_ENV= PETSC_DIR=${LOCALBASE} MAKE_ARGS= PREFIX=${STAGEDIR}${PREFIX} USE_GITHUB= yes GH_ACCOUNT= dalcinl GH_PROJECT= PetIGA GH_TAGNAME= 218fdfa TEST_TARGET= check post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libpetiga.so .include diff --git a/math/py-petsc4py/Makefile b/math/py-petsc4py/Makefile index 8b9353736664..9435289a63e2 100644 --- a/math/py-petsc4py/Makefile +++ b/math/py-petsc4py/Makefile @@ -1,36 +1,37 @@ PORTNAME= petsc4py DISTVERSION= 3.18.3 +PORTREVISION= 1 CATEGORIES= math python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= yuri@FreeBSD.org COMMENT= PETSc for Python WWW= https://bitbucket.org/petsc/petsc4py LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.rst BUILD_DEPENDS= ${PYNUMPY} LIB_DEPENDS= libpetsc.so:science/PETSc RUN_DEPENDS= ${PYNUMPY} USES= python:3.6+ USE_PYTHON= distutils autoplist pytest # tests fail to run, see https://gitlab.com/petsc/petsc/-/issues/1301 MAKE_ENV= PETSC_DIR=${LOCALBASE} OPTIONS_SINGLE= MPI OPTIONS_SINGLE_MPI= MPICH OPENMPI OPTIONS_DEFAULT= MPICH MPICH_USES= mpi:mpich OPENMPI_USES= mpi:openmpi TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} post-install: @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/petsc4py/lib/PETSc${PYTHON_EXT_SUFFIX}.so .include diff --git a/math/py-slepc4py/Makefile b/math/py-slepc4py/Makefile index 076b0e55330d..f2ef98e42d80 100644 --- a/math/py-slepc4py/Makefile +++ b/math/py-slepc4py/Makefile @@ -1,32 +1,33 @@ PORTNAME= slepc4py DISTVERSION= 3.18.2 +PORTREVISION= 1 CATEGORIES= math python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= yuri@FreeBSD.org COMMENT= SLEPc for Python WWW= https://bitbucket.org/slepc/slepc4py LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.rst PY_DEPENDS= ${PYNUMPY} \ ${PYTHON_PKGNAMEPREFIX}petsc4py>0:math/py-petsc4py@${PY_FLAVOR} BUILD_DEPENDS= ${PY_DEPENDS} RUN_DEPENDS= ${PY_DEPENDS} LIB_DEPENDS= libmpich.so:net/mpich \ libpetsc.so:science/PETSc \ libslepc.so:math/slepc RUN_DEPENDS= ${PYNUMPY} USES= fortran python:3.6+ USE_PYTHON= distutils autoplist pytest MAKE_ENV= PETSC_DIR=${LOCALBASE} SLEPC_DIR=${LOCALBASE} TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} post-install: @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/slepc4py/lib/SLEPc${PYTHON_EXT_SUFFIX}.so .include diff --git a/math/slepc/Makefile b/math/slepc/Makefile index 6ca2eab4a840..f6cbdc245f1f 100644 --- a/math/slepc/Makefile +++ b/math/slepc/Makefile @@ -1,40 +1,41 @@ PORTNAME= slepc DISTVERSION= 3.18.2 +PORTREVISION= 1 CATEGORIES= math devel MASTER_SITES= http://slepc.upv.es/download/distrib/ MAINTAINER= yuri@FreeBSD.org COMMENT= Scalable Library for Eigenvalue Problem Computations WWW= http://slepc.upv.es/ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.md LIB_DEPENDS= libblas.so:math/blas \ liblapack.so:math/lapack \ libmpich.so:net/mpich \ libpetsc.so:science/PETSc USES= gmake fortran python:3.9 shebangfix xorg USE_XORG= x11 # not really needed, but is inherited from the PETSc setup USE_LDCONFIG= yes SHEBANG_FILES= configure SHEBANG_GLOB= *.py MAKEFILE= makefile MAKE_ENV= PETSC_DIR=${LOCALBASE} PETSC_ARCH="" SLEPC_DIR=${WRKSRC} PYTHON=${PYTHON_CMD} BINARY_ALIAS= python=${PYTHON_CMD} OPTIONS_DEFINE= EXAMPLES PORTEXAMPLES= * do-configure: @cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./configure --prefix=${PREFIX} post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libslepc.so.${PORTVERSION} .include diff --git a/science/PETSc/Makefile b/science/PETSc/Makefile index c6d6d7bff073..5067cf1ff2a2 100644 --- a/science/PETSc/Makefile +++ b/science/PETSc/Makefile @@ -1,52 +1,61 @@ PORTNAME= PETSc DISTVERSION= 3.18.4 +PORTREVISION= 1 CATEGORIES= science devel MASTER_SITES= https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/ DISTNAME= ${PORTNAME:tl}-${DISTVERSION} MAINTAINER= yuri@FreeBSD.org COMMENT= Suite of data structures and routines from Argonne National Laboratory WWW= https://www.mcs.anl.gov/petsc LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= cmake:devel/cmake-core LIB_DEPENDS= libmpich.so:net/mpich USES= blaslapack fortran gmake python:3.7+ shebangfix xorg GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-shared-libraries=1 \ --with-mpi-dir=${LOCALBASE} \ --with-python=1 --with-python-pkg-config=${LOCALBASE}/libdata/pkgconfig \ FCFLAGS="${FCFLAGS}" FFLAGS="${FCFLAGS}" \ ${CONFIGURE_ARGS_${ARCH}} CPPFLAGS="${CPPFLAGS}" \ AR=${AR} RANLIB=${RANLIB} \ MAKEFLAGS="${MAKEFLAGS}" LDFLAGS="${LDFLAGS}" LIBS="" CONFIGURE_ARGS_amd64= CFLAGS="${CFLAGS} -msse2" CXXFLAGS="${CXXFLAGS} -msse2" CONFIGURE_ARGS_i386= CFLAGS="${CFLAGS} -msse2" CXXFLAGS="${CXXFLAGS} -msse2" +CONFIGURE_ARGS= --with-64-bit-indices # as opposed to 32-bit indices that are default CONFIGURE_LOG= configure.log USE_XORG= x11 MAKEFILE= makefile SHEBANG_FILES= configure lib/petsc/bin/*.py lib/petsc/bin/saws/SAWs.py lib/petsc/bin/saws/*.bash config/*.py \ lib/petsc/bin/petscnagfor share/petsc/chkerrconvert.py USE_LDCONFIG= yes TEST_TARGET= test BINARY_ALIAS= python=${PYTHON_CMD} LDFLAGS+= ${LOCALBASE}/lib/libmpi.so DATADIR= ${PREFIX}/share/${PORTNAME:tl} PLIST_SUB= SHLIB=${DISTVERSION} SHL=${DISTVERSION:C/\.[0-9]$//} +OPTIONS_DEFINE= METIS +OPTIONS_DEFAULT= METIS + +METIS_DESC= Enable metis support for graph partitioning algorithms +METIS_CONFIGURE_ON= --with-metis=1 # --with-parmetis=1 to use include/parmetis.h +METIS_LIB_DEPENDS= libmetis.so:math/metis + post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libpetsc.so.${DISTVERSION} @${FIND} ${STAGEDIR}${PREFIX} -name "*.html" -delete @cd ${STAGEDIR}${PREFIX} && ${RM} -r bin/win32fe lib/petsc/conf/uninstall.py @${REINPLACE_CMD} -i '' -e 's|^PYTHON = .*|PYTHON = ${PYTHON_CMD}|' ${STAGEDIR}${PREFIX}/lib/petsc/conf/petscvariables @${REINPLACE_CMD} -i '' -e 's|#!/.*|#!${PYTHON_CMD}|' ${STAGEDIR}${PREFIX}/lib/petsc/conf/reconfigure-arch-*-c-debug.py @${RMDIR} ${STAGEDIR}${PREFIX}/lib/petsc/bin/__pycache__ # stray directory # the file /usr/local/share/petsc/examples/config/gmakegen.py is expected by some dependencies, at least by math/slepc .include diff --git a/science/bout++/Makefile b/science/bout++/Makefile index c00c2823ea8a..b901aa12150f 100644 --- a/science/bout++/Makefile +++ b/science/bout++/Makefile @@ -1,116 +1,114 @@ PORTNAME= bout++ DISTVERSIONPREFIX= v DISTVERSION= 4.4.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= science math # physics MAINTAINER= yuri@FreeBSD.org COMMENT= Plasma fluid finite-difference simulation code WWW= https://boutproject.github.io/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= gmake:devel/gmake LIB_DEPENDS= libfftw3.so:math/fftw3 \ libopenblas.so:math/openblas \ libuuid.so:misc/e2fsprogs-libuuid RUN_DEPENDS= bash:shells/bash USES= cmake:testing python:3.6+ gettext-runtime shebangfix USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= boutproject GH_PROJECT= BOUT-dev GH_TUPLE= boutproject:boutdata:3a66e6c:boutdata/externalpackages/boutdata \ boutproject:boututils:a79a00a:boututils/externalpackages/boututils \ google:googletest:96f4ce0:googletest/externalpackages/googletest \ meitar:git-archive-all.sh:fc86194:git_archive_all_sh/externalpackages/git-archive-all.sh \ mpark:variant:0b488da:variant/externalpackages/mpark.variant SHEBANG_GLOB= *.sh SHEBANG_FILES= bin/bout-boutdata-restart-create \ bin/bout-pylib-cmd-to-bin \ bin/bout-sonnet \ bin/bout-stop-script \ bin/bout_3to4.py \ bin/bout_4to5 CMAKE_ON= BUILD_SHARED_LIBS CMAKE_OFF= BOUT_TESTS CMAKE_TESTING_ON= BOUT_TESTS # tests fail to build, see https://github.com/boutproject/BOUT-dev/issues/2618 CXXFLAGS+= -I${WRKSRC}/include LDFLAGS+= -lexecinfo OPTIONS_DEFINE= OPENMP PETSC SLEPC SUNDIALS OPTIONS_MULTI= FORMAT OPTIONS_MULTI_FORMAT= HDF5 NETCDF OPTIONS_SINGLE= MPI OPTIONS_SINGLE_MPI= MPICH OPENMPI -OPTIONS_DEFAULT= MPICH NETCDF PETSC SLEPC +OPTIONS_DEFAULT= MPICH NETCDF # PETSC SLEPC: not compatible with the latest petsc-3.18.4 FORMAT_DESC= File format support HDF5_CMAKE_BOOL= BOUT_USE_HDF5 HDF5_LIB_DEPENDS= libhdf5.so:science/hdf5 NETCDF_USES= localbase:ldflags pkgconfig # because of the cmake patch in files/ NETCDF_CMAKE_BOOL= BOUT_USE_NETCDF NETCDF_LIB_DEPENDS= libnetcdf_c++4.so:science/netcdf-cxx \ libnetcdf.so:science/netcdf MPICH_USES= mpi:mpich OPENMP_CMAKE_BOOL= BOUT_ENABLE_OPENMP OPRNMP_BROKEN= SEGV when OpenMP is enabled, see https://github.com/boutproject/BOUT-dev/issues/2620 OPENMPI_USES= mpi:openmpi -PETSC_CMAKE_BOOL= BOUT_USE_PETSC - PETSC_DESC= Build with PETSc support PETSC_CMAKE_BOOL= BOUT_USE_PETSC PETSC_LIB_DEPENDS= libpetsc.so:science/PETSc SLEPC_DESC= Build with SLEPc support SLEPC_CMAKE_BOOL= BOUT_USE_SLEPC SLEPC_LIB_DEPENDS= libslepc.so:math/slepc SLEPC_IMPLIES= PETSC # build breaks w/out petsc SUNDIALS_DESC= Build with Sundials support SUNDIALS_CMAKE_BOOL= BOUT_USE_SUNDIALS SUNDIALS_CMAKE_ON= -DBOUT_DOWNLOAD_SUNDIALS=OFF SUNDIALS_BROKEN= fails to build with sundials, see https://github.com/boutproject/BOUT-dev/issues/2617 BINARY_ALIAS= make=${GMAKE} .if defined(WITH_EXAMPLES) # Build executables demonstrating BOUT++ capabilities. They aren't installed and don't need to be built for packaging. CMAKE_ON+= BOUT_BUILD_EXAMPLES .endif post-install: # workaround for /usr/local/lib/cmake/bout++/bout++Config.cmake:if @${REINPLACE_CMD} -i '' \ -e 's|${BUILD_WRKSRC}/externalpackages/mpark.variant|${PREFIX}/lib/cmake/mpark_variant|' \ -e 's|${BUILD_WRKSRC}/externalpackages/PVODE|${PREFIX}/lib/cmake/PVODE|' \ -e 's|${WRKSRC}/cmake|${PREFIX}/lib/cmake/bout++|' \ ${STAGEDIR}${PREFIX}/lib/cmake/bout++/bout++Config.cmake # remove *.orig files created by patching @${RM} ${STAGEDIR}${PREFIX}/include/*.orig # install missing PVODE cmake files @${RM} ${STAGEDIR}${PREFIX}/lib/cmake/PVODE/* ${INSTALL_DATA} ${BUILD_WRKSRC}/externalpackages/PVODE/PVODEConfig.cmake ${STAGEDIR}${PREFIX}/lib/cmake/PVODE ${INSTALL_DATA} ${BUILD_WRKSRC}/externalpackages/PVODE/PVODEConfigVersion.cmake ${STAGEDIR}${PREFIX}/lib/cmake/PVODE @${REINPLACE_CMD} -i '' \ -e 's|${BUILD_WRKSRC}/lib|${PREFIX}/lib|' \ -e 's|${PORTSDIR}/.*/BOUT-dev-${PORTVERSION}/externalpackages/PVODE/include|${PREFIX}/include|g' \ ${STAGEDIR}${PREFIX}/lib/cmake/PVODE/* @${REINPLACE_CMD} -i '' \ -e 's|INTERFACE_INCLUDE_DIRECTORIES .*|INTERFACE_INCLUDE_DIRECTORIES "${PREFIX}/include"|' \ ${STAGEDIR}${PREFIX}/lib/cmake/PVODE/PVODEConfig.cmake # remove broken link, see https://github.com/boutproject/BOUT-dev/issues/2623 @${RM} ${STAGEDIR}${PREFIX}/bin/bout-squashoutput .include diff --git a/science/code_saturne/Makefile b/science/code_saturne/Makefile index f4c0d88a3ffc..cb86252933d8 100644 --- a/science/code_saturne/Makefile +++ b/science/code_saturne/Makefile @@ -1,130 +1,130 @@ PORTNAME= code_saturne PORTVERSION= 7.1.1 DISTVERSIONPREFIX= v -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= science parallel MAINTAINER= thierry@FreeBSD.org COMMENT= EDF's general purpose Computational Fluid Dynamics (CFD) software WWW= https://www.code-saturne.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= gsed:textproc/gsed LIB_DEPENDS= libsysinfo.so:devel/libsysinfo \ libcgns.so:science/cgnslib \ libhdf5.so:science/hdf5 \ libmedC.so:french/med RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>0:math/py-matplotlib@${PY_FLAVOR} \ xmgrace:math/grace \ bash:shells/bash \ xterm:x11/xterm USE_GITHUB= yes GH_ACCOUNT= code-saturne USES= autoreconf bison compiler:c11 fortran gettext gnome gmake \ iconv localbase libtool pyqt:5 python:3.7+ shebangfix xorg USE_GNOME= libxml2 USE_PYQT= pyqt5 sip USE_XORG= x11 SHEBANG_FILES= install_saturne.py tests/unittests.py bin/*.py build-aux/*.py CFLAGS+= -D__XSI_VISIBLE CPPFLAGS+= -I${LOCALBASE}/include -I${LOCALBASE}/include/libxml2 GNU_CONFIGURE= yes CONFIGURE_ARGS= --without-salome --without-salome-yacs --without-salome-kernel \ --without-salome-gui --enable-python CONFIGURE_ENV= ac_cv_path_SED=${LOCALBASE}/bin/gsed USE_LDCONFIG= yes INSTALL_TARGET= install-strip BINARY_ALIAS= python=${PYTHON_CMD} \ pyrcc5=pyrcc5-${PYTHON_VER} \ pyuic5=pyuic5-${PYTHON_VER} OPTIONS_DEFINE= DOCS EXAMPLES BATCH BLAS HYPRE MPICH MUMPS PETSC SCOTCH OPTIONS_DEFAULT= BATCH BLAS HYPRE METIS MPICH MUMPS PETSC SCOTCH OPTIONS_RADIO= METIS OPTIONS_RADIO_METIS= METIS PARMETIS OPTIONS_SUB= yes BLAS_DESC= Support of BLAS BLAS_USES= blaslapack BLAS_CONFIGURE_ON= --with-blas=yes --with-blas-type=BLAS \ --with-blas-include=${LOCALBASE}/include/cblas \ --with-blas-lib=${LOCALBASE}/lib BLAS_LIB_DEPENDS= libcblas.so:math/cblas BATCH_DESC= Use Torque to submit batches BATCH_RUN_DEPENDS= pbs-config:sysutils/torque HYPRE_DESC= Support of HYPRE HYPRE_BUILD_DEPENDS= hypre>0:science/hypre HYPRE_RUN_DEPENDS= hypre>0:science/hypre HYPRE_CONFIGURE_ON= --with-hypre="${LOCALBASE}" MPICH_USES= mpi MPICH_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py>0:net/py-mpi4py@${PY_FLAVOR} MPICH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py>0:net/py-mpi4py@${PY_FLAVOR} MPICH_CONFIGURE_WITH= mpi METIS_DESC= Support of METIS METIS_LIB_DEPENDS= libmetis.so:math/metis METIS_CONFIGURE_ON= --with-metis-include="${LOCALBASE}/include" MUMPS_DESC= Support of MUMPS MUMPS_LIB_DEPENDS= libsmumps.so:math/mumps MUMPS_CONFIGURE_ON= --with-mumps="${LOCALBASE}" MUMPS_CONFIGURE_ENV= MUMPS_LIBS="-lmpiseq -llapack" PARMETIS_DESC= Support of ParMETIS PARMETIS_LIB_DEPENDS= libparmetis.so:math/parmetis PARMETIS_CONFIGURE_ON= --with-metis-include="${LOCALBASE}/include/parmetis" \ --with-metis-lib="${LOCALBASE}/lib/parmetis" PARMETIS_CONFIGURE_ENV= LIBS=-lexecinfo PETSC_DESC= Support of PETSc PETSC_LIB_DEPENDS= libpetsc.so:science/PETSc PETSC_CONFIGURE_ON= --with-petsc="${LOCALBASE}" SCOTCH_DESC= Support of Scotch SCOTCH_LIB_DEPENDS= libscotch.so:cad/scotch SCOTCH_CONFIGURE_ON= --with-scotch-include="${LOCALBASE}/include" TEST_TARGET= check .if defined(PACKAGE_BUILDING) TERM= vt100 # Force for pointyhat to override su .else TERM?= vt100 # Default value needed for tput in jail or tinderbox .endif .include .if ${ARCH} == "i386" # /wrkdirs/usr/ports/science/code_saturne/work/code_saturne-5.3.0/src/apps/.libs # /libsaturne.so: # undefined reference to `__atomic_compare_exchange' CONFIGURE_ARGS+= --disable-openmp .endif .if ${PORT_OPTIONS:MDOCS} USES+= tex USE_TEX= tex:build BUILD_DEPENDS+= fig2dev:print/fig2dev \ doxygen:devel/doxygen \ dot:graphics/graphviz \ dvips:print/tex-dvipsk \ ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} BINARY_ALIAS+= sphinx-build=sphinx-build-${PYTHON_VER} ALL_TARGET= all pdf DOCS= AUTHORS ChangeLog README .endif pre-configure: ${REINPLACE_CMD} -e 's|/usr/bin/env python|${PYTHON_CMD}|' \ ${WRKSRC}/Makefile.am post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/code_saturne/cs_solver post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${DOCS:C|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR} .include