From f2c318b543b2f0c5caeb4d3ce501a0ebbe634285 Mon Sep 17 00:00:00 2001 From: rulrich <ralf.m.ulrich@kit.edu> Date: Fri, 29 May 2020 08:34:02 +0200 Subject: [PATCH] allow example options --- CMakeModules/CorsikaUtilities.cmake | 20 +++++++++++++++----- Documentation/Examples/CMakeLists.txt | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/CMakeModules/CorsikaUtilities.cmake b/CMakeModules/CorsikaUtilities.cmake index fb6517c48..025e3f023 100644 --- a/CMakeModules/CorsikaUtilities.cmake +++ b/CMakeModules/CorsikaUtilities.cmake @@ -181,14 +181,24 @@ endfunction (CORSIKA_ADD_TEST) # target_link_libraries(testSomething ...) and so on. # function (CORSIKA_ADD_EXAMPLE) - cmake_parse_arguments (PARSE_ARGV 1 _ "" "" "SOURCES") - + set (options "") + set (oneValueArgs RUN_OPTIONS) + set (multiValueArgs SOURCES) + cmake_parse_arguments (CORSKA_ADD_EXAMPLE "${options}" "${oneValueArgs}" + "${multiValueArgs}" ${ARGN} ) + set (name ${ARGV0}) - if (NOT __SOURCES) + if (NOT CORSIKA_ADD_EXAMPLE_SOURCES) set (sources ${name}.cc) else () - set (sources ${__SOURCES}) + set (sources ${CORSIKA_ADD_EXAMPLE_SOURCES}) + endif () + + if (NOT CORSIKA_ADD_EXAMPLE_RUN_OPTIONS) + set (run_options "") + else () + set (run_option ${CORSIKA_ADD_EXAMPLE_RUN_OPTIONS}) endif () add_executable (${name} ${sources}) @@ -204,7 +214,7 @@ function (CORSIKA_ADD_EXAMPLE) COMMAND ${CMAKE_COMMAND} -E echo "" COMMAND ${CMAKE_COMMAND} -E echo "***************************************" COMMAND ${CMAKE_COMMAND} -E echo "***** running example: ${name}" - COMMAND ${CMAKE_CURRENT_BINARY_DIR}/${name} + COMMAND ${CMAKE_CURRENT_BINARY_DIR}/${name} ${run_options} WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/example_outputs) install (TARGETS ${name} DESTINATION share/examples) endfunction (CORSIKA_ADD_EXAMPLE) diff --git a/Documentation/Examples/CMakeLists.txt b/Documentation/Examples/CMakeLists.txt index 809f696e2..a465b7b0c 100644 --- a/Documentation/Examples/CMakeLists.txt +++ b/Documentation/Examples/CMakeLists.txt @@ -82,7 +82,7 @@ if (Pythia8_FOUND) CORSIKAprocesssequence ) - CORSIKA_ADD_EXAMPLE (vertical_EAS) + CORSIKA_ADD_EXAMPLE (vertical_EAS RUN_OPTIONS "4 2 10000.") target_link_libraries (vertical_EAS SuperStupidStack CORSIKAunits -- GitLab