36 lines
1.2 KiB
CMake
36 lines
1.2 KiB
CMake
# - Function to build the C++ modules
|
|
function(g4pytest_add_module _TARGET)
|
|
g4py_add_module(${_TARGET} ${ARGN})
|
|
|
|
# Filthy temp hack for submodule paths....
|
|
string(REGEX REPLACE "^_" "" _SUBMODULE "${_TARGET}")
|
|
set_property(TARGET ${_TARGET} APPEND_STRING PROPERTY LIBRARY_OUTPUT_DIRECTORY "/g4pytest/${_SUBMODULE}")
|
|
foreach(_conftype ${CMAKE_CONFIGURATION_TYPES})
|
|
string(TOUPPER ${_conftype} _conftype_uppercase)
|
|
set_property(TARGET ${_TARGET} APPEND_STRING PROPERTY LIBRARY_OUTPUT_DIRECTORY_${_conftype_uppercase} "/g4pytest/${_SUBMODULE}")
|
|
endforeach()
|
|
endfunction()
|
|
|
|
|
|
# - add libs components
|
|
add_subdirectory(ExN01geom)
|
|
add_subdirectory(ExN03geom)
|
|
add_subdirectory(Qgeom)
|
|
add_subdirectory(ezgeom)
|
|
add_subdirectory(NISTmaterials)
|
|
add_subdirectory(Qmaterials)
|
|
add_subdirectory(EMSTDpl)
|
|
add_subdirectory(ExN01pl)
|
|
add_subdirectory(MedicalBeam)
|
|
add_subdirectory(ParticleGun)
|
|
# Remainder are pure python
|
|
|
|
# Copy/configure pure python components
|
|
file(GLOB_RECURSE PY_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.py)
|
|
foreach(_pyfile ${PY_FILES})
|
|
file(GENERATE
|
|
OUTPUT ${GEANT4_PYTHON_OUTPUT_DIR}/g4pytest/${_pyfile}
|
|
INPUT ${CMAKE_CURRENT_SOURCE_DIR}/${_pyfile}
|
|
)
|
|
endforeach()
|