diff --git a/CMakeLists.txt b/CMakeLists.txt index 71c021c141adc043c5e4e60daa4047580112d95b..199e75208ef96eb7bc05442d36fb30ab57883694 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,17 +1,5 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.5) -set(Geant4_version 4.9.6.p04) - -if(DEFINED ENV{G4_NATIVE_VERSION}) - # Override the version of Geant4 from the variable - set(Geant4_version $ENV{G4_NATIVE_VERSION}) - if(NOT Geant4_version MATCHES "^4\\.") - # G4_NATIVE_VERSION might not contain the initial '4.' that we need - # see https://its.cern.ch/jira/browse/LHCBGAUSS-43 - set(Geant4_version 4.${Geant4_version}) - endif() -endif() - find_package(GaudiProject) gaudi_project(Geant4 v96r4p3 DATA Geant4Files VERSION v96r*) diff --git a/Geant4/G4config/CMakeLists.txt b/Geant4/G4config/CMakeLists.txt index c70c6d32c0800211ffc8ba00efc68f273a66449b..3107b524911f9eb46bf22492b92099b1aedd63d7 100644 --- a/Geant4/G4config/CMakeLists.txt +++ b/Geant4/G4config/CMakeLists.txt @@ -21,11 +21,22 @@ else() set(G4DATA ../share) endif() +if(DEFINED ENV{G4_NATIVE_VERSION}) + set(Geant4_tag $ENV{G4_NATIVE_VERSION}) + if(NOT Geant4_tag MATCHES "^4\\.") + # G4_NATIVE_VERSION might not contain the initial '4.' that we need + # see https://its.cern.ch/jira/browse/LHCBGAUSS-43 + set(Geant4_tag 4.${Geant4_version}) + endif() +else() + set(Geant4_tag ${CMAKE_PROJECT_VERSION}) +endif() + include(ExternalProject) ExternalProject_Add(Geant4 - URL http://geant4.cern.ch/support/source/geant${Geant4_version}.tar.gz - PATCH_COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/patches/patch_g4_sources.py ${CMAKE_SOURCE_DIR} ${Geant4_version} + GIT_REPOSITORY https://gitlab.cern.ch/lhcb/Geant4-srcs.git + GIT_TAG ${Geant4_tag} CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_SOURCE_DIR}/toolchain.cmake -DGEANT4_BUILD_CXXSTD=${GAUDI_CXX_STANDARD} -DGEANT4_INSTALL_DATA=OFF diff --git a/Geant4/G4config/patches/cmake/Modules/FindCLHEP.cmake b/Geant4/G4config/patches/cmake/Modules/FindCLHEP.cmake deleted file mode 100644 index 24587768abe70aab819934732b8aa333581bfaae..0000000000000000000000000000000000000000 --- a/Geant4/G4config/patches/cmake/Modules/FindCLHEP.cmake +++ /dev/null @@ -1,56 +0,0 @@ -# - Try to find CLHEP -# Defines: -# -# CLHEP_FOUND -# CLHEP_VERSION -# CLHEP_INCLUDE_DIR -# CLHEP_INCLUDE_DIRS (not cached) -# CLHEP_<component>_LIBRARY -# CLHEP_<component>_FOUND -# CLHEP_LIBRARIES (not cached) -# CLHEP_LIBRARY_DIRS (not cached) -# -# Note: version detection inspired by FindBoost.cmake - -find_path(CLHEP_INCLUDE_DIR CLHEP/ClhepVersion.h - HINTS $ENV{CLHEP_ROOT_DIR}/include ${CLHEP_ROOT_DIR}/include) -if(CLHEP_INCLUDE_DIR) - if(NOT DEFINED CLHEP_VERSION) - file(READ "${CLHEP_INCLUDE_DIR}/CLHEP/ClhepVersion.h" _CLHEP_VERSION_H_CONTENTS) - string(REGEX REPLACE ".*static std::string String\\(\\)[^\"]*return \"([^\"]*)\".*" "\\1" CLHEP_VERSION "${_CLHEP_VERSION_H_CONTENTS}") - set(CLHEP_VERSION ${CLHEP_VERSION} CACHE INTERNAL "Detected version of CLHEP") - message(STATUS "CLHEP version: ${CLHEP_VERSION}") - endif() -endif() - -set(_CLHEP_COMPONENTS Cast Evaluator Exceptions GenericFunctions Geometry Random RandomObjects RefCount Vector Matrix) -foreach(component ${_CLHEP_COMPONENTS}) - find_library(CLHEP_${component}_LIBRARY NAMES CLHEP-${component}-${CLHEP_VERSION} - HINTS $ENV{CLHEP_ROOT_DIR}/lib ${CLHEP_ROOT_DIR}/lib) - if (CLHEP_${component}_LIBRARY) - set(CLHEP_${component}_FOUND 1) - list(APPEND CLHEP_LIBRARIES ${CLHEP_${component}_LIBRARY}) - - get_filename_component(libdir ${CLHEP_${component}_LIBRARY} PATH) - list(APPEND CLHEP_LIBRARY_DIRS ${libdir}) - else() - set(CLHEP_${component}_FOUND 0) - endif() - mark_as_advanced(CLHEP_${component}_LIBRARY) -endforeach() - -if(CLHEP_LIBRARY_DIRS) - list(REMOVE_DUPLICATES CLHEP_LIBRARY_DIRS) -endif() - -set(CLHEP_INCLUDE_DIRS ${CLHEP_INCLUDE_DIR}) - -# handle the QUIETLY and REQUIRED arguments and set CLHEP_FOUND to TRUE if -# all listed variables are TRUE -INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(CLHEP DEFAULT_MSG CLHEP_INCLUDE_DIR CLHEP_LIBRARIES) - -mark_as_advanced(CLHEP_FOUND CLHEP_INCLUDE_DIR) - -# Hack for Geeant4 compatibility (we choose a random library) -set(CLHEP_LIBRARY ${CLHEP_Random_LIBRARY}) diff --git a/Geant4/G4config/patches/geant4.cmake.patch b/Geant4/G4config/patches/geant4.cmake.patch deleted file mode 100644 index 6f575a6960695f43356d6bfbbe387338b74b5890..0000000000000000000000000000000000000000 --- a/Geant4/G4config/patches/geant4.cmake.patch +++ /dev/null @@ -1,789 +0,0 @@ -diff -urN a/geant4.9.6.p04/cmake/Modules/Geant4BuildProjectConfig.cmake b/geant4.9.6.p04/cmake/Modules/Geant4BuildProjectConfig.cmake ---- a/geant4.9.6.p04/cmake/Modules/Geant4BuildProjectConfig.cmake 2015-02-04 09:53:22.000000000 +0100 -+++ b/geant4.9.6.p04/cmake/Modules/Geant4BuildProjectConfig.cmake 2015-09-09 17:03:22.291420708 +0200 -@@ -173,13 +173,13 @@ - # Use ABSOLUTE paths... - set(GEANT4_INCLUDE_DIR_SETUP " - # Geant4 configured for the install tree with absolute paths, so use these --set(Geant4_INCLUDE_DIR \"${CMAKE_INSTALL_FULL_INCLUDEDIR}/Geant4\") -+set(Geant4_INCLUDE_DIR \"${CMAKE_INSTALL_FULL_INCLUDEDIR}\") - ") - else() - # Use RELATIVE paths... Where we measure relative to GEANT4_CMAKE_DIR - file(RELATIVE_PATH GEANT4_RELATIVE_HEADER_PATH - ${CMAKE_INSTALL_PREFIX}/${GEANT4_CMAKE_DIR} -- ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} -+ ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR} - ) - - set(GEANT4_INCLUDE_DIR_SETUP " -diff -urN a/geant4.9.6.p04/cmake/Modules/Geant4ConfigureConfigScript.cmake b/geant4.9.6.p04/cmake/Modules/Geant4ConfigureConfigScript.cmake ---- a/geant4.9.6.p04/cmake/Modules/Geant4ConfigureConfigScript.cmake 2015-02-04 09:53:22.000000000 +0100 -+++ b/geant4.9.6.p04/cmake/Modules/Geant4ConfigureConfigScript.cmake 2015-09-09 17:03:22.291420708 +0200 -@@ -230,7 +230,7 @@ - set(GEANT4_CONFIG_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - set(GEANT4_CONFIG_INSTALL_EXECPREFIX \"\") - set(GEANT4_CONFIG_LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}") -- set(GEANT4_CONFIG_INCLUDE_DIRS "${CMAKE_INSTALL_FULL_INCLUDEDIR}/Geant4") -+ set(GEANT4_CONFIG_INCLUDE_DIRS "${CMAKE_INSTALL_FULL_INCLUDEDIR}") - else() - # Calculate base of self contained install based on relative path from - # CMAKE_INSTALL_FULL_BINDIR to CMAKE_INSTALL_PREFIX. -@@ -241,7 +241,7 @@ - set(GEANT4_CONFIG_INSTALL_PREFIX "$scriptloc/${_bin_to_prefix}") - set(GEANT4_CONFIG_INSTALL_EXECPREFIX \"\") - set(GEANT4_CONFIG_LIBDIR "\${prefix}/${CMAKE_INSTALL_LIBDIR}") -- set(GEANT4_CONFIG_INCLUDE_DIRS "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}/Geant4") -+ set(GEANT4_CONFIG_INCLUDE_DIRS "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}") - endif() - - # Configure the install tree script -diff -urN a/geant4.9.6.p04/cmake/Modules/Geant4MacroLibraryTargets.cmake b/geant4.9.6.p04/cmake/Modules/Geant4MacroLibraryTargets.cmake ---- a/geant4.9.6.p04/cmake/Modules/Geant4MacroLibraryTargets.cmake 2015-02-04 09:53:22.000000000 +0100 -+++ b/geant4.9.6.p04/cmake/Modules/Geant4MacroLibraryTargets.cmake 2015-09-09 17:03:22.292420731 +0200 -@@ -166,7 +166,7 @@ - - # Header install? - install(FILES ${${G4MODULENAME}_HEADERS} -- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} - COMPONENT Development) - - # Store the include path of the component so that the build tree -@@ -202,7 +202,7 @@ - - # Header install? - install(FILES ${${G4MODULENAME}_HEADERS} -- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} - COMPONENT Development) - - # Store the include path of the component so that the build tree -@@ -266,7 +266,7 @@ - - # Header install? - install(FILES ${${G4GLOBLIB_NAME}_GLOBAL_HEADERS} -- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} - COMPONENT Development) - - # Store the include path of the component so that the build tree -diff -urN a/geant4.9.6.p04/cmake/Modules/Geant4MakeRules_cxx.cmake b/geant4.9.6.p04/cmake/Modules/Geant4MakeRules_cxx.cmake ---- a/geant4.9.6.p04/cmake/Modules/Geant4MakeRules_cxx.cmake 2015-02-04 09:53:22.000000000 +0100 -+++ b/geant4.9.6.p04/cmake/Modules/Geant4MakeRules_cxx.cmake 2015-09-09 17:03:22.297420846 +0200 -@@ -240,3 +240,73 @@ - # - CMake may do a reasonable job on its own here... - endif() - -+# Support for distcc, ccache and custom launch rules -+find_program(ccache_cmd NAMES ccache ccache-swig) -+find_program(distcc_cmd distcc) -+mark_as_advanced(ccache_cmd distcc_cmd) -+ -+if(ccache_cmd) -+ option(CMAKE_USE_CCACHE "Use ccache to speed up compilation." OFF) -+ if(CMAKE_USE_CCACHE) -+ set(GAUDI_RULE_LAUNCH_COMPILE "${GAUDI_RULE_LAUNCH_COMPILE} ${ccache_cmd}") -+ message(STATUS "Using ccache for building") -+ endif() -+endif() -+ -+if(distcc_cmd) -+ option(CMAKE_USE_DISTCC "Use distcc to speed up compilation." OFF) -+ if(CMAKE_USE_DISTCC) -+ if(CMAKE_USE_CCACHE) -+ set(GAUDI_RULE_LAUNCH_COMPILE "${GAUDI_RULE_LAUNCH_COMPILE} CCACHE_PREFIX=${distcc_cmd} ${ccache_cmd}") -+ message(STATUS "Enabling distcc builds in ccache") -+ else() -+ set(GAUDI_RULE_LAUNCH_COMPILE "${GAUDI_RULE_LAUNCH_COMPILE} ${distcc_cmd}") -+ message(STATUS "Using distcc for building") -+ endif() -+ endif() -+endif() -+ -+option(GAUDI_USE_CTEST_LAUNCHERS "Use CTest launchers to record details about warnings and errors." OFF) -+if(GAUDI_USE_CTEST_LAUNCHERS) -+ file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/launch_logs) -+ -+ # Code copied and adapted from the CTestUseLaunchers.cmake module -+ set(__launch_common_options -+ "--target-name <TARGET_NAME> --build-dir <CMAKE_CURRENT_BINARY_DIR>") -+ -+ set(__launch_compile_options -+ "${__launch_common_options} --output <OBJECT> --source <SOURCE> --language <LANGUAGE>") -+ -+ set(__launch_link_options -+ "${__launch_common_options} --output <TARGET> --target-type <TARGET_TYPE> --language <LANGUAGE>") -+ -+ set(__launch_custom_options -+ "${__launch_common_options} --output <OUTPUT>") -+ -+ if("${CMAKE_GENERATOR}" MATCHES "Ninja" AND NOT CMAKE_VERSION VERSION_LESS 3.0) -+ # this make sense only with CMamke >= 3.0 -+ set(__launch_compile_options "${__launch_compile_options} --filter-prefix <CMAKE_CL_SHOWINCLUDES_PREFIX>") -+ endif() -+ -+ set(GAUDI_RULE_LAUNCH_COMPILE -+ "CTEST_LAUNCH_LOGS=${CMAKE_BINARY_DIR}/launch_logs \"${CMAKE_CTEST_COMMAND}\" --launch ${__launch_compile_options} -- ${GAUDI_RULE_LAUNCH_COMPILE}") -+ -+ set(GAUDI_RULE_LAUNCH_LINK -+ "CTEST_LAUNCH_LOGS=${CMAKE_BINARY_DIR}/launch_logs \"${CMAKE_CTEST_COMMAND}\" --launch ${__launch_link_options} -- ${GAUDI_RULE_LAUNCH_LINK}") -+ -+ set(GAUDI_RULE_LAUNCH_CUSTOM -+ "CTEST_LAUNCH_LOGS=${CMAKE_BINARY_DIR}/launch_logs \"${CMAKE_CTEST_COMMAND}\" --launch ${__launch_custom_options} -- ${GAUDI_RULE_LAUNCH_CUSTOM}") -+ -+ if("${CMAKE_GENERATOR}" MATCHES "Make") -+ set(GAUDI_RULE_LAUNCH_LINK "env ${GAUDI_RULE_LAUNCH_LINK}") -+ endif() -+endif() -+ -+# apply launch rules -+foreach(_rule COMPILE LINK CUSTOM) -+ if(GAUDI_RULE_LAUNCH_${_rule}) -+ string(STRIP "${GAUDI_RULE_LAUNCH_${_rule}}" GAUDI_RULE_LAUNCH_${_rule}) -+ set_property(GLOBAL PROPERTY RULE_LAUNCH_${_rule} "${GAUDI_RULE_LAUNCH_${_rule}}") -+ message(STATUS "Prefix ${_rule} commands with '${GAUDI_RULE_LAUNCH_${_rule}}'") -+ endif() -+endforeach() -diff -urN a/geant4.9.6.p04/cmake/Modules/Geant4OptionalComponents.cmake b/geant4.9.6.p04/cmake/Modules/Geant4OptionalComponents.cmake ---- a/geant4.9.6.p04/cmake/Modules/Geant4OptionalComponents.cmake 2015-02-04 09:53:22.000000000 +0100 -+++ b/geant4.9.6.p04/cmake/Modules/Geant4OptionalComponents.cmake 2015-09-09 17:03:22.297420846 +0200 -@@ -34,7 +34,7 @@ - if(GEANT4_USE_SYSTEM_CLHEP) - # We keep this as required, because if the user chooses to use a - # system option we assume that we absolutely, positively require this. -- find_package(CLHEP 2.1.2.3 REQUIRED) -+ find_package(CLHEP REQUIRED) - set(GEANT4_USE_SYSTEM_CLHEP TRUE) - else() - set(CLHEP_FOUND TRUE) -diff -urN a/geant4.9.6.p04/cmake/Modules/Geant4ToolchainBackwardCompatibility.cmake b/geant4.9.6.p04/cmake/Modules/Geant4ToolchainBackwardCompatibility.cmake ---- a/geant4.9.6.p04/cmake/Modules/Geant4ToolchainBackwardCompatibility.cmake 2015-02-04 09:53:22.000000000 +0100 -+++ b/geant4.9.6.p04/cmake/Modules/Geant4ToolchainBackwardCompatibility.cmake 2015-09-09 17:03:22.297420846 +0200 -@@ -531,7 +531,7 @@ - # If we are relocatable, then the structure we will have is - # +- CMAKE_INSTALL_PREFIX - # +- LIBDIR/Geant4-VERSION (G4LIB) --# +- INCLUDEDIR/Geant4 (G4INCLUDE) -+# +- INCLUDEDIR (G4INCLUDE) - # +- DATAROOTDIR/Geant4-VERSION/ - # +- geant4make (G4INSTALL!) - # +- geant4make.(c)sh -@@ -546,7 +546,7 @@ - file(RELATIVE_PATH - G4MAKE_TO_INCLUDEDIR - ${CMAKE_INSTALL_FULL_DATAROOTDIR}/Geant4-${Geant4_VERSION}/geant4make -- ${CMAKE_INSTALL_FULL_INCLUDEDIR}/${PROJECT_NAME} -+ ${CMAKE_INSTALL_FULL_INCLUDEDIR} - ) - set(G4INCLUDE "\"`cd \$geant4make_root/${G4MAKE_TO_INCLUDEDIR} > /dev/null \; pwd`\"") - -diff -urN a/geant4.9.6.p04/cmake/Templates/Geant4Config.cmake.in b/geant4.9.6.p04/cmake/Templates/Geant4Config.cmake.in ---- a/geant4.9.6.p04/cmake/Templates/Geant4Config.cmake.in 2015-02-04 09:53:23.000000000 +0100 -+++ b/geant4.9.6.p04/cmake/Templates/Geant4Config.cmake.in 2015-09-09 16:11:28.000000000 +0200 -@@ -382,8 +382,6 @@ - set(_geant4_internal_libraries - G4Tree${_geant4_lib_use_suffix} - G4FR${_geant4_lib_use_suffix} -- G4GMocren${_geant4_lib_use_suffix} -- G4visHepRep${_geant4_lib_use_suffix} - G4RayTracer${_geant4_lib_use_suffix} - G4VRML${_geant4_lib_use_suffix} - ) -@@ -413,13 +411,15 @@ - list(APPEND _geant4_internal_libraries - G4vis_management${_geant4_lib_use_suffix} - G4modeling${_geant4_lib_use_suffix} -- G4interfaces${_geant4_lib_use_suffix} -+ G4UIGAG${_geant4_lib_use_suffix} -+ G4UIbasic${_geant4_lib_use_suffix} -+ G4UIcommon${_geant4_lib_use_suffix} - G4persistency${_geant4_lib_use_suffix} - ${_geant4_g3tog4_library} - G4analysis${_geant4_lib_use_suffix} -- G4error_propagation${_geant4_lib_use_suffix} - G4readout${_geant4_lib_use_suffix} -- G4physicslists${_geant4_lib_use_suffix} -+ G4physics_lists${_geant4_lib_use_suffix} -+ G4LHCblists${_geant4_lib_use_suffix} - G4run${_geant4_lib_use_suffix} - G4event${_geant4_lib_use_suffix} - G4tracking${_geant4_lib_use_suffix} -diff -urN a/geant4.9.6.p04/CMakeLists.txt b/geant4.9.6.p04/CMakeLists.txt ---- a/geant4.9.6.p04/CMakeLists.txt 2015-02-04 10:03:00.000000000 +0100 -+++ b/geant4.9.6.p04/CMakeLists.txt 2015-09-09 17:03:22.298420869 +0200 -@@ -136,8 +136,8 @@ - # Generate any Use/Config files here once everything else has been processed - # e.g. "UseGeant4.cmake", "Geant4Config.cmake" - library dependencies etc - # --include(Geant4ToolchainBackwardCompatibility) --include(Geant4ConfigureConfigScript) -+#include(Geant4ToolchainBackwardCompatibility) -+#include(Geant4ConfigureConfigScript) - - #---------------------------------------------------------------------------- - # Create the Geant4Config files and supporting modules -@@ -154,10 +154,18 @@ - add_subdirectory(benchmarks) - endif() - endif() --if(GEANT4_BUILD_EXAMPLES) -- set(Geant4_DIR ${CMAKE_BINARY_DIR} CACHE PATH "Current build directory") -- add_subdirectory(examples) --endif() -+ -+# build examples required by LHCb (see LHCBGAUSS-505) -+set(Geant4_DIR ${CMAKE_BINARY_DIR} CACHE PATH "Current build directory") -+option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" OFF) -+set(G4UI_NONE ON CACHE BOOL "disable UI for examples") -+set(G4VIS_NONE ON CACHE BOOL "disable Vis for examples") -+add_subdirectory(examples/extended/electromagnetic/TestEm3) -+add_subdirectory(examples/extended/electromagnetic/TestEm5) -+add_subdirectory(examples/extended/electromagnetic/TestEm7) -+add_subdirectory(examples/extended/electromagnetic/TestEm9) -+add_subdirectory(examples/extended/hadronic/Hadr00) -+ - #----------------------------------------------------------------------------- - # Provide packaging with CPack. - include(Geant4CPackBase) -diff -urN a/geant4.9.6.p04/source/CMakeLists.txt b/geant4.9.6.p04/source/CMakeLists.txt ---- a/geant4.9.6.p04/source/CMakeLists.txt 2015-02-04 09:57:54.000000000 +0100 -+++ b/geant4.9.6.p04/source/CMakeLists.txt 2015-09-09 17:03:22.298420869 +0200 -@@ -13,9 +13,7 @@ - - add_subdirectory(analysis) - add_subdirectory(digits_hits) --add_subdirectory(error_propagation) - add_subdirectory(event) --add_subdirectory(externals) - - # Target G4g3tog4 is optional based on user selection... - if(GEANT4_USE_G3TOG4) -diff -urN a/geant4.9.6.p04/source/interfaces/basic/sources.cmake b/geant4.9.6.p04/source/interfaces/basic/sources.cmake ---- a/geant4.9.6.p04/source/interfaces/basic/sources.cmake 2015-02-04 09:53:34.000000000 +0100 -+++ b/geant4.9.6.p04/source/interfaces/basic/sources.cmake 2015-09-09 17:03:22.298420869 +0200 -@@ -145,6 +145,7 @@ - G4globman - G4intercoms - GLOBAL_DEPENDENCIES -+ G4UIcommon - G4global - G4intercoms - LINK_LIBRARIES -diff -urN a/geant4.9.6.p04/source/interfaces/CMakeLists.txt b/geant4.9.6.p04/source/interfaces/CMakeLists.txt ---- a/geant4.9.6.p04/source/interfaces/CMakeLists.txt 2015-02-04 09:53:37.000000000 +0100 -+++ b/geant4.9.6.p04/source/interfaces/CMakeLists.txt 2015-09-09 17:03:22.299420892 +0200 -@@ -18,11 +18,27 @@ - - if(NOT GEANT4_BUILD_GRANULAR_LIBS) - include(Geant4MacroLibraryTargets) -- GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4interfaces -+# GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4interfaces -+# COMPONENTS -+# GAG/sources.cmake -+# basic/sources.cmake -+# common/sources.cmake -+#) -+ -+ GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4UIcommon - COMPONENTS -- GAG/sources.cmake -- basic/sources.cmake - common/sources.cmake --) -+ ) -+ -+ GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4UIbasic -+ COMPONENTS -+ basic/sources.cmake -+ ) -+ -+ GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4UIGAG -+ COMPONENTS -+ GAG/sources.cmake -+ ) -+ - endif() - -diff -urN a/geant4.9.6.p04/source/interfaces/GAG/sources.cmake b/geant4.9.6.p04/source/interfaces/GAG/sources.cmake ---- a/geant4.9.6.p04/source/interfaces/GAG/sources.cmake 2015-02-04 09:53:37.000000000 +0100 -+++ b/geant4.9.6.p04/source/interfaces/GAG/sources.cmake 2015-09-09 17:03:22.299420892 +0200 -@@ -39,6 +39,7 @@ - G4globman - G4intercoms - GLOBAL_DEPENDENCIES -+ G4UIcommon - G4global - G4intercoms - LINK_LIBRARIES -diff -urN a/geant4.9.6.p04/source/persistency/CMakeLists.txt b/geant4.9.6.p04/source/persistency/CMakeLists.txt ---- a/geant4.9.6.p04/source/persistency/CMakeLists.txt 2015-02-04 09:57:44.000000000 +0100 -+++ b/geant4.9.6.p04/source/persistency/CMakeLists.txt 2015-09-09 17:03:22.299420892 +0200 -@@ -12,30 +12,17 @@ - # - #------------------------------------------------------------------------------ - --add_subdirectory(ascii) -- - # GDML only if required - if(GEANT4_USE_GDML) - add_subdirectory(gdml) - endif() - --add_subdirectory(mctruth) -- -- - if(NOT GEANT4_BUILD_GRANULAR_LIBS) - include(Geant4MacroLibraryTargets) - if(GEANT4_USE_GDML) - GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4persistency - COMPONENTS -- ascii/sources.cmake - gdml/sources.cmake -- mctruth/sources.cmake -- ) -- else() -- GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4persistency -- COMPONENTS -- ascii/sources.cmake -- mctruth/sources.cmake - ) - endif() - endif() -diff -urN a/geant4.9.6.p04/source/physics_lists/builders/sources.cmake b/geant4.9.6.p04/source/physics_lists/builders/sources.cmake ---- a/geant4.9.6.p04/source/physics_lists/builders/sources.cmake 2015-02-04 09:54:21.000000000 +0100 -+++ b/geant4.9.6.p04/source/physics_lists/builders/sources.cmake 2015-09-09 17:03:22.299420892 +0200 -@@ -40,12 +40,6 @@ - include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) --include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) --include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/management/include) --include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/types/include) --include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/models/include) --include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/processes/include) --include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/utils/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -@@ -124,8 +118,6 @@ - G4DecayPhysics.hh - G4ElectroNuclearBuilder.hh - G4BertiniElectroNuclearBuilder.hh -- G4EmDNAPhysicsChemistry.hh -- G4EmDNAPhysics.hh - G4EmExtraPhysics.hh - G4EmLivermorePhysics.hh - G4EmLivermorePolarizedPhysics.hh -@@ -263,8 +255,6 @@ - G4DecayPhysics.cc - G4ElectroNuclearBuilder.cc - G4BertiniElectroNuclearBuilder.cc -- G4EmDNAPhysics.cc -- G4EmDNAPhysicsChemistry.cc - G4EmExtraPhysics.cc - G4EmLivermorePhysics.cc - G4EmLivermorePolarizedPhysics.cc -@@ -389,9 +379,6 @@ - G4bosons - G4cuts - G4decay -- G4emdna-processes -- G4emdna-models -- G4emdna-utils - G4emhighenergy - G4emlowenergy - G4emstandard -diff -urN a/geant4.9.6.p04/source/physics_lists/CMakeLists.txt b/geant4.9.6.p04/source/physics_lists/CMakeLists.txt ---- a/geant4.9.6.p04/source/physics_lists/CMakeLists.txt 2015-02-04 09:54:23.000000000 +0100 -+++ b/geant4.9.6.p04/source/physics_lists/CMakeLists.txt 2015-09-09 17:03:22.300420915 +0200 -@@ -17,10 +17,11 @@ - - if(NOT GEANT4_BUILD_GRANULAR_LIBS) - include(Geant4MacroLibraryTargets) -- GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4physicslists -+ GEANT4_GLOBAL_LIBRARY_TARGET(NAME G4physics_lists - COMPONENTS - builders/sources.cmake - lists/sources.cmake - ) - endif() - -+add_subdirectory(LHCb) -diff -urN a/geant4.9.6.p04/source/physics_lists/LHCb/CMakeLists.txt b/geant4.9.6.p04/source/physics_lists/LHCb/CMakeLists.txt ---- a/geant4.9.6.p04/source/physics_lists/LHCb/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100 -+++ b/geant4.9.6.p04/source/physics_lists/LHCb/CMakeLists.txt 2015-09-09 17:03:22.300420915 +0200 -@@ -0,0 +1,20 @@ -+#------------------------------------------------------------------------------ -+# CMakeLists.txt -+# Module : G4LHCblists -+# Package: Geant4.src.G4physicslists.G4LHCblists -+# -+# CMakeLists.txt for single level library that may be build global or granular -+# -+# Generated on : 12/6/2013 -+# -+# $Id:$ -+# -+#------------------------------------------------------------------------------ -+ -+include(Geant4MacroLibraryTargets) -+if(GEANT4_BUILD_GRANULAR_LIBS) -+ GEANT4_GRANULAR_LIBRARY_TARGET(COMPONENT sources.cmake) -+else() -+ GEANT4_GLOBAL_LIBRARY_TARGET(COMPONENTS sources.cmake) -+endif() -+ -diff -urN a/geant4.9.6.p04/source/physics_lists/LHCb/sources.cmake b/geant4.9.6.p04/source/physics_lists/LHCb/sources.cmake ---- a/geant4.9.6.p04/source/physics_lists/LHCb/sources.cmake 1970-01-01 01:00:00.000000000 +0100 -+++ b/geant4.9.6.p04/source/physics_lists/LHCb/sources.cmake 2015-09-09 17:03:22.300420915 +0200 -@@ -0,0 +1,210 @@ -+#------------------------------------------------------------------------------ -+# sources.cmake -+# Module : G4phys_lists -+# Package: Geant4.src.G4physicslists.G4phys_lists -+# -+# Sources description for a library. -+# Lists the sources and headers of the code explicitely. -+# Lists include paths needed. -+# Lists the internal granular and global dependencies of the library. -+# Source specific properties should be added at the end. -+# -+# Generated on : 24/9/2010 -+# -+# $Id: sources.cmake,v 1.2 2010-11-29 17:29:30 bmorgan Exp $ -+# GEANT4 Tag $Name: not supported by cvs2svn $ -+# -+#------------------------------------------------------------------------------ -+ -+# List external includes needed. -+include_directories(${CLHEP_INCLUDE_DIRS}) -+include_directories(${EXPAT_INCLUDE_DIRS}) -+ -+# List internal includes needed. -+include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/digits/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/event/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/xrays/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/evaporation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/utils/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/chiral_inv_phase_space/body/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/chiral_inv_phase_space/cross_sections/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/chiral_inv_phase_space/fragmentation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/chiral_inv_phase_space/interface/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/chiral_inv_phase_space/processes/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/gem_evaporation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/high_energy/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/incl/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/isotope_production/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/low_energy/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/neutron_hp/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/photolepton_hadron/muon_nuclear/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/optical/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -+include_directories(${CMAKE_SOURCE_DIR}/source/tracking/include) -+ -+# -+# Define the Geant4 Module. -+# -+include(Geant4MacroDefineModule) -+GEANT4_DEFINE_MODULE(NAME G4LHCblists -+ HEADERS -+ G4EmStandardPhysics_LHCbTest.hh -+ G4EmStandardPhysics_option1LHCb.hh -+ G4EmStandardPhysics_option1NoApplyCuts.hh -+ SOURCES -+ G4EmStandardPhysics_LHCbTest.cc -+ G4EmStandardPhysics_option1LHCb.cc -+ G4EmStandardPhysics_option1NoApplyCuts.cc -+ GRANULAR_DEPENDENCIES -+ G4baryons -+ G4bosons -+ G4cuts -+ G4decay -+ G4digits -+ G4emhighenergy -+ G4emlowenergy -+ G4emstandard -+ G4emutils -+ G4event -+ G4geometrymng -+ G4globman -+ G4had_im_r_matrix -+ G4had_lend -+ G4had_mod_man -+ G4had_mod_util -+ G4had_muon_nuclear -+ G4had_neu_hp -+ G4had_preequ_exciton -+ G4had_string_diff -+ G4had_string_frag -+ G4had_string_man -+ G4had_theo_max -+ G4hadronic_HE -+ G4hadronic_LE -+ G4hadronic_bert_cascade -+ G4hadronic_binary -+ G4hadronic_body_ci -+ G4hadronic_coherent_elastic -+ G4hadronic_crosec_ci -+ G4hadronic_deex_evaporation -+ G4hadronic_deex_fermi_breakup -+ G4hadronic_deex_fission -+ G4hadronic_deex_gem_evaporation -+ G4hadronic_deex_handler -+ G4hadronic_deex_management -+ G4hadronic_deex_multifragmentation -+ G4hadronic_deex_photon_evaporation -+ G4hadronic_deex_util -+ G4hadronic_fragm_ci -+ G4hadronic_hetcpp_evaporation -+ G4hadronic_hetcpp_utils -+ G4hadronic_incl_cascade -+ G4hadronic_interface_ci -+ G4hadronic_iso -+ G4hadronic_mgt -+ G4hadronic_proc -+ G4hadronic_proc_ci -+ G4hadronic_qgstring -+ G4hadronic_radioactivedecay -+ G4hadronic_stop -+ G4hadronic_util -+ G4hadronic_xsect -+ G4hits -+ G4intercoms -+ G4ions -+ G4leptons -+ G4magneticfield -+ G4materials -+ G4mesons -+ G4muons -+ G4navigation -+ G4optical -+ G4partman -+ G4phys_builders -+ G4phys_lists -+ G4procman -+ G4run -+ G4shortlived -+ G4track -+ G4tracking -+ G4transportation -+ G4volumes -+ G4xrays -+ GLOBAL_DEPENDENCIES -+ G4digits_hits -+ G4event -+ G4geometry -+ G4global -+ G4intercoms -+ G4materials -+ G4particles -+ G4processes -+ G4run -+ G4track -+ G4tracking -+ G4physics_lists -+ LINK_LIBRARIES -+) -+ -+# List any source specific properties here -+ -diff -urN a/geant4.9.6.p04/source/physics_lists/lists/sources.cmake b/geant4.9.6.p04/source/physics_lists/lists/sources.cmake ---- a/geant4.9.6.p04/source/physics_lists/lists/sources.cmake 2015-02-04 09:54:23.000000000 +0100 -+++ b/geant4.9.6.p04/source/physics_lists/lists/sources.cmake 2015-09-09 17:03:22.301420938 +0200 -@@ -43,7 +43,6 @@ - include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) --include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) - include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -@@ -247,7 +246,6 @@ - G4cuts - G4decay - G4digits -- G4emdna - G4emhighenergy - G4emlowenergy - G4emstandard -diff -urN a/geant4.9.6.p04/source/processes/CMakeLists.txt b/geant4.9.6.p04/source/processes/CMakeLists.txt ---- a/geant4.9.6.p04/source/processes/CMakeLists.txt 2015-02-04 09:57:35.000000000 +0100 -+++ b/geant4.9.6.p04/source/processes/CMakeLists.txt 2015-09-09 17:03:22.301420938 +0200 -@@ -37,12 +37,6 @@ - cuts/sources.cmake - decay/sources.cmake - electromagnetic/adjoint/sources.cmake -- electromagnetic/dna/processes/sources.cmake -- electromagnetic/dna/models/sources.cmake -- electromagnetic/dna/utils/sources.cmake -- electromagnetic/dna/management/sources.cmake -- electromagnetic/dna/molecules/management/sources.cmake -- electromagnetic/dna/molecules/types/sources.cmake - electromagnetic/highenergy/sources.cmake - electromagnetic/lowenergy/sources.cmake - electromagnetic/muons/sources.cmake -diff -urN a/geant4.9.6.p04/source/processes/electromagnetic/CMakeLists.txt b/geant4.9.6.p04/source/processes/electromagnetic/CMakeLists.txt ---- a/geant4.9.6.p04/source/processes/electromagnetic/CMakeLists.txt 2015-02-04 09:55:49.000000000 +0100 -+++ b/geant4.9.6.p04/source/processes/electromagnetic/CMakeLists.txt 2015-09-09 17:03:22.301420938 +0200 -@@ -12,7 +12,6 @@ - #------------------------------------------------------------------------------ - - add_subdirectory(adjoint) --add_subdirectory(dna) - add_subdirectory(highenergy) - add_subdirectory(lowenergy) - add_subdirectory(muons) -diff -urN a/geant4.9.6.p04/source/processes/hadronic/models/im_r_matrix/src/G4CollisionInitialState.cc b/geant4.9.6.p04/source/processes/hadronic/models/im_r_matrix/src/G4CollisionInitialState.cc ---- a/geant4.9.6.p04/source/processes/hadronic/models/im_r_matrix/src/G4CollisionInitialState.cc 2015-02-04 09:57:06.000000000 +0100 -+++ b/geant4.9.6.p04/source/processes/hadronic/models/im_r_matrix/src/G4CollisionInitialState.cc 2015-09-09 17:03:22.301420938 +0200 -@@ -100,7 +100,7 @@ - return theFSGenerator->GetFinalState(thePrimary, theTs); - } - --//#include <typeinfo> -+#include <typeinfo> - - void G4CollisionInitialState::Print() const - { -diff -urN a/geant4.9.6.p04/source/visualization/CMakeLists.txt b/geant4.9.6.p04/source/visualization/CMakeLists.txt ---- a/geant4.9.6.p04/source/visualization/CMakeLists.txt 2015-02-04 09:54:58.000000000 +0100 -+++ b/geant4.9.6.p04/source/visualization/CMakeLists.txt 2015-09-09 17:03:22.302420961 +0200 -@@ -12,13 +12,10 @@ - #------------------------------------------------------------------------------ - - add_subdirectory(FukuiRenderer) --add_subdirectory(HepRep) - add_subdirectory(RayTracer) - add_subdirectory(Tree) - add_subdirectory(VRML) --add_subdirectory(XXX) - add_subdirectory(externals) --add_subdirectory(gMocren) - add_subdirectory(management) - add_subdirectory(modeling) - -diff -urN a/geant4.9.6.p04/source/visualization/OpenGL/sources.cmake b/geant4.9.6.p04/source/visualization/OpenGL/sources.cmake ---- a/geant4.9.6.p04/source/visualization/OpenGL/sources.cmake 2015-02-04 09:54:39.000000000 +0100 -+++ b/geant4.9.6.p04/source/visualization/OpenGL/sources.cmake 2015-09-09 17:03:22.302420961 +0200 -@@ -312,7 +312,8 @@ - G4global - G4graphics_reps - G4intercoms -- G4interfaces -+ G4UIbasic -+ G4UIcommon - G4modeling - G4tracking - G4vis_management -diff -urN a/geant4.9.6.p04/source/visualization/OpenInventor/sources.cmake b/geant4.9.6.p04/source/visualization/OpenInventor/sources.cmake ---- a/geant4.9.6.p04/source/visualization/OpenInventor/sources.cmake 2015-02-04 09:54:47.000000000 +0100 -+++ b/geant4.9.6.p04/source/visualization/OpenInventor/sources.cmake 2015-09-09 17:03:22.302420961 +0200 -@@ -195,7 +195,7 @@ - G4global - G4graphics_reps - G4intercoms -- G4interfaces -+ G4UIcommon - G4materials - G4modeling - G4tracking ---- a/geant4.9.6.p04/examples/extended/electromagnetic/TestEm5/CMakeLists.txt 2015-02-04 10:01:02.000000001 +0100 -+++ b/geant4.9.6.p04/examples/extended/electromagnetic/TestEm5/CMakeLists.txt 2015-10-13 14:12:01.000000001 +0200 -@@ -20,11 +20,14 @@ - # - include(${Geant4_USE_FILE}) - -+find_package(ROOT REQUIRED Hist Gpad) -+ - #---------------------------------------------------------------------------- - # Locate sources and headers for this project - # --include_directories(${PROJECT_SOURCE_DIR}/include -- ${Geant4_INCLUDE_DIR}) -+include_directories(${PROJECT_SOURCE_DIR}/include -+ ${Geant4_INCLUDE_DIR} -+ ${ROOT_INCLUDE_DIR}) - file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) - file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) - -@@ -32,7 +35,7 @@ - # Add the executable, and link it to the Geant4 libraries - # - add_executable(TestEm5 TestEm5.cc ${sources} ${headers}) --target_link_libraries(TestEm5 ${Geant4_LIBRARIES} ) -+target_link_libraries(TestEm5 ${Geant4_LIBRARIES} ${ROOT_LIBRARIES}) - - #---------------------------------------------------------------------------- - # Copy all scripts to the build directory, i.e. the directory in which we ---- a/geant4.9.6.p04/source/analysis/CMakeLists.txt 2015-02-04 09:53:32.000000000 +0100 -+++ b/geant4.9.6.p04/source/analysis/CMakeLists.txt 2015-10-13 16:42:00.992216989 +0200 -@@ -96,7 +96,7 @@ - # Install the headers, retaining their nested structure - # - install(DIRECTORY include/ -- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} - COMPONENT Development - PATTERN ".svn" EXCLUDE - ) diff --git a/Geant4/G4config/patches/patch_g4_sources.py b/Geant4/G4config/patches/patch_g4_sources.py deleted file mode 100644 index 0b498d4de28a501caf78297d5366ea4f402df9a3..0000000000000000000000000000000000000000 --- a/Geant4/G4config/patches/patch_g4_sources.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -''' -Script to patch Geant 4 sources for LHCb. -''' - -import sys -import os -import shutil -import logging - -from subprocess import call -from os.path import join, basename, exists - -logging.basicConfig(level=logging.INFO) -log = logging.getLogger() - -# root directory of the project and Geant4 version -root_dir, g4vers = sys.argv[1:] -script_dir = os.path.realpath(os.path.dirname(sys.argv[0])) - -# apply patch to CMake configuration -log.info('patching Geant4 CMake configuration') -call(['patch', '-p2', '-i', join(script_dir, 'geant4.cmake.patch')]) - -# copy physics lists -def copydir(src, dst): - if not os.path.exists(dst): - log.info('creating directory %s', dst) - os.makedirs(dst) - for f in os.listdir(src): - if f in ('.', '..', '.svn'): - continue - if os.path.isdir(join(src, f)): - copydir(join(src, f), join(dst, f)) - else: - log.info('copying %s -> %s', join(src, f), join(dst, f)) - shutil.copy(join(src, f), join(dst, f)) - -copydir(join(root_dir, 'Geant4', 'G4LHCblists', 'G4LHCblists'), - join('source', 'physics_lists', 'LHCb', 'include')) -copydir(join(root_dir, 'Geant4', 'G4LHCblists', 'src'), - join('source', 'physics_lists', 'LHCb', 'src')) - - -# replace fixed files -fixes_root = join(root_dir, 'Geant4', 'G4processes', 'srcnew') -fixes_dst_root = join('source', 'processes', 'hadronic') -# (fixes is a list of pairs, src+dst) -fixes = [(join('cross_sections', 'G4ElectroNuclearCrossSection.cc'), join(fixes_dst_root, 'cross_sections', 'src'))] -for src, dst in fixes: - log.info('copying %s to dir %s', join(fixes_root, src), dst) - # bkup - old = join(dst, basename(src)) - if exists(old): - shutil.copy(old, old + '.orig') - shutil.copy(join(fixes_root, src), dst) - -# override Geant4 cmake modules -copydir(join(script_dir, 'cmake', 'Modules'), - join('cmake', 'Modules')) - -# patches to examples -for proc_type, ex_name, patch_map in [('electromagnetic', 'TestEm3', [('srcnew', 'src')]), - ('electromagnetic', 'TestEm5', [('incnew', 'include'), - ('srcnew', '.')])]: - for patches, orig in patch_map: - src = join(root_dir, 'Geant4', 'G4examples', 'extended', proc_type, 'G4' + ex_name, patches) - dst = join('examples', 'extended', proc_type, ex_name, orig) - #print src, dst - if exists(src): - copydir(src, dst)