[libcamera-ci] [RFC PATCH v3 3/4] Add `build-package:debug` job
Barnabás Pőcze
barnabas.pocze at ideasonboard.com
Tue Dec 17 16:31:52 CET 2024
Convert `build-package:arm64` into a `parallel:matrix` job that
compiles libcamera for amd64 and arm64 with debugging additions
(ASAN, UBSAN, STL debugging) and then publishes the resulting
package as an artifact for other jobs to use.
Note the `force_fallback_for=gtest` option, which is needed because
the googletest library, a dependency of `lc-compliance`, uses STL
types in its API, and `cpp_debugstl=true` changes the ABI of these
types, so it has to be compiled with the same options from source.
Signed-off-by: Barnabás Pőcze <barnabas.pocze at ideasonboard.com>
---
Changes in v3:
* extend `build-package:arm64` instead of creating a new job
---
gitlab-ci.yml | 21 +++++++++++----------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/gitlab-ci.yml b/gitlab-ci.yml
index f679d6e..205c6ff 100644
--- a/gitlab-ci.yml
+++ b/gitlab-ci.yml
@@ -248,7 +248,7 @@ build-history:
# real hardware. Enable only the options needed by the tests.
#
-build-package:arm64:
+build-package:debug:
extends:
- .fdo.distribution-image at debian
- .libcamera-ci.debian:12
@@ -261,27 +261,28 @@ build-package:arm64:
- $CI_PROJECT_DIR/.gitlab-ci/build-libcamera.sh
- $CI_PROJECT_DIR/.gitlab-ci/package-libcamera.sh
artifacts:
- name: libcamera-arm64-${CI_COMMIT_SHA}
+ name: libcamera-debug-${ARCH}-${CI_COMMIT_SHA}
when: always
expire_in: 1 week
paths:
- build/meson-logs/
- libcamera-${CI_COMMIT_SHA}.tar.xz
variables:
- ARCH: arm64
BUILD_TYPE: debug
MESON_OPTIONS: >-
- -D cam=disabled
- -D documentation=disabled
- -D gstreamer=disabled
- -D lc-compliance=enabled
+ -D b_sanitize=address,undefined
+ -D cpp_debugstl=true
+ -D force_fallback_for=['gtest']
-D pipelines=['auto']
- -D pycamera=disabled
- -D qcam=disabled
+ -D auto_features=disabled
+ -D lc-compliance=enabled
-D test=false
-D tracing=enabled
- -D udev=disabled
-D v4l2=false
+ parallel:
+ matrix:
+ - ARCH: amd64
+ - ARCH: arm64
#
# Build and package libcamera for Chrome OS, for the purpose of running tests
--
2.47.1
More information about the libcamera-devel
mailing list