aboutsummaryrefslogtreecommitdiff
path: root/math/scalapack/Makefile
diff options
context:
space:
mode:
authorThierry Thomas <thierry@FreeBSD.org>2022-12-27 17:19:48 +0000
committerThierry Thomas <thierry@FreeBSD.org>2022-12-28 09:38:44 +0000
commit2c4f8206f0a3ec08ef468841aa213e9f1c61e67f (patch)
tree9c7f4430b180c49d3c3c23ad0b04208fcfc46c30 /math/scalapack/Makefile
parent7e9e20bdba01b5d1f739ddb950085364540a50fe (diff)
downloadports-2c4f8206f0a3ec08ef468841aa213e9f1c61e67f.tar.gz
ports-2c4f8206f0a3ec08ef468841aa213e9f1c61e67f.zip
math/scalapack: upgrade to 2.2.0
Diffstat (limited to 'math/scalapack/Makefile')
-rw-r--r--math/scalapack/Makefile74
1 files changed, 14 insertions, 60 deletions
diff --git a/math/scalapack/Makefile b/math/scalapack/Makefile
index 7ccfa9e4d1da..ce0c6849d334 100644
--- a/math/scalapack/Makefile
+++ b/math/scalapack/Makefile
@@ -1,5 +1,5 @@
PORTNAME= scalapack
-PORTVERSION= 2.1.0
+PORTVERSION= 2.2.0
DISTVERSIONPREFIX= v
CATEGORIES= math
@@ -15,12 +15,10 @@ CONFLICTS= elmer-mathlibs-1*
USE_GITHUB= yes
GH_ACCOUNT= Reference-ScaLAPACK
-USES= cmake:insource fortran pathfix
+USES= cmake fortran pathfix
USE_LDCONFIG= yes
-CMAKE_ARGS_ST= -DBUILD_STATIC_LIBS:BOOL=ON
-CMAKE_ARGS_SH= -DBUILD_SHARED_LIBS:BOOL=ON
-CMAKE_ARGS= ${CMAKE_ARGS_ST}
+CMAKE_ARGS= -DBUILD_STATIC_LIBS:BOOL=ON
ARCH2FIX= PBLAS/SRC PBLAS/SRC/PBBLAS PBLAS/SRC/PTOOLS PBLAS/SRC/PTZBLAS \
REDIST/SRC SRC TOOLS TOOLS/LAPACK
@@ -28,7 +26,7 @@ ARCH2FIX= PBLAS/SRC PBLAS/SRC/PBBLAS PBLAS/SRC/PTOOLS PBLAS/SRC/PTZBLAS \
DATADIR= ${PREFIX}/share/${PORTNAME:tu}
EXAMPLESDIR= ${PREFIX}/share/examples/${PORTNAME:tu}
SUB_FILES= pkg-message
-PLIST_SUB= SVERSION=${SVERSION} PORTVERSION=${PORTVERSION}
+PLIST_SUB= SVERSION=${SVERSION} PORTVERSION=2.1.0
OPTIONS_DEFINE= EXAMPLES
OPTIONS_RADIO= LA MPI
@@ -41,36 +39,25 @@ OPTIONS_DEFAULT= BLAS EXAMPLES MPICH
ATLAS_USES= blaslapack:atlas
BLAS_USES= blaslapack:openblas
-OPENMPI_BUILD_DEPENDS= openmpi>0:net/openmpi
-OPENMPI_RUN_DEPENDS= openmpi>0:net/openmpi
-OPENMPI_CMAKE_ON= -DMPI_BASE_DIR=${LOCALBASE}/mpi/openmpi
-OPENMPI_LDFLAGS= -L${LOCALBASE}/mpi/openmpi/lib -Wl,-rpath,${LOCALBASE}/mpi/openmpi/lib -lmpi
-
-MPICH_BUILD_DEPENDS= ${LOCALBASE}/bin/mpicc:net/mpich
-MPICH_RUN_DEPENDS= ${LOCALBASE}/bin/mpicc:net/mpich
-MPICH_CMAKE_ON= -DMPI_BASE_DIR=${LOCALBASE}
+MPICH_USES= mpi:mpich
+MPICH_CMAKE_ON= -DMPI_BASE_DIR=${LOCALBASE}
+OPENMPI_USES= mpi:openmpi
+OPENMPI_CMAKE_ON=-DMPI_BASE_DIR=${LOCALBASE}/mpi/openmpi
.include <bsd.port.pre.mk>
BLAS= ${BLASLIB}
LAPACK= ${LAPACKLIB}
-.if ${PORT_OPTIONS:MOPENMPI}
-MPIF77= ${LOCALBASE}/mpi/openmpi/bin/mpif77
-MPICC= ${LOCALBASE}/mpi/openmpi/bin/mpicc
-.else
-MPIF77= ${LOCALBASE}/bin/mpif77
-MPICC= ${LOCALBASE}/bin/mpicc
-.endif
-
.if ${ARCH} == "sparc64" || ${ARCH} == "amd64"
FPIC= -fPIC
.else
FPIC= -fpic
.endif
-CFLAGS+= ${FPIC}
+CFLAGS+= ${FPIC} ${MPI_CFLAGS}
FFLAGS+= ${FPIC}
+LDFLAGS+= ${MPI_LIBS}
SVERSION= 2
.if ${GCC_DEFAULT} >= 10
@@ -78,66 +65,33 @@ SVERSION= 2
FFLAGS+= -fallow-argument-mismatch
.endif
-.if defined(WITH_OPTIMIZED_FLAGS)
-.if ${ARCH} == "amd64"
-FFLAGS+= -pipe -O3 -ffast-math -funroll-all-loops -fpeel-loops -ftracer -funswitch-loops -funit-at-a-time
-CFLAGS+= -pipe -O3 -ffast-math -funroll-all-loops -fpeel-loops -ftracer -funswitch-loops -funit-at-a-time
-.elif ${ARCH} == "i386"
-FFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -malign-double -mcpu=i686 -march=i686 -mfancy-math-387 -mpreferred-stack-boundary=3
-CFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -malign-double -mcpu=i686 -march=i686 -mfancy-math-387 -mpreferred-stack-boundary=3
-.else
-FFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -Wno-multichar
-CFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -Wno-multichar
-.endif
-.endif
-
-NOOPT= -O0
-
# USES=fortran already forces FC to a supported fortran compiler;
# assume mpicc points to a compatible compiler and force that, too.
CC= ${MPICC}
-pre-configure:
- ${CP} -p ${WRKSRC}/Makefile ${WRKSRC}/Makefile.dist
- ${CP} ${WRKSRC}/SLmake.inc.example ${WRKSRC}/SLmake.inc
- ${REINPLACE_CMD} -e 's|@BLAS@|${BLAS}|g; s|@LAPACK@|${LAPACK}|g;s|@LAPACK@|${LAPACK}|g;s|@LAPACK@|${LAPACK}|g;s|@LAPACK@|${LAPACK}|g; s|@WRKSRC@|${WRKSRC}|g ; s|@LOCALBASE@|${LOCALBASE}|g ; s|@CC@|${CC}|g ; s|@CFLAGS@|${CFLAGS}|g ; s|@F77@|${F77}|g ; s|@MPIF77@|${MPIF77}|g ; s|@MPICC@|${MPICC}|g ; s|@FFLAGS@|${FFLAGS}|g ; s|@NOOPT@|${NOOPT}|g ; s|@F77EXTRAFLAGS@|${F77EXTRAFLAGS}|g ; s|^ARCH *.= ar|ARCMD = ar|' ${WRKSRC}/SLmake.inc
-.for mkf in ${ARCH2FIX}
- ${REINPLACE_CMD} -e 's|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${mkf}/Makefile
-.endfor
-
post-build:
${RM} -r ${WRKSRC}/CMakeFiles ${WRKSRC}/CMakeCache.txt
- ${CP} -p ${WRKSRC}/Makefile.dist ${WRKSRC}/Makefile
(cd ${WRKSRC} && \
${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS:C|BUILD_STATIC_LIBS|BUILD_SHARED_LIBS|} ${CMAKE_SOURCE_PATH})
(cd ${WRKSRC} && ${DO_MAKE_BUILD} ${ALL_TARGET})
post-install:
- ${INSTALL_DATA} ${WRKSRC}/lib/libscalapack.a ${STAGEDIR}${PREFIX}/lib
- ${MV} ${STAGEDIR}${PREFIX}/lib/libscalapack.so ${STAGEDIR}${PREFIX}/lib/libscalapack.so.${SVERSION}
+ ${INSTALL_LIB} ${WRKSRC}/lib/libscalapack.so ${STAGEDIR}${PREFIX}/lib/libscalapack.so.${SVERSION}
${LN} -sf libscalapack.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib/libscalapack.so
${MKDIR} ${STAGEDIR}${PREFIX}/share/SCALAPACK/TESTING
- (cd ${WRKSRC}/TESTING/ ;\
+ (cd ${BUILD_WRKSRC}/TESTING/ ;\
${INSTALL_PROGRAM} x* ${STAGEDIR}${PREFIX}/share/SCALAPACK/TESTING ;\
${INSTALL_DATA} *.dat ${STAGEDIR}${PREFIX}/share/SCALAPACK/TESTING)
${INSTALL_DATA} ${FILESDIR}/scalapack.h ${STAGEDIR}${PREFIX}/include
${INSTALL_DATA} ${WRKSRC}/PBLAS/SRC/*.h ${STAGEDIR}${PREFIX}/include
-.if ${PORT_OPTIONS:MEXAMPLES}
+
+post-install-EXAMPLES-on:
${MKDIR} ${STAGEDIR}${PREFIX}/share/examples/SCALAPACK
${INSTALL_DATA} ${FILESDIR}/Makefile ${STAGEDIR}${PREFIX}/share/examples/SCALAPACK
${INSTALL_DATA} ${FILESDIR}/example1.cc ${STAGEDIR}${PREFIX}/share/examples/SCALAPACK
${INSTALL_DATA} ${FILESDIR}/example1.f ${STAGEDIR}${PREFIX}/share/examples/SCALAPACK
-.endif
-.if defined(MAINTAINER_MODE)
do-test:
-. if !exists(${HOME}/.mpd.conf)
- @${ECHO_CMD} "MPD_SECRETWORD=change_on_install" > ${HOME}/.mpd.conf
- ${CHMOD} go-r ${HOME}/.mpd.conf
- @${ECHO_MSG} "${HOME}/.mpd.conf has been generated - please change the secret word!"
-. endif
(cd ${BUILD_WRKSRC}/TESTING && ${MAKE_CMD} test)
-.endif
-
.include <bsd.port.post.mk>