Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/extended/medical/dna/wholeNuclearDNA/CMakeLists.txt

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 ]

  1 #----------------------------------------------------------------------------
  2 # Setup the project
  3 cmake_minimum_required(VERSION 3.16...3.27)
  4 project(wholeNuclearDNA)
  5 
  6 #----------------------------------------------------------------------------
  7 # Find Geant4 package, activating all available UI and Vis drivers by default
  8 # You can set WITH_GEANT4_UIVIS to OFF via the command line or ccmake/cmake-gui
  9 # to build a batch mode only executable
 10 #
 11 option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON)
 12 if(WITH_GEANT4_UIVIS)
 13   find_package(Geant4 REQUIRED ui_all vis_all)
 14 else()
 15   find_package(Geant4 REQUIRED)
 16 endif()
 17 
 18 #----------------------------------------------------------------------------
 19 # Setup Geant4 include directories and compile definitions
 20 #
 21 include(${Geant4_USE_FILE})
 22 
 23 #----------------------------------------------------------------------------
 24 # Locate sources and headers for this project
 25 #
 26 include_directories(${PROJECT_SOURCE_DIR}/include 
 27                     ${Geant4_INCLUDE_DIR})
 28 file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc)
 29 file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh)
 30 
 31 #----------------------------------------------------------------------------
 32 # Add the executable, and link it to the Geant4 libraries
 33 #
 34 
 35 add_executable(${PROJECT_NAME} ${PROJECT_NAME}.cc ${sources} ${headers})
 36 target_link_libraries(${PROJECT_NAME} ${Geant4_LIBRARIES} )
 37 
 38 #----------------------------------------------------------------------------
 39 # Copy all scripts to the build directory, i.e. the directory in which we
 40 # build microdosimetry. This is so that we can run the executable directly because it
 41 # relies on these scripts being in the current working directory.
 42 #
 43 set(dnageometry_SCRIPTS
 44     wholenucleardna.in 
 45     vis.mac 
 46     chromo1.dat 
 47     chromo2.dat 
 48     chromo3.dat 
 49     chromo4.dat 
 50     chromo5.dat 
 51     chromo6.dat 
 52     chromo7.dat 
 53     chromo8.dat 
 54     chromo9.dat 
 55     chromo10.dat 
 56     chromo11.dat 
 57     chromo12.dat 
 58     chromo13.dat 
 59     chromo14.dat 
 60     chromo15.dat 
 61     chromo16.dat 
 62     chromo17.dat 
 63     chromo18.dat 
 64     chromo19.dat 
 65     chromo20.dat 
 66     chromo21.dat 
 67     chromo22.dat 
 68     chromoX.dat 
 69     chromoY.dat 
 70   )
 71 
 72 file(GLOB SCRIPTS ${PROJECT_SOURCE_DIR}/*.mac 
 73                   ${PROJECT_SOURCE_DIR}/*.in
 74                   ${PROJECT_SOURCE_DIR}/*.dat
 75                   ${PROJECT_SOURCE_DIR}/*.C 
 76                     )
 77 
 78 foreach(_script ${SCRIPTS})
 79   configure_file(
 80     ${_script}
 81     ${PROJECT_BINARY_DIR}/.
 82     COPYONLY
 83     )
 84 endforeach()
 85 
 86 #----------------------------------------------------------------------------
 87 # Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX
 88 #
 89 install(TARGETS ${PROJECT_NAME} DESTINATION bin)
 90