gitlab-ci: Use meson instead of autotools

This commit is contained in:
Daiki Ueno 2019-06-05 11:46:15 +02:00 committed by Niels De Graef
parent b4c909b8bf
commit 339c19e7ed

View File

@ -3,7 +3,7 @@ stages:
- deploy - deploy
variables: variables:
DEPENDENCIES: dbus-x11 gcc gjs make python3-dbus python3-gobject redhat-rpm-config DEPENDENCIES: dbus-x11 gcc gjs meson ninja-build python3-dbus python3-gobject redhat-rpm-config
fedora:Werror: fedora:Werror:
image: fedora:latest image: fedora:latest
@ -15,10 +15,9 @@ fedora:Werror:
- dnf install -y $DEPENDENCIES - dnf install -y $DEPENDENCIES
- dbus-uuidgen --ensure - dbus-uuidgen --ensure
script: script:
- ./autogen.sh --disable-dependency-tracking --enable-strict - meson _build -Dwerror=true -Dc_args=-Wno-error=deprecated-declarations
- make -j$(nproc) V=1
- eval `dbus-launch --sh-syntax` - eval `dbus-launch --sh-syntax`
- make -j$(nproc) V=1 distcheck - meson test -C _build
fedora:asan: fedora:asan:
image: fedora:latest image: fedora:latest
@ -30,10 +29,9 @@ fedora:asan:
- dnf install -y $DEPENDENCIES libasan - dnf install -y $DEPENDENCIES libasan
- dbus-uuidgen --ensure - dbus-uuidgen --ensure
script: script:
- ./autogen.sh --disable-dependency-tracking CFLAGS='-fsanitize=address -g -fno-common -U_FORTIFY_SOURCE' CXXFLAGS='-fsanitize=address -g -fno-common -U_FORTIFY_SOURCE' LDFLAGS='-fsanitize=address -g -fno-common -U_FORTIFY_SOURCE' LIBS='-lasan -ldl -lpthread' - meson _build -Dsanitize=address
- make -j$(nproc) V=1
- eval `dbus-launch --sh-syntax` - eval `dbus-launch --sh-syntax`
- make -j$(nproc) V=1 DISABLE_HARD_ERRORS=1 XFAIL_TESTS="\$(JS_TESTS) \$(PY_TESTS)" check - meson test -C _build
fedora:ubsan: fedora:ubsan:
image: fedora:latest image: fedora:latest
@ -45,10 +43,9 @@ fedora:ubsan:
- dnf install -y $DEPENDENCIES libubsan - dnf install -y $DEPENDENCIES libubsan
- dbus-uuidgen --ensure - dbus-uuidgen --ensure
script: script:
- ./autogen.sh --disable-dependency-tracking CFLAGS='-fsanitize=undefined -g -fno-common -U_FORTIFY_SOURCE' CXXFLAGS='-fsanitize=undefined -g -fno-common -U_FORTIFY_SOURCE' LDFLAGS='-fsanitize=undefined -g -fno-common -U_FORTIFY_SOURCE' LIBS='-lubsan -ldl -lpthread' - meson _build -Dsanitize=undefined
- make -j$(nproc) V=1
- eval `dbus-launch --sh-syntax` - eval `dbus-launch --sh-syntax`
- make -j$(nproc) V=1 check - meson test -C _build
fedora:coverage: fedora:coverage:
image: fedora:latest image: fedora:latest
@ -60,21 +57,20 @@ fedora:coverage:
- dnf install -y $DEPENDENCIES lcov - dnf install -y $DEPENDENCIES lcov
- dbus-uuidgen --ensure - dbus-uuidgen --ensure
script: script:
- ./autogen.sh --disable-dependency-tracking --enable-coverage - meson _build -Db_coverage=true
- make -j$(nproc) V=1
- eval `dbus-launch --sh-syntax` - eval `dbus-launch --sh-syntax`
- make -j$(nproc) V=1 check - meson test -C _build
- make coverage - ninja coverage-html -C _build
coverage: '/^\s+lines.+:\s+([\d.]+\%)\s+/' coverage: '/^\s+lines.+:\s+([\d.]+\%)\s+/'
artifacts: artifacts:
name: "libsecret-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}" name: "libsecret-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
paths: paths:
- build/coverage/ - _build/meson-logs/coveragereport/
pages: pages:
stage: deploy stage: deploy
script: script:
- mv build/coverage/ public/ - mv _build/meson-logs/coveragereport/ public/
artifacts: artifacts:
paths: paths:
- public - public