academic/arpack-ng: Updated for version 3.9.0

Signed-off-by: Kyle Guinn <elyk03@gmail.com>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Kyle Guinn 2023-08-13 16:36:56 -05:00 committed by Willy Sudiarto Raharjo
parent 8d72b298dc
commit 9f18a88cd1
No known key found for this signature in database
GPG Key ID: 3F617144D7238786
3 changed files with 228 additions and 15 deletions

View File

@ -2,7 +2,7 @@
# Slackware build script for arpack-ng
# Copyright 2014-2021 Kyle Guinn <elyk03@gmail.com>
# Copyright 2014-2023 Kyle Guinn <elyk03@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=arpack-ng
VERSION=${VERSION:-3.8.0}
VERSION=${VERSION:-3.9.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@ -38,9 +38,6 @@ if [ -z "$ARCH" ]; then
esac
fi
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@ -55,9 +52,6 @@ DOCS="CHANGES COPYING README.md TODO"
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
@ -80,17 +74,18 @@ cd $PRGNAM-$VERSION
chown -R root:root .
chmod -R u+w,go-w,a+rX-st .
patch -p1 < $CWD/patches/install-paths.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 \
--mandir=\${prefix}/man \
--infodir=\${prefix}/info \
--docdir=\${prefix}/doc/$PRGNAM-$VERSION \
--disable-dependency-tracking \
--enable-icb \
--build=$ARCH-slackware-linux \

View File

@ -1,8 +1,8 @@
PRGNAM="arpack-ng"
VERSION="3.8.0"
VERSION="3.9.0"
HOMEPAGE="https://github.com/opencollab/arpack-ng"
DOWNLOAD="https://github.com/opencollab/arpack-ng/archive/3.8.0/arpack-ng-3.8.0.tar.gz"
MD5SUM="bb4cf448f2480a0ffe5517d579f980c3"
DOWNLOAD="https://github.com/opencollab/arpack-ng/archive/3.9.0/arpack-ng-3.9.0.tar.gz"
MD5SUM="e28fdbe33ee44a16e2733c180ec2a2bd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="blas lapack"

View File

@ -0,0 +1,218 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -45,7 +45,7 @@
# 'make install' to the correct location, and also define
# paths for target_include_directories and target_link_libraries
include(GNUInstallDirs)
-set(ARPACK_INSTALL_INCLUDEDIR "${CMAKE_INSTALL_INCLUDEDIR}/arpack-ng${ITF64SUFFIX}")
+set(ARPACK_INSTALL_INCLUDEDIR "${CMAKE_INSTALL_INCLUDEDIR}/arpack${ITF64SUFFIX}")
set(ARPACK_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/arpackng${LIBSUFFIX}${ITF64SUFFIX}")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
@@ -798,7 +798,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/")
@@ -821,9 +821,9 @@
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(pkg-config/arpackSolver.pc.in "${PROJECT_BINARY_DIR}/arpackSolver${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)
+configure_file(EXAMPLES/MATRIX_MARKET/arpackSolver.pc.in "${PROJECT_BINARY_DIR}/EXAMPLES/MATRIX_MARKET/arpackSolver${LIBSUFFIX}${ITF64SUFFIX}.pc" @ONLY)
install(TARGETS arpack
@@ -831,7 +831,7 @@
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)
@@ -840,7 +840,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 ()
@@ -853,7 +853,7 @@
endif()
if (ICBEXMM)
install(FILES EXAMPLES/MATRIX_MARKET/arpackSolver.hpp DESTINATION ${ARPACK_INSTALL_INCLUDEDIR})
- install(FILES "${PROJECT_BINARY_DIR}/arpackSolver${LIBSUFFIX}${ITF64SUFFIX}.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+ install(FILES "${PROJECT_BINARY_DIR}/EXAMPLES/MATRIX_MARKET/arpackSolver${LIBSUFFIX}${ITF64SUFFIX}.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
endif()
endif()
diff --git a/EXAMPLES/MATRIX_MARKET/Makefile.am b/EXAMPLES/MATRIX_MARKET/Makefile.am
--- a/EXAMPLES/MATRIX_MARKET/Makefile.am
+++ b/EXAMPLES/MATRIX_MARKET/Makefile.am
@@ -1,6 +1,8 @@
LDADD = $(top_builddir)/SRC/libarpack$(LIBSUFFIX)$(ITF64SUFFIX).la
AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir)/ICB $(EIGEN3_CFLAGS)
+pkgincludedir = $(includedir)/arpack@ITF64SUFFIX@
+
EXTRA_DIST = README
check_PROGRAMS = arpackmm
@@ -12,6 +14,7 @@
if ICBEXMM
pkginclude_HEADERS = arpackSolver.hpp
+pkgconfig_DATA = arpackSolver@LIBSUFFIX@@ITF64SUFFIX@.pc
endif
CLEANFILES = \
@@ -20,3 +23,6 @@
arpackmm.v.out \
arpackSolver.resid.out \
arpackSolver.v.out
+
+# Due to the LIBSUFFIX/ITF64SUFFIX, configure doesn't automatically clean this file:
+DISTCLEANFILES = arpackSolver@LIBSUFFIX@@ITF64SUFFIX@.pc
diff --git a/pkg-config/arpackSolver.pc.in b/EXAMPLES/MATRIX_MARKET/arpackSolver.pc.in
rename from pkg-config/arpackSolver.pc.in
rename to EXAMPLES/MATRIX_MARKET/arpackSolver.pc.in
--- a/pkg-config/arpackSolver.pc.in
+++ b/EXAMPLES/MATRIX_MARKET/arpackSolver.pc.in
@@ -1,10 +1,10 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
-includedir=@includedir@/arpack-ng@ITF64SUFFIX@
+includedir=@includedir@
Name: arpackSolver
Description: Utility to test arpack with matrix market files
Version: @PACKAGE_VERSION@
URL: @PACKAGE_URL@
-Requires: arpack, eigen3 >= 3.3
-Cflags: -I${includedir}
+Requires: arpack@LIBSUFFIX@@ITF64SUFFIX@, eigen3 >= 3.3
+Cflags: -I${includedir}/arpack@ITF64SUFFIX@
diff --git a/ICB/Makefile.am b/ICB/Makefile.am
--- a/ICB/Makefile.am
+++ b/ICB/Makefile.am
@@ -1,5 +1,7 @@
AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir)
+pkgincludedir = $(includedir)/arpack@ITF64SUFFIX@
+
pkginclude_HEADERS = debug_c.h debug_c.hpp
pkginclude_HEADERS += stat_c.h stat_c.hpp
pkginclude_HEADERS += arpack.h arpack.hpp
diff --git a/Makefile.am b/Makefile.am
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,6 @@
ACLOCAL_AMFLAGS = -I m4
-pkgincludedir = $(includedir)/arpack-ng@ITF64SUFFIX@
+pkgincludedir = $(includedir)/arpack@ITF64SUFFIX@
pkginclude_HEADERS = debug.h stat.h debugF90.h statF90.h arpackdef.h
AM_DISTCHECK_CONFIGURE_FLAGS =
@@ -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 arpackSolver@LIBSUFFIX@@ITF64SUFFIX@.pc
-
-# Due to the LIBSUFFIX/ITF64SUFFIX, configure doesn't automatically clean this file:
-DISTCLEANFILES = arpack@LIBSUFFIX@@ITF64SUFFIX@.pc parpack@LIBSUFFIX@@ITF64SUFFIX@.pc arpackSolver@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-ng@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-ng@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,9 +347,9 @@
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
- arpackSolver$LIBSUFFIX$ITF64SUFFIX.pc:pkg-config/arpackSolver.pc.in
+ SRC/arpack$LIBSUFFIX$ITF64SUFFIX.pc:SRC/arpack.pc.in
+ PARPACK/SRC/MPI/parpack$LIBSUFFIX$ITF64SUFFIX.pc:PARPACK/SRC/MPI/parpack.pc.in
+ EXAMPLES/MATRIX_MARKET/arpackSolver$LIBSUFFIX$ITF64SUFFIX.pc:EXAMPLES/MATRIX_MARKET/arpackSolver.pc.in
], [], [LIBSUFFIX="$LIBSUFFIX"; ITF64SUFFIX="$ITF64SUFFIX"])
dnl We do NOT want arpackng*.cmake files to be created: @MPI@ can not be replaced.