diff --git a/includes/build-jobs.yml b/includes/build-jobs.yml index ae353dbad71813f86fcac5fc142acdfcef502199..b8081eb16c24b11e041e29264011e6a452ec4a8d 100644 --- a/includes/build-jobs.yml +++ b/includes/build-jobs.yml @@ -19,7 +19,7 @@ build-codec-linux-clang-make: script: - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/activate-Werror-linux.sh - - make -j CLANG=0 + - make -j build-codec-linux-gcc-make: rules: @@ -37,7 +37,7 @@ build-codec-linux-gcc-make: script: - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/activate-Werror-linux.sh - - make -j + - CC=gcc make -j # ensure that codec builds on linux with cmake build-codec-linux-clang-cmake: @@ -59,7 +59,7 @@ build-codec-linux-clang-cmake: bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/update-scripts-repo.sh fi - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/activate-Werror-linux.sh - - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=0 + - cmake -B cmake-build -G "Unix Makefiles" - cmake --build cmake-build -- -j # ensure that codec builds on linux with instrumentation active @@ -85,7 +85,7 @@ build-codec-linux-instrumented-clang-make: INSTRUMENTATION_ARGS="-m MEM_ONLY" fi - bash scripts/prepare_instrumentation.sh $INSTRUMENTATION_ARGS - - make -j -C $INSTR_DIR CLANG=0 + - make -j -C $INSTR_DIR # make sure that the codec builds with msan, asan and usan build-codec-sanitizers-clang-linux: @@ -125,7 +125,7 @@ build-codec-linux-debugging-clang-make: script: - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/enable-debugging-macro.sh - - make -j CLANG=0 + - make -j build-codec-windows-msbuild: rules: diff --git a/main-basop.yml b/main-basop.yml index e6dead6b3ff38aa186e887ba9eeb88882f199726..1908c677fa8e6db3d7bf0069525d58b9729b7251 100644 --- a/main-basop.yml +++ b/main-basop.yml @@ -2302,7 +2302,7 @@ ivas-smoke-test-saturation: expose_as: "saturation smoke test results" -# GCOV/LCOV coverage analysis of self_test suite +# coverage analysis of self_test suite coverage-test-on-main-scheduled: extends: - .test-job-linux @@ -2312,9 +2312,9 @@ coverage-test-on-main-scheduled: script: - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/update-scripts-repo.sh - # Build DuT binaries with GCOV + # Build DuT binaries with coverage instrumentation - make clean >> /dev/null - - make GCOV=1 -j 2>&1 >$MAKE_BUILD_LOG_FILE_DEFAULT + - make COVERAGE=1 -j 2>&1 >$MAKE_BUILD_LOG_FILE_DEFAULT - cp IVAS_rend IVAS_rend_ref # Copy to ensure instrumented renderer is run in ref creation call - testcase_timeout=$TESTCASE_TIMEOUT_LTV diff --git a/main-float.yml b/main-float.yml index 34a5260473fb7ea9eb8ec659bda0d90b103ca9be..74acec52b20aecc2954fb820d2081b01e3dbfd41 100644 --- a/main-float.yml +++ b/main-float.yml @@ -1416,9 +1416,9 @@ ivas-conformance-linux: - cp Readme_IVAS_ISAR_dec.txt testvec - cp Readme_IVAS_ISAR_post_rend.txt testvec - # Create GCOV execs for coverage analysis + # Create coverage instrumented execs for coverage analysis - make clean - - make GCOV=1 -j 2>&1 >$MAKE_BUILD_LOG_FILE_DEFAULT + - make COVERAGE=1 -j 2>&1 >$MAKE_BUILD_LOG_FILE_DEFAULT - cp IVAS_cod testvec/bin - cp IVAS_dec testvec/bin @@ -2181,7 +2181,7 @@ sanitizer-test-osba-planar-hoa3-ism4: - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/update-ltv-repo.sh - python3 ci/run_scheduled_sanitizer_test.py PlanarHOA3-ISM4 $OUT_FORMATS_ALL --tests $SANITIZER_TESTS -# GCOV/LCOV coverage analysis of self_test suite +# coverage analysis of self_test suite .coverage-test-template: extends: - .test-job-linux-needs-testv-dir @@ -2200,7 +2200,7 @@ sanitizer-test-osba-planar-hoa3-ism4: - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/update-ltv-repo.sh - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/copy-ltv-files-to-testv-dir.sh # compile with coverage enabled - - cmake -B cmake-build -G "Unix Makefiles" -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true -DGCOV=ON + - cmake -B cmake-build -G "Unix Makefiles" -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true -DCOVERAGE=ON - cmake --build cmake-build -- -j # copy executables to ref to be able to run some --create_ref tests - cp IVAS_cod IVAS_cod_ref diff --git a/snippets/collect-coverage.sh b/snippets/collect-coverage.sh index 93977bea7944da507c7aef2e41f0d99c74b22335..1f1e89c3ba828edf4bb8454cfa39a077ece7cf61 100644 --- a/snippets/collect-coverage.sh +++ b/snippets/collect-coverage.sh @@ -60,7 +60,7 @@ if [[ -z "$obj_dir" || -z "$output_file" || -z "$output_dir" || -z "$title" ]]; fi # Capture coverage -lcov -c -d "$obj_dir" -o "$output_file" +lcov -c -d "$obj_dir" -o "$output_file" --gcov-tool llvm-cov --gcov-tool gcov # Remove apps, lib_debug and lib_util files from coverage lcov -r "$output_file" "*apps*" -o "$output_file" diff --git a/snippets/ivas-conformance.sh b/snippets/ivas-conformance.sh index 4dbfa95429cbb15dc582c4e962a96e4163f285d8..2de08bf65236d02b90000139005115e9b2e85698 100644 --- a/snippets/ivas-conformance.sh +++ b/snippets/ivas-conformance.sh @@ -43,9 +43,9 @@ cp Readme_IVAS_JBM_dec.txt testvec cp Readme_IVAS_ISAR_dec.txt testvec cp Readme_IVAS_ISAR_post_rend.txt testvec -# Create GCOV execs for coverage analysis +# Create coverage instrumented execs for coverage analysis make clean -make GCOV=1 -j +make COVERAGE=1 -j cp IVAS_cod testvec/bin cp IVAS_dec testvec/bin