From 1677b76b6c8ee655dc2f2ef48f95cd42bb3ea52f Mon Sep 17 00:00:00 2001 From: Axel Kohlmeyer Date: Tue, 28 Jul 2020 20:56:32 -0400 Subject: [PATCH] try using faster alternatives to GNU ld when building (many) test executables --- cmake/Modules/Testing.cmake | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/cmake/Modules/Testing.cmake b/cmake/Modules/Testing.cmake index a36067938f..35b16f89e2 100644 --- a/cmake/Modules/Testing.cmake +++ b/cmake/Modules/Testing.cmake @@ -16,6 +16,18 @@ if(ENABLE_TESTING) set(MEMORYCHECK_COMMAND "${VALGRIND_BINARY}" CACHE FILEPATH "Memory Check Command") set(MEMORYCHECK_COMMAND_OPTIONS "${VALGRIND_DEFAULT_OPTIONS}" CACHE STRING "Memory Check Command Options") + # check if a faster linker is available + include(CheckCXXCompilerFlag) + check_cxx_compiler_flag(-fuse-ld=lld HAVE_LLD_LINKER) + check_cxx_compiler_flag(-fuse-ld=gold HAVE_GOLD_LINKER) + if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13) + if(HAVE_LLD_LINKER) + target_link_options(lammps PUBLIC -fuse-ld=lld) + elseif(HAVE_OLD_LINKER) + target_link_options(lammps PUBLIC -fuse-ld=gold) + endif() + endif() + include(CTest) enable_testing()