# Copyright 2019-2022 David Robillard # SPDX-License-Identifier: CC0-1.0 OR GPL-3.0-or-later arm32_dbg: image: lv2plugin/debian-arm32 script: - meson setup build --cross-file=/usr/share/meson/cross/arm-linux-gnueabihf.ini -Dbuildtype=debug -Dstrict=true -Dwerror=true - ninja -C build test arm32_rel: image: lv2plugin/debian-arm32 script: - meson setup build --cross-file=/usr/share/meson/cross/arm-linux-gnueabihf.ini -Dbuildtype=release -Dstrict=true -Dwerror=true - ninja -C build test arm64_dbg: image: lv2plugin/debian-arm64 script: - meson setup build --cross-file=/usr/share/meson/cross/aarch64-linux-gnu.ini -Dbuildtype=debug -Dstrict=true -Dwerror=true - ninja -C build test arm64_rel: image: lv2plugin/debian-arm64 script: - meson setup build --cross-file=/usr/share/meson/cross/aarch64-linux-gnu.ini -Dbuildtype=release -Dstrict=true -Dwerror=true - ninja -C build test x32_dbg: image: lv2plugin/debian-x32 script: - meson setup build --cross-file=/usr/share/meson/cross/i686-linux-gnu.ini -Dbuildtype=debug -Dstrict=true -Dwerror=true - ninja -C build test x32_rel: image: lv2plugin/debian-x32 script: - meson setup build --cross-file=/usr/share/meson/cross/i686-linux-gnu.ini -Dbuildtype=release -Dstrict=true -Dwerror=true - ninja -C build test x64_dbg: image: lv2plugin/debian-x64 script: - meson setup build -Dbuildtype=debug -Dstrict=true -Dwerror=true -Db_coverage=true - ninja -C build test - ninja -C build coverage-html coverage: '/ *lines\.*: \d+\.\d+.*/' artifacts: paths: - build/meson-logs/coveragereport x64_rel: image: lv2plugin/debian-x64 script: - meson setup build -Dbuildtype=release -Dstrict=true -Dwerror=true - ninja -C build test x64_static: image: lv2plugin/debian-x64 script: - meson setup build -Ddefault_library=static -Dstrict=true -Dwerror=true - ninja -C build test x64_sanitize: image: lv2plugin/debian-x64-clang script: - meson setup build -Db_lundef=false -Dbuildtype=plain -Dstrict=true -Dwerror=true - ninja -C build test variables: CXX: "clang++" CXXFLAGS: "-fno-sanitize-recover=all -fsanitize=address -fsanitize=undefined -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" LDFLAGS: "-fno-sanitize-recover=all -fsanitize=address -fsanitize=undefined -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" mac_dbg: tags: [macos] script: - meson setup build -Dbuildtype=debug -Dstrict=true -Dwerror=true - ninja -C build test mac_rel: tags: [macos] script: - meson setup build -Dbuildtype=release -Dstrict=true -Dwerror=true - ninja -C build test win_dbg: tags: [windows,meson] script: - meson setup build -Dbuildtype=debug -Dstrict=true -Dwerror=true - ninja -C build test win_rel: tags: [windows,meson] script: - meson setup build -Dbuildtype=release -Dstrict=true -Dwerror=true - ninja -C build test pages: stage: deploy script: - mkdir -p .public - mv build/meson-logs/coveragereport/ .public/coverage - mv .public public needs: - x64_dbg artifacts: paths: - public only: - main