# vim: set ts=4 sw=4 expandtab: image: gcc variables: GIT_STRATEGY: fetch before_script: - apt-get update --yes - apt-get install --yes cmake python3 qt5-default libqwt-qt5-dev sqlite3 stages: - build - tests - coverage build: stage: build script: - git submodule sync - git submodule update --init --recursive - rm -rf build - mkdir -p build - cd build - cmake -DDRAMSYS_COVERAGE_CHECK=ON ../DRAMSys - make -j 16 - find . -name "*.o" -type f -delete - rm -rf ${CI_PROJECT_DIR}/coverage - mkdir -p ${CI_PROJECT_DIR}/coverage cache: key: build paths: - build/ policy: push artifacts: paths: - coverage/ coverage: stage: coverage coverage: '/Total:\|(\d+\.?\d+\%)/' script: # delete all empty files since they produce errors - find coverage -size 0 -type f -delete - ls coverage/ -lah - lcov `find coverage -type f -exec echo "-a {}" \;` -o coverage/final.out - lcov --remove coverage/final.out '*/systemc*/include/*' '*/traceAnalyzer/*' '*/gcc*/include/*' '/usr/include/*' '*/third_party/*' -o coverage/final_dramsys.out - lcov --list coverage/final_dramsys.out artifacts: paths: - coverage/final.out - coverage/final_dramsys.out include: - '/DRAMSys/tests/lpddr4/ci.yml' - '/DRAMSys/tests/ddr3_multirank/ci.yml' - '/DRAMSys/tests/DDR4/ci.yml' - '/DRAMSys/tests/HBM2/ci.yml' #- '/DRAMSys/tests/dramsys-gem5/ci.yml' # Should be activated again when a new gitlab runner with right dependencies is used