Skip to content

Commit

Permalink
CMake test install: add comments + make it symmetric with autotools's…
Browse files Browse the repository at this point in the history
… one.
  • Loading branch information
fghoussen committed Aug 13, 2023
1 parent a857b80 commit 5a2f942
Showing 1 changed file with 28 additions and 24 deletions.
52 changes: 28 additions & 24 deletions cmake/tstCMakeInstall.sh.in
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,7 @@ cd tstCMakeInstall

cp "@PROJECT_SOURCE_DIR@/EXAMPLES/BAND/dnband.f" .
cp "@PROJECT_SOURCE_DIR@/EXAMPLES/BAND/dnbdr1.f" .
cp "@PROJECT_SOURCE_DIR@/EXAMPLES/BAND/dnbdr3.f" .
cp "@PROJECT_SOURCE_DIR@/PARPACK/EXAMPLES/MPI/pdndrv1.f" .
cp "@PROJECT_SOURCE_DIR@/PARPACK/EXAMPLES/MPI/pdndrv3.f" .
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" .
Expand All @@ -55,6 +53,8 @@ echo "cmake_minimum_required(VERSION 3.5)" > CMake
echo "" >> CMakeLists.txt
echo "project(tstCMakeInstall Fortran C CXX)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "# Targets compiled with *.cmake files generated by cmake" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "find_package(BLAS REQUIRED)" >> CMakeLists.txt
echo "find_package(LAPACK REQUIRED)" >> CMakeLists.txt
echo "find_package(MPI REQUIRED COMPONENTS Fortran C CXX)" >> CMakeLists.txt
Expand Down Expand Up @@ -131,17 +131,19 @@ echo "target_link_libraries(icb_parpack_cpp ARPACK::ARPACK)" >>
echo "target_include_directories(icb_parpack_cpp INTERFACE PARPACK::PARPACK)" >> CMakeLists.txt
echo "target_link_libraries(icb_parpack_cpp PARPACK::PARPACK)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "# Targets compiled with with *.pc files generated by cmake" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "find_package(PkgConfig REQUIRED)" >> CMakeLists.txt
echo "pkg_check_modules(ARPACK IMPORTED_TARGET REQUIRED arpack${LIBSUFFIX}${ITF64SUFFIX})" >> CMakeLists.txt
echo "pkg_check_modules(PARPACK IMPORTED_TARGET REQUIRED parpack${LIBSUFFIX}${ITF64SUFFIX})" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(dnbdr3 dnband.f dnbdr3.f)" >> CMakeLists.txt
echo "target_include_directories(dnbdr3 INTERFACE BLAS::BLAS)" >> CMakeLists.txt
echo "target_link_libraries(dnbdr3 BLAS::BLAS)" >> CMakeLists.txt
echo "target_include_directories(dnbdr3 INTERFACE LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_link_libraries(dnbdr3 LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_include_directories(dnbdr3 INTERFACE PkgConfig::ARPACK)" >> CMakeLists.txt
echo "target_link_libraries(dnbdr3 PkgConfig::ARPACK)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(dnbdr1_pkg dnband.f dnbdr1.f)" >> CMakeLists.txt
echo "target_include_directories(dnbdr1_pkg INTERFACE BLAS::BLAS)" >> CMakeLists.txt
echo "target_link_libraries(dnbdr1_pkg BLAS::BLAS)" >> CMakeLists.txt
echo "target_include_directories(dnbdr1_pkg INTERFACE LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_link_libraries(dnbdr1_pkg LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_include_directories(dnbdr1_pkg INTERFACE PkgConfig::ARPACK)" >> CMakeLists.txt
echo "target_link_libraries(dnbdr1_pkg PkgConfig::ARPACK)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(icb_arpack_c_pkg icb_arpack_c.c)" >> CMakeLists.txt
echo "target_include_directories(icb_arpack_c_pkg INTERFACE BLAS::BLAS)" >> CMakeLists.txt
Expand All @@ -158,18 +160,18 @@ echo "target_include_directories(icb_arpack_cpp_pkg INTERFACE LAPACK::LAPACK)"
echo "target_link_libraries(icb_arpack_cpp_pkg LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_include_directories(icb_arpack_cpp_pkg INTERFACE PkgConfig::ARPACK)" >> CMakeLists.txt
echo "target_link_libraries(icb_arpack_cpp_pkg PkgConfig::ARPACK)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(pdndrv3 dnband.f pdndrv3.f)" >> CMakeLists.txt
echo "target_include_directories(pdndrv3 INTERFACE BLAS::BLAS)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv3 BLAS::BLAS)" >> CMakeLists.txt
echo "target_include_directories(pdndrv3 INTERFACE LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv3 LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_include_directories(pdndrv3 INTERFACE MPI::MPI_Fortran)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv3 MPI::MPI_Fortran)" >> CMakeLists.txt
echo "target_include_directories(pdndrv3 INTERFACE PkgConfig::ARPACK)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv3 PkgConfig::ARPACK)" >> CMakeLists.txt
echo "target_include_directories(pdndrv3 INTERFACE PkgConfig::PARPACK)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv3 PkgConfig::PARPACK)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(pdndrv1_pkg dnband.f pdndrv1.f)" >> CMakeLists.txt
echo "target_include_directories(pdndrv1_pkg INTERFACE BLAS::BLAS)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv1_pkg BLAS::BLAS)" >> CMakeLists.txt
echo "target_include_directories(pdndrv1_pkg INTERFACE LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv1_pkg LAPACK::LAPACK)" >> CMakeLists.txt
echo "target_include_directories(pdndrv1_pkg INTERFACE MPI::MPI_Fortran)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv1_pkg MPI::MPI_Fortran)" >> CMakeLists.txt
echo "target_include_directories(pdndrv1_pkg INTERFACE PkgConfig::ARPACK)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv1_pkg PkgConfig::ARPACK)" >> CMakeLists.txt
echo "target_include_directories(pdndrv1_pkg INTERFACE PkgConfig::PARPACK)" >> CMakeLists.txt
echo "target_link_libraries(pdndrv1_pkg PkgConfig::PARPACK)" >> CMakeLists.txt
echo "" >> CMakeLists.txt
echo "add_executable(icb_parpack_c_pkg icb_parpack_c.c)" >> CMakeLists.txt
echo "target_include_directories(icb_parpack_c_pkg INTERFACE BLAS::BLAS)" >> CMakeLists.txt
Expand Down Expand Up @@ -205,6 +207,7 @@ make all VERBOSE=1 || exit 1

export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/tmp/tstCMakeInstall/local/lib"

# The first targets are compiled with *.cmake files generated by cmake.
./dnbdr1 || exit 1
./icb_arpack_c || exit 1
./icb_arpack_cpp || exit 1
Expand All @@ -213,9 +216,10 @@ mpirun -n 2 ./pdndrv1 || exit 1
mpirun -n 2 ./icb_parpack_c || exit 1
mpirun -n 2 ./icb_parpack_cpp || exit 1

./dnbdr3 || exit 1
# The second targets are compiled with *.pc files generated by cmake.
./dnbdr1_pkg || exit 1
./icb_arpack_c_pkg || exit 1
./icb_arpack_cpp_pkg || exit 1
mpirun -n 2 ./pdndrv3 || exit 1
mpirun -n 2 ./pdndrv1_pkg || exit 1
mpirun -n 2 ./icb_parpack_c_pkg || exit 1
mpirun -n 2 ./icb_parpack_cpp_pkg || exit 1

0 comments on commit 5a2f942

Please sign in to comment.