forked from lammps/lammps
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'lammps:develop' into develop
- Loading branch information
Showing
747 changed files
with
25,190 additions
and
19,717 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,50 +1,62 @@ | ||
# PACE library support for ML-PACE package | ||
find_package(pace QUIET) | ||
|
||
# set policy to silence warnings about timestamps of downloaded files. review occasionally if it may be set to NEW | ||
if(POLICY CMP0135) | ||
cmake_policy(SET CMP0135 OLD) | ||
endif() | ||
if(pace_FOUND) | ||
find_package(pace) | ||
target_link_libraries(lammps PRIVATE pace::pace) | ||
else() | ||
# set policy to silence warnings about timestamps of downloaded files. review occasionally if it may be set to NEW | ||
if(POLICY CMP0135) | ||
cmake_policy(SET CMP0135 OLD) | ||
endif() | ||
|
||
set(PACELIB_URL "https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2023.11.25.fix.tar.gz" CACHE STRING "URL for PACE evaluator library sources") | ||
set(PACELIB_MD5 "b45de9a633f42ed65422567e3ce56f9f" CACHE STRING "MD5 checksum of PACE evaluator library tarball") | ||
mark_as_advanced(PACELIB_URL) | ||
mark_as_advanced(PACELIB_MD5) | ||
GetFallbackURL(PACELIB_URL PACELIB_FALLBACK) | ||
set(PACELIB_URL "https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2023.11.25.fix2.tar.gz" CACHE STRING "URL for PACE evaluator library sources") | ||
set(PACELIB_MD5 "a53bd87cfee8b07d9f44bc17aad69c3f" CACHE STRING "MD5 checksum of PACE evaluator library tarball") | ||
mark_as_advanced(PACELIB_URL) | ||
mark_as_advanced(PACELIB_MD5) | ||
GetFallbackURL(PACELIB_URL PACELIB_FALLBACK) | ||
|
||
# LOCAL_ML-PACE points to top-level dir with local lammps-user-pace repo, | ||
# to make it easier to check local build without going through the public github releases | ||
if(LOCAL_ML-PACE) | ||
set(lib-pace "${LOCAL_ML-PACE}") | ||
else() | ||
# download library sources to build folder | ||
if(EXISTS ${CMAKE_BINARY_DIR}/libpace.tar.gz) | ||
file(MD5 ${CMAKE_BINARY_DIR}/libpace.tar.gz DL_MD5) | ||
endif() | ||
if(NOT "${DL_MD5}" STREQUAL "${PACELIB_MD5}") | ||
message(STATUS "Downloading ${PACELIB_URL}") | ||
file(DOWNLOAD ${PACELIB_URL} ${CMAKE_BINARY_DIR}/libpace.tar.gz STATUS DL_STATUS SHOW_PROGRESS) | ||
file(MD5 ${CMAKE_BINARY_DIR}/libpace.tar.gz DL_MD5) | ||
if((NOT DL_STATUS EQUAL 0) OR (NOT "${DL_MD5}" STREQUAL "${PACELIB_MD5}")) | ||
message(WARNING "Download from primary URL ${PACELIB_URL} failed\nTrying fallback URL ${PACELIB_FALLBACK}") | ||
file(DOWNLOAD ${PACELIB_FALLBACK} ${CMAKE_BINARY_DIR}/libpace.tar.gz EXPECTED_HASH MD5=${PACELIB_MD5} SHOW_PROGRESS) | ||
# LOCAL_ML-PACE points to top-level dir with local lammps-user-pace repo, | ||
# to make it easier to check local build without going through the public github releases | ||
if(LOCAL_ML-PACE) | ||
set(lib-pace "${LOCAL_ML-PACE}") | ||
else() | ||
# download library sources to build folder | ||
if(EXISTS ${CMAKE_BINARY_DIR}/libpace.tar.gz) | ||
file(MD5 ${CMAKE_BINARY_DIR}/libpace.tar.gz DL_MD5) | ||
endif() | ||
if(NOT "${DL_MD5}" STREQUAL "${PACELIB_MD5}") | ||
message(STATUS "Downloading ${PACELIB_URL}") | ||
file(DOWNLOAD ${PACELIB_URL} ${CMAKE_BINARY_DIR}/libpace.tar.gz STATUS DL_STATUS SHOW_PROGRESS) | ||
file(MD5 ${CMAKE_BINARY_DIR}/libpace.tar.gz DL_MD5) | ||
if((NOT DL_STATUS EQUAL 0) OR (NOT "${DL_MD5}" STREQUAL "${PACELIB_MD5}")) | ||
message(WARNING "Download from primary URL ${PACELIB_URL} failed\nTrying fallback URL ${PACELIB_FALLBACK}") | ||
file(DOWNLOAD ${PACELIB_FALLBACK} ${CMAKE_BINARY_DIR}/libpace.tar.gz EXPECTED_HASH MD5=${PACELIB_MD5} SHOW_PROGRESS) | ||
endif() | ||
else() | ||
message(STATUS "Using already downloaded archive ${CMAKE_BINARY_DIR}/libpace.tar.gz") | ||
endif() | ||
|
||
|
||
# uncompress downloaded sources | ||
execute_process( | ||
COMMAND ${CMAKE_COMMAND} -E remove_directory lammps-user-pace* | ||
COMMAND ${CMAKE_COMMAND} -E tar xzf libpace.tar.gz | ||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR} | ||
) | ||
get_newest_file(${CMAKE_BINARY_DIR}/lammps-user-pace-* lib-pace) | ||
endif() | ||
else() | ||
message(STATUS "Using already downloaded archive ${CMAKE_BINARY_DIR}/libpace.tar.gz") | ||
endif() | ||
|
||
|
||
# uncompress downloaded sources | ||
execute_process( | ||
COMMAND ${CMAKE_COMMAND} -E remove_directory lammps-user-pace* | ||
COMMAND ${CMAKE_COMMAND} -E tar xzf libpace.tar.gz | ||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR} | ||
) | ||
get_newest_file(${CMAKE_BINARY_DIR}/lammps-user-pace-* lib-pace) | ||
endif() | ||
|
||
add_subdirectory(${lib-pace} build-pace) | ||
set_target_properties(pace PROPERTIES CXX_EXTENSIONS ON OUTPUT_NAME lammps_pace${LAMMPS_MACHINE}) | ||
# some preinstalled yaml-cpp versions don't provide a namespaced target | ||
find_package(yaml-cpp QUIET) | ||
if(TARGET yaml-cpp AND NOT TARGET yaml-cpp::yaml-cpp) | ||
add_library(yaml-cpp::yaml-cpp ALIAS yaml-cpp) | ||
endif() | ||
|
||
if(CMAKE_PROJECT_NAME STREQUAL "lammps") | ||
target_link_libraries(lammps PRIVATE pace) | ||
add_subdirectory(${lib-pace} build-pace) | ||
set_target_properties(pace PROPERTIES CXX_EXTENSIONS ON OUTPUT_NAME lammps_pace${LAMMPS_MACHINE}) | ||
|
||
if(CMAKE_PROJECT_NAME STREQUAL "lammps") | ||
target_link_libraries(lammps PRIVATE pace) | ||
endif() | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.