Geant4 Cross Reference |
1 # - G4globman module build definition 1 # - G4globman module build definition 2 2 3 # - Configure header for preprocessor symbols 3 # - Configure header for preprocessor symbols 4 # Convert CMake variables -> #cmakedefine symb 4 # Convert CMake variables -> #cmakedefine symbols 5 set(G4MULTITHREADED ${GEANT4_BUILD_MULTITHREAD 5 set(G4MULTITHREADED ${GEANT4_BUILD_MULTITHREADED}) 6 set(G4_STORE_TRAJECTORY ${GEANT4_BUILD_STORE_T 6 set(G4_STORE_TRAJECTORY ${GEANT4_BUILD_STORE_TRAJECTORY}) 7 set(G4VERBOSE ${GEANT4_BUILD_VERBOSE_CODE}) 7 set(G4VERBOSE ${GEANT4_BUILD_VERBOSE_CODE}) 8 8 9 configure_file(${CMAKE_CURRENT_LIST_DIR}/inclu 9 configure_file(${CMAKE_CURRENT_LIST_DIR}/include/G4GlobalConfig.hh.in 10 ${CMAKE_CURRENT_BINARY_DIR}/include/G4Global 10 ${CMAKE_CURRENT_BINARY_DIR}/include/G4GlobalConfig.hh) 11 11 12 geant4_get_datasetnames(GEANT4_DATASETS) 12 geant4_get_datasetnames(GEANT4_DATASETS) 13 foreach(_ds ${GEANT4_DATASETS}) 13 foreach(_ds ${GEANT4_DATASETS}) 14 geant4_get_dataset_property(${_ds} ENVVAR ${ 14 geant4_get_dataset_property(${_ds} ENVVAR ${_ds}_ENVVAR) 15 geant4_get_dataset_property(${_ds} DIRECTORY 15 geant4_get_dataset_property(${_ds} DIRECTORY ${_ds}_DIR) 16 set(GEANT4_DATASET_LIST 16 set(GEANT4_DATASET_LIST 17 "${GEANT4_DATASET_LIST}\n{ \"${${_ds}_ENVV 17 "${GEANT4_DATASET_LIST}\n{ \"${${_ds}_ENVVAR}\", \"${${_ds}_DIR}\" },") 18 endforeach() 18 endforeach() 19 19 20 configure_file(${CMAKE_CURRENT_LIST_DIR}/inclu 20 configure_file(${CMAKE_CURRENT_LIST_DIR}/include/G4FindDataDir.hh.in 21 ${CMAKE_CURRENT_BINARY_DIR}/include/G4FindDa 21 ${CMAKE_CURRENT_BINARY_DIR}/include/G4FindDataDir.hh) 22 22 23 # 23 # 24 # Define the Geant4 Module. 24 # Define the Geant4 Module. 25 # 25 # 26 geant4_add_module(G4globman 26 geant4_add_module(G4globman 27 PUBLIC_HEADERS 27 PUBLIC_HEADERS 28 ${CMAKE_CURRENT_BINARY_DIR}/include/G4Glob 28 ${CMAKE_CURRENT_BINARY_DIR}/include/G4GlobalConfig.hh 29 G4Allocator.hh 29 G4Allocator.hh 30 G4AllocatorList.hh 30 G4AllocatorList.hh 31 G4AllocatorPool.hh 31 G4AllocatorPool.hh 32 G4ApplicationState.hh 32 G4ApplicationState.hh 33 G4AutoDelete.hh 33 G4AutoDelete.hh 34 G4AutoLock.hh 34 G4AutoLock.hh 35 G4Backtrace.hh 35 G4Backtrace.hh 36 G4BuffercoutDestination.hh 36 G4BuffercoutDestination.hh 37 G4CacheDetails.hh 37 G4CacheDetails.hh 38 G4Cache.hh 38 G4Cache.hh 39 G4coutDestination.hh 39 G4coutDestination.hh 40 G4coutFormatters.hh 40 G4coutFormatters.hh 41 G4DataVector.hh 41 G4DataVector.hh 42 G4DataVector.icc 42 G4DataVector.icc 43 G4EnvironmentUtils.hh 43 G4EnvironmentUtils.hh 44 G4ErrorPropagatorData.hh 44 G4ErrorPropagatorData.hh 45 G4ErrorPropagatorData.icc 45 G4ErrorPropagatorData.icc 46 G4Evaluator.hh 46 G4Evaluator.hh 47 G4Exception.hh 47 G4Exception.hh 48 G4ExceptionSeverity.hh 48 G4ExceptionSeverity.hh 49 G4Exp.hh 49 G4Exp.hh 50 G4FastVector.hh 50 G4FastVector.hh 51 G4FilecoutDestination.hh 51 G4FilecoutDestination.hh 52 G4Filesystem.hh 52 G4Filesystem.hh 53 G4FPEDetection.hh 53 G4FPEDetection.hh 54 G4GeometryTolerance.hh 54 G4GeometryTolerance.hh 55 G4GlobalConfig.hh.in 55 G4GlobalConfig.hh.in 56 G4ios.hh 56 G4ios.hh 57 G4LockcoutDestination.hh 57 G4LockcoutDestination.hh 58 G4Log.hh 58 G4Log.hh 59 G4MasterForwardcoutDestination.hh 59 G4MasterForwardcoutDestination.hh 60 G4MTBarrier.hh 60 G4MTBarrier.hh 61 G4MTcoutDestination.hh 61 G4MTcoutDestination.hh 62 G4MulticoutDestination.hh 62 G4MulticoutDestination.hh 63 G4OrderedTable.hh 63 G4OrderedTable.hh 64 G4PhysicalConstants.hh 64 G4PhysicalConstants.hh 65 G4Physics2DVector.hh 65 G4Physics2DVector.hh 66 G4Physics2DVector.icc 66 G4Physics2DVector.icc 67 G4PhysicsFreeVector.hh 67 G4PhysicsFreeVector.hh 68 G4PhysicsLinearVector.hh 68 G4PhysicsLinearVector.hh 69 G4PhysicsLogVector.hh 69 G4PhysicsLogVector.hh 70 G4PhysicsModelCatalog.hh 70 G4PhysicsModelCatalog.hh 71 G4PhysicsOrderedFreeVector.hh 71 G4PhysicsOrderedFreeVector.hh 72 G4PhysicsTable.hh 72 G4PhysicsTable.hh 73 G4PhysicsTable.icc 73 G4PhysicsTable.icc 74 G4PhysicsVector.hh 74 G4PhysicsVector.hh 75 G4PhysicsVector.icc 75 G4PhysicsVector.icc 76 G4PhysicsVectorType.hh 76 G4PhysicsVectorType.hh 77 G4Pow.hh 77 G4Pow.hh >> 78 G4Profiler.hh >> 79 G4Profiler.icc 78 G4ReferenceCountedHandle.hh 80 G4ReferenceCountedHandle.hh 79 G4RotationMatrix.hh 81 G4RotationMatrix.hh 80 G4SliceTimer.hh 82 G4SliceTimer.hh 81 G4SliceTimer.icc 83 G4SliceTimer.icc 82 G4StateManager.hh 84 G4StateManager.hh 83 G4StateManager.icc 85 G4StateManager.icc 84 G4String.hh 86 G4String.hh 85 G4String.icc 87 G4String.icc 86 G4SystemOfUnits.hh 88 G4SystemOfUnits.hh 87 G4TaskGroup.hh 89 G4TaskGroup.hh 88 G4Task.hh 90 G4Task.hh 89 G4TaskManager.hh 91 G4TaskManager.hh 90 G4TaskSingletonDelegator.hh 92 G4TaskSingletonDelegator.hh 91 G4TBBTaskGroup.hh 93 G4TBBTaskGroup.hh 92 G4ThreadData.hh 94 G4ThreadData.hh 93 G4Threading.hh 95 G4Threading.hh 94 G4ThreadLocalSingleton.hh 96 G4ThreadLocalSingleton.hh 95 G4ThreadPool.hh 97 G4ThreadPool.hh 96 G4ThreeVector.hh 98 G4ThreeVector.hh >> 99 G4TiMemory.hh 97 G4Timer.hh 100 G4Timer.hh 98 G4Timer.icc 101 G4Timer.icc 99 G4Tokenizer.hh 102 G4Tokenizer.hh 100 G4TWorkspacePool.hh 103 G4TWorkspacePool.hh 101 G4TwoVector.hh 104 G4TwoVector.hh 102 G4Types.hh 105 G4Types.hh 103 G4UnitsTable.hh 106 G4UnitsTable.hh 104 G4UnitsTable.icc 107 G4UnitsTable.icc 105 G4UserLimits.hh 108 G4UserLimits.hh 106 G4UserLimits.icc 109 G4UserLimits.icc 107 G4UserTaskQueue.hh 110 G4UserTaskQueue.hh 108 G4Version.hh 111 G4Version.hh 109 G4VExceptionHandler.hh 112 G4VExceptionHandler.hh 110 G4VNotifier.hh 113 G4VNotifier.hh 111 G4VStateDependent.hh 114 G4VStateDependent.hh 112 G4VTask.hh 115 G4VTask.hh 113 G4VUserTaskQueue.hh 116 G4VUserTaskQueue.hh 114 globals.hh 117 globals.hh 115 templates.hh 118 templates.hh 116 tls.hh 119 tls.hh 117 windefs.hh 120 windefs.hh 118 SOURCES 121 SOURCES 119 G4Allocator.cc 122 G4Allocator.cc 120 G4AllocatorPool.cc 123 G4AllocatorPool.cc 121 G4AllocatorList.cc 124 G4AllocatorList.cc 122 G4BuffercoutDestination.cc 125 G4BuffercoutDestination.cc 123 G4CacheDetails.cc 126 G4CacheDetails.cc 124 G4coutDestination.cc 127 G4coutDestination.cc 125 G4coutFormatters.cc 128 G4coutFormatters.cc 126 G4DataVector.cc 129 G4DataVector.cc 127 G4ErrorPropagatorData.cc 130 G4ErrorPropagatorData.cc 128 G4Exception.cc 131 G4Exception.cc 129 G4FilecoutDestination.cc 132 G4FilecoutDestination.cc 130 G4FindDataDir.cc 133 G4FindDataDir.cc 131 G4GeometryTolerance.cc 134 G4GeometryTolerance.cc 132 G4ios.cc 135 G4ios.cc 133 G4LockcoutDestination.cc 136 G4LockcoutDestination.cc 134 G4MasterForwardcoutDestination.cc 137 G4MasterForwardcoutDestination.cc 135 G4MTBarrier.cc 138 G4MTBarrier.cc 136 G4MTcoutDestination.cc 139 G4MTcoutDestination.cc 137 G4OrderedTable.cc 140 G4OrderedTable.cc 138 G4PhysicsFreeVector.cc 141 G4PhysicsFreeVector.cc 139 G4PhysicsLinearVector.cc 142 G4PhysicsLinearVector.cc 140 G4PhysicsLogVector.cc 143 G4PhysicsLogVector.cc 141 G4PhysicsModelCatalog.cc 144 G4PhysicsModelCatalog.cc 142 G4PhysicsTable.cc 145 G4PhysicsTable.cc 143 G4PhysicsVector.cc 146 G4PhysicsVector.cc 144 G4Physics2DVector.cc 147 G4Physics2DVector.cc 145 G4Pow.cc 148 G4Pow.cc >> 149 G4Profiler.cc 146 G4ReferenceCountedHandle.cc 150 G4ReferenceCountedHandle.cc 147 G4SliceTimer.cc 151 G4SliceTimer.cc 148 G4StateManager.cc 152 G4StateManager.cc 149 G4ThreadLocalSingleton.cc 153 G4ThreadLocalSingleton.cc 150 G4Threading.cc 154 G4Threading.cc 151 G4Timer.cc 155 G4Timer.cc 152 G4UnitsTable.cc 156 G4UnitsTable.cc 153 G4VExceptionHandler.cc 157 G4VExceptionHandler.cc 154 G4VStateDependent.cc) 158 G4VStateDependent.cc) 155 159 156 # - Add path to generated header 160 # - Add path to generated header 157 geant4_module_include_directories(G4globman 161 geant4_module_include_directories(G4globman 158 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BIN 162 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include>) 159 163 160 geant4_module_link_libraries(G4globman 164 geant4_module_link_libraries(G4globman 161 PUBLIC 165 PUBLIC 162 ${CLHEP_LIBRARIES} 166 ${CLHEP_LIBRARIES} >> 167 ${timemory_LIBRARIES} 163 ${PTL_LIBRARIES} 168 ${PTL_LIBRARIES} 164 ${GEANT4_CXX_FILESYSTEM_LIBRARY} # to temp 169 ${GEANT4_CXX_FILESYSTEM_LIBRARY} # to temporarily support libstdc++fs, libc++fs 165 ) 170 ) 166 171 167 # TEMP WORKAROUND: When building/testing examp 172 # TEMP WORKAROUND: When building/testing examples uing ROOT, ROOT's 168 # dictionary generation is not smart enough to 173 # dictionary generation is not smart enough to handle target usage 169 # requirements for include paths. Explicitly a 174 # requirements for include paths. Explicitly add the path to the 170 # generated header into build time include pat 175 # generated header into build time include paths... 171 # We eventually want to do this through "..._i 176 # We eventually want to do this through "..._include_directories" or to 172 # remove entirely and require a min version of 177 # remove entirely and require a min version of ROOT 173 set_property(GLOBAL APPEND 178 set_property(GLOBAL APPEND 174 PROPERTY GEANT4_BUILDTREE_INCLUDE_DIRS "${CM 179 PROPERTY GEANT4_BUILDTREE_INCLUDE_DIRS "${CMAKE_CURRENT_BINARY_DIR}/include")