Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/global/management/sources.cmake

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