pixman: Branch 'master' - 5 commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Oct 21 16:29:21 UTC 2024


 .gitlab-ci.d/01-docker/Dockerfile |    6 ++++--
 .gitlab-ci.d/02-build.yml         |    6 ++++++
 .gitlab-ci.d/03-test.yml          |   21 ++++++++-------------
 .gitlab-ci.d/04-summary.yml       |    4 ----
 .gitlab-ci.d/pixman-project.yml   |    4 ++++
 .gitlab-ci.d/templates/build.yml  |    7 ++++++-
 .gitlab-ci.d/templates/test.yml   |   14 +++++++-------
 7 files changed, 35 insertions(+), 27 deletions(-)

New commits:
commit 90f9cf1726c0f7b082069bd32a957874f7a602e9
Author: Marek Pikuła <m.pikula at partner.samsung.com>
Date:   Mon Oct 21 16:39:50 2024 +0200

    ci: Disable coverage for arm-v5 and mipsel targets
    
    Signed-off-by: Marek Pikuła <m.pikula at partner.samsung.com>

diff --git a/.gitlab-ci.d/02-build.yml b/.gitlab-ci.d/02-build.yml
index bf99f6b..8ff7fe5 100644
--- a/.gitlab-ci.d/02-build.yml
+++ b/.gitlab-ci.d/02-build.yml
@@ -24,6 +24,8 @@ include:
     inputs:
       target: linux-arm-v5
       qemu_cpu: arm1136
+      # Disable coverage, as the tests take too long to run with a single thread.
+      enable_gnu_coverage: false
   - local: .gitlab-ci.d/templates/build.yml
     inputs:
       target: linux-arm-v7
@@ -58,6 +60,8 @@ include:
       target: linux-mipsel
       toolchain: [gnu]
       qemu_cpu: 74Kf
+      # Disable coverage, as the tests take too long to run with a single thread.
+      enable_gnu_coverage: false
   # TODO: Merge with the one above once the following issue is resolved:
   # https://gitlab.freedesktop.org/pixman/pixman/-/issues/105).
   - local: .gitlab-ci.d/templates/build.yml
diff --git a/.gitlab-ci.d/03-test.yml b/.gitlab-ci.d/03-test.yml
index bf1e42d..40ed8c5 100644
--- a/.gitlab-ci.d/03-test.yml
+++ b/.gitlab-ci.d/03-test.yml
@@ -9,14 +9,7 @@
 # better in CI to indicate what is actually being tested.
 #
 # Some emulated targets are really slow or cannot be run in multithreaded mode
-# (e.g., arm:v5), thus it's required to increase the timeout for them.
-#
-# Some jobs have `--gcov-ignore-parse-errors`, and `MESON_TESTTHREADS=1`
-# specified. It prevents gcovr failing in case of negative counter warning for
-# platforms which don't support atomic profile update. Because of that, some
-# results might be not 100% correct but, still, it's better to include them in
-# the final coverage report, as it's not really important how many times given
-# line is hit, but that it's hit at all.
+# (mipsel, arm-v5). Thus coverage reporting is disabled for them.
 
 variables:
   # Used in summary stage as well.
@@ -63,8 +56,6 @@ include:
       pixman_disable: ["arm-neon"] # Test only arm-simd.
       timeout: 3h
       test_timeout_multiplier: 40
-      meson_testthreads: 1
-      gcovr_flags: --gcov-ignore-parse-errors
   # TODO: Merge up after resolving
   # https://gitlab.freedesktop.org/pixman/pixman/-/issues/107
   - local: .gitlab-ci.d/templates/test.yml
@@ -75,7 +66,6 @@ include:
       pixman_disable: ["arm-neon"] # Test only arm-simd.
       timeout: 3h
       test_timeout_multiplier: 40
-      meson_testthreads: 1
       job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true
@@ -119,8 +109,6 @@ include:
       toolchain: [gnu]  # TODO: Add llvm once the build is fixed.
       qemu_cpu: [74Kf]
       timeout: 2h
-      meson_testthreads: 1
-      gcovr_flags: --gcov-ignore-parse-errors
   - local: .gitlab-ci.d/templates/test.yml
     inputs:
       target: linux-ppc
diff --git a/.gitlab-ci.d/04-summary.yml b/.gitlab-ci.d/04-summary.yml
index 87922b0..326a35a 100644
--- a/.gitlab-ci.d/04-summary.yml
+++ b/.gitlab-ci.d/04-summary.yml
@@ -15,16 +15,12 @@ summary:
       optional: true
     - job: test:linux-amd64
       optional: true
-    - job: test:linux-arm-v5
-      optional: true
     - job: test:linux-arm-v7
       optional: true
     - job: test:linux-arm64-v8
       optional: true
     - job: test:linux-mips64el
       optional: true
-    - job: test:linux-mipsel
-      optional: true
     - job: test:linux-ppc64le
       optional: true
     - job: test:linux-riscv64
commit bc2ec45d3ba0155ba114c66f50a32815795e2a62
Author: Marek Pikuła <m.pikula at partner.samsung.com>
Date:   Mon Oct 21 16:35:37 2024 +0200

    ci: Add auto_cancel policy
    
    Signed-off-by: Marek Pikuła <m.pikula at partner.samsung.com>

diff --git a/.gitlab-ci.d/pixman-project.yml b/.gitlab-ci.d/pixman-project.yml
index d0ecb1e..ae5e9fd 100644
--- a/.gitlab-ci.d/pixman-project.yml
+++ b/.gitlab-ci.d/pixman-project.yml
@@ -45,6 +45,10 @@ workflow:
     - if: $CI_COMMIT_BRANCH
     - if: $CI_COMMIT_TAG
 
+  auto_cancel:
+    on_new_commit: conservative
+    on_job_failure: all
+
 default:
   tags:
     - $RUNNER_TAG
commit de59d1a9fb57a7d962adaed17d448c9b0c3480bc
Author: Marek Pikuła <m.pikula at partner.samsung.com>
Date:   Mon Oct 21 16:19:53 2024 +0200

    ci: Don't execute failing jobs
    
    Signed-off-by: Marek Pikuła <m.pikula at partner.samsung.com>

diff --git a/.gitlab-ci.d/02-build.yml b/.gitlab-ci.d/02-build.yml
index 8609570..bf99f6b 100644
--- a/.gitlab-ci.d/02-build.yml
+++ b/.gitlab-ci.d/02-build.yml
@@ -45,6 +45,7 @@ include:
       target: linux-mips
       toolchain: [llvm]
       qemu_cpu: 74Kf
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true
       retry: 0
@@ -64,6 +65,7 @@ include:
       target: linux-mipsel
       toolchain: [llvm]
       qemu_cpu: 74Kf
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true
       retry: 0
diff --git a/.gitlab-ci.d/03-test.yml b/.gitlab-ci.d/03-test.yml
index f8eeeba..bf1e42d 100644
--- a/.gitlab-ci.d/03-test.yml
+++ b/.gitlab-ci.d/03-test.yml
@@ -44,6 +44,7 @@ include:
         - "sse2 ssse3"
         - "mmx ssse3"
         - "mmx sse2"
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true
       retry: 0
@@ -75,6 +76,7 @@ include:
       timeout: 3h
       test_timeout_multiplier: 40
       meson_testthreads: 1
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true
       retry: 0
@@ -91,6 +93,7 @@ include:
       target: linux-mips
       toolchain: [gnu]  # TODO: Add llvm once the build is fixed.
       qemu_cpu: [74Kf]
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true  # Some tests seem to fail.
       retry: 0
@@ -106,6 +109,7 @@ include:
       target: linux-mips64el
       toolchain: [llvm]
       qemu_cpu: [Loongson-3A4000]
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true
       retry: 0
@@ -121,6 +125,7 @@ include:
     inputs:
       target: linux-ppc
       qemu_cpu: [g4]
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true  # SIGILL for some tests
       retry: 0
@@ -128,6 +133,7 @@ include:
     inputs:
       target: linux-ppc64
       qemu_cpu: [ppc64]
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true  # SIGSEGV for some tests
       retry: 0
@@ -143,6 +149,7 @@ include:
       target: linux-ppc64le
       toolchain: [llvm]
       qemu_cpu: [power10]
+      job_name_prefix: "."
       job_name_suffix: ":failing"
       allow_failure: true
       retry: 0
diff --git a/.gitlab-ci.d/templates/build.yml b/.gitlab-ci.d/templates/build.yml
index 9e4d157..7add5bf 100644
--- a/.gitlab-ci.d/templates/build.yml
+++ b/.gitlab-ci.d/templates/build.yml
@@ -24,6 +24,11 @@ spec:
         most reliable and uniform (so disable for cross environments).
       type: boolean
       default: true
+    job_name_prefix:
+      description:
+        Additional prefix for the job name. Can be used to disable a job with a
+        "." prefix.
+      default: ""
     job_name_suffix:
       description:
         Additional suffix for the job name. Can be used to prevent job
@@ -43,7 +48,7 @@ spec:
       default: 1
 ---
 
-"build:$[[ inputs.target ]]$[[ inputs.job_name_suffix ]]":
+"$[[ inputs.job_name_prefix ]]build:$[[ inputs.target ]]$[[ inputs.job_name_suffix ]]":
   extends: .target:all
   stage: build
   allow_failure: $[[ inputs.allow_failure ]]
diff --git a/.gitlab-ci.d/templates/test.yml b/.gitlab-ci.d/templates/test.yml
index 75df6e7..64a211e 100644
--- a/.gitlab-ci.d/templates/test.yml
+++ b/.gitlab-ci.d/templates/test.yml
@@ -44,6 +44,11 @@ spec:
       description:
         Additional flags passed to gcovr tool.
       default: ""
+    job_name_prefix:
+      description:
+        Additional prefix for the job name. Can be used to disable a job with a
+        "." prefix.
+      default: ""
     job_name_suffix:
       description:
         Additional suffix for the job name. Can be used to prevent job
@@ -63,7 +68,7 @@ spec:
       default: 1
 ---
 
-"test:$[[ inputs.target ]]$[[ inputs.job_name_suffix ]]":
+"$[[ inputs.job_name_prefix ]]test:$[[ inputs.target ]]$[[ inputs.job_name_suffix ]]":
   extends: .target:all
   stage: test
   allow_failure: $[[ inputs.allow_failure ]]
commit 15336dc7cd61eb6951d168ebffbc51fb637698a2
Author: Marek Pikuła <m.pikula at partner.samsung.com>
Date:   Mon Oct 21 13:14:21 2024 +0200

    ci: Pin gcovr version to 7.x
    
    Temporary version pin of gcovr due to errors in coverage report
    generation when running with newly released version 8.x.
    
    Signed-off-by: Marek Pikuła <m.pikula at partner.samsung.com>

diff --git a/.gitlab-ci.d/01-docker/Dockerfile b/.gitlab-ci.d/01-docker/Dockerfile
index 61bc1e0..53639c8 100644
--- a/.gitlab-ci.d/01-docker/Dockerfile
+++ b/.gitlab-ci.d/01-docker/Dockerfile
@@ -10,6 +10,7 @@ ENV APT_UPDATE="apt-get update" \
     APT_INSTALL="apt-get install -y --no-install-recommends" \
     APT_CLEANUP="rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/*"
 
+ARG GCOVR_VERSION="~=7.2"
 ARG MESON_VERSION="~=1.6"
 RUN ${APT_UPDATE} \
     && ${APT_INSTALL} \
@@ -36,7 +37,7 @@ RUN ${APT_UPDATE} \
     # Install a recent version of meson and gcovr using pipx to have the same
     # version across all variants regardless of base.
     && pipx install --global \
-        gcovr \
+        gcovr${GCOVR_VERSION} \
         meson${MESON_VERSION} \
     && gcovr --version \
     && echo Meson version: \
commit 0476eda33ae1b88c0b2d5467a03df88758592923
Author: Marek Pikuła <m.pikula at partner.samsung.com>
Date:   Fri Sep 27 00:44:17 2024 +0200

    ci: Remove MESON_TESTTHREADS workaround
    
    https://github.com/mesonbuild/meson/pull/13604 got merged and released
    with Meson 1.6.0, which we already use in the Docker images, so the
    workaround can be dropped.
    
    Signed-off-by: Marek Pikuła <m.pikula at partner.samsung.com>

diff --git a/.gitlab-ci.d/01-docker/Dockerfile b/.gitlab-ci.d/01-docker/Dockerfile
index 6f7ccf1..61bc1e0 100644
--- a/.gitlab-ci.d/01-docker/Dockerfile
+++ b/.gitlab-ci.d/01-docker/Dockerfile
@@ -10,6 +10,7 @@ ENV APT_UPDATE="apt-get update" \
     APT_INSTALL="apt-get install -y --no-install-recommends" \
     APT_CLEANUP="rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/*"
 
+ARG MESON_VERSION="~=1.6"
 RUN ${APT_UPDATE} \
     && ${APT_INSTALL} \
         # Build dependencies.
@@ -36,7 +37,7 @@ RUN ${APT_UPDATE} \
     # version across all variants regardless of base.
     && pipx install --global \
         gcovr \
-        meson \
+        meson${MESON_VERSION} \
     && gcovr --version \
     && echo Meson version: \
     && meson --version
diff --git a/.gitlab-ci.d/templates/test.yml b/.gitlab-ci.d/templates/test.yml
index 73278a4..75df6e7 100644
--- a/.gitlab-ci.d/templates/test.yml
+++ b/.gitlab-ci.d/templates/test.yml
@@ -84,18 +84,13 @@ spec:
     TEST_TIMEOUT_MULTIPLIER: $[[ inputs.test_timeout_multiplier ]]
     GCOVR_FLAGS: $[[ inputs.gcovr_flags ]]
     MESON_ARGS: -t ${TEST_TIMEOUT_MULTIPLIER} --no-rebuild -v ${TEST_NAME}
+    MESON_TESTTHREADS: $[[ inputs.meson_testthreads ]]
   parallel:
     matrix:
       - TOOLCHAIN: $[[ inputs.toolchain ]]
         PIXMAN_DISABLE: $[[ inputs.pixman_disable ]]
         QEMU_CPU: $[[ inputs.qemu_cpu ]]
   script:
-    # Move MESON_TESTTHREADS to variables once
-    # https://github.com/mesonbuild/meson/pull/13604 gets released.
-    - |
-      if [ $[[ inputs.meson_testthreads ]] -gt 0 ]; then
-        MESON_TESTTHREADS=$[[ inputs.meson_testthreads ]]
-      fi
     - meson test -C ${BUILD_DIR} ${MESON_ARGS}
   after_script:
     - mkdir -p ${COVERAGE_OUT}


More information about the xorg-commit mailing list