diff --git a/DDRec/include/DDRec/DDGear.h b/DDRec/include/DDRec/DDGear.h index 310ff7b1712e95d5e57c93b443e3f2921e0221db..2609b2d906285580eef967201b2651437da38c30 100644 --- a/DDRec/include/DDRec/DDGear.h +++ b/DDRec/include/DDRec/DDGear.h @@ -36,7 +36,7 @@ namespace DD4hep { /** User c'tor - specify a name (should be the canonical name used in gear, eg. TPCParameters, SITParameters, etc.) and the GearParametersImpl object */ - GearHandle( gear::GearParametersImpl* gearObj, const std::string& name ) : _gObj( gearObj ) , _name( name ) {} + GearHandle( gear::GearParametersImpl* gearObj, const std::string& nam ) : _gObj( gearObj ) , _name( nam ) {} /** D'tor deletes GearParametersImpl object if ownerhsip has not been taken away */ virtual ~GearHandle() { @@ -59,9 +59,9 @@ namespace DD4hep { /// add a SimpleMaterial object - void addMaterial(const std::string name, double A, double Z, double density, double radLen, double intLen){ + void addMaterial(const std::string nam, double A, double Z, double density, double radLen, double intLen){ - _materials.push_back( gear::SimpleMaterialImpl (name, A, Z, density, radLen, intLen) ) ; + _materials.push_back( gear::SimpleMaterialImpl (nam, A, Z, density, radLen, intLen) ) ; } /// get all materials assigned to this wrapper diff --git a/DDRec/src/Surface.cpp b/DDRec/src/Surface.cpp index 7db914be716244bac3cdf7c5bc1cf9c67af90f44..32a8afaac9f95f3dc847530d9f7c6b3251a1d2bf 100644 --- a/DDRec/src/Surface.cpp +++ b/DDRec/src/Surface.cpp @@ -783,7 +783,7 @@ namespace DD4hep { //all lengths are half length double dx1 = trapezoid->GetDx1(); double dx2 = trapezoid->GetDx2(); - double dy = trapezoid->GetDy1(); //dy1 == dy2 = thickness of the layer in CLIC + //Unused: double dy = trapezoid->GetDy1(); //dy1 == dy2 = thickness of the layer in CLIC double dz = trapezoid->GetDz(); //the normal vector is parallel to e_y for all geometry cases in CLIC diff --git a/DDRec/src/gear/DDGear.cpp b/DDRec/src/gear/DDGear.cpp index 69e2b1fdb2393f52f8089b3f54944920444a6612..9a94d08fc44d7ac117d6094dca8fde800e3ec4f8 100644 --- a/DDRec/src/gear/DDGear.cpp +++ b/DDRec/src/gear/DDGear.cpp @@ -59,10 +59,10 @@ namespace DD4hep{ DetElement::Children grCh = subDet.children() ; - for ( DetElement::Children::const_iterator it=grCh.begin() ; it != grCh.end() ; ++it ){ - DetElement subDet = (*it).second ; - dets.push_back( subDet ) ; - // std::cout << " *** sub-subdetector : " << subDet.name() << std::endl ; + for ( DetElement::Children::const_iterator jt=grCh.begin() ; jt != grCh.end() ; ++jt ){ + DetElement subDet = (*jt).second ; + dets.push_back( subDet ) ; + // std::cout << " *** sub-subdetector : " << subDet.name() << std::endl ; } } diff --git a/cmake/DD4hep.cmake b/cmake/DD4hep.cmake index ea8831aeb92f6067bbdbabe572ca987cb19a3d09..557d47b150ab72bd2cb87a7a0fd0a0db0f1d0ea8 100644 --- a/cmake/DD4hep.cmake +++ b/cmake/DD4hep.cmake @@ -37,8 +37,10 @@ else() set ( DD4HEP_USE_BOOST OFF ) endif() # Main functional include file -include ( DD4hepBuild ) -include ( DD4hep_XML_setup ) +if ( "${DD4hepBuild_included}" STREQUAL "" ) + include ( DD4hepBuild ) + include ( DD4hep_XML_setup ) +endif() ##--------------------------------------------------------------------------------------------------- ## diff --git a/cmake/DD4hepBuild.cmake b/cmake/DD4hepBuild.cmake index de84714b70973875eca7fdd5247e0090eef19cb9..bed154c93b4e7d94996f81bf54b5ea651dd8cca7 100644 --- a/cmake/DD4hepBuild.cmake +++ b/cmake/DD4hepBuild.cmake @@ -12,8 +12,9 @@ #================================================================================= cmake_minimum_required(VERSION 2.8.3 FATAL_ERROR) ###set(DD4HEP_DEBUG_CMAKE 1) -message ( STATUS "INCLUDING DD4hep...." ) +message ( STATUS "INCLUDING DD4hepBuild...." ) include ( CMakeParseArguments ) +set ( DD4hepBuild_included ON ) #--------------------------------------------------------------------------------------------------- macro(dd4hep_to_parent_scope val) @@ -209,6 +210,26 @@ macro ( dd4hep_configure_output ) dd4hep_debug("|++> Installation goes to: ${CMAKE_INSTALL_PREFIX} <${ARG_INSTALL}>" ) endmacro ( dd4hep_configure_output ) +#--------------------------------------------------------------------------------------------------- +# dd4hep_list_to_string +# +# Create proper string from list +# +# \author M.Frank +# \version 1.0 +#--------------------------------------------------------------------------------------------------- +function ( dd4hep_list_to_string result ) + cmake_parse_arguments(ARG "" "PREFIX" "ENTRIES" ${ARGV} ) + set ( vals "" ) + foreach( v ${ARG_ENTRIES} ) + set ( vals "${vals} ${v}" ) + endforeach() + if ( NOT "${vals}" STREQUAL "" ) + set ( vals "${ARG_PREFIX}${vals}" ) + endif() + set ( ${result} "${vals}" PARENT_SCOPE ) +endfunction ( dd4hep_list_to_string ) + #--------------------------------------------------------------------------------------------------- # dd4hep_make_unique_list # @@ -1129,10 +1150,10 @@ endfunction() #--------------------------------------------------------------------------------------------------- macro( dd4hep_enable_tests ) cmake_parse_arguments(MACRO_ARG "" "" "" ${ARGV} ) - #dd4hep_print ( "***|++> Test environment: BUILD_TESTING:${BUILD_TESTING} DIRS:${MACRO_ARG_UNPARSED_ARGUMENTS}" ) if (BUILD_TESTING) set ( BUILDNAME "${CMAKE_SYSTEM}-${CMAKE_CXX_COMPILER}-${CMAKE_BUILD_TYPE}" CACHE STRING "set build string for cdash") - dd4hep_print ( "***|++> Enable CTest environment....BUILD:${BUILD_TESTING} DIRS:${MACRO_ARG_UNPARSED_ARGUMENTS}" ) + dd4hep_list_to_string( _dir_entries PREFIX "DIRS:" ENTRIES ${MACRO_ARG_UNPARSED_ARGUMENTS} ) + dd4hep_print ( "|++> Enable CTest environment....BUILD:${BUILD_TESTING} ${_dir_entries}" ) include(CTest) enable_testing () if ( NOT "${MACRO_ARG_UNPARSED_ARGUMENTS}" STREQUAL "" ) @@ -1149,7 +1170,8 @@ macro ( dd4hep_configure_scripts _pkg ) # PackageName is a variable required by existing LC build scripts. # Set it here and unset it at the end of the scope... set( PackageName ${_pkg} ) - dd4hep_print ( "|++> Setting up test environment for ${PackageName}: Testing:${BUILD_TESTING} Setup:${MACRO_ARG_DEFAULT_SETUP} With Tests(${WITH_TESTS}): ${MACRO_ARG_UPARSED_ARGUMENTS}" ) + dd4hep_list_to_string( _dir_entries PREFIX "DIRS:" ENTRIES ${MACRO_ARG_UNPARSED_ARGUMENTS} ) + dd4hep_print ( "|++> Setting up test environment for ${PackageName}: Testing:${BUILD_TESTING} Setup:${MACRO_ARG_DEFAULT_SETUP} With Tests(${MACRO_ARG_WITH_TESTS}): ${_dir_entries}" ) if ( (NOT "${MACRO_ARG_DEFAULT_SETUP}" STREQUAL "") OR (NOT "${_pkg}" STREQUAL "") ) configure_file( ${DD4hep_DIR}/cmake/run_test_package.sh ${EXECUTABLE_OUTPUT_PATH}/run_test_${_pkg}.sh @ONLY) INSTALL(PROGRAMS ${EXECUTABLE_OUTPUT_PATH}/run_test_${_pkg}.sh DESTINATION bin ) diff --git a/cmake/DD4hepConfig.cmake.in b/cmake/DD4hepConfig.cmake.in index ef0f6ebc5749b0cf88f0b491eadb04322334d8f8..a6048c6dcacaeb7803b0eb2f34cc9da12bda6f24 100644 --- a/cmake/DD4hepConfig.cmake.in +++ b/cmake/DD4hepConfig.cmake.in @@ -66,7 +66,7 @@ endif() CHECK_PACKAGE_LIBS(DD4hep DDCore) IF(DD4hep_FIND_COMPONENTS) - MESSAGE( STATUS "Looking for these Components ${DD4hep_FIND_COMPONENTS}" ) + MESSAGE( STATUS "DD4hep: Looking for Components: ${DD4hep_FIND_COMPONENTS}" ) FOREACH(comp ${DD4hep_FIND_COMPONENTS}) #CHECK_PACKAGE_LIBS is looking for components too, just need to check if they were found, if requested diff --git a/examples/AlignDet/CMakeLists.txt b/examples/AlignDet/CMakeLists.txt index ba44f6587892a0a0138038ea904fded816980f40..f923993f1e74aef143f949ec5796ff04c32fc776 100644 --- a/examples/AlignDet/CMakeLists.txt +++ b/examples/AlignDet/CMakeLists.txt @@ -11,18 +11,16 @@ #========================================================================== cmake_minimum_required(VERSION 2.8.3 FATAL_ERROR) include ( ${DD4hep_DIR}/cmake/DD4hep.cmake ) + #----------------------------------------------------------------------------------- dd4hep_configure_output() dd4hep_package ( AlignDet MAJOR 0 MINOR 0 PATCH 1 - USES [ROOT REQUIRED COMPONENTS Geom] + USES [ROOT REQUIRED COMPONENTS Geom MathCore] [DD4hep REQUIRED COMPONENTS DDCore] OPTIONAL XERCESC INCLUDE_DIRS include ) dd4hep_add_plugin( AlignDet SOURCES src/*.cpp ) -dd4hep_configure_scripts( AlignDet DEFAULT_SETUP ) dd4hep_install_dir( compact DESTINATION examples/AlignDet ) -# -#---Testing------------------------------------------------------------------------- -dd4hep_enable_tests() +dd4hep_configure_scripts( AlignDet DEFAULT_SETUP WITH_TESTS) diff --git a/examples/CLICSiD/CMakeLists.txt b/examples/CLICSiD/CMakeLists.txt index 450770f2216106b59160270b1e1334bf02cd32f4..88c947029b6e2f81022535b03d5efd11785eae2b 100644 --- a/examples/CLICSiD/CMakeLists.txt +++ b/examples/CLICSiD/CMakeLists.txt @@ -18,10 +18,10 @@ dd4hep_package ( CLICSiD MAJOR 0 MINOR 0 PATCH 1 USES [ROOT REQUIRED COMPONENTS Geom] [DD4hep REQUIRED COMPONENTS DDCore] ) -dd4hep_configure_scripts ( CLICSiD DEFAULT_SETUP ) dd4hep_install_dir( compact DESTINATION examples/CLICSiD ) #---Testing------------------------------------------------------------------------- -dd4hep_enable_tests() +dd4hep_configure_scripts ( CLICSiD DEFAULT_SETUP WITH_TESTS ) + #----- Tests for CLICSid: here we simply require that at least 100 volumes have been converted foreach ( typ lcdd gdml vis ) dd4hep_add_test_reg ( "test_converter_CLICSiD_${typ}" diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index cb2c22ab4502e047bf042becd8be032c9c6bac55..3f22d95fdcb3397562366cc8689fb47c2b620e76 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -29,6 +29,8 @@ find_package ( DD4hep REQUIRED ) include ( ${DD4hep_DIR}/cmake/DD4hep.cmake ) # dd4hep_package ( DD4hepExample MAJOR 0 MINOR 0 PATCH 1 - USES [ROOT REQUIRED COMPONENTS Geom] ) + USES [ROOT REQUIRED COMPONENTS Geom MathCore] + [DD4hep REQUIRED COMPONENTS DDCore] +) # dd4hep_enable_tests ( AlignDet CLICSiD ClientTests SimpleDetector ) diff --git a/examples/ClientTests/CMakeLists.txt b/examples/ClientTests/CMakeLists.txt index a14507e29af46a3c2e7f05583b294e45375fccbc..ecccd9e38f3b0f5eb6999623bb5404bef58f253f 100644 --- a/examples/ClientTests/CMakeLists.txt +++ b/examples/ClientTests/CMakeLists.txt @@ -15,7 +15,7 @@ include ( ${DD4hep_DIR}/cmake/DD4hep.cmake ) #----------------------------------------------------------------------------------- dd4hep_configure_output() dd4hep_package (ClientTests MAJOR 0 MINOR 0 PATCH 1 - USES [ROOT REQUIRED COMPONENTS Geom] + USES [ROOT REQUIRED COMPONENTS Geom MathCore] [DD4hep REQUIRED COMPONENTS DDCore] OPTIONAL XERCESC INCLUDE_DIRS include ) @@ -23,11 +23,9 @@ dd4hep_package (ClientTests MAJOR 0 MINOR 0 PATCH 1 dd4hep_add_plugin( ClientTests SOURCES src/*.cpp ) dd4hep_install_dir( compact scripts DESTINATION ${DD4hep_DIR}/examples/ClientTests ) #----------------------------------------------------------------------------------- -dd4hep_configure_scripts( ClientTests DEFAULT_SETUP ) +dd4hep_configure_scripts( ClientTests DEFAULT_SETUP WITH_TESTS) #*** Testing ********************************************************************* -dd4hep_enable_tests() -#----------------------------------------------------------------------------------- foreach (test Assemblies BoxTrafos IronCylinder LheD_tracker MagnetFields MaterialTester MiniTel SectorBarrelCalorimeter SiliconBlock NestedDetectors ) foreach( type lcdd gdml vis ) dd4hep_add_test_reg( ClientTests_converter_simple_${type}_${test}