Fix installation tests: compile and run arpackmm.

This commit is contained in:
Franck HOUSSEN
2023-08-12 19:18:22 +02:00
parent 2239bf22e6
commit 7f0e2dca4a
8 changed files with 27 additions and 20 deletions
-1
View File
@@ -17,7 +17,6 @@ libtool
.deps/
arpack*.pc
parpack*.pc
arpackSolver*.pc
arpackdef.h
arpackicb.h
tstAutotoolsInstall.sh
-3
View File
@@ -831,8 +831,6 @@ 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)
install(TARGETS arpack
EXPORT arpackngTargets
@@ -861,7 +859,6 @@ if(ICB)
endif()
if (EIGEN)
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)
endif()
endif()
+1
View File
@@ -10,6 +10,7 @@ TESTS = arpackmm.sh issue401.sh issue215.sh
arpackmm_SOURCES = arpackmm.cpp
pkgincludedir = $(includedir)/arpack@ITF64SUFFIX@
if EIGEN
pkginclude_HEADERS = arpackSolver.hpp
endif
+2 -2
View File
@@ -27,7 +27,7 @@ endif
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
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 arpackSolver@LIBSUFFIX@@ITF64SUFFIX@.pc
DISTCLEANFILES = arpack@LIBSUFFIX@@ITF64SUFFIX@.pc parpack@LIBSUFFIX@@ITF64SUFFIX@.pc
+14 -1
View File
@@ -17,7 +17,7 @@ export LIBSUFFIX="${1%-*}"
echo "LIBSUFFIX: $LIBSUFFIX"
export ITF64SUFFIX="${1#*-}"
echo "ITF64SUFFIX: $ITF64SUFFIX"
cmake -DCMAKE_INSTALL_PREFIX="${TMP_PREFIX}" -DMPI=ON -DICB=ON -DLIBSUFFIX="${LIBSUFFIX}" -DITF64SUFFIX="${ITF64SUFFIX}" .
cmake -DCMAKE_INSTALL_PREFIX="${TMP_PREFIX}" -DMPI=ON -DICB=ON -DEIGEN=ON -DLIBSUFFIX="${LIBSUFFIX}" -DITF64SUFFIX="${ITF64SUFFIX}" .
make all install
tree "${TMP_PREFIX}"
@@ -49,6 +49,7 @@ cp "@PROJECT_SOURCE_DIR@/TESTS/icb_arpack_c.c" .
cp "@PROJECT_SOURCE_DIR@/TESTS/icb_arpack_cpp.cpp" .
cp "@PROJECT_SOURCE_DIR@/PARPACK/TESTS/MPI/icb_parpack_c.c" .
cp "@PROJECT_SOURCE_DIR@/PARPACK/TESTS/MPI/icb_parpack_cpp.cpp" .
cp "@PROJECT_SOURCE_DIR@/EXAMPLES/MATRIX_MARKET/arpackmm.cpp" .
echo "cmake_minimum_required(VERSION 3.0)" > CMakeLists.txt
echo "" >> CMakeLists.txt
@@ -58,6 +59,7 @@ echo "find_package(BLAS REQUIRED)" >> CMake
echo "find_package(LAPACK REQUIRED)" >> CMakeLists.txt
echo "find_package(MPI REQUIRED COMPONENTS Fortran C CXX)" >> CMakeLists.txt
echo "find_package(arpackng REQUIRED)" >> CMakeLists.txt
echo "find_package(Eigen3 3.3 REQUIRED)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(dnbdr1 dnband.f dnbdr1.f)" >> CMakeLists.txt
echo "target_include_directories(dnbdr1 INTERFACE BLAS::BLAS)" >> CMakeLists.txt
@@ -82,6 +84,16 @@ echo "target_include_directories(icb_arpack_cpp INTERFACE LAPACK::LAPACK)" >> CM
echo "target_link_libraries(icb_arpack_cpp LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_include_directories(icb_arpack_cpp INTERFACE ARPACK::ARPACK)" >> CMakeLists.txt
echo "target_link_libraries(icb_arpack_cpp ARPACK::ARPACK)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(arpackmm arpackmm.cpp)" >> CMakeLists.txt
echo "target_include_directories(arpackmm INTERFACE BLAS::BLAS)" >> CMakeLists.txt
echo "target_link_libraries(arpackmm BLAS::BLAS)" >> CMakeLists.txt
echo "target_include_directories(arpackmm INTERFACE LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_link_libraries(arpackmm LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_include_directories(arpackmm INTERFACE ARPACK::ARPACK)" >> CMakeLists.txt
echo "target_link_libraries(arpackmm ARPACK::ARPACK)" >> CMakeLists.txt
echo "target_include_directories(arpackmm INTERFACE Eigen3::Eigen)" >> CMakeLists.txt
echo "target_link_libraries(arpackmm Eigen3::Eigen)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(pdndrv1 dnband.f pdndrv1.f)" >> CMakeLists.txt
echo "target_include_directories(pdndrv1 INTERFACE BLAS::BLAS)" >> CMakeLists.txt
@@ -194,6 +206,7 @@ make all VERBOSE=1 || exit 1
./dnbdr1 || exit 1
./icb_arpack_c || exit 1
./icb_arpack_cpp || exit 1
./arpackmm -h || exit 1
mpirun -n 2 ./pdndrv1 || exit 1
mpirun -n 2 ./icb_parpack_c || exit 1
mpirun -n 2 ./icb_parpack_cpp || exit 1
-1
View File
@@ -349,7 +349,6 @@ 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
], [], [LIBSUFFIX="$LIBSUFFIX"; ITF64SUFFIX="$ITF64SUFFIX"])
dnl We do NOT want arpackng*.cmake files to be created: @MPI@ can not be replaced.
-10
View File
@@ -1,10 +0,0 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
includedir=@includedir@/arpack@ITF64SUFFIX@
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}
+10 -2
View File
@@ -22,7 +22,7 @@ export LIBSUFFIX="${1%-*}"
echo "LIBSUFFIX: $LIBSUFFIX"
export ITF64SUFFIX="${1#*-}"
echo "ITF64SUFFIX: $ITF64SUFFIX"
LIBSUFFIX="${LIBSUFFIX}" ITF64SUFFIX="${ITF64SUFFIX}" ./configure --prefix="${TMP_PREFIX}" --enable-mpi --enable-icb
LIBSUFFIX="${LIBSUFFIX}" ITF64SUFFIX="${ITF64SUFFIX}" ./configure --prefix="${TMP_PREFIX}" --enable-mpi --enable-icb --enable-eigen
make all install
tree "${TMP_PREFIX}"
@@ -46,6 +46,7 @@ cp "${PROJECT_SOURCE_DIR}/TESTS/icb_arpack_c.c" .
cp "${PROJECT_SOURCE_DIR}/TESTS/icb_arpack_cpp.cpp" .
cp "${PROJECT_SOURCE_DIR}/PARPACK/TESTS/MPI/icb_parpack_c.c" .
cp "${PROJECT_SOURCE_DIR}/PARPACK/TESTS/MPI/icb_parpack_cpp.cpp" .
cp "${PROJECT_SOURCE_DIR}/EXAMPLES/MATRIX_MARKET/arpackmm.cpp" .
echo "AC_PREREQ([2.68]) " > configure.ac
echo "AC_INIT([tstAutotoolsInstall], 1.0) " >> configure.ac
@@ -82,6 +83,8 @@ echo "AC_SUBST([MPI_CXX_LIBS], ["\$MPILIBS \$FCLIBS"]) "
echo "CXX=\$MPICXX " >> configure.ac
echo "AC_LANG_POP([C++]) " >> configure.ac
echo " " >> configure.ac
echo "PKG_CHECK_MODULES([EIGEN3], [eigen3 >= 3.3]) " >> configure.ac
echo " " >> configure.ac
echo "PKG_CHECK_MODULES([ARPACK], [arpack${LIBSUFFIX}${ITF64SUFFIX}]) " >> configure.ac
echo "AC_SUBST([ARPACK_CFLAGS]) " >> configure.ac
echo "AC_SUBST([ARPACK_LIBS]) " >> configure.ac
@@ -100,7 +103,7 @@ echo "ACLOCAL_AMFLAGS = -I m4
echo " " >> Makefile.am
echo "EXTRA_DIST = debug.h stat.h " >> Makefile.am
echo " " >> Makefile.am
echo "bin_PROGRAMS = dnbdr1 pdndrv1 icb_arpack_c icb_arpack_cpp icb_parpack_c icb_parpack_cpp " >> Makefile.am
echo "bin_PROGRAMS = dnbdr1 pdndrv1 icb_arpack_c icb_arpack_cpp icb_parpack_c icb_parpack_cpp arpackmm " >> Makefile.am
echo " " >> Makefile.am
echo "dnbdr1_SOURCES = dnbdr1.f dnband.f " >> Makefile.am
echo "dnbdr1_FFLAGS = \$(ARPACK_CFLAGS) " >> Makefile.am
@@ -118,6 +121,10 @@ echo "icb_arpack_cpp_SOURCES = icb_arpack_cpp.cpp
echo "icb_arpack_cpp_CPPFLAGS = \$(ARPACK_CFLAGS) " >> Makefile.am
echo "icb_arpack_cpp_LDADD = \$(ARPACK_LIBS) \$(LAPACK_LIBS) \$(BLAS_LIBS) " >> Makefile.am
echo " " >> Makefile.am
echo "arpackmm_SOURCES = arpackmm.cpp " >> Makefile.am
echo "arpackmm_CPPFLAGS = \$(ARPACK_CFLAGS) \$(EIGEN3_CFLAGS) " >> Makefile.am
echo "arpackmm_LDADD = \$(ARPACK_LIBS) \$(LAPACK_LIBS) \$(BLAS_LIBS) " >> Makefile.am
echo " " >> Makefile.am
echo "icb_parpack_c_SOURCES = icb_parpack_c.c " >> Makefile.am
echo "icb_parpack_c_CPPFLAGS = \$(AM_CPPFLAGS) \$(PARPACK_CFLAGS) \$(ARPACK_CFLAGS) " >> Makefile.am
echo "icb_parpack_c_LDADD = \$(PARPACK_LIBS) \$(ARPACK_LIBS) \$(LAPACK_LIBS) \$(BLAS_LIBS) \$(MPI_C_LIBS) " >> Makefile.am
@@ -136,6 +143,7 @@ make all || exit 1
./dnbdr1 || exit 1
./icb_arpack_c || exit 1
./icb_arpack_cpp || exit 1
./arpackmm -h || exit 1
mpirun -n 2 ./pdndrv1 || exit 1
mpirun -n 2 ./icb_parpack_c || exit 1