git: c2488a602083 - main - math/lapack: +math/blas et al., upgrade to 3.9.1
Thierry Thomas
thierry at FreeBSD.org
Sun Jun 13 17:48:55 UTC 2021
The branch main has been updated by thierry:
URL: https://cgit.FreeBSD.org/ports/commit/?id=c2488a6020830af2cf09699b887adec7af806bf3
commit c2488a6020830af2cf09699b887adec7af806bf3
Author: Thierry Thomas <thierry at FreeBSD.org>
AuthorDate: 2021-06-13 17:35:55 +0000
Commit: Thierry Thomas <thierry at FreeBSD.org>
CommitDate: 2021-06-13 17:48:12 +0000
math/lapack: +math/blas et al., upgrade to 3.9.1
- Upgrade math/blas, math/cblas, math/lapack, math/lapacke and math/xlapack
to 3.9.1;
Latest release notes at <http://www.netlib.org/lapack/lapack-3.9.1.html>
- Chase this upgrade in biology/treekin;
- Add a test target;
- Remove a conflict with math/openblas (PR 244296);
- Fix the build with Gcc10 (PR 247485).
PR: 247542
Approved by: expr-run by antoine@
---
biology/treekin/Makefile | 2 +-
biology/treekin/files/patch-src_calcpp.h | 12 +
math/blas/Makefile | 1 -
math/cblas/Makefile | 133 +-------
math/cblas/distinfo | 4 -
math/lapack/Makefile | 298 +++++++----------
math/lapack/distinfo | 9 +-
math/lapack/files/manpages | 458 +++++++++++++++++++++++----
math/lapack/files/patch-Makefile | 11 -
math/lapack/files/patch-SRC+Makefile | 98 ------
math/lapack/files/patch-TESTING+LIN+Makefile | 82 -----
math/lapack/files/patch-TESTING+Makefile | 14 -
math/lapack/files/patch-lapacke+Makefile | 30 --
math/lapack/files/patch-lapacke+src+Makefile | 29 --
math/lapack/files/static.mk | 3 +
math/lapack/pkg-descr | 1 +
math/lapack/pkg-plist | 92 +++---
math/openblas/Makefile | 2 -
math/xlapack/Makefile | 1 -
19 files changed, 599 insertions(+), 681 deletions(-)
diff --git a/biology/treekin/Makefile b/biology/treekin/Makefile
index 9ee58d87a129..333043189b1c 100644
--- a/biology/treekin/Makefile
+++ b/biology/treekin/Makefile
@@ -1,6 +1,6 @@
PORTNAME= treekin
DISTVERSION= 0.5.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= biology
MASTER_SITES= https://www.tbi.univie.ac.at/RNA/packages/source/
DISTNAME= Treekin-${DISTVERSION}
diff --git a/biology/treekin/files/patch-src_calcpp.h b/biology/treekin/files/patch-src_calcpp.h
new file mode 100644
index 000000000000..a4a06105feb8
--- /dev/null
+++ b/biology/treekin/files/patch-src_calcpp.h
@@ -0,0 +1,12 @@
+--- src/calcpp.h.orig 2019-06-13 14:11:19 UTC
++++ src/calcpp.h
+@@ -49,6 +49,9 @@
+ # include <lapacke.h>
+ #else
+ # ifdef HAVE_LAPACKE_LAPACKE_H
++# include <complex>
++# define lapack_complex_float std::complex<float>
++# define lapack_complex_double std::complex<double>
+ # include <lapacke/lapacke.h>
+ # else
+ # ifdef HAVE_OPENBLAS_LAPACKE_H
diff --git a/math/blas/Makefile b/math/blas/Makefile
index 436b921d9ae1..2e9fc06434eb 100644
--- a/math/blas/Makefile
+++ b/math/blas/Makefile
@@ -1,7 +1,6 @@
# Created by: ljo
PORTNAME= blas
-PORTREVISION= 6
MAINTAINER= fortran at FreeBSD.org
COMMENT= Basic Linear Algebra Subroutines
diff --git a/math/cblas/Makefile b/math/cblas/Makefile
index d94a4bd5af01..eb7ff101ecb0 100644
--- a/math/cblas/Makefile
+++ b/math/cblas/Makefile
@@ -1,136 +1,13 @@
# Created by: bf at FreeBSD.org
PORTNAME= cblas
-PORTVERSION= 1.0
-PORTREVISION= 12
-CATEGORIES= math
-MASTER_SITES= NL/blas/blast-forum/ LOCAL/bf
-DISTFILES= cblas.tgz
-MAINTAINER= ports at FreeBSD.org
+MAINTAINER= fortran at FreeBSD.org
COMMENT= Reference implementation of the C interface to the legacy Fortran BLAS
-LICENSE= BLAS
-LICENSE_NAME= BLAS License
-LICENSE_TEXT= http://www.netlib.org/blas/#_licensing
-LICENSE_PERMS= auto-accept dist-mirror dist-sell pkg-mirror pkg-sell
+DESCR= ${.CURDIR}/pkg-descr
+CBLAS_SLAVEPORT= yes
-USES= fortran
+MASTERDIR= ${.CURDIR}/../lapack
-CONFLICTS_INSTALL= atlas-[0-9]* atlas-devel-[0-9]*
-
-OPTIONS_DEFINE= PROFILE SHARED STATIC DOCS
-OPTIONS_DEFAULT= SHARED STATIC
-PROFILE_DESC= Build profiling libraries
-SHARED_DESC= Build shared libraries and PIC archives
-STATIC_DESC= Build (non-PIC) archives
-
-PLIST_FILES= include/cblas.h include/cblas_f77.h
-PLIST_SUB= SVERSION="${SVERSION}"
-
-SVERSION= 2
-
-WRKSRC= ${WRKDIR}/CBLAS
-WRKSRC_PROFILE= ${WRKSRC}_PROFILE
-WRKSRC_SHARED= ${WRKSRC}_SHARED
-WRKSRC_STATIC= ${WRKSRC}
-
-.include <bsd.port.options.mk>
-
-.if make(makesum) || ${PORT_OPTIONS:MDOCS}
-DISTFILES+= blas-report.pdf
-EXTRACT_ONLY= cblas.tgz
-.endif
-
-MANGLING?= -DADD_
-CFLAGS+= ${MANGLING}
-
-.if ${ARCH} == "sparc64"
-PICFLAG?= -fPIC
-.else
-PICFLAG?= -fpic
-.endif
-
-FLAGS_PROFILE?= -pg
-FLAGS_SHARED ?= ${PICFLAG}
-
-.if ${PORT_OPTIONS:MSHARED}
-PLIST_FILES+= lib/libcblas_pic.a lib/libcblas.so lib/libcblas.so.${SVERSION}
-TESTS ?= test-shared
-USE_LDCONFIG= yes
-.endif
-.if ${PORT_OPTIONS:MSTATIC}
-PLIST_FILES+= lib/libcblas.a
-TESTS ?= test-static
-.endif
-.if ${PORT_OPTIONS:MPROFILE}
-PLIST_FILES+= lib/libcblas_p.a
-TESTS ?= test-profile
-.endif
-
-post-patch:
- @${SED} -Ee '\@^CBLIB[[:blank:]]*=@s at cblas.*\.a at libcblas.a@; \
- \@^((BL|RAN)LIB|CC|FC)[[:blank:]]*=@d; \
- \@^((C|F)FLAGS)[[:blank:]]*=@s@=.*@+= $${EXTRAFLAGS}@; \
- \@^LOADER@{x; s|^|LOADFLAGS = $${LDFLAGS} $${EXTRAFLAGS}|; G;};' \
- ${WRKSRC}/Makefile.LINUX > ${WRKSRC}/Makefile.in
- @${REINPLACE_CMD} -e 's@$$(ARCH)@$$(AR)@' ${WRKSRC}/src/Makefile
-.for o in PROFILE SHARED
-.if ${PORT_OPTIONS:M${o}}
- @${CP} -a ${WRKSRC} ${WRKSRC_${o}}
-.endif
-.endfor
-
-do-build: build-profile build-shared build-static
-
-.for o in PROFILE SHARED STATIC
-build-${o:tl}: patch
-.if ${PORT_OPTIONS:M${o}}
- @${PRINTF} "\n\nBuilding ${o:tl} libraries:\n\n\n"
- @cd ${WRKSRC_${o}}/src; ${SETENV} ${MAKE_ENV} EXTRAFLAGS="${FLAGS_${o}}" \
- ${MAKE} ${_MAKE_JOBS} ${MAKE_ARGS} all
-
-.endif
-.endfor
-
-post-build:
-.if ${PORT_OPTIONS:MSHARED}
- cd ${WRKSRC_SHARED}/lib ; ${FC} ${FFLAGS} ${FFLAGS_SHARED} ${LDFLAGS} -shared \
- -o libcblas.so.${SVERSION} -Wl,-x -Wl,-soname,libcblas.so.${SVERSION} \
- -Wl,--whole-archive libcblas.a -Wl,--no-whole-archive
-.endif
-
-.if defined(MAINTAINER_MODE) || defined(PACKAGE_BUILDING)
-BLAS?= -L${LOCALBASE}/lib -lblas
-BUILD_DEPENDS += ${LOCALBASE}/lib/libblas.so:math/blas
-MAKE_ENV+= BLLIB="${BLAS}"
-
-check regression-test test: ${TESTS}
-
-.for o in PROFILE SHARED STATIC
-test-${o:tl}: build-${o:tl}
-.if ${PORT_OPTIONS:M${o}}
- @${PRINTF} "\n\nTesting ${o:tl} libraries:\n\n\n"
- @cd ${WRKSRC_${o}}/testing; ${SETENV} ${MAKE_ENV} EXTRAFLAGS="${FLAGS_${o}}" \
- ${MAKE} ${_MAKE_JOBS} ${MAKE_ARGS} all run
- @${CAT} ${WRKSRC_${o}}/testing/*.out
-
-.endif
-.endfor
-.endif
-
-do-install:
- @${INSTALL_DATA} ${WRKSRC}/include/*.h ${STAGEDIR}${PREFIX}/include
-.if ${PORT_OPTIONS:MSTATIC}
- @${INSTALL_DATA} ${WRKSRC}/lib/libcblas.a ${STAGEDIR}${PREFIX}/lib
-.endif
-.if ${PORT_OPTIONS:MSHARED}
- @${INSTALL_DATA} ${WRKSRC_SHARED}/lib/libcblas.a ${STAGEDIR}${PREFIX}/lib/libcblas_pic.a
- @${INSTALL_LIB} ${WRKSRC_SHARED}/lib/libcblas.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib
- @${LN} -sf libcblas.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib/libcblas.so
-.endif
-.if ${PORT_OPTIONS:MPROFILE}
- @${INSTALL_DATA} ${WRKSRC_PROFILE}/lib/libcblas.a ${STAGEDIR}${PREFIX}/lib/libcblas_p.a
-.endif
-
-.include <bsd.port.mk>
+.include "${MASTERDIR}/Makefile"
diff --git a/math/cblas/distinfo b/math/cblas/distinfo
deleted file mode 100644
index 0edbbbb80dfd..000000000000
--- a/math/cblas/distinfo
+++ /dev/null
@@ -1,4 +0,0 @@
-SHA256 (cblas.tgz) = 0f6354fd67fabd909baf57ced2ef84e962db58fae126e4f41b21dd4fec60a2a3
-SIZE (cblas.tgz) = 197468
-SHA256 (blas-report.pdf) = 7874962ae4dc753fcdd483ff0c69931227846632251f79a68f4f879348f321a6
-SIZE (blas-report.pdf) = 2412966
diff --git a/math/lapack/Makefile b/math/lapack/Makefile
index 852d9cecfd3d..712daaeee879 100644
--- a/math/lapack/Makefile
+++ b/math/lapack/Makefile
@@ -1,224 +1,170 @@
# Created by: jmz
PORTNAME?= lapack
-PORTVERSION= 3.5.0
-PORTREVISION?= 8 # Never remove this line, keep PORTREVISION?=0 in case.
+PORTVERSION= 3.9.1
+PORTREVISION?= 0 # Never remove this line, keep PORTREVISION?=0 in case.
CATEGORIES= math
MASTER_SITES= NL/lapack/
-DISTFILES= lapack-${PORTVERSION}.tgz
+DISTFILES= v${PORTVERSION}${EXTRACT_SUFX}
.if make(makesum) || !(defined(BLAS_SLAVEPORT) || defined(XLAPACK_SLAVEPORT))
-DISTFILES+= manpages-${PORTVERSION}.tgz
+DISTFILES+= manpages.tgz
.endif
DIST_SUBDIR= lapack
MAINTAINER?= fortran at FreeBSD.org
-COMMENT?= Library of Fortran 77 subroutines for linear algebra
+COMMENT?= Linear Algebra PACKage
LICENSE= BSD3CLAUSE
-LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= fortran
-
-OPTIONS_DEFINE= PROFILE SHARED STATIC
-OPTIONS_DEFAULT= SHARED STATIC
-PROFILE_DESC= Build profiling libraries
-SHARED_DESC= Build shared libraries and PIC archives
-STATIC_DESC= Build (non-PIC) archives
-
-MAKE_ENV= BLASLIB="${BLASLIB}"
-FFLAGS+= -std=legacy
-PLIST_SUB= SVERSION="${SVERSION}"
+USES= cmake:testing fortran
+WRKSRC= ${WRKDIR}/lapack-${PORTVERSION}
+# The actual math/scilab needs deprecated functions - to be removed later
+CMAKE_ON= BUILD_SHARED_LIBS BUILD_DEPRECATED
+USE_LDCONFIG= yes
-WRKSRC= ${WRKDIR}/lapack-${PORTVERSION}
-WRKSRC_PROFILE= ${WRKSRC}_PROFILE
-WRKSRC_SHARED= ${WRKSRC}_SHARED
-WRKSRC_STATIC= ${WRKSRC}
+SVERSION= ${PORTVERSION:R:R}
+PLIST_SUB= SVERSION="${SVERSION}" VER=${PORTVERSION}
.include <bsd.port.options.mk>
.if defined(BLAS_SLAVEPORT)
-ALL_TARGET= blaslib
-BLASLIB= ../../libblas.a
+BUILD_WRKSRC= ${CONFIGURE_WRKSRC}/BLAS/SRC
+INSTALL_WRKSRC= ${BUILD_WRKSRC}
+BLASLIB= libblas.a
LIBS= blas
-PLIST_SUB+= BLAS="" LAPACK="@comment " XLAPACK="@comment " LAPACKE="@comment "
-SVERSION= 2
-TEST_TARGET= blas_testing
+PLIST_SUB+= BLAS="" CBLAS="@comment " LAPACK="@comment " XLAPACK="@comment " LAPACKE="@comment "
+.elif defined(CBLAS_SLAVEPORT)
+BUILD_DEPENDS+= lapack>0:math/lapack
+LIB_DEPENDS+= libblas.so:math/blas
+CMAKE_ON+= CBLAS
+BUILD_WRKSRC= ${CONFIGURE_WRKSRC}/CBLAS
+INSTALL_WRKSRC= ${BUILD_WRKSRC}
+CBLASLIB= libcblas.a
+LIBS= cblas
+PLIST_SUB+= BLAS="@comment " CBLAS="" LAPACK="@comment " XLAPACK="@comment " LAPACKE="@comment "
.elif defined(LAPACKE_SLAVEPORT)
-ALL_TARGET= lapackelib
+USES+= blaslapack
+CMAKE_ON+= USE_OPTIMIZED_BLAS USE_OPTIMIZED_LAPACK LAPACKE
+CMAKE_ARGS+= -DBLAS_LIBRARIES="${LOCALBASE}/lib/libblas.so" \
+ -DLAPACK_LIBRARIES="${LOCALBASE}/lib/liblapack.so"
+BUILD_WRKSRC= ${CONFIGURE_WRKSRC}/LAPACKE
+INSTALL_WRKSRC= ${BUILD_WRKSRC}
LAPACKELIB= liblapacke.a
-LAPACKETMGLIB= liblapacke_tmg.a
-MAKE_ENV+= LAPACKELIB="${LAPACKELIB}" LAPACKETMGLIB="${LAPACKETMGLIB}"
-LIB_DEPENDS+= libblas.so:math/blas \
- liblapack.so:math/lapack
-LIBS= lapacke lapacke_tmg
-INCLS= lapacke lapacke_utils lapacke_mangling
-PLIST_SUB+= BLAS="@comment " LAPACK="@comment " XLAPACK="@comment " LAPACKE=""
-SVERSION= 1
+PLIST_SUB+= BLAS="@comment " CBLAS="@comment " LAPACK="@comment " XLAPACK="@comment " LAPACKE=""
+.elif defined(XLAPACK_SLAVEPORT)
+LIB_DEPENDS+= libblas.so:math/blas \
+ liblapack.so:math/lapack \
+ libxblas.so:math/xblas
+FFLAGS+= -fallow-argument-mismatch
+CMAKE_ON+= USE_OPTIMIZED_BLAS USE_XBLAS BUILD_TESTING
+CMAKE_ARGS+= -DBLAS_LIBRARIES="${LOCALBASE}/lib/libblas.so"
+PLIST_SUB+= BLAS="@comment " CBLAS="@comment " LAPACK="@comment " XLAPACK="" LAPACKE="@comment "
.else
-ALL_TARGET= lib
-BLASLIB?= -L${LOCALBASE}/lib -lblas
+# Upstream recommand to use an optimized BLAS, but it would cause conflicts
+# among the dependencies: for an optimized lapack switch to OpenBLAS.
+# BUILD_TESTING to get tmglib.
LIB_DEPENDS+= libblas.so:math/blas
-LIBS= lapack tmglib
-SVERSION= 4
-TEST_TARGET= lapack_testing
-.if defined(MAINTAINER_MODE) || defined(PACKAGE_BUILDING)
-S= ${PYTHON_CMD}
-USES+= python:build
-.else
-S= \#
-.endif
-.if defined(XLAPACK_SLAVEPORT)
-LIB_DEPENDS+= libxblas.so:math/xblas
-MAKE_ENV+= USEXBLAS=yes XBLASLIB="${XBLASLIB}"
-P= x
-PLIST_SUB+= BLAS="@comment " LAPACK="@comment " XLAPACK="" LAPACKE="@comment "
-XBLASLIB?= -L${LOCALBASE}/lib -lxblas
-.else
+. if defined(MAINTAINER_MODE)
+USES+= python:3.6+,build,test
+. endif
+CMAKE_ON+= USE_OPTIMIZED_BLAS BUILD_TESTING
+CMAKE_ARGS+= -DBLAS_LIBRARIES="${LOCALBASE}/lib/libblas.so"
+LIBS= lapack
PLIST_FILES+= ${MAN3L:S|^|man/man3/|:S|$|.gz|}
-PLIST_SUB+= BLAS="@comment " LAPACK="" XLAPACK="@comment " LAPACKE="@comment "
-.if defined(MAINTAINER_MODE)
-BUILD_DEPENDS += doxygen:devel/doxygen
-MAN_TARGET= build-manpages
-.endif
-.endif
-.endif
-
-.if ${ARCH} == "sparc64"
-PICFLAG?= -fPIC
-.else
-PICFLAG?= -fpic
+PLIST_SUB+= BLAS="@comment " CBLAS="@comment " LAPACK="" XLAPACK="@comment " LAPACKE="@comment "
.endif
-FFLAGS_PROFILE?= -pg
-FFLAGS_SHARED ?= ${PICFLAG}
+.include <bsd.port.pre.mk>
-.if ${PORT_OPTIONS:MPROFILE}
-LDFLAGS+= -static
-.endif
-
-.if ${PORT_OPTIONS:MPROFILE} && !exists(/usr/lib/libc_p.a)
-IGNORE= you have chosen WITH_PROFILE, but have not installed the\
-base system profiling libraries
-.endif
-
-.if ${PORT_OPTIONS:MSHARED}
-USE_LDCONFIG= yes
-.endif
-
-.for o in PROFILE SHARED STATIC
-.if ${PORT_OPTIONS:M${o}}
-PLIST_SUB+= ${o}=""
-.else
-PLIST_SUB+= ${o}="@comment "
-.endif
-.endfor
-
-post-patch:
- @${SED} -Ee '\
+pre-configure:
+ ${SED} -Ee '\
s@^(FORTRAN|LOADER)([[:blank:]]*=)(.*)@\1\2 $${FC}@; \
s@^(OPTS[[:blank:]]*=)(.*)@\1 $${FFLAGS} $${EXTRAFLAGS}@; \
s@^NOOPT[[:blank:]]*=.*@& $${EXTRAFLAGS}@; \
s@^(LOADOPTS[[:blank:]]*=)(.*)@\1 $${LDFLAGS} $${EXTRAFLAGS}@; \
s@^(CC[[:blank:]]*=)(.*)@@; \
+ s@^(FC[[:blank:]]*=)(.*)@@; \
s@^(CFLAGS[[:blank:]]*)(=)(.*)@\1 += $${EXTRAFLAGS}@; \
+ s@^(FFLAGS[[:blank:]]*=)(.*)@@; \
+ s@^(LDFLAGS[[:blank:]]*=)(.*)@@; \
\@(BLAS|LAPACKE|RAN)LIB[[:blank:]]*=@d;' \
${WRKSRC}/make.inc.example > ${WRKSRC}/make.inc
- @${REINPLACE_CMD} -e 's@\./lapack_testing\.py@${S} &@' \
+ ${REINPLACE_CMD} -e 's@\./lapack_testing\.py@${S} &@' \
${WRKSRC}/Makefile
-.for o in PROFILE SHARED
-.if ${PORT_OPTIONS:M${o}}
- @${CP} -a ${WRKSRC} ${WRKSRC_${o}}
-.endif
-.endfor
-
-do-build: ${MAN_TARGET} build-profile build-shared build-static
-
-.for o in PROFILE SHARED STATIC
-build-${o:tl}: patch
-.if ${PORT_OPTIONS:M${o}}
- ${PRINTF} "\n\nBuilding ${o:tl} libraries:\n\n\n"
- cd ${WRKSRC_${o}}; ${SETENV} ${MAKE_ENV} EXTRAFLAGS="${FFLAGS_${o}}" \
- ${MAKE} ${_MAKE_JOBS} ${MAKE_ARGS} ARCH="${AR}" ${ALL_TARGET}
-
-.endif
-.endfor
-
-.if defined (MAINTAINER_MODE)
-build-manpages: patch
- @cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${MAKE} ${_MAKE_JOBS} \
- ${MAKE_ARGS} man
-
+ ${FIND} ${WRKSRC} -name Makefile | ${XARGS} \
+ ${SED} -i ".bak" -e 's|^ifdef|.ifdef|;s|^endif|.endif|'
+.if defined(MAINTAINER_MODE)
+ ${REINPLACE_CMD} -e 's|PythonInterp 2.7|PythonInterp ${PYTHON_VER}|' \
+ ${WRKSRC}/CMakeLists.txt
.endif
post-build:
-.if ${PORT_OPTIONS:MSHARED}
-.for L in ${LIBS}
- cd ${WRKSRC_SHARED} ; ${FC} ${FFLAGS} ${FFLAGS_SHARED} ${LDFLAGS} -shared \
- -o lib${P}${L}.so.${SVERSION} -Wl,-x -Wl,-soname,lib${P}${L}.so.${SVERSION} \
- -Wl,--whole-archive lib${L}.a -Wl,--no-whole-archive
-.endfor
-.endif
-
-.if ${PORT_OPTIONS:MSHARED}
-TESTS ?= test-shared
-.elif ${PORT_OPTIONS:MSTATIC}
-TESTS ?= test-static
-.elif ${PORT_OPTIONS:MPROFILE}
-TESTS ?= test-profile
-.endif
-
-.if !defined(LAPACKE_SLAVEPORT)
-check regression-test test: ${TESTS}
-.for o in PROFILE SHARED STATIC
-test-${o:tl}: build-${o:tl}
-.if ${PORT_OPTIONS:M${o}}
- @${PRINTF} "\n\nTesting ${o:tl} libraries:\n\n\n"
- @cd ${WRKSRC_${o}}; ${SETENV} ${MAKE_ENV} EXTRAFLAGS="${FFLAGS_${o}}" \
- ${MAKE} ${_MAKE_JOBS} ${MAKE_ARGS} ARCH="${AR}" ${TEST_TARGET}
.if defined(BLAS_SLAVEPORT)
- @${CAT} ${WRKSRC_${o}}/BLAS/*.out
-.endif
-.endif
-.endfor
-.endif
-
-do-install:
-.for L in ${LIBS}
-.if ${PORT_OPTIONS:MSTATIC}
- @${INSTALL_DATA} ${WRKSRC}/lib${L}.a ${STAGEDIR}${PREFIX}/lib/lib${P}${L}.a
-.endif
-.if ${PORT_OPTIONS:MSHARED}
- @${INSTALL_DATA} ${WRKSRC_SHARED}/lib${L}.a ${STAGEDIR}${PREFIX}/lib/lib${P}${L}_pic.a
- @${INSTALL_DATA} ${WRKSRC_SHARED}/lib${P}${L}.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib
- @${LN} -sf lib${P}${L}.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib/lib${P}${L}.so
-.endif
-.if ${PORT_OPTIONS:MPROFILE}
- @${INSTALL_DATA} ${WRKSRC_PROFILE}/lib${L}.a ${STAGEDIR}${PREFIX}/lib/lib${P}${L}_p.a
-.endif
-.endfor
-.if defined(LAPACKE_SLAVEPORT)
-.for I in ${INCLS}
- @${INSTALL_DATA} ${WRKSRC}/lapacke/include/${I}.h ${STAGEDIR}${PREFIX}/include
-.endfor
+ ${SED} -e 's|%%LIB%%|blas|g;s|cd SRC|cd BLAS/SRC|;s|SRC/lib|BLAS/SRC/lib|' \
+ ${FILESDIR}/static.mk >> ${BUILD_WRKSRC}/CMakeFiles/blas.dir/build.make
+ (cd ${CONFIGURE_WRKSRC} && ${MAKE} -f BLAS/SRC/CMakeFiles/blas.dir/build.make build-static)
+.elif defined(CBLAS_SLAVEPORT)
+ ${SED} -e 's|%%LIB%%|cblas|g;s|cd SRC|cd CBLAS/src|;s|SRC/lib|CBLAS/src/lib|' \
+ ${FILESDIR}/static.mk >> ${BUILD_WRKSRC}/src/CMakeFiles/cblas.dir/build.make
+ (cd ${CONFIGURE_WRKSRC} && ${MAKE} -f CBLAS/src/CMakeFiles/cblas.dir/build.make build-static)
+.elif defined(LAPACKE_SLAVEPORT)
+ ${SED} -e 's|%%LIB%%|lapacke|g;s|cd SRC|cd LAPACKE|' ${FILESDIR}/static.mk \
+ >> ${BUILD_WRKSRC}/CMakeFiles/lapacke.dir/build.make
+ (cd ${CONFIGURE_WRKSRC} && ${MAKE} -f LAPACKE/CMakeFiles/lapacke.dir/build.make build-static)
+.else # xlapack + Lapack + tmglib
+ ${SED} -e 's|%%LIB%%|lapack|g' ${FILESDIR}/static.mk \
+ >> ${BUILD_WRKSRC}/SRC/CMakeFiles/lapack.dir/build.make
+ (cd ${CONFIGURE_WRKSRC} && ${MAKE} -f SRC/CMakeFiles/lapack.dir/build.make build-static)
+ ${SED} -e 's|%%LIB%%|tmglib|g;s|cd SRC|cd TESTING/MATGEN|;s|SRC/lib|TESTING/MATGEN/lib|' \
+ ${FILESDIR}/static.mk >> ${BUILD_WRKSRC}/TESTING/MATGEN/CMakeFiles/tmglib.dir/build.make
+ (cd ${BUILD_WRKSRC} && ${MAKE} -f TESTING/MATGEN/CMakeFiles/tmglib.dir/build.make build-static)
.endif
-.include <bsd.port.pre.mk>
-
-.if !(defined(BLAS_SLAVEPORT) || defined(XLAPACK_SLAVEPORT) || defined(LAPACKE_SLAVEPORT))
-
.include "${FILESDIR}/manpages"
post-install:
- @cd ${WRKDIR}/man ; ${ECHO_CMD} ${MAN3L:S|^|man3/|} \
+.if defined(BLAS_SLAVEPORT)
+ ${INSTALL_DATA} ${CONFIGURE_WRKSRC}/BLAS/SRC/${BLASLIB} ${STAGEDIR}${PREFIX}/lib
+ ${INSTALL_DATA} ${CONFIGURE_WRKSRC}/BLAS/blas.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig
+.elif defined(CBLAS_SLAVEPORT)
+ # Avoid conflict with OpenBLAS
+ ${MKDIR} ${STAGEDIR}${PREFIX}/include/cblas
+ ${MV} ${STAGEDIR}${PREFIX}/include/*.h ${STAGEDIR}${PREFIX}/include/cblas/
+ ${INSTALL_DATA} ${BUILD_WRKSRC}/src/${CBLASLIB} ${STAGEDIR}${PREFIX}/lib
+.elif defined(LAPACKE_SLAVEPORT)
+ # Avoid conflict with OpenBLAS
+ ${MKDIR} ${STAGEDIR}${PREFIX}/include/lapacke
+ ${MV} ${STAGEDIR}${PREFIX}/include/*.h ${STAGEDIR}${PREFIX}/include/lapacke/
+ ${INSTALL_DATA} ${CONFIGURE_WRKSRC}/LAPACKE/${LAPACKELIB} ${STAGEDIR}${PREFIX}/lib
+.elif defined(XLAPACK_SLAVEPORT)
+ ${INSTALL_DATA} ${BUILD_WRKSRC}/SRC/liblapack.a ${STAGEDIR}${PREFIX}/lib/libxlapack.a
+ ${INSTALL_DATA} ${BUILD_WRKSRC}/TESTING/MATGEN/libtmglib.a \
+ ${STAGEDIR}${PREFIX}/lib/libxtmglib.a
+ ${MV} ${STAGEDIR}${PREFIX}/lib/liblapack.so \
+ ${STAGEDIR}${PREFIX}/lib/libxlapack.so.${PORTVERSION}
+ ${LN} -sf libxlapack.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib/libxlapack.so
+ ${LN} -sf libxlapack.so.${PORTVERSION} \
+ ${STAGEDIR}${PREFIX}/lib/libxlapack.so.${SVERSION}
+ ${MV} ${STAGEDIR}${PREFIX}/lib/libtmglib.so \
+ ${STAGEDIR}${PREFIX}/lib/libxtmglib.so.${PORTVERSION}
+ ${LN} -sf libxtmglib.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib/libxtmglib.so
+ ${LN} -sf libxtmglib.so.${PORTVERSION} \
+ ${STAGEDIR}${PREFIX}/lib/libxtmglib.so.${SVERSION}
+ ${SED} -e 's|lapack|xlapack|g;s|LAPACK|XLAPACK|' \
+ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/lapack.pc \
+ > ${STAGEDIR}${PREFIX}/libdata/pkgconfig/xlapack.pc
+ ${RM} ${STAGEDIR}${PREFIX}/libdata/pkgconfig/lapack.pc
+.else # Lapack
+ ${INSTALL_DATA} ${BUILD_WRKSRC}/SRC/liblapack.a ${STAGEDIR}${PREFIX}/lib
+ ${INSTALL_DATA} ${BUILD_WRKSRC}/TESTING/MATGEN/libtmglib.a ${STAGEDIR}${PREFIX}/lib
+ ${MV} ${STAGEDIR}${PREFIX}/lib/libtmglib.so \
+ ${STAGEDIR}${PREFIX}/lib/libtmglib.so.${PORTVERSION}
+ ${LN} -sf libtmglib.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib/libtmglib.so
+ ${LN} -sf libtmglib.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib/libtmglib.so.${SVERSION}
+.endif
+.if !(defined(BLAS_SLAVEPORT) || defined(CBLAS_SLAVEPORT) || defined(XLAPACK_SLAVEPORT) || defined(LAPACKE_SLAVEPORT))
+ cd ${WRKDIR}/man ; ${ECHO_CMD} ${MAN3L:S|^|man3/|} \
| ${XARGS} -J @ ${INSTALL_MAN} @ ${STAGEDIR}${MAN3PREFIX}/man/man3
-
-.if defined(MAINTAINER_MODE)
-package-manpages: build-manpages
- @${RM} ${WRKDIR}/lapack-manpages-${PORTVERSION}.tar.gz ; \
- cd ${WRKSRC}/DOCS/man; \
- ${TAR} -czvf ${WRKDIR}/lapack-manpages-${PORTVERSION}.tar.gz \
- ${MAN3L:S|^|man3/|}
-
-.endif
.endif
+
.include <bsd.port.post.mk>
diff --git a/math/lapack/distinfo b/math/lapack/distinfo
index 1ba4007bc3fe..fbf3bb754930 100644
--- a/math/lapack/distinfo
+++ b/math/lapack/distinfo
@@ -1,4 +1,5 @@
-SHA256 (lapack/lapack-3.5.0.tgz) = 9ad8f0d3f3fb5521db49f2dd716463b8fb2b6bc9dc386a9956b8c6144f726352
-SIZE (lapack/lapack-3.5.0.tgz) = 6313139
-SHA256 (lapack/manpages-3.5.0.tgz) = 055da7402ea807cc16f6c50b71ac63d290f83a5f2885aa9f679b7ad11dd8903d
-SIZE (lapack/manpages-3.5.0.tgz) = 1394730
+TIMESTAMP = 1623226962
+SHA256 (lapack/v3.9.1.tar.gz) = d0085d2caf997ff39299c05d4bacb6f3d27001d25a4cc613d48c1f352b73e7e0
+SIZE (lapack/v3.9.1.tar.gz) = 7543209
+SHA256 (lapack/manpages.tgz) = a65b84821765cfd4bb8bf8c05e4279a9d81130da4eb8741ef2690064c57610cf
+SIZE (lapack/manpages.tgz) = 2391904
diff --git a/math/lapack/files/manpages b/math/lapack/files/manpages
index 7005df85d75f..bc4adae7b1d4 100644
--- a/math/lapack/files/manpages
+++ b/math/lapack/files/manpages
@@ -1,10 +1,6 @@
MAN3L= \
-INSTALL_ilaver.f.3 \
-INSTALL_lsame.f.3 \
-LAPACK_version.f.3 \
-SRC_ilaver.f.3 \
-SRC_xerbla.f.3 \
-SRC_xerbla_array.f.3 \
+BLAS_SRC_xerbla_array.f.3 \
+BLAS_SRC_xerbla.f.3 \
caxpy.f.3 \
cbbcsd.f.3 \
cbdsqr.f.3 \
@@ -35,24 +31,28 @@ cgees.f.3 \
cgeesx.f.3 \
cgeev.f.3 \
cgeevx.f.3 \
-cgegs.f.3 \
-cgegv.f.3 \
cgehd2.f.3 \
cgehrd.f.3 \
+cgejsv.f.3 \
+cgelq.f.3 \
cgelq2.f.3 \
cgelqf.f.3 \
+cgelqt.f.3 \
+cgelqt3.f.3 \
cgels.f.3 \
cgelsd.f.3 \
cgelss.f.3 \
-cgelsx.f.3 \
cgelsy.f.3 \
+cgemlq.f.3 \
+cgemlqt.f.3 \
cgemm.f.3 \
+cgemqr.f.3 \
cgemqrt.f.3 \
cgemv.f.3 \
cgeql2.f.3 \
cgeqlf.f.3 \
cgeqp3.f.3 \
-cgeqpf.f.3 \
+cgeqr.f.3 \
cgeqr2.f.3 \
cgeqr2p.f.3 \
cgeqrf.f.3 \
@@ -70,26 +70,37 @@ cgesc2.f.3 \
cgesdd.f.3 \
cgesv.f.3 \
cgesvd.f.3 \
+cgesvdq.f.3 \
+cgesvdx.f.3 \
+cgesvj.f.3 \
cgesvx.f.3 \
cgesvxx.f.3 \
cgetc2.f.3 \
cgetf2.f.3 \
cgetrf.f.3 \
+cgetrf2.f.3 \
cgetri.f.3 \
cgetrs.f.3 \
+cgetsls.f.3 \
+cgetsqrhrt.f.3 \
cggbak.f.3 \
cggbal.f.3 \
cgges.f.3 \
+cgges3.f.3 \
cggesx.f.3 \
cggev.f.3 \
+cggev3.f.3 \
cggevx.f.3 \
cggglm.f.3 \
+cgghd3.f.3 \
cgghrd.f.3 \
cgglse.f.3 \
cggqrf.f.3 \
cggrqf.f.3 \
-cggsvd.f.3 \
-cggsvp.f.3 \
+cggsvd3.f.3 \
+cggsvp3.f.3 \
+cgsvj0.f.3 \
+cgsvj1.f.3 \
cgtcon.f.3 \
cgtrfs.f.3 \
cgtsv.f.3 \
@@ -97,8 +108,12 @@ cgtsvx.f.3 \
cgttrf.f.3 \
cgttrs.f.3 \
cgtts2.f.3 \
+chb2st_kernels.f.3 \
+chbev_2stage.f.3 \
chbev.f.3 \
+chbevd_2stage.f.3 \
chbevd.f.3 \
+chbevx_2stage.f.3 \
chbevx.f.3 \
chbgst.f.3 \
chbgv.f.3 \
@@ -106,14 +121,21 @@ chbgvd.f.3 \
chbgvx.f.3 \
chbmv.f.3 \
chbtrd.f.3 \
+checon_3.f.3 \
+checon_rook.f.3 \
checon.f.3 \
cheequb.f.3 \
+cheev_2stage.f.3 \
cheev.f.3 \
+cheevd_2stage.f.3 \
cheevd.f.3 \
+cheevr_2stage.f.3 \
cheevr.f.3 \
+cheevx_2stage.f.3 \
cheevx.f.3 \
chegs2.f.3 \
chegst.f.3 \
+chegv_2stage.f.3 \
chegv.f.3 \
chegvd.f.3 \
chegvx.f.3 \
@@ -125,17 +147,36 @@ cher2k.f.3 \
cherfs.f.3 \
cherfsx.f.3 \
cherk.f.3 \
+chesv_aa_2stage.f.3 \
+chesv_aa.f.3 \
+chesv_rk.f.3 \
+chesv_rook.f.3 \
chesv.f.3 \
chesvx.f.3 \
chesvxx.f.3 \
cheswapr.f.3 \
chetd2.f.3 \
+chetf2_rk.f.3 \
+chetf2_rook.f.3 \
chetf2.f.3 \
+chetrd_2stage.f.3 \
+chetrd_he2hb.f.3 \
chetrd.f.3 \
+chetrf_aa_2stage.f.3 \
+chetrf_aa.f.3 \
+chetrf_rk.f.3 \
+chetrf_rook.f.3 \
chetrf.f.3 \
+chetri_3.f.3 \
+chetri_3x.f.3 \
+chetri_rook.f.3 \
chetri.f.3 \
chetri2.f.3 \
chetri2x.f.3 \
+chetrs_3.f.3 \
+chetrs_aa_2stage.f.3 \
+chetrs_aa.f.3 \
+chetrs_rook.f.3 \
chetrs.f.3 \
chetrs2.f.3 \
chfrk.f.3 \
@@ -205,14 +246,18 @@ claev2.f.3 \
clag2z.f.3 \
clags2.f.3 \
clagtm.f.3 \
+clahef_aa.f.3 \
+clahef_rk.f.3 \
+clahef_rook.f.3 \
clahef.f.3 \
clahqr.f.3 \
clahr2.f.3 \
-clahrd.f.3 \
claic1.f.3 \
clals0.f.3 \
clalsa.f.3 \
clalsd.f.3 \
+clamswlq.f.3 \
+clamtsqr.f.3 \
clangb.f.3 \
clange.f.3 \
clangt.f.3 \
@@ -251,11 +296,13 @@ clar1v.f.3 \
clar2v.f.3 \
clarcm.f.3 \
clarf.f.3 \
+clarfb_gett.f.3 \
clarfb.f.3 \
clarfg.f.3 \
clarfgp.f.3 \
clarft.f.3 \
clarfx.f.3 \
+clarfy.f.3 \
clargv.f.3 \
clarnv.f.3 \
clarrv.f.3 \
@@ -270,7 +317,11 @@ clascl2.f.3 \
claset.f.3 \
clasr.f.3 \
classq.f.3 \
+claswlq.f.3 \
claswp.f.3 \
+clasyf_aa.f.3 \
+clasyf_rk.f.3 \
+clasyf_rook.f.3 \
clasyf.f.3 \
clatbs.f.3 \
clatdf.f.3 \
@@ -278,7 +329,9 @@ clatps.f.3 \
clatrd.f.3 \
clatrs.f.3 \
clatrz.f.3 \
-clatzm.f.3 \
+clatsqr.f.3 \
+claunhr_col_getrfnp.f.3 \
+claunhr_col_getrfnp2.f.3 \
clauu2.f.3 \
clauum.f.3 \
cpbcon.f.3 \
@@ -303,6 +356,7 @@ cposvx.f.3 \
cposvxx.f.3 \
cpotf2.f.3 \
cpotrf.f.3 \
+cpotrf2.f.3 \
cpotri.f.3 \
cpotrs.f.3 \
cppcon.f.3 \
@@ -344,8 +398,12 @@ cstein.f.3 \
cstemr.f.3 \
csteqr.f.3 \
cswap.f.3 \
+csycon_3.f.3 \
+csycon_rook.f.3 \
csycon.f.3 \
csyconv.f.3 \
+csyconvf_rook.f.3 \
+csyconvf.f.3 \
csyequb.f.3 \
csymm.f.3 \
csymv.f.3 \
@@ -354,15 +412,32 @@ csyr2k.f.3 \
csyrfs.f.3 \
csyrfsx.f.3 \
csyrk.f.3 \
+csysv_aa_2stage.f.3 \
+csysv_aa.f.3 \
+csysv_rk.f.3 \
+csysv_rook.f.3 \
csysv.f.3 \
csysvx.f.3 \
csysvxx.f.3 \
csyswapr.f.3 \
+csytf2_rk.f.3 \
+csytf2_rook.f.3 \
csytf2.f.3 \
+csytrf_aa_2stage.f.3 \
+csytrf_aa.f.3 \
+csytrf_rk.f.3 \
+csytrf_rook.f.3 \
csytrf.f.3 \
+csytri_3.f.3 \
+csytri_3x.f.3 \
+csytri_rook.f.3 \
csytri.f.3 \
csytri2.f.3 \
csytri2x.f.3 \
+csytrs_3.f.3 \
+csytrs_aa_2stage.f.3 \
+csytrs_aa.f.3 \
+csytrs_rook.f.3 \
csytrs.f.3 \
csytrs2.f.3 \
ctbcon.f.3 \
@@ -383,6 +458,9 @@ ctgsna.f.3 \
ctgsy2.f.3 \
ctgsyl.f.3 \
ctpcon.f.3 \
+ctplqt.f.3 \
+ctplqt2.f.3 \
+ctpmlqt.f.3 \
ctpmqrt.f.3 \
ctpmv.f.3 \
ctpqrt.f.3 \
@@ -396,6 +474,7 @@ ctpttf.f.3 \
ctpttr.f.3 \
ctrcon.f.3 \
ctrevc.f.3 \
+ctrevc3.f.3 \
ctrexc.f.3 \
ctrmm.f.3 \
ctrmv.f.3 \
@@ -410,10 +489,16 @@ ctrtri.f.3 \
ctrtrs.f.3 \
ctrttf.f.3 \
ctrttp.f.3 \
-ctzrqf.f.3 \
ctzrzf.f.3 \
cunbdb.f.3 \
+cunbdb1.f.3 \
+cunbdb2.f.3 \
+cunbdb3.f.3 \
+cunbdb4.f.3 \
+cunbdb5.f.3 \
+cunbdb6.f.3 \
cuncsd.f.3 \
+cuncsd2by1.f.3 \
cung2l.f.3 \
cung2r.f.3 \
cungbr.f.3 \
@@ -425,6 +510,10 @@ cungqr.f.3 \
cungr2.f.3 \
cungrq.f.3 \
cungtr.f.3 \
+cungtsqr_row.f.3 \
+cungtsqr.f.3 \
+cunhr_col.f.3 \
+cunm22.f.3 \
cunm2l.f.3 \
cunm2r.f.3 \
cunmbr.f.3 \
@@ -445,7 +534,9 @@ daxpy.f.3 \
dbbcsd.f.3 \
dbdsdc.f.3 \
dbdsqr.f.3 \
+dbdsvdx.f.3 \
dcabs1.f.3 \
+dcombssq.f.3 \
dcopy.f.3 \
ddisna.f.3 \
ddot.f.3 \
@@ -473,25 +564,28 @@ dgees.f.3 \
dgeesx.f.3 \
dgeev.f.3 \
dgeevx.f.3 \
-dgegs.f.3 \
-dgegv.f.3 \
dgehd2.f.3 \
dgehrd.f.3 \
dgejsv.f.3 \
+dgelq.f.3 \
dgelq2.f.3 \
dgelqf.f.3 \
+dgelqt.f.3 \
+dgelqt3.f.3 \
dgels.f.3 \
dgelsd.f.3 \
dgelss.f.3 \
-dgelsx.f.3 \
dgelsy.f.3 \
+dgemlq.f.3 \
+dgemlqt.f.3 \
dgemm.f.3 \
+dgemqr.f.3 \
dgemqrt.f.3 \
dgemv.f.3 \
dgeql2.f.3 \
dgeqlf.f.3 \
dgeqp3.f.3 \
-dgeqpf.f.3 \
+dgeqr.f.3 \
dgeqr2.f.3 \
dgeqr2p.f.3 \
dgeqrf.f.3 \
@@ -508,27 +602,35 @@ dgesc2.f.3 \
dgesdd.f.3 \
dgesv.f.3 \
dgesvd.f.3 \
+dgesvdq.f.3 \
+dgesvdx.f.3 \
dgesvj.f.3 \
dgesvx.f.3 \
dgesvxx.f.3 \
dgetc2.f.3 \
dgetf2.f.3 \
dgetrf.f.3 \
+dgetrf2.f.3 \
*** 1332 LINES SKIPPED ***
More information about the dev-commits-ports-all
mailing list