Geant4 Cross Reference |
1 #---------------------------------------------------------------------------- 2 # Setup the project 3 cmake_minimum_required(VERSION 3.16...3.27) 4 project(example_MyPythia) 5 6 find_package(Geant4 REQUIRED) 7 include(${Geant4_USE_FILE}) 8 9 #---------------------------------------------------------------------------- 10 # Find HepMC (required package) 11 # 12 find_package(HepMC QUIET) 13 if(NOT HEPMC_FOUND) 14 message(STATUS "G4 Examples: HepMC package not found. --> example_MyPythia disabled") 15 return() 16 endif() 17 18 #---------------------------------------------------------------------------- 19 # Find Pythia6 (optional package) 20 # 21 find_package(Pythia6 QUIET) 22 if(Pythia6_FOUND) 23 message(STATUS "G4 Examples: Pythia6 found. --> example_MyPythia with Pythia6 enabled.") 24 endif() 25 26 #---------------------------------------------------------------------------- 27 # Add the executable, and link it to the Geant4 libraries 28 # 29 include_directories(${HEPMC_INCLUDE_DIR}) 30 add_executable(example_MyPythia example_MyPythia.cxx) 31 target_compile_definitions(example_MyPythia PRIVATE $<$<BOOL:${Pythia6_FOUND}>:G4LIB_USE_PYTHIA>) 32 target_link_libraries(example_MyPythia 33 ${HEPMC_LIBRARIES} ${HEPMC_FIO_LIBRARIES} 34 ${Pythia6_LIBRARIES} 35 $<$<BOOL:${Pythia6_FOUND}>:Pythia6::Pythia6> 36 gfortran) 37 38 # if pythia is compiled with g77, link with -lg2c instead. 39 #target_link_libraries(example_MyPythia 40 # ${HEPMC_LIBRARIES} ${HEPMC_FIO_LIBRARIES} 41 # ${Pythia6_LIBRARIES} g2c) 42 43 #---------------------------------------------------------------------------- 44 # Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX 45 # 46 install(TARGETS example_MyPythia DESTINATION bin) 47