mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-27 05:35:28 -04:00
Toolchain: Move libFCI installation to stage7 (#5442)
This commit is contained in:
parent
16a96a07a2
commit
f3f9c0959e
6 changed files with 8 additions and 80 deletions
|
|
@ -846,7 +846,7 @@ if(CP2K_USE_LIBINT2)
|
|||
endif()
|
||||
|
||||
if(CP2K_USE_LIBFCI)
|
||||
find_package(LibFCI REQUIRED)
|
||||
find_package(libfci REQUIRED)
|
||||
endif()
|
||||
|
||||
# Spglib
|
||||
|
|
|
|||
|
|
@ -1,55 +0,0 @@
|
|||
#!-------------------------------------------------------------------------------------------------!
|
||||
#! CP2K: A general program to perform molecular dynamics simulations !
|
||||
#! Copyright 2000-2026 CP2K developers group <https://cp2k.org> !
|
||||
#! !
|
||||
#! SPDX-License-Identifier: GPL-2.0-or-later !
|
||||
#!-------------------------------------------------------------------------------------------------!
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
include(cp2k_utils)
|
||||
|
||||
find_package(libfci CONFIG QUIET)
|
||||
|
||||
if(libfci_FOUND AND TARGET libfci::fci)
|
||||
set(LibFCI_FOUND TRUE)
|
||||
set(CP2K_LIBFCI_FOUND TRUE)
|
||||
set(CP2K_LIBFCI_LINK_LIBRARIES libfci::fci)
|
||||
get_target_property(CP2K_LIBFCI_INCLUDE_DIRS libfci::fci
|
||||
INTERFACE_INCLUDE_DIRECTORIES)
|
||||
else()
|
||||
find_package(PkgConfig QUIET)
|
||||
cp2k_set_default_paths(LIBFCI "libfci")
|
||||
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_check_modules(CP2K_LIBFCI IMPORTED_TARGET GLOBAL libfci)
|
||||
endif()
|
||||
|
||||
if(NOT CP2K_LIBFCI_FOUND)
|
||||
cp2k_find_libraries(LIBFCI "fci")
|
||||
cp2k_include_dirs(LIBFCI "libfci.h")
|
||||
endif()
|
||||
|
||||
find_package_handle_standard_args(LibFCI DEFAULT_MSG CP2K_LIBFCI_INCLUDE_DIRS
|
||||
CP2K_LIBFCI_LINK_LIBRARIES)
|
||||
endif()
|
||||
|
||||
if(CP2K_LIBFCI_FOUND)
|
||||
if(NOT TARGET cp2k::libfci::fci)
|
||||
add_library(cp2k::libfci::fci INTERFACE IMPORTED)
|
||||
endif()
|
||||
|
||||
if(TARGET libfci::fci)
|
||||
target_link_libraries(cp2k::libfci::fci INTERFACE libfci::fci)
|
||||
elseif(TARGET PkgConfig::CP2K_LIBFCI)
|
||||
target_link_libraries(cp2k::libfci::fci INTERFACE PkgConfig::CP2K_LIBFCI)
|
||||
else()
|
||||
set_target_properties(
|
||||
cp2k::libfci::fci PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
|
||||
"${CP2K_LIBFCI_INCLUDE_DIRS}")
|
||||
target_link_libraries(cp2k::libfci::fci
|
||||
INTERFACE ${CP2K_LIBFCI_LINK_LIBRARIES})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
mark_as_advanced(CP2K_LIBFCI_FOUND CP2K_LIBFCI_INCLUDE_DIRS
|
||||
CP2K_LIBFCI_LINK_LIBRARIES)
|
||||
|
|
@ -1787,7 +1787,7 @@ target_link_libraries(
|
|||
$<$<BOOL:${CP2K_USE_MIMIC}>:CP2K::MIMIC::mclf>
|
||||
$<$<BOOL:${CP2K_USE_MIMIC}>:CP2K::MIMIC::mcl>
|
||||
$<$<BOOL:${CP2K_USE_LIBINT2}>:Libint2::int2>
|
||||
$<$<BOOL:${CP2K_USE_LIBFCI}>:cp2k::libfci::fci>
|
||||
$<$<BOOL:${CP2K_USE_LIBFCI}>:libfci::fci>
|
||||
$<$<BOOL:${CP2K_USE_COSMA}>:cp2k::cosma>
|
||||
$<$<BOOL:${CP2K_USE_DLAF}>:${CP2K_DLAF_FORTRAN_TARGET}>
|
||||
$<$<BOOL:${CP2K_USE_GREENX}>:cp2k::greenx>
|
||||
|
|
|
|||
|
|
@ -47,56 +47,39 @@ case "$with_libfci" in
|
|||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
.. > cmake.log 2>&1 || tail_excerpt cmake.log
|
||||
CMAKE_BUILD_PARALLEL_LEVEL="$(get_nprocs)" cmake --build . > build.log 2>&1 || tail_excerpt build.log
|
||||
CMAKE_BUILD_PARALLEL_LEVEL="$(get_nprocs)" cmake --build . --target install > install.log 2>&1 || tail_excerpt install.log
|
||||
write_checksums "${install_lock_file}" "${SCRIPT_DIR}/stage8/$(basename "${SCRIPT_NAME}")"
|
||||
make install -j $(get_nprocs) > build.log 2>&1 || tail_excerpt build.log
|
||||
write_checksums "${install_lock_file}" "${SCRIPT_DIR}/stage7/$(basename "${SCRIPT_NAME}")"
|
||||
cd ../..
|
||||
fi
|
||||
LIBFCI_CFLAGS="-I'${pkg_install_dir}/include'"
|
||||
LIBFCI_LDFLAGS="-L'${pkg_install_dir}/lib' -Wl,-rpath,'${pkg_install_dir}/lib'"
|
||||
;;
|
||||
__SYSTEM__)
|
||||
echo "==================== Finding libfci from system paths ===================="
|
||||
check_lib -lfci "libfci"
|
||||
add_include_from_paths LIBFCI_CFLAGS "libfci.h" $INCLUDE_PATHS
|
||||
add_lib_from_paths LIBFCI_LDFLAGS "libfci.*" $LIB_PATHS
|
||||
pkg_install_dir="$(dirname $(dirname $(find_in_paths "libfci.*" $LIB_PATHS)))"
|
||||
;;
|
||||
*)
|
||||
echo "==================== Linking libfci to user paths ===================="
|
||||
pkg_install_dir="$with_libfci"
|
||||
pkg_install_dir="${with_libfci}"
|
||||
LIBFCI_LIBDIR="${pkg_install_dir}/lib"
|
||||
[ -d "${pkg_install_dir}/lib64" ] && LIBFCI_LIBDIR="${pkg_install_dir}/lib64"
|
||||
check_dir "${LIBFCI_LIBDIR}"
|
||||
check_dir "${pkg_install_dir}/include"
|
||||
LIBFCI_CFLAGS="-I'${pkg_install_dir}/include'"
|
||||
LIBFCI_LDFLAGS="-L'${LIBFCI_LIBDIR}' -Wl,-rpath,'${LIBFCI_LIBDIR}'"
|
||||
;;
|
||||
esac
|
||||
if [ "$with_libfci" != "__DONTUSE__" ]; then
|
||||
LIBFCI_LIBS="-lfci -lstdc++"
|
||||
cat << EOF > "${BUILDDIR}/setup_libfci"
|
||||
export LIBFCI_VER="${libfci_ver}"
|
||||
export LIBFCI_ROOT="${pkg_install_dir}"
|
||||
EOF
|
||||
if [ "$with_libfci" != "__SYSTEM__" ]; then
|
||||
cat << EOF >> "${BUILDDIR}/setup_libfci"
|
||||
prepend_path LD_LIBRARY_PATH "${pkg_install_dir}/lib"
|
||||
prepend_path LD_RUN_PATH "${pkg_install_dir}/lib"
|
||||
prepend_path LIBRARY_PATH "${pkg_install_dir}/lib"
|
||||
prepend_path CPATH "${pkg_install_dir}/include"
|
||||
prepend_path PKG_CONFIG_PATH "${pkg_install_dir}/lib/pkgconfig"
|
||||
prepend_path CMAKE_PREFIX_PATH "${pkg_install_dir}"
|
||||
EOF
|
||||
fi
|
||||
cat << EOF >> "${BUILDDIR}/setup_libfci"
|
||||
export LIBFCI_CFLAGS="${LIBFCI_CFLAGS}"
|
||||
export LIBFCI_LDFLAGS="${LIBFCI_LDFLAGS}"
|
||||
export LIBFCI_LIBS="${LIBFCI_LIBS}"
|
||||
export CP_DFLAGS="\${CP_DFLAGS} -D__LIBFCI"
|
||||
export CP_CFLAGS="\${CP_CFLAGS} ${LIBFCI_CFLAGS}"
|
||||
export CP_LDFLAGS="\${CP_LDFLAGS} ${LIBFCI_LDFLAGS}"
|
||||
export CP_LIBS="${LIBFCI_LIBS} \${CP_LIBS}"
|
||||
export LIBFCI_ROOT="${pkg_install_dir}"
|
||||
EOF
|
||||
filter_setup "${BUILDDIR}/setup_libfci" "${SETUPFILE}"
|
||||
fi
|
||||
|
||||
|
|
@ -8,6 +8,7 @@
|
|||
./scripts/stage7/install_spglib.sh
|
||||
./scripts/stage7/install_libvori.sh
|
||||
./scripts/stage7/install_libsmeagol.sh
|
||||
./scripts/stage7/install_libfci.sh
|
||||
./scripts/stage7/install_fmt.sh
|
||||
|
||||
#EOF
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@
|
|||
./scripts/stage8/install_spfft.sh
|
||||
./scripts/stage8/install_spla.sh
|
||||
./scripts/stage8/install_sirius.sh
|
||||
./scripts/stage8/install_libfci.sh
|
||||
./scripts/stage8/install_trexio.sh
|
||||
./scripts/stage8/install_mcl.sh
|
||||
#EOF
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue