diff options
Diffstat (limited to 'academic/arpack-ng')
-rw-r--r-- | academic/arpack-ng/README | 19 | ||||
-rw-r--r-- | academic/arpack-ng/arpack-ng.SlackBuild | 35 | ||||
-rw-r--r-- | academic/arpack-ng/arpack-ng.info | 8 | ||||
-rw-r--r-- | academic/arpack-ng/patches/pkgconfig.diff | 142 |
4 files changed, 176 insertions, 28 deletions
diff --git a/academic/arpack-ng/README b/academic/arpack-ng/README index e24427e956..596f89a447 100644 --- a/academic/arpack-ng/README +++ b/academic/arpack-ng/README @@ -4,15 +4,18 @@ large scale eigenvalue problems. This is a fork of ARPACK that is actively maintained. As such, this package will conflict with the ARPACK package. Do not install both. -This requires a BLAS/LAPACK implementation. Choose one of these package sets: +This requires a BLAS/LAPACK implementation. Choose one of these +package sets: * OpenBLAS (includes both a BLAS and a LAPACK implementation) * atlas (includes both a BLAS and a LAPACK implementation) * blas, lapack (the Netlib reference implementations) -If more than one set is installed (assuming there are no packaging conflicts) -then the auto-detection will use the first implementation from this list that -it finds. If in doubt, choose the Netlib reference implementations; other -packages that require a BLAS or LAPACK implementation may not build if they -are not configured to detect/use alternate implementations. +If more than one set is installed (assuming there are no packaging +conflicts) then the auto-detection will use the first implementation +from this list that it finds. If in doubt, choose the Netlib +reference implementations; other packages that require a BLAS or +LAPACK implementation may not build if they are not configured to +detect/use alternate implementations. -If the `make check` command fails, try switching to the Netlib reference -implementations, or comment out that command at your own risk. +If the `make check` command fails, try switching to the Netlib +reference implementations, or comment out that command at your own +risk. diff --git a/academic/arpack-ng/arpack-ng.SlackBuild b/academic/arpack-ng/arpack-ng.SlackBuild index b5639de58b..7893fe9968 100644 --- a/academic/arpack-ng/arpack-ng.SlackBuild +++ b/academic/arpack-ng/arpack-ng.SlackBuild @@ -1,8 +1,8 @@ -#!/bin/sh +#!/bin/bash # Slackware build script for arpack-ng -# Copyright 2014-2019 Kyle Guinn <elyk03@gmail.com> +# Copyright 2014-2024 Kyle Guinn <elyk03@gmail.com> # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,10 +22,13 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +cd $(dirname $0) ; CWD=$(pwd) + PRGNAM=arpack-ng -VERSION=${VERSION:-3.7.0} +VERSION=${VERSION:-3.9.1} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} if [ -z "$ARCH" ]; then case "$(uname -m)" in @@ -35,17 +38,18 @@ if [ -z "$ARCH" ]; then esac fi -CWD=$(pwd) +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -DOCS="CHANGES COPYING PARPACK_CHANGES README.md TODO" +DOCS="CHANGES COPYING README.md TODO" -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "i586" ]; then +if [ "$ARCH" = "i586" ]; then SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then @@ -70,19 +74,18 @@ cd $PRGNAM-$VERSION chown -R root:root . chmod -R u+w,go-w,a+rX-st . +patch -p1 < $CWD/patches/pkgconfig.diff patch -p1 < $CWD/patches/atlas-lib-rename.diff ./bootstrap ./configure \ --prefix=/usr \ - --libdir=/usr/lib${LIBDIRSUFFIX} \ + --libdir=\${exec_prefix}/lib${LIBDIRSUFFIX} \ --sysconfdir=/etc \ --localstatedir=/var \ - --mandir=/usr/man \ - --infodir=/usr/info \ - --docdir=/usr/doc/$PRGNAM-$VERSION \ - --enable-shared \ - --disable-static \ + --mandir=\${prefix}/man \ + --infodir=\${prefix}/info \ + --docdir=\${prefix}/doc/$PRGNAM-$VERSION \ --disable-dependency-tracking \ --enable-icb \ --build=$ARCH-slackware-linux \ @@ -105,4 +108,4 @@ mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG -/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE diff --git a/academic/arpack-ng/arpack-ng.info b/academic/arpack-ng/arpack-ng.info index 9af4707aa5..6f6426c4bf 100644 --- a/academic/arpack-ng/arpack-ng.info +++ b/academic/arpack-ng/arpack-ng.info @@ -1,10 +1,10 @@ PRGNAM="arpack-ng" -VERSION="3.7.0" +VERSION="3.9.1" HOMEPAGE="https://github.com/opencollab/arpack-ng" -DOWNLOAD="https://github.com/opencollab/arpack-ng/archive/3.7.0/arpack-ng-3.7.0.tar.gz" -MD5SUM="6fc6c6bf78dbd4f144595ef0675c8430" +DOWNLOAD="https://github.com/opencollab/arpack-ng/archive/3.9.1/arpack-ng-3.9.1.tar.gz" +MD5SUM="8f66485ae9d7e676b42aeead2bf5757e" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="blas lapack" +REQUIRES="lapack" MAINTAINER="Kyle Guinn" EMAIL="elyk03@gmail.com" diff --git a/academic/arpack-ng/patches/pkgconfig.diff b/academic/arpack-ng/patches/pkgconfig.diff new file mode 100644 index 0000000000..73a00eb23d --- /dev/null +++ b/academic/arpack-ng/patches/pkgconfig.diff @@ -0,0 +1,142 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -807,7 +807,7 @@ + set(prefix ${CMAKE_INSTALL_PREFIX}) + set(exec_prefix \${prefix}) + set(libdir ${CMAKE_INSTALL_FULL_LIBDIR}) +-set(includedir ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}) ++set(includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR}) + set(PACKAGE_NAME ${PROJECT_NAME}) + set(PACKAGE_VERSION ${arpack_ng_VERSION}) + set(PACKAGE_URL "https://github.com/opencollab/arpack-ng/") +@@ -830,15 +830,15 @@ + endforeach() + string(REPLACE ";" " " PARPACK_PC_LIBS_PRIVATE "${PARPACK_PC_LIBS_PRIVATE}") + +-configure_file(pkg-config/arpack.pc.in "${PROJECT_BINARY_DIR}/arpack${LIBSUFFIX}${ITF64SUFFIX}.pc" @ONLY) +-configure_file(pkg-config/parpack.pc.in "${PROJECT_BINARY_DIR}/parpack${LIBSUFFIX}${ITF64SUFFIX}.pc" @ONLY) ++configure_file(SRC/arpack.pc.in "${PROJECT_BINARY_DIR}/SRC/arpack${LIBSUFFIX}${ITF64SUFFIX}.pc" @ONLY) ++configure_file(PARPACK/SRC/MPI/parpack.pc.in "${PROJECT_BINARY_DIR}/PARPACK/SRC/MPI/parpack${LIBSUFFIX}${ITF64SUFFIX}.pc" @ONLY) + + install(TARGETS arpack + EXPORT arpackngTargets + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +-install(FILES "${PROJECT_BINARY_DIR}/arpack${LIBSUFFIX}${ITF64SUFFIX}.pc" ++install(FILES "${PROJECT_BINARY_DIR}/SRC/arpack${LIBSUFFIX}${ITF64SUFFIX}.pc" + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + + if (MPI) +@@ -847,7 +847,7 @@ + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +- install(FILES "${PROJECT_BINARY_DIR}/parpack${LIBSUFFIX}${ITF64SUFFIX}.pc" ++ install(FILES "${PROJECT_BINARY_DIR}/PARPACK/SRC/MPI/parpack${LIBSUFFIX}${ITF64SUFFIX}.pc" + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + endif () + +diff --git a/Makefile.am b/Makefile.am +--- a/Makefile.am ++++ b/Makefile.am +@@ -26,8 +26,3 @@ + + EXTRA_DIST = README.md PARPACK_CHANGES CHANGES DOCUMENTS VISUAL_STUDIO \ + detect_arpack_bug.m4 CMakeLists.txt +- +-pkgconfig_DATA = arpack@LIBSUFFIX@@ITF64SUFFIX@.pc parpack@LIBSUFFIX@@ITF64SUFFIX@.pc +- +-# Due to the LIBSUFFIX/ITF64SUFFIX, configure doesn't automatically clean this file: +-DISTCLEANFILES = arpack@LIBSUFFIX@@ITF64SUFFIX@.pc parpack@LIBSUFFIX@@ITF64SUFFIX@.pc +diff --git a/PARPACK/SRC/MPI/Makefile.am b/PARPACK/SRC/MPI/Makefile.am +--- a/PARPACK/SRC/MPI/Makefile.am ++++ b/PARPACK/SRC/MPI/Makefile.am +@@ -46,3 +46,8 @@ + libparpack@LIBSUFFIX@@ITF64SUFFIX@_la_LIBADD += $(top_builddir)/ICB/libdbgicb.la $(top_builddir)/ICB/libstaicb.la + libparpack@LIBSUFFIX@@ITF64SUFFIX@_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_builddir) + endif ++ ++pkgconfig_DATA = parpack@LIBSUFFIX@@ITF64SUFFIX@.pc ++ ++# Due to the LIBSUFFIX/ITF64SUFFIX, configure doesn't automatically clean this file: ++DISTCLEANFILES = parpack@LIBSUFFIX@@ITF64SUFFIX@.pc +diff --git a/pkg-config/parpack.pc.in b/PARPACK/SRC/MPI/parpack.pc.in +rename from pkg-config/parpack.pc.in +rename to PARPACK/SRC/MPI/parpack.pc.in +--- a/pkg-config/parpack.pc.in ++++ b/PARPACK/SRC/MPI/parpack.pc.in +@@ -1,7 +1,7 @@ + prefix=@prefix@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ +-includedir=@includedir@/arpack@ITF64SUFFIX@ ++includedir=@includedir@ + + Name: @PACKAGE_NAME@ + Description: Collection of Fortran77 subroutines designed to solve large scale eigenvalue problems +@@ -10,4 +10,4 @@ + Requires.private: arpack@LIBSUFFIX@@ITF64SUFFIX@ + Libs: -L${libdir} -lparpack@LIBSUFFIX@@ITF64SUFFIX@ + Libs.private: @PARPACK_PC_LIBS_PRIVATE@ +-Cflags: -I${includedir} ++Cflags: -I${includedir}/arpack@ITF64SUFFIX@ +diff --git a/SRC/Makefile.am b/SRC/Makefile.am +--- a/SRC/Makefile.am ++++ b/SRC/Makefile.am +@@ -33,3 +33,8 @@ + libarpack@LIBSUFFIX@@ITF64SUFFIX@_la_LIBADD += $(top_builddir)/ICB/libdbgicb.la $(top_builddir)/ICB/libstaicb.la + libarpack@LIBSUFFIX@@ITF64SUFFIX@_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_builddir) + endif ++ ++pkgconfig_DATA = arpack@LIBSUFFIX@@ITF64SUFFIX@.pc ++ ++# Due to the LIBSUFFIX/ITF64SUFFIX, configure doesn't automatically clean this file: ++DISTCLEANFILES = arpack@LIBSUFFIX@@ITF64SUFFIX@.pc +diff --git a/pkg-config/arpack.pc.in b/SRC/arpack.pc.in +rename from pkg-config/arpack.pc.in +rename to SRC/arpack.pc.in +--- a/pkg-config/arpack.pc.in ++++ b/SRC/arpack.pc.in +@@ -1,7 +1,7 @@ + prefix=@prefix@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ +-includedir=@includedir@/arpack@ITF64SUFFIX@ ++includedir=@includedir@ + + Name: @PACKAGE_NAME@ + Description: Collection of Fortran77 subroutines designed to solve large scale eigenvalue problems +@@ -9,4 +9,4 @@ + URL: @PACKAGE_URL@ + Libs: -L${libdir} -larpack@LIBSUFFIX@@ITF64SUFFIX@ + Libs.private: @ARPACK_PC_LIBS_PRIVATE@ +-Cflags: -I${includedir} ++Cflags: -I${includedir}/arpack@ITF64SUFFIX@ +diff --git a/configure.ac b/configure.ac +--- a/configure.ac ++++ b/configure.ac +@@ -347,14 +347,12 @@ + AC_SUBST([PARPACK_PC_LIBS_PRIVATE], ["$LAPACK_LIBS $BLAS_LIBS $MPI_Fortran_LIBS"]) + + AC_CONFIG_FILES([ +- arpack$LIBSUFFIX$ITF64SUFFIX.pc:pkg-config/arpack.pc.in +- parpack$LIBSUFFIX$ITF64SUFFIX.pc:pkg-config/parpack.pc.in ++ SRC/arpack$LIBSUFFIX$ITF64SUFFIX.pc:SRC/arpack.pc.in ++ PARPACK/SRC/MPI/parpack$LIBSUFFIX$ITF64SUFFIX.pc:PARPACK/SRC/MPI/parpack.pc.in + ], [], [LIBSUFFIX="$LIBSUFFIX"; ITF64SUFFIX="$ITF64SUFFIX"]) + + dnl We do NOT want arpackng*.cmake files to be created: @MPI@ can not be replaced. +-AC_CONFIG_FILES([ +- tstAutotoolsInstall.sh:pkg-config/tstAutotoolsInstall.sh.in +-], [], [abs_top_builddir="$abs_top_builddir"]) ++AC_CONFIG_FILES([tstAutotoolsInstall.sh], [chmod +x tstAutotoolsInstall.sh], [abs_top_builddir="$abs_top_builddir"]) + + AC_CONFIG_FILES([ + arpackdef.h +diff --git a/pkg-config/tstAutotoolsInstall.sh.in b/tstAutotoolsInstall.sh.in +old mode 100755 +new mode 100644 +rename from pkg-config/tstAutotoolsInstall.sh.in +rename to tstAutotoolsInstall.sh.in |