diff --git a/.gitlab-ci.d/init_x86_64.sh b/.gitlab-ci.d/init_x86_64.sh index 5e5a961b10b9f879970aa21f1c68db5674103a91..cc63e4549237e4598f5dee4f31346621b28a3956 100644 --- a/.gitlab-ci.d/init_x86_64.sh +++ b/.gitlab-ci.d/init_x86_64.sh @@ -100,5 +100,9 @@ export LD_LIBRARY_PATH="$LCIO/lib:$LD_LIBRARY_PATH" export BOOST_ROOT=${CLICREPO}/software/Boost/1.61.0/${BUILD_FLAVOUR} export LD_LIBRARY_PATH="${BOOST_ROOT}/lib:$LD_LIBRARY_PATH" +#-------------------------------------------------------------------------------- +# Ninja +#-------------------------------------------------------------------------------- - +export Ninja_HOME=${CLICREPO}/software/Ninja/1.7.1/${BUILD_FLAVOUR} +export PATH="$Ninja_HOME:$PATH" diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 42a962d5915edbed493fc6a87e64b3a3a914848e..c6c64bcbfecbff897f11d6c727bb333d37082b2a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,18 +8,18 @@ slc6-gcc48: - source .gitlab-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -DCLHEP_DIR=$CLHEP -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.1.3 -D DD4HEP_USE_CXX11=ON .. - - make -j4 - - make install + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -DCLHEP_DIR=$CLHEP -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.1.3 -D DD4HEP_USE_CXX11=ON .. + - ninja + - ninja install - . ../bin/thisdd4hep.sh - - make test + - ctest --output-on-failure - cd ../examples/ - mkdir build - cd build - - cmake .. - - make -j4 - - make install - - make test + - cmake -GNinja .. + - ninja + - ninja install + - ctest --output-on-failure - cd ../.. - rm -rf .git - sshpass -p $CLICTEL_PASS rsync -arv -e ssh --delete . clictel@lxplus:/afs/cern.ch/eng/clic/software/DD4hep/x86_64-slc6-gcc48-opt @@ -34,18 +34,18 @@ slc6-gcc49: - source .gitlab-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -DCLHEP_DIR=$CLHEP -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.1.3 -D DD4HEP_USE_CXX11=ON .. - - make -j3 - - make install + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -DCLHEP_DIR=$CLHEP -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.1.3 -D DD4HEP_USE_CXX11=ON .. + - ninja + - ninja install - . ../bin/thisdd4hep.sh - - make test + - ctest --output-on-failure - cd ../examples/ - mkdir build - cd build - - cmake .. - - make -j4 - - make install - - make test + - cmake -GNinja .. + - ninja + - ninja install + - ctest --output-on-failure - cd ../.. - rm -rf .git - sshpass -p $CLICTEL_PASS rsync -arv -e ssh --delete . clictel@lxplus:/afs/cern.ch/eng/clic/software/DD4hep/x86_64-slc6-gcc49-opt @@ -60,18 +60,18 @@ centos7-gcc49: - source .gitlab-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -DCLHEP_DIR=$CLHEP -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.1.3 -D DD4HEP_USE_CXX11=ON .. - - make -j3 - - make install + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -DCLHEP_DIR=$CLHEP -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.1.3 -D DD4HEP_USE_CXX11=ON .. + - ninja + - ninja install - . ../bin/thisdd4hep.sh - - make test + - ctest --output-on-failure - cd ../examples/ - mkdir build - cd build - - cmake .. - - make -j4 - - make install - - make test + - cmake -GNinja .. + - ninja + - ninja install + - ctest --output-on-failure - cd ../.. - rm -rf .git - sshpass -p $CLICTEL_PASS rsync -arv -e ssh --delete . clictel@lxplus:/afs/cern.ch/eng/clic/software/DD4hep/x86_64-centos7-gcc49-opt diff --git a/cmake/DD4hepBuild.cmake b/cmake/DD4hepBuild.cmake index 1246462c527610165d7f902c59ba5004edaccda7..bd9830f725a335324195914d41655c8741542073 100644 --- a/cmake/DD4hepBuild.cmake +++ b/cmake/DD4hepBuild.cmake @@ -26,18 +26,23 @@ endmacro(dd4hep_to_parent_scope) macro(dd4hep_set_compiler_flags) if ( DD4HEP_USE_CXX14 ) set ( CMAKE_CXX_FLAGS "-std=c++14 -ftls-model=global-dynamic -Wall -Wextra -pedantic -Wshadow -Wformat-security -Wno-long-long -Wdeprecated") - ##set ( CMAKE_CXX_FLAGS "-std=c++14 -Wall -Wextra -pedantic -Wshadow -Wformat-security -Wno-long-long -Wdeprecated") set ( DD4HEP_USE_CXX11 OFF ) set ( DD4HEP_USE_STDCXX 14 ) add_definitions(-DDD4HEP_USE_STDCXX=14) elseif ( DD4HEP_USE_CXX11 ) set ( CMAKE_CXX_FLAGS "-std=c++11 -ftls-model=global-dynamic -Wall -Wextra -pedantic -Wshadow -Wformat-security -Wno-long-long -Wdeprecated") - ##set ( CMAKE_CXX_FLAGS "-std=c++11 -Wall -Wextra -pedantic -Wshadow -Wformat-security -Wno-long-long -Wdeprecated") set ( DD4HEP_USE_STDCXX 11 ) add_definitions(-DDD4HEP_USE_STDCXX=11) else() set( CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic -Wshadow -Wformat-security -Wno-long-long -Wdeprecated") endif() + + if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.8) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-color=always") + endif() + endif() + endmacro(dd4hep_set_compiler_flags) #--------------------------------------------------------------------------------------------------- # dd4hep_debug