Page Menu
Home
HEPForge
Search
Configure Global Search
Log In
Files
F9501706
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
4 KB
Subscribers
None
View Options
diff --git a/FixedOrderGen/CMakeLists.txt b/FixedOrderGen/CMakeLists.txt
index 127c2e6..7c02ba3 100644
--- a/FixedOrderGen/CMakeLists.txt
+++ b/FixedOrderGen/CMakeLists.txt
@@ -1,102 +1,106 @@
cmake_minimum_required(VERSION 3.1 FATAL_ERROR)
set(CMAKE_LEGACY_CYGWIN_WIN32 0)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
project("HEJ Fixed Order Generation" VERSION 2.0.6 LANGUAGES C CXX)
# Set a default build type if none was specified
set(default_build_type "RelWithDebInfo")
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
message(STATUS "Setting build type to '${default_build_type}' as none was specified.")
set(CMAKE_BUILD_TYPE "${default_build_type}" CACHE
STRING "Choose the type of build." FORCE)
# Set the possible values of build type for cmake-gui
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
"Debug" "Release" "MinSizeRel" "RelWithDebInfo")
endif()
## Global flags for the compiler (all warnings)
if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wpedantic")
elseif (MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4 /WX /EHsc")
endif()
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 14)
## Create Version
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
# Get the latest abbreviated commit hash of the working branch
execute_process(
COMMAND git rev-parse HEAD
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT_VARIABLE PROJECT_GIT_REVISION
OUTPUT_STRIP_TRAILING_WHITESPACE
)
# Get the current working branch
execute_process(
COMMAND git rev-parse --abbrev-ref HEAD
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT_VARIABLE PROJECT_GIT_BRANCH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Templates/Version.hh.in
${PROJECT_BINARY_DIR}/include/Version.hh @ONLY )
## Use cmake modules from HEJ src
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/../cmake/Modules/")
## Find HEJ (only dependency)
## HEJ includes all sub dependencies (fastjet, lhapdf, ...)
find_package(HEJ 2 REQUIRED)
include(RepairTargets) # more reliable cmake targets
## define executable
file(GLOB HEJFOG_source ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cc)
list(REMOVE_ITEM HEJFOG_source ${CMAKE_CURRENT_SOURCE_DIR}/src/main.cc)
add_library(hejfog_lib STATIC ${HEJFOG_source})
target_include_directories(hejfog_lib
PUBLIC
${PROJECT_SOURCE_DIR}/include
${PROJECT_BINARY_DIR}/include
)
add_executable(HEJFOG ${CMAKE_CURRENT_SOURCE_DIR}/src/main.cc)
## link libraries
set(libraries ${CMAKE_DL_LIBS})
target_link_libraries(hejfog_lib ${libraries} HEJ::HEJ)
target_link_libraries(HEJFOG hejfog_lib)
install(TARGETS HEJFOG DESTINATION bin)
## tests
-enable_testing()
-set(tst_dir "${CMAKE_CURRENT_SOURCE_DIR}/t")
-foreach(tst h_2j h_3j h_5j h_3j_uno1 h_3j_uno2 h_2j_decay 2j 4j W_reconstruct_enu
- W_2j_classify W_nj_classify)
- add_executable(test_${tst} ${tst_dir}/${tst}.cc)
- target_link_libraries(test_${tst} hejfog_lib)
- add_test(NAME t_${tst} COMMAND test_${tst} WORKING_DIRECTORY ${tst_dir})
-endforeach()
-# this only tests if the runcard actually works, not if the result is correct
-add_test(
- NAME t_main_2j
- COMMAND HEJFOG ${tst_dir}/config_2j.yml
- )
-add_test(
- NAME t_main_h2j
- COMMAND HEJFOG ${tst_dir}/config_h_2j.yml
- )
-add_test(
- NAME t_main_h2j_decay
- COMMAND HEJFOG ${tst_dir}/config_h_2j_decay.yml
- )
-add_test(
- NAME t_peakpt
- COMMAND HEJFOG ${tst_dir}/config_2j_peak.yml
- )
+include(CTest)
+## advanced version of enable_testing()
+## adds "BUILD_TESTING" option to deactivate testing
+if(BUILD_TESTING)
+ set(tst_dir "${CMAKE_CURRENT_SOURCE_DIR}/t")
+ foreach(tst h_2j h_3j h_5j h_3j_uno1 h_3j_uno2 h_2j_decay 2j 4j W_reconstruct_enu
+ W_2j_classify W_nj_classify)
+ add_executable(test_${tst} ${tst_dir}/${tst}.cc)
+ target_link_libraries(test_${tst} hejfog_lib)
+ add_test(NAME t_${tst} COMMAND test_${tst} WORKING_DIRECTORY ${tst_dir})
+ endforeach()
+ # this only tests if the runcard actually works, not if the result is correct
+ add_test(
+ NAME t_main_2j
+ COMMAND HEJFOG ${tst_dir}/config_2j.yml
+ )
+ add_test(
+ NAME t_main_h2j
+ COMMAND HEJFOG ${tst_dir}/config_h_2j.yml
+ )
+ add_test(
+ NAME t_main_h2j_decay
+ COMMAND HEJFOG ${tst_dir}/config_h_2j_decay.yml
+ )
+ add_test(
+ NAME t_peakpt
+ COMMAND HEJFOG ${tst_dir}/config_2j_peak.yml
+ )
+endif()
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sun, Feb 23, 2:59 PM (5 h, 43 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4486771
Default Alt Text
(4 KB)
Attached To
rHEJ HEJ
Event Timeline
Log In to Comment