Skip to content

Commit 10d4fce

Browse files
authored
Merge pull request #689 from etmc/cmake_fix
Cmake fix
2 parents 5ea6e6a + 0292197 commit 10d4fce

7 files changed

Lines changed: 372 additions & 229 deletions

File tree

CMakeLists.txt

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.26)
22

33
project(
44
tmlqcd
5-
DESCRIPTION "tmlQCD"
5+
DESCRIPTION "tmLQCD"
66
HOMEPAGE_URL "https://github.com/etmc/tmLQCD"
77
VERSION "6.1.0"
88
LANGUAGES C CXX)
@@ -26,6 +26,8 @@ include(CMakeDependentOption)
2626
include(GNUInstallDirs)
2727
include(FetchContent)
2828
include(CMakePackageConfigHelpers)
29+
# Additionally, pass PIE-related link-time options to executable(s).
30+
include(CheckPIESupported)
2931

3032
cmake_policy(SET CMP0048 NEW)
3133

@@ -168,6 +170,8 @@ cmake_dependent_option(
168170
cmake_dependent_option(DDalphaAMG_ENABLE_HDF5 "Enable HDF5 support" OFF
169171
"TM_USE_DDalphaAMG" OFF)
170172

173+
check_pie_supported()
174+
171175
# search for blas and lapack
172176
find_package(BLAS REQUIRED)
173177
#
@@ -244,7 +248,7 @@ if(TM_USE_LEMON)
244248
FetchContent_Declare(
245249
lemon
246250
GIT_REPOSITORY https://github.com/etmc/lemon
247-
GIT_TAG 1eba8143133ac4cbfb0738f6e4fc2d32bd9f008c
251+
GIT_TAG 52cc2bf9cf9ac6f8f9566e9625dced3bccd40b43
248252
FIND_PACKAGE_ARGS NAMES lemon)
249253
FetchContent_MakeAvailable(lemon)
250254
endif()
@@ -355,7 +359,7 @@ if(CMAKE_BUILD_TYPE STREQUAL "SANITIZE")
355359
if(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
356360
message(STATUS "Building with AddressSanitizer")
357361
# Apply AddressSanitizer flags for the SANITIZE build type
358-
add_compile_options($<$<COMPILE_LANGUAGE:CXX,C>:-fsanitize=address>)
362+
add_compile_options($<$<COMPILE_LANGUAGE:CXX,C>:-fsanitize=address>)
359363
add_compile_options($<$<COMPILE_LANGUAGE:CXX,C>:-fno-omit-frame-pointer>)
360364
add_compile_options($<$<COMPILE_LANGUAGE:CXX,C>:-g>)
361365
add_link_options(-fsanitize=address)
@@ -397,25 +401,25 @@ add_subdirectory(src/lib)
397401
add_subdirectory(src/bin)
398402

399403
write_basic_package_version_file(
400-
"${PROJECT_BINARY_DIR}/tmlQCDConfigVersion.cmake"
404+
"${PROJECT_BINARY_DIR}/tmLQCDConfigVersion.cmake"
401405
VERSION "${PROJECT_VERSION}"
402406
COMPATIBILITY SameMajorVersion)
403407

404-
configure_file("${PROJECT_SOURCE_DIR}/cmake/tmlQCD-config.cmake.in"
405-
"${PROJECT_BINARY_DIR}/tmlQCD-config.cmake" @ONLY)
408+
configure_file("${PROJECT_SOURCE_DIR}/cmake/tmLQCDConfig.cmake.in"
409+
"${PROJECT_BINARY_DIR}/tmLQCDConfig.cmake" @ONLY)
406410

407-
configure_file("${PROJECT_SOURCE_DIR}/cmake/tmlQCD.pc.in"
408-
"${PROJECT_BINARY_DIR}/tmlQCD.pc" @ONLY)
411+
configure_file("${PROJECT_SOURCE_DIR}/cmake/tmLQCD.pc.in"
412+
"${PROJECT_BINARY_DIR}/tmLQCD.pc" @ONLY)
409413

410-
install(FILES "${PROJECT_BINARY_DIR}/tmlQCD-config.cmake"
411-
"${PROJECT_BINARY_DIR}/tmlQCDConfigVersion.cmake"
412-
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/tmlQCD")
414+
install(FILES "${PROJECT_BINARY_DIR}/tmLQCDConfig.cmake"
415+
"${PROJECT_BINARY_DIR}/tmLQCDConfigVersion.cmake"
416+
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}")
413417

414-
install(FILES "${PROJECT_BINARY_DIR}/tmlQCD.pc"
418+
install(FILES "${PROJECT_BINARY_DIR}/tmLQCD.pc"
415419
DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
416420

417421
install(
418422
DIRECTORY "${PROJECT_SOURCE_DIR}/cmake"
419-
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/tmlQCD"
423+
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}"
420424
FILES_MATCHING
421425
PATTERN "*.cmake")

DDalphaAMG/CMakeLists.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -191,11 +191,11 @@ target_compile_definitions(
191191
$<$<CONFIG:Debug>:DEBUG>
192192
SSE)
193193

194-
install(FILES "${CMAKE_SOURCE_DIR}/deps/lib/DDalphaAMG.h"
194+
install(FILES "${CMAKE_SOURCE_DIR}/DDalphaAMG/deps/src/DDalphaAMG.h"
195195
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/DDalphaAMG")
196196

197197
write_basic_package_version_file(
198-
"${PROJECT_BINARY_DIR}/DDalphaAMGonfigVersion.cmake"
198+
"${PROJECT_BINARY_DIR}/DDalphaAMGConfigVersion.cmake"
199199
VERSION "0.0.0"
200200
COMPATIBILITY SameMajorVersion)
201201

@@ -210,11 +210,11 @@ install(
210210
NAMESPACE DDalphaAMG::
211211
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/DDalphaAMG")
212212

213-
configure_file("${PROJECT_SOURCE_DIR}/cmake/DDalphaAMG-Config.cmake.in"
214-
"${PROJECT_BINARY_DIR}/DDalphaAMG-Config.cmake" @ONLY)
213+
configure_file("${PROJECT_SOURCE_DIR}/cmake/DDalphaAMGConfig.cmake.in"
214+
"${PROJECT_BINARY_DIR}/DDalphaAMGConfig.cmake" @ONLY)
215215

216-
install(FILES "${PROJECT_BINARY_DIR}/DDalphaAMG-Config.cmake"
217-
"${PROJECT_BINARY_DIR}/DDalphaAMG-ConfigVersion.cmake"
216+
install(FILES "${PROJECT_BINARY_DIR}/DDalphaAMGConfig.cmake"
217+
"${PROJECT_BINARY_DIR}/DDalphaAMGConfigVersion.cmake"
218218
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/DDalphaAMG")
219219

220220
# add_library(tmlqcd::DDalphaAMG alias DDalphaAMG)

0 commit comments

Comments
 (0)