Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/extended/eventgenerator/HepMC/HepMCEx01/data/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(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