Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/cmake/Modules/G4CTest.cmake

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /cmake/Modules/G4CTest.cmake (Version 11.3.0) and /cmake/Modules/G4CTest.cmake (Version 10.7.p3)


  1 # - Basic setup for testing Geant4 using CMake      1 # - Basic setup for testing Geant4 using CMake/CTest
  2 #                                                   2 #
  3 #---------------------------------------------      3 #-----------------------------------------------------------------------
  4 # Integration and unit tests                        4 # Integration and unit tests
  5 # - "ENABLE_TESTING" means all tests under tes      5 # - "ENABLE_TESTING" means all tests under tests/
  6 option(GEANT4_ENABLE_TESTING "Enable and defin      6 option(GEANT4_ENABLE_TESTING "Enable and define all the tests of the project" OFF)
  7 geant4_add_feature(GEANT4_ENABLE_TESTING "Enab      7 geant4_add_feature(GEANT4_ENABLE_TESTING "Enable and define all the tests of the project")
  8 mark_as_advanced(GEANT4_ENABLE_TESTING)             8 mark_as_advanced(GEANT4_ENABLE_TESTING)
  9                                                     9 
                                                   >>  10 # - "BUILD_TESTS" means all 'tests' in individual categories.
                                                   >>  11 option(GEANT4_BUILD_TESTS "Build all the tests of the project" OFF)
                                                   >>  12 geant4_add_feature(GEANT4_BUILD_TESTS "Build all the tests of the project")
                                                   >>  13 mark_as_advanced(GEANT4_BUILD_TESTS)
                                                   >>  14 
 10 #---------------------------------------------     15 #-----------------------------------------------------------------------
 11 # Configure CTest and relevant Geant4 settings     16 # Configure CTest and relevant Geant4 settings, if required
 12 #                                                  17 #
 13 if(GEANT4_ENABLE_TESTING)                          18 if(GEANT4_ENABLE_TESTING)
 14   # - Core CTest                                   19   # - Core CTest
 15   enable_testing()                                 20   enable_testing()
 16   include(CTest)                                   21   include(CTest)
 17   include(G4TestAPI)                           << 
 18                                                    22 
 19   # - Geant4_DIR is needed to locate GeantConf     23   # - Geant4_DIR is needed to locate GeantConfig.cmake file required
 20   # for tests and examples that are built as d <<  24   # by tests and examples
 21   # (as opposed to "build-and-test" type situa <<  25   set(Geant4_DIR ${CMAKE_BINARY_DIR} CACHE PATH "Current build directory")
 22   set(Geant4_DIR ${PROJECT_BINARY_DIR})        << 
 23                                                << 
 24   # - Base URL for test reference files        << 
 25   set(GEANT4_TEST_REFERENCES_URL "http://cern. << 
 26                                                    26 
 27   # - Add datasets to testing environment          27   # - Add datasets to testing environment
 28   geant4_get_datasetnames(_dslist)                 28   geant4_get_datasetnames(_dslist)
 29   foreach(_ds ${_dslist})                          29   foreach(_ds ${_dslist})
 30     geant4_get_dataset_property(${_ds} ENVVAR      30     geant4_get_dataset_property(${_ds} ENVVAR _dsenvvar)
 31     geant4_get_dataset_property(${_ds} BUILD_D     31     geant4_get_dataset_property(${_ds} BUILD_DIR _dspath)
 32     list(APPEND GEANT4_TEST_ENVIRONMENT ${_dse     32     list(APPEND GEANT4_TEST_ENVIRONMENT ${_dsenvvar}=${_dspath})
 33   endforeach()                                     33   endforeach()
 34                                                    34 
 35   # - Add TOOLS_FONT_PATH to testing environme <<  35   # - Add base URL for test reference files
                                                   >>  36   set(GEANT4_TEST_REFERENCES_URL "http://cern.ch/geant4-data/stt/references/" CACHE
                                                   >>  37        STRING "base URL for test reference files")
                                                   >>  38   mark_as_advanced(GEANT4_TEST_REFERENCES_URL)
                                                   >>  39 
                                                   >>  40   # - Add TOOLS_FONT_PATH if freetype enabled
 36   if(GEANT4_USE_FREETYPE)                          41   if(GEANT4_USE_FREETYPE)
 37     list(APPEND GEANT4_TEST_ENVIRONMENT TOOLS_ <<  42     list(APPEND GEANT4_TEST_ENVIRONMENT TOOLS_FONT_PATH=${PROJECT_SOURCE_DIR}/source/analysis/fonts)
 38   endif()                                          43   endif()
 39                                                    44 
 40   # - Configure 'G4RunManagerFactory::CreateRu     45   # - Configure 'G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default)'
 41   # to use TBB if required                     <<  46   # to use TBB
 42   if(GEANT4_BUILD_MULTITHREADED AND GEANT4_USE     47   if(GEANT4_BUILD_MULTITHREADED AND GEANT4_USE_TBB)
 43     list(APPEND GEANT4_TEST_ENVIRONMENT G4RUN_     48     list(APPEND GEANT4_TEST_ENVIRONMENT G4RUN_MANAGER_TYPE=TBB)
 44   endif()                                          49   endif()
                                                   >>  50 endif()
                                                   >>  51 
                                                   >>  52 #-----------------------------------------------------------------------
                                                   >>  53 # Add Unit Tests if required
                                                   >>  54 #
                                                   >>  55 if(GEANT4_BUILD_TESTS)
                                                   >>  56   file(GLOB_RECURSE files RELATIVE ${CMAKE_SOURCE_DIR} source/CMakeLists.txt)
                                                   >>  57   foreach( file ${files} )
                                                   >>  58     get_filename_component(path ${file} PATH)
                                                   >>  59     if(path MATCHES "/test$")
                                                   >>  60       add_subdirectory(${path})
                                                   >>  61     endif()
                                                   >>  62   endforeach()
 45 endif()                                            63 endif()