From 4f76ff9d584e5e2d58477925fa2c15d3fe4c1a14 Mon Sep 17 00:00:00 2001 From: Marko Petric <marko.petric@cern.ch> Date: Fri, 24 Jun 2016 11:24:43 +0000 Subject: [PATCH] Add diagnostic color to gcc 4.9 and move CI build to Ninja and add output on failure to tests --- .gitlab-ci.d/init_x86_64.sh | 6 ++++- .gitlab-ci.yml | 48 ++++++++++++++++++------------------- cmake/DD4hepBuild.cmake | 9 +++++-- 3 files changed, 36 insertions(+), 27 deletions(-) diff --git a/.gitlab-ci.d/init_x86_64.sh b/.gitlab-ci.d/init_x86_64.sh index 5e5a961b1..cc63e4549 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 42a962d59..c6c64bcbf 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 1246462c5..bd9830f72 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 -- GitLab