From 414698d75b6324fc361a8b3cdbb5027aa37d09a7 Mon Sep 17 00:00:00 2001 From: tmadlener Date: Mon, 12 Jun 2023 17:08:23 +0200 Subject: [PATCH 1/7] Switch to dd4hep::CellID from dd4hep::long64 --- Tracking/src/HitResiduals.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tracking/src/HitResiduals.cc b/Tracking/src/HitResiduals.cc index 92cd03e..77698af 100644 --- a/Tracking/src/HitResiduals.cc +++ b/Tracking/src/HitResiduals.cc @@ -218,7 +218,7 @@ void HitResiduals::processEvent( LCEvent * evt ) { for( EVENT::TrackerHitVec::iterator it = trkHits.begin(); it != trkHits.end(); ++it ){ - dd4hep::long64 id = (*it)->getCellID0() ; + const dd4hep::CellID id = (*it)->getCellID0() ; cellid_decoder.setValue( id ) ; streamlog_out(DEBUG1) << "id = " << id << std::endl; From b3279f1077b8ae646e4db4f5c5908c72b9451c89 Mon Sep 17 00:00:00 2001 From: tmadlener Date: Mon, 12 Jun 2023 17:08:39 +0200 Subject: [PATCH 2/7] Remove unused and deprecated functionality --- Tracking/include/fpcompare.h | 96 ------------------------------------ 1 file changed, 96 deletions(-) diff --git a/Tracking/include/fpcompare.h b/Tracking/include/fpcompare.h index 6b1ca8f..fff4a4e 100644 --- a/Tracking/include/fpcompare.h +++ b/Tracking/include/fpcompare.h @@ -122,102 +122,6 @@ bool less_equal (float a, float b) } // namespace fpcompare - - -namespace fpcompare_fn { - - -struct equal - : public std::binary_function -{ - bool - operator()(double a, double b) const - { return fpcompare::equal (a, b); } -}; - - -struct equalf - : public std::binary_function -{ - bool - operator()(float a, float b) const - { return fpcompare::equal (a, b); } -}; - - -struct greater - : public std::binary_function -{ - bool - operator()(double a, double b) const - { return fpcompare::greater (a, b); } -}; - - -struct greaterf - : public std::binary_function -{ - bool - operator()(float a, float b) const - { return fpcompare::greater (a, b); } -}; - - -struct less - : public std::binary_function -{ - bool - operator()(double a, double b) const - { return fpcompare::less (a, b); } -}; - - -struct lessf - : public std::binary_function -{ - bool - operator()(float a, float b) const - { return fpcompare::less (a, b); } -}; - - -struct greater_equal - : public std::binary_function -{ - bool - operator()(double a, double b) const - { return fpcompare::greater_equal (a, b); } -}; - - -struct greater_equalf - : public std::binary_function -{ - bool - operator()(float a, float b) const - { return fpcompare::greater_equal (a, b); } -}; - - -struct less_equal - : public std::binary_function -{ - bool - operator()(double a, double b) const - { return fpcompare::less_equal (a, b); } -}; - - -struct less_equalf - : public std::binary_function -{ - bool - operator()(float a, float b) const - { return fpcompare::less_equal (a, b); } -}; - - -} // namespace fpcompare_fn } // namespace CxxUtils From 209500dd82ef1c92da9d4ee72f4ed76bcf45506a Mon Sep 17 00:00:00 2001 From: tmadlener Date: Tue, 13 Jun 2023 09:04:39 +0200 Subject: [PATCH 3/7] [CI] Add github actions based workflows --- .github/workflows/key4hep.yml | 31 +++++++++++++++++++++++++++++++ .github/workflows/linux.yml | 26 ++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 .github/workflows/key4hep.yml create mode 100644 .github/workflows/linux.yml diff --git a/.github/workflows/key4hep.yml b/.github/workflows/key4hep.yml new file mode 100644 index 0000000..4bc1bf5 --- /dev/null +++ b/.github/workflows/key4hep.yml @@ -0,0 +1,31 @@ +name: keyh4ep +on: [push, pull_request] + +jobs: + build-and-test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + + steps: + - uses: actions/checkout@v3 + - uses: cvmfs-contrib/github-action-cvmfs@v3 + - uses: aidasoft/run-lcg-view@v4 + with: + container: centos7 + view-path: /cvmfs/sw-nightlies.hsf.org/key4hep + run: | + mkdir build + cd build + echo "::group::Run CMake" + cmake -GNinja \ + -DCMAKE_CXX_FLAGS=" -fdiagnostics-color=always " \ + -DCMAKE_CXX_STANDARD=17 \ + -DCMAKE_INSTALL_PREFIX=../install \ + .. + echo "::endgroup::" && echo "::group::Build" + ninja -k0 + echo "::endgroup::" && echo "::group::Install" + ninja install + echo "::endgroup::" && echo "::group::Run Tests" + ctest --output-on-failure diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml new file mode 100644 index 0000000..82fa6f5 --- /dev/null +++ b/.github/workflows/linux.yml @@ -0,0 +1,26 @@ +name: linux +on: [push, pull_request] + +jobs: + centos7: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + COMPILER: [gcc10, clang11] + LCG: [100] + + steps: + - uses: actions/checkout@v3 + - uses: cvmfs-contrib/github-action-cvmfs@v3 + - uses: aidasoft/run-lcg-view@v4 + with: + view-path: "/cvmfs/clicdp.cern.ch/iLCSoft/lcg/${{ matrix.LCG }}/nightly/x86_64-centos7-${{ matrix.COMPILER }}-opt" + setup-script: "init_ilcsoft.sh" + run: | + mkdir build + cd build + cmake -GNinja -C ${ILCSOFT}/ILCSoft.cmake -DCMAKE_CXX_FLAGS=" -fdiagnostics-color=always " .. + ninja -k0 + ninja install + ctest --output-on-failure From 3add5caccbfbfe8b20102f44f91fc00f3961a639 Mon Sep 17 00:00:00 2001 From: tmadlener Date: Tue, 13 Jun 2023 09:07:12 +0200 Subject: [PATCH 4/7] [CI] Add coverity workflow TODO: migrate secret --- .github/workflows/coverity.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/workflows/coverity.yml diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml new file mode 100644 index 0000000..b286014 --- /dev/null +++ b/.github/workflows/coverity.yml @@ -0,0 +1,21 @@ +name: coverity + +on: + schedule: + - cron: '0 0 * * *' + +jobs: + run-coverity: + runs-on: ubuntu-latest + if: github.repository == 'iLCSoft/CLICPerformance' + steps: + - uses: actions/checkout@v3 + - uses: cvmfs-contrib/github-action-cvmfs@v3 + - uses: aidasoft/run-lcg-view@v4 + with: + coverity-cmake-command: 'cmake -C $ILCSOFT/ILCSoft.cmake ..' + coverity-project: 'iLCSoft%2FCLICPerformance' + coverity-project-token: ${{ secrets.CLICPERFORMANCE_COVERITY_TOKEN }} + github-pat: ${{ secrets.READ_COVERITY_IMAGE }} + view-path: "/cvmfs/clicdp.cern.ch/iLCSoft/lcg/100/nightly/x86_64-centos7-gcc10-opt" + setup-script: "init_ilcsoft.sh" From 96743e44e200f529c166c76461312b3e57bfb5d2 Mon Sep 17 00:00:00 2001 From: tmadlener Date: Tue, 13 Jun 2023 09:07:52 +0200 Subject: [PATCH 5/7] [CI] Remove travis-ci setup --- .travis-ci.d/compile_and_test.sh | 12 ------ .travis-ci.d/coverity_scan.sh | 12 ------ .travis.yml | 66 -------------------------------- 3 files changed, 90 deletions(-) delete mode 100755 .travis-ci.d/compile_and_test.sh delete mode 100755 .travis-ci.d/coverity_scan.sh delete mode 100644 .travis.yml diff --git a/.travis-ci.d/compile_and_test.sh b/.travis-ci.d/compile_and_test.sh deleted file mode 100755 index adc39a6..0000000 --- a/.travis-ci.d/compile_and_test.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -ILCSOFT=/cvmfs/clicdp.cern.ch/iLCSoft/builds/current/CI_${COMPILER} -source $ILCSOFT/init_ilcsoft.sh - -cd /Package -mkdir build -cd build -cmake -GNinja -C $ILCSOFT/ILCSoft.cmake -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always -Werror" .. && \ -ninja && \ -ninja install && \ -ctest --output-on-failure diff --git a/.travis-ci.d/coverity_scan.sh b/.travis-ci.d/coverity_scan.sh deleted file mode 100755 index 8ee8bf1..0000000 --- a/.travis-ci.d/coverity_scan.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -ILCSOFT=/cvmfs/clicdp.cern.ch/iLCSoft/builds/current/CI_${COMPILER} -source $ILCSOFT/init_ilcsoft.sh - -cd /Package -mkdir build -cd build -cmake -C $ILCSOFT/ILCSoft.cmake -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always" .. && \ -export PATH=/Package/cov-analysis-linux64/bin:$PATH && \ -cov-build --dir cov-int make -j2 && \ -tar czvf myproject.tgz cov-int diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 9e8c27b..0000000 --- a/.travis.yml +++ /dev/null @@ -1,66 +0,0 @@ -sudo: required -dist: trusty - -services: - - docker - -language: cpp - -env: - matrix: - - COMPILER=gcc - - COMPILER=llvm - - -before_install: - - wget https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/cvmfs-release-latest_all.deb - - sudo dpkg -i cvmfs-release-latest_all.deb - - sudo apt-get update - - sudo apt-get install cvmfs cvmfs-config-default - - rm -f cvmfs-release-latest_all.deb - - wget https://lcd-data.web.cern.ch/lcd-data/CernVM/default.local - - sudo mkdir -p /etc/cvmfs - - sudo mv default.local /etc/cvmfs/default.local - - sudo /etc/init.d/autofs stop - - sudo cvmfs_config setup - - sudo mkdir -p /cvmfs/clicdp.cern.ch - - sudo mkdir -p /cvmfs/geant4.cern.ch - - sudo mkdir -p /cvmfs/sft.cern.ch - - sudo mount -t cvmfs clicdp.cern.ch /cvmfs/clicdp.cern.ch - - sudo mount -t cvmfs geant4.cern.ch /cvmfs/geant4.cern.ch - - sudo mount -t cvmfs sft.cern.ch /cvmfs/sft.cern.ch - - ls /cvmfs/clicdp.cern.ch - - ls /cvmfs/geant4.cern.ch - - ls /cvmfs/sft.cern.ch/lcg - -# command to install dependencies -install: - - shopt -s extglob dotglob - - mkdir Package - - mv !(Package) Package - - shopt -u dotglob - - export PKGDIR=${PWD}/Package - - export description=`date` - - export COVERITY_REPO=`echo ${TRAVIS_REPO_SLUG} | sed 's/\//\%2F/g'` - - if [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "gcc" ]]; - then wget https://scan.coverity.com/download/linux64 --post-data "token=${COVERITY_SCAN_TOKEN}&project=${COVERITY_REPO}" -O Package/coverity_tool.tgz; cd Package; mkdir cov-analysis-linux64; tar -xf coverity_tool.tgz -C cov-analysis-linux64 --strip-components=1; - fi - -# command to run tests -script: - - docker run -it --name CI_container -v $PKGDIR:/Package -e COMPILER=$COMPILER -v /cvmfs:/cvmfs -d clicdp/cc7-lcg /bin/bash - - if [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "gcc" ]]; - then docker exec -it CI_container /bin/bash -c "./Package/.travis-ci.d/coverity_scan.sh"; - elif [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "llvm" ]]; - then echo "Running the weekly Coverity Scan, no LLVM/Clang build this time"; - else docker exec -it CI_container /bin/bash -c "./Package/.travis-ci.d/compile_and_test.sh"; - fi - - if [[ "${TRAVIS_EVENT_TYPE}" == "cron" && "${COMPILER}" == "gcc" ]]; - then curl --form token=${COVERITY_SCAN_TOKEN} --form email=noreply@cern.ch --form file=@${PKGDIR}/build/myproject.tgz --form version="master" --form description="${description}" https://scan.coverity.com/builds?project=${COVERITY_REPO} ; - fi - -# Don't send e-mail notifications -notifications: - email: - on_success: never - on_failure: always From 481acf6ff167f70a49587e73b96772e455777693 Mon Sep 17 00:00:00 2001 From: tmadlener Date: Tue, 13 Jun 2023 09:31:50 +0200 Subject: [PATCH 6/7] Make sure to pick up the correct LCIO and DD4hep --- CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4d40e97..e04c880 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,6 +37,8 @@ INCLUDE_DIRECTORIES( SYSTEM ${Marlin_INCLUDE_DIRS} ) LINK_LIBRARIES( ${Marlin_LIBRARIES} ) ADD_DEFINITIONS( ${Marlin_DEFINITIONS} ) +INCLUDE_DIRECTORIES( BEFORE SYSTEM ${LCIO_INCLUDE_DIRS} ) + FIND_PACKAGE( MarlinTrk REQUIRED ) INCLUDE_DIRECTORIES( SYSTEM ${MarlinTrk_INCLUDE_DIRS} ) LINK_LIBRARIES( ${MarlinTrk_LIBRARIES} ) @@ -55,7 +57,7 @@ if(DD4HEP_USE_XERCESC) find_package(XercesC) endif() include(DD4hep_XML_setup) -INCLUDE_DIRECTORIES( SYSTEM ${DD4hep_INCLUDE_DIRS} ) +INCLUDE_DIRECTORIES( BEFORE SYSTEM ${DD4hep_INCLUDE_DIRS} ) LINK_LIBRARIES( ${DD4hep_LIBRARIES} ${DD4hep_COMPONENT_LIBRARIES} ) OPTION( MARLINRECO_AIDA "Set to ON to build MarlinReco with AIDA" ON ) From c513632bbfbdb9b376c337bce17f439407976f34 Mon Sep 17 00:00:00 2001 From: tmadlener Date: Tue, 13 Jun 2023 10:24:37 +0200 Subject: [PATCH 7/7] [CI] Fix badge in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1fc3807..96facc2 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # CLICPerformance -[![Build Status](https://travis-ci.org/iLCSoft/CLICPerformance.svg?branch=master)](https://travis-ci.org/iLCSoft/CLICPerformance) +[![linux](https://github.com/iLCSoft/CLICPerformance/actions/workflows/linux.yml/badge.svg)](https://github.com/iLCSoft/CLICPerformance/actions/workflows/linux.yml) [![Build Status](https://scan.coverity.com/projects/12340/badge.svg)](https://scan.coverity.com/projects/ilcsoft-clicperformance) Package containing processors and configurations to determine the performance of the CLIC detector model