diff --git a/.dd4hep-ci.d/compile_and_test.sh b/.dd4hep-ci.d/compile_and_test.sh index 45f3dcf6fbecd70ea70243dbb3aa54c6188f4706..ddfa81152ed8e7a08dcc3b1ab0b5138eba5d9652 100755 --- a/.dd4hep-ci.d/compile_and_test.sh +++ b/.dd4hep-ci.d/compile_and_test.sh @@ -5,7 +5,7 @@ source /DD4hep/.dd4hep-ci.d/init_x86_64.sh cd /DD4hep mkdir build cd build -cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib64/Geant4-10.4.0 -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always -Werror" .. && \ +cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always -Werror" -DCMAKE_CXX_STANDARD=17 .. && \ ninja && \ ninja install && \ . ../bin/thisdd4hep.sh && \ diff --git a/.dd4hep-ci.d/init_mac.sh b/.dd4hep-ci.d/init_mac.sh index f3fdd5aed4a2f0a0b19ccfe88eefa30b569c4780..12e1d5ece533ec5a1adafc5ff1715803459880df 100644 --- a/.dd4hep-ci.d/init_mac.sh +++ b/.dd4hep-ci.d/init_mac.sh @@ -55,6 +55,7 @@ export DYLD_LIBRARY_PATH="${PYTHONDIR}/lib:$DYLD_LIBRARY_PATH" #-------------------------------------------------------------------------------- export ROOTSYS=${CLICREPO}/software/ROOT/6.18.00/${BUILD_FLAVOUR} +export ROOT_ROOT=$ROOTSYS export PYTHONPATH="$ROOTSYS/lib:$PYTHONPATH" export PATH="$ROOTSYS/bin:$PATH" export DYLD_LIBRARY_PATH="$ROOTSYS/lib:$DYLD_LIBRARY_PATH" @@ -63,18 +64,18 @@ export DYLD_LIBRARY_PATH="$ROOTSYS/lib:$DYLD_LIBRARY_PATH" # XercesC #-------------------------------------------------------------------------------- -export XercesC_HOME=${CLICREPO}/software/Xerces-C/3.1.3/${BUILD_FLAVOUR} -export PATH="$XercesC_HOME/bin:$PATH" -export DYLD_LIBRARY_PATH="$XercesC_HOME/lib:$DYLD_LIBRARY_PATH" +export XercesC_ROOT=${CLICREPO}/software/Xerces-C/3.1.3/${BUILD_FLAVOUR} +export PATH="$XercesC_ROOT/bin:$PATH" +export DYLD_LIBRARY_PATH="$XercesC_ROOT/lib:$DYLD_LIBRARY_PATH" #-------------------------------------------------------------------------------- # Geant4 #-------------------------------------------------------------------------------- -export G4INSTALL=${CLICREPO}/software/Geant4/10.05.p01/${BUILD_FLAVOUR} -export G4LIB=$G4INSTALL/lib/Geant4-10.5.1/ -export G4ENV_INIT="${G4INSTALL}/bin/geant4.sh" +export Geant4_ROOT=${CLICREPO}/software/Geant4/10.05.p01/${BUILD_FLAVOUR} +export G4LIB=$Geant4_ROOT/lib/Geant4-10.5.1/ +export G4ENV_INIT="${Geant4_ROOT}/bin/geant4.sh" export G4SYSTEM="Linux-g++" diff --git a/.dd4hep-ci.d/init_x86_64.sh b/.dd4hep-ci.d/init_x86_64.sh index 5bf64988b633e70d388d9fa0bf7ead5b66d74ac0..1657c891c10e43b363f88667b120586c4b882bbd 100644 --- a/.dd4hep-ci.d/init_x86_64.sh +++ b/.dd4hep-ci.d/init_x86_64.sh @@ -1,15 +1,7 @@ #!/bin/bash #Determine which OS you are using -if [ "$(uname)" == "Darwin" ]; then - if [ $(sw_vers -productVersion | awk -F '.' '{print $1 "." $2}') == "10.13" ]; then - OS=mac1013 - COMPILER_TYPE=llvm - COMPILER_VERSION=llvm90 - else - echo "Bootstrap only works on macOS High Sierra (10.13)" - fi -elif [ "$(uname)" == "Linux" ]; then +if [ "$(uname)" == "Linux" ]; then if [ "$( cat /etc/*-release | grep Scientific )" ]; then OS=slc6 elif [ "$( cat /etc/*-release | grep CentOS )" ]; then @@ -26,8 +18,8 @@ if [ ! -d "/cvmfs" ]; then exit 1 fi -if [ ! -d "/cvmfs/clicdp.cern.ch" ]; then - echo "No clicdp CVMFS repository detected, please add it." +if [ ! -d "/cvmfs/sft.cern.ch" ]; then + echo "No sft CVMFS repository detected, please add it." exit 1 fi @@ -37,10 +29,10 @@ if [ -z ${COMPILER_TYPE} ]; then COMPILER_TYPE="gcc" fi if [ ${COMPILER_TYPE} == "gcc" ]; then - COMPILER_VERSION="gcc7" + COMPILER_VERSION="gcc8" fi -if [[ ${COMPILER_TYPE} == "llvm" && ${OS} != "mac1013" ]]; then - COMPILER_VERSION="llvm5" +if [[ ${COMPILER_TYPE} == "clang" ]]; then + COMPILER_VERSION="clang8" fi @@ -51,32 +43,34 @@ fi # General variables -CLICREPO=/cvmfs/clicdp.cern.ch +LCGREPO=/cvmfs/sft.cern.ch/lcg/releases/LCG_96 BUILD_FLAVOUR=x86_64-${OS}-${COMPILER_VERSION}-${BUILD_TYPE} +export LD_LIBRARY_PATH=/cvmfs/sft.cern.ch/lcg/views/LCG_96/${BUILD_FLAVOUR}/lib64:/cvmfs/sft.cern.ch/lcg/views/LCG_96/${BUILD_FLAVOUR}/lib:$LD_LIBRARY_PATH + #-------------------------------------------------------------------------------- # Compiler #-------------------------------------------------------------------------------- -if [[ ${COMPILER_TYPE} == "gcc" && ${OS} != "mac1013" ]]; then - source ${CLICREPO}/compilers/gcc/7.3.0/x86_64-${OS}/setup.sh +if [[ ${COMPILER_TYPE} == "gcc" ]]; then + source /cvmfs/sft.cern.ch/lcg/releases/gcc/8.2.0-3fa06/x86_64-${OS}/setup.sh fi -if [[ ${COMPILER_TYPE} == "llvm" && ${OS} != "mac1013" ]]; then - source ${CLICREPO}/compilers/llvm/5.0.1/x86_64-${OS}/setup.sh +if [[ ${COMPILER_TYPE} == "clang" ]]; then + source /cvmfs/sft.cern.ch/lcg/releases/clang/8.0.0-ed577/x86_64-${OS}/setup.sh fi #-------------------------------------------------------------------------------- # CMake #-------------------------------------------------------------------------------- -export CMAKE_HOME=${CLICREPO}/software/CMake/3.9.5/${BUILD_FLAVOUR} +export CMAKE_HOME=${LCGREPO}/CMake/3.14.3/${BUILD_FLAVOUR} export PATH=${CMAKE_HOME}/bin:$PATH #-------------------------------------------------------------------------------- # Python #-------------------------------------------------------------------------------- -export PYTHONDIR=${CLICREPO}/software/Python/2.7.14/${BUILD_FLAVOUR} +export PYTHONDIR=${LCGREPO}/Python/2.7.16/${BUILD_FLAVOUR} export PATH=${PYTHONDIR}/bin:$PATH export LD_LIBRARY_PATH=${PYTHONDIR}/lib:${LD_LIBRARY_PATH} @@ -84,7 +78,8 @@ export LD_LIBRARY_PATH=${PYTHONDIR}/lib:${LD_LIBRARY_PATH} # ROOT #-------------------------------------------------------------------------------- -export ROOTSYS=${CLICREPO}/software/ROOT/6.12.06/${BUILD_FLAVOUR} +export ROOTSYS=${LCGREPO}/ROOT/6.18.00/${BUILD_FLAVOUR} +export ROOT_ROOT=$ROOTSYS export PYTHONPATH="$ROOTSYS/lib:$PYTHONPATH" export PATH="$ROOTSYS/bin:$PATH" export LD_LIBRARY_PATH="$ROOTSYS/lib:$LD_LIBRARY_PATH" @@ -93,28 +88,24 @@ export LD_LIBRARY_PATH="$ROOTSYS/lib:$LD_LIBRARY_PATH" # XercesC #-------------------------------------------------------------------------------- -export XercesC_HOME=${CLICREPO}/software/Xerces-C/3.2.0/${BUILD_FLAVOUR} -export PATH="$XercesC_HOME/bin:$PATH" -export LD_LIBRARY_PATH="$XercesC_HOME/lib:$LD_LIBRARY_PATH" - +export XercesC_ROOT=${LCGREPO}/XercesC/3.1.3/${BUILD_FLAVOUR} +export PATH="$XercesC_ROOT/bin:$PATH" +export LD_LIBRARY_PATH="$XercesC_ROOT/lib:$LD_LIBRARY_PATH" #-------------------------------------------------------------------------------- # Geant4 #-------------------------------------------------------------------------------- -#Determine which Geant4 version to use -if [ -z ${GEANT4_VERSION} ]; then -GEANT4_VERSION="10.04" -fi -export G4INSTALL=${CLICREPO}/software/Geant4/${GEANT4_VERSION}/${BUILD_FLAVOUR} -export G4ENV_INIT="${G4INSTALL}/bin/geant4.sh" +export Geant4_ROOT=${LCGREPO}/Geant4/10.05.p01/${BUILD_FLAVOUR} +export G4LIB=$Geant4_ROOT/lib/Geant4-10.5.1/ +export G4ENV_INIT="${Geant4_ROOT}/bin/geant4.sh" export G4SYSTEM="Linux-g++" #-------------------------------------------------------------------------------- # LCIO #-------------------------------------------------------------------------------- -export LCIO=${CLICREPO}/software/LCIO/2.11.0/${BUILD_FLAVOUR} +export LCIO=/cvmfs/clicdp.cern.ch/software/LCIO/2.12.1/x86_64-${OS}-${COMPILER_VERSION}-LCG_96 export PYTHONPATH=${LCIO}/python export PATH=${LCIO}/bin:$PATH export LD_LIBRARY_PATH="$LCIO/lib:$LD_LIBRARY_PATH" @@ -124,19 +115,19 @@ export LD_LIBRARY_PATH="$LCIO/lib:$LD_LIBRARY_PATH" # Boost #-------------------------------------------------------------------------------- -export BOOST_ROOT=${CLICREPO}/software/Boost/1.65.1/${BUILD_FLAVOUR} +export BOOST_ROOT=${LCGREPO}/Boost/1.70.0/${BUILD_FLAVOUR} export LD_LIBRARY_PATH="${BOOST_ROOT}/lib:$LD_LIBRARY_PATH" #-------------------------------------------------------------------------------- # Ninja #-------------------------------------------------------------------------------- -export Ninja_HOME=${CLICREPO}/software/Ninja/1.8.2/${BUILD_FLAVOUR} -export PATH="$Ninja_HOME:$PATH" +export Ninja_HOME=${LCGREPO}/ninja/1.9.0/${BUILD_FLAVOUR} +export PATH="$Ninja_HOME/bin:$PATH" #-------------------------------------------------------------------------------- # Doxygen #-------------------------------------------------------------------------------- -export Doxygen_HOME=${CLICREPO}/software/Doxygen/1.8.13/${BUILD_FLAVOUR} +export Doxygen_HOME=${LCGREPO}/doxygen/1.8.15/${BUILD_FLAVOUR} export PATH="$Doxygen_HOME/bin:$PATH" diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6fa96c9bb77fd60c6e607860084e41324845cb5e..5544921d46096b294fe303735f3712e6798d635a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,18 +3,16 @@ stages: - documentation - deployment -slc6-gcc7-Geant10.2: +slc6-gcc8-Geant10.5: stage: build tags: - docker - image: clicdp/slc6-base + image: clicdp/slc6-lcg script: - - export COMPILER_TYPE="gcc" - - export GEANT4_VERSION="10.02.p03" - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -22,23 +20,21 @@ slc6-gcc7-Geant10.2: - cd ../examples/ - mkdir build - cd build - - cmake -GNinja .. + - cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - ctest --output-on-failure -slc6-ggc7-Geant10.3: +centos7-gcc8-Geant10.5: stage: build tags: - docker - image: clicdp/slc6-base + image: clicdp/cc7-lcg script: - - export COMPILER_TYPE="gcc" - - export GEANT4_VERSION="10.03.p03" - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib64/Geant4-10.3.3 -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -46,23 +42,21 @@ slc6-ggc7-Geant10.3: - cd ../examples/ - mkdir build - cd build - - cmake -GNinja .. + - cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - ctest --output-on-failure -slc6-gcc7-Geant10.4-XERCESC: +centos7-gcc8-Geant10.5-XERCESC: stage: build tags: - docker - image: clicdp/slc6-base + image: clicdp/cc7-lcg script: - - export COMPILER_TYPE="gcc" - - export GEANT4_VERSION="10.04" - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib64/Geant4-10.4.0 -DCMAKE_CXX_STANDARD=14 -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -70,24 +64,23 @@ slc6-gcc7-Geant10.4-XERCESC: - cd ../examples/ - mkdir build - cd build - - cmake -GNinja -DXERCESC_ROOT_DIR=${XercesC_HOME} .. + - cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_XERCESC=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - ctest --output-on-failure -slc6-llvm5-Geant10.4: +centos7-clang8-Geant10.5-XERCESC: stage: build tags: - docker - image: clicdp/slc6-base + image: clicdp/cc7-lcg script: - - export COMPILER_TYPE="llvm" - - export GEANT4_VERSION="10.04" + - export COMPILER_TYPE="clang" - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib64/Geant4-10.4.0 -DCMAKE_CXX_STANDARD=14 -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -95,31 +88,7 @@ slc6-llvm5-Geant10.4: - cd ../examples/ - mkdir build - cd build - - cmake -GNinja .. - - ninja - - ninja install - - ctest --output-on-failure - -slc6-llvm5-Geant10.3-XERCESC: - stage: build - tags: - - docker - image: clicdp/slc6-base - script: - - export COMPILER_TYPE="llvm" - - export GEANT4_VERSION="10.03.p03" - - source .dd4hep-ci.d/init_x86_64.sh - - mkdir build - - cd build - - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib64/Geant4-10.3.3 -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. - - ninja - - ninja install - - . ../bin/thisdd4hep.sh - - ctest --output-on-failure -j4 - - cd ../examples/ - - mkdir build - - cd build - - cmake -GNinja -DXERCESC_ROOT_DIR=${XercesC_HOME} .. + - cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_XERCESC=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - ctest --output-on-failure @@ -132,7 +101,7 @@ mac1014-clang100-Geant10.5: - source .dd4hep-ci.d/init_mac.sh - mkdir build - cd build - - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib/Geant4-10.5.1 -DCMAKE_CXX_STANDARD=14 -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS -DCMAKE_CXX_STANDARD=17 .. + - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib/Geant4-10.5.1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -140,7 +109,7 @@ mac1014-clang100-Geant10.5: - cd ../examples/ - mkdir build - cd build - - cmake -DBoost_NO_BOOST_CMAKE=ON -GNinja .. + - cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - ctest --output-on-failure @@ -153,7 +122,7 @@ mac1014-clang100-Geant10.5-XERCESC: - source .dd4hep-ci.d/init_mac.sh - mkdir build - cd build - - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DGeant4_DIR=$G4INSTALL/lib/Geant4-10.5.1 -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS -DCMAKE_CXX_STANDARD=17 .. + - cmake -GNinja -DDD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=ON -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -161,7 +130,7 @@ mac1014-clang100-Geant10.5-XERCESC: - cd ../examples/ - mkdir build - cd build - - cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} .. + - cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_XERCESC=ON -DCMAKE_CXX_STANDARD=17 .. - ninja - ninja install - ctest --output-on-failure @@ -178,7 +147,7 @@ doxygen: stage: documentation tags: - docker - image: clicdp/slc6-build + image: clicdp/cc7-lcg script: - source .dd4hep-ci.d/init_x86_64.sh - mkdir -p public diff --git a/.travis.yml b/.travis.yml index a6fe3bf3c2309823de75639f4f42a04a7f27a5a6..51b62fb98b551e1982617d749aadc40a6853cc05 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,7 +9,7 @@ language: cpp env: matrix: - COMPILER=gcc - - COMPILER=llvm + - COMPILER=clang before_install: - wget --no-check-certificate https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/cvmfs-release-latest_all.deb @@ -22,8 +22,14 @@ before_install: - sudo mv default.local /etc/cvmfs/default.local - sudo /etc/init.d/autofs stop - sudo cvmfs_config setup + - sudo mkdir -p /cvmfs/sft.cern.ch + - sudo mkdir -p /cvmfs/geant4.cern.ch - sudo mkdir -p /cvmfs/clicdp.cern.ch + - sudo mount -t cvmfs sft.cern.ch /cvmfs/sft.cern.ch + - sudo mount -t cvmfs geant4.cern.ch /cvmfs/geant4.cern.ch - sudo mount -t cvmfs clicdp.cern.ch /cvmfs/clicdp.cern.ch + - ls /cvmfs/sft.cern.ch + - ls /cvmfs/geant4.cern.ch - ls /cvmfs/clicdp.cern.ch # command to install dependencies @@ -36,7 +42,7 @@ install: # command to run tests script: - - docker run -ti --name CI_container -v $PKGDIR:/DD4hep -e COMPILER_TYPE=$COMPILER -v /cvmfs/clicdp.cern.ch:/cvmfs/clicdp.cern.ch -d clicdp/slc6-build /bin/bash + - docker run -ti --name CI_container -v $PKGDIR:/DD4hep -e COMPILER_TYPE=$COMPILER -v /cvmfs/sft.cern.ch:/cvmfs/sft.cern.ch -v /cvmfs/geant4.cern.ch:/cvmfs/geant4.cern.ch -v /cvmfs/clicdp.cern.ch:/cvmfs/clicdp.cern.ch -d clicdp/cc7-lcg /bin/bash - docker exec -ti CI_container /bin/bash -c "./DD4hep/.dd4hep-ci.d/compile_and_test.sh" - if [[ "${TRAVIS_EVENT_TYPE}" != "cron" && "${TRAVIS_EVENT_TYPE}" != "pull_request" && "${COMPILER}" == "gcc" && "${TRAVIS_REPO_SLUG%/*}" == "AIDASoft" ]]; then curl -X POST -F token=$GITLAB_TOKEN -F ref=master https://gitlab.cern.ch/api/v4/projects/7828/trigger/pipeline; diff --git a/CMakeLists.txt b/CMakeLists.txt index 583db0171579feb09b5a9d52a87bd9fffc31d9b3..5594cff69071ffeca359e3b60d14122fa2db77f6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,7 @@ cmake_minimum_required(VERSION 3.4.3 FATAL_ERROR) - +if (POLICY CMP0074) + cmake_policy(SET CMP0074 NEW) # CMake 3.12 +endif () PROJECT( DD4hep LANGUAGES NONE) ################# diff --git a/cmake/DD4hep.cmake b/cmake/DD4hep.cmake index faa2a77d5b2f7861e941a43d8557183f0e2cd521..7f45928f9df8fe29c45ed52256629f4c7fb15f26 100644 --- a/cmake/DD4hep.cmake +++ b/cmake/DD4hep.cmake @@ -10,6 +10,10 @@ # #================================================================================= +if (POLICY CMP0074) + cmake_policy(SET CMP0074 NEW) # CMake 3.12 +endif () + #--------------------------------------------------------------------------------------------------- if ( DD4hep_DIR ) set ( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${DD4hep_DIR}/cmake ) diff --git a/cmake/FindXercesC.cmake b/cmake/FindXercesC.cmake deleted file mode 100644 index 09dca4299e1212dcf69eee1fe10c8c3cbffd4be5..0000000000000000000000000000000000000000 --- a/cmake/FindXercesC.cmake +++ /dev/null @@ -1,79 +0,0 @@ -# - Find Xerces-C -# This module tries to find the Xerces-C library and headers. -# Once done this will define -# -# XERCESC_FOUND - system has Xerces-C headers and libraries -# XERCESC_INCLUDE_DIRS - the include directories needed for Xerces-C -# XERCESC_LIBRARIES - the libraries needed to use Xerces-C -# -# Variables used by this module, which can change the default behaviour and -# need to be set before calling find_package: -# -# XERCESC_ROOT_DIR Root directory to Xerces-C installation. Will -# be used ahead of CMake default path. -# -# The following advanced variables may be used if the module has difficulty -# locating Xerces-C or you need fine control over what is used. -# -# XERCESC_INCLUDE_DIR -# -# XERCESC_LIBRARY -# -# Copyright (c) 2009, Ben Morgan, <Ben.Morgan@warwick.ac.uk> -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - - -# Look for the header - preferentially searching below XERCESC_ROOT_DIR -find_path( - XERCESC_INCLUDE_DIR - NAMES xercesc/util/XercesVersion.hpp - PATHS ${XERCESC_ROOT_DIR} - PATH_SUFFIXES include - NO_DEFAULT_PATH -) - -# If we didn't find it there, fall back to some standard search paths -find_path( - XERCESC_INCLUDE_DIR - NAMES xercesc/util/XercesVersion.hpp -) - -# Look for the library, preferentially searching below XERCESC_ROOT_DIR -find_library( - XERCESC_LIBRARY - NAMES xerces-c xerces-c_3 - PATHS ${XERCESC_ROOT_DIR} - PATH_SUFFIXES lib64 lib32 lib - NO_DEFAULT_PATH -) - -find_library( - XERCESC_LIBRARY - NAMES xerces-c xerces-c_3 -) - - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args( - XercesC - DEFAULT_MSG - XERCESC_LIBRARY - XERCESC_INCLUDE_DIR -) - -if (XERCESC_FOUND) - set(XERCESC_LIBRARIES ${XERCESC_LIBRARY}) - set(XERCESC_INCLUDE_DIRS ${XERCESC_INCLUDE_DIR}) -else (XERCESC_FOUND) - set(XERCESC_LIBRARIES) - set(XERCESC_INCLUDE_DIRS) -endif (XERCESC_FOUND) - - -mark_as_advanced( - XERCESC_LIBRARY - XERCESC_INCLUDE_DIR -) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index 7d862ed3117168a8d632171b161fc7deafaaf9c4..3dcffb0d1d72fdccfcc625202457740cf725cf68 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -22,9 +22,6 @@ # M.Frank, CERN, 2015: Adapt to new cmake scripts #========================================================================== cmake_minimum_required(VERSION 3.3 FATAL_ERROR) -if (POLICY CMP0074) - cmake_policy(SET CMP0074 NEW) # CMake 3.12 -endif () project( DD4hep_Examples ) diff --git a/examples/DDCMS/CMakeLists.txt b/examples/DDCMS/CMakeLists.txt index ae967864186885e95e661aa72745d53fb5fccb7a..138581dc3b0d031bd5f4a4b76e8a8e84ea31c4d3 100644 --- a/examples/DDCMS/CMakeLists.txt +++ b/examples/DDCMS/CMakeLists.txt @@ -28,7 +28,7 @@ endif() dd4hep_package( DDCMS USES [DD4hep REQUIRED COMPONENTS DDCore] [ROOT REQUIRED COMPONENTS Geom GenVector] - OPTIONAL ${CLHEP} + OPTIONAL ${CLHEP} XERCESC INCLUDE_DIRS include INSTALL_INCLUDES include/DDCMS) # @@ -41,7 +41,8 @@ dd4hep_package( DDCMS #---DDCMS plugin library ------------------------------------------------------- dd4hep_add_plugin ( DDCMS SOURCES src/*.cpp src/plugins/*.cpp USES [DD4hep REQUIRED COMPONENTS DDCore DDAlign DDCond] - [ROOT REQUIRED COMPONENTS Geom GenVector]) + [ROOT REQUIRED COMPONENTS Geom GenVector] +OPTIONAL XERCESC) #---Package installation procedure(s) ----------------------------------------- dd4hep_install_dir( data DESTINATION ${DD4hep_DIR}/examples/DDCMS ) diff --git a/examples/DDCodex/CMakeLists.txt b/examples/DDCodex/CMakeLists.txt index b24ab73127a0c985e0e42742837ac6a848cbc245..9899701da4e5056e718dc2a7f8ab9e420fe8b066 100755 --- a/examples/DDCodex/CMakeLists.txt +++ b/examples/DDCodex/CMakeLists.txt @@ -16,12 +16,14 @@ dd4hep_configure_output () dd4hep_package ( DDCodex MAJOR 0 MINOR 0 PATCH 1 USES [ROOT REQUIRED COMPONENTS Geom] [DD4hep REQUIRED COMPONENTS DDCore] + OPTIONAL XERCESC ) # #---DDCodex plugin library ------------------------------------------------------- dd4hep_add_plugin(DDCodexPlugins SOURCES src/*.cpp USES [ROOT REQUIRED COMPONENTS Geom GenVector] + OPTIONAL XERCESC ) # #