Geant4 Cross Reference |
1 #--------------------------------------------- 2 # Setup the project 3 # 4 cmake_minimum_required(VERSION 3.16...3.27) 5 project(CLUSTERING) 6 7 #--------------------------------------------- 8 # Find Geant4 package, activating all availabl 9 # You can set WITH_GEANT4_UIVIS to OFF via the 10 # to build a batch mode only executable 11 # 12 option(WITH_GEANT4_UIVIS "Build example with G 13 if(WITH_GEANT4_UIVIS) 14 find_package(Geant4 REQUIRED ui_all vis_all) 15 else() 16 find_package(Geant4 REQUIRED) 17 endif() 18 19 #--------------------------------------------- 20 # Setup Geant4 include directories and compile 21 # Setup include directory for this project 22 # 23 include(${Geant4_USE_FILE}) 24 include_directories(${PROJECT_SOURCE_DIR}/incl 25 26 #--------------------------------------------- 27 # Locate sources and headers for this project 28 # NB: headers are included so they will show u 29 # 30 file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*. 31 file(GLOB headers ${PROJECT_SOURCE_DIR}/includ 32 33 #--------------------------------------------- 34 # Add the executable, and link it to the Geant 35 # 36 add_executable(clustering clustering.cc ${sour 37 target_link_libraries(clustering ${Geant4_LIBR 38 39 #--------------------------------------------- 40 # Copy all scripts to the build directory, i.e 41 # build CLUSTERING. This is so that we can run 42 # it relies on these scripts being in the curr 43 # 44 set(EXAMPLECLUSTERING_SCRIPTS 45 gui.mac 46 vis.mac 47 run.in 48 runOneEvent.in 49 ) 50 51 foreach(_script ${EXAMPLECLUSTERING_SCRIPTS}) 52 configure_file( 53 ${PROJECT_SOURCE_DIR}/${_script} 54 ${PROJECT_BINARY_DIR}/${_script} 55 COPYONLY 56 ) 57 endforeach() 58 59 #--------------------------------------------- 60 # Install the executable to 'bin' directory un 61 # 62 install(TARGETS clustering DESTINATION bin)