diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..66f82cb --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,39 @@ +stages: + - build + - check + +variables: + CLANG_VERSION: 19 + BUILD_DEPS_NO_MM: "build-essential libcurl4-openssl-dev libgpiod-dev libgudev-1.0-dev libusb-1.0-0-dev meson scdoc" + BUILD_DEPS: "${BUILD_DEPS_NO_MM} libmm-glib-dev" + +image: debian:unstable-slim + +build: + stage: build + script: + - apt-get update + - apt-get -y install ${BUILD_DEPS} + - meson build + - meson compile -C build + artifacts: + paths: + - build + +# ModemManager is an optional dependency, let's ensure eg25-manager still builds fine without it +build-no-mm: + stage: build + script: + - apt-get update + - apt-get -y install ${BUILD_DEPS_NO_MM} + - meson build + - meson compile -C build + +format: + stage: check + dependencies: + - build + script: + - apt-get update + - apt-get -y install ${BUILD_DEPS} clang-format-${CLANG_VERSION} + - ninja -C build clang-format-check