summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml64
1 files changed, 61 insertions, 3 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e794fb2..55e25c2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -32,8 +32,8 @@ variables:
# The tag should be updated each time the list of packages is updated.
# Changing a tag forces the associated image to be rebuilt.
# Note: the tag has no meaning, we use a date format purely for readability
- FDO_DISTRIBUTION_TAG: '2023-10-13.0'
- FDO_DISTRIBUTION_PACKAGES: 'git pkgconf autoconf automake make xz-utils xutils-dev xmlto w3m xsltproc fop'
+ FDO_DISTRIBUTION_TAG: '2023-11-19.0'
+ FDO_DISTRIBUTION_PACKAGES: 'git pkgconf autoconf automake make xz-utils xutils-dev xmlto w3m xsltproc fop meson ninja-build jq'
#
@@ -108,7 +108,7 @@ install-macros:
# The default build, runs on the image built above.
# Sets ACLOCAL to use macros from "install macros" stage above.
#
-build:
+autotools:
stage: build
extends:
- .fdo.distribution-image@debian
@@ -123,11 +123,13 @@ build:
- make check
- make install
- make distcheck
+ - mv xorg-sgml-doctools-*.tar.xz ..
- popd > /dev/null
variables:
artifacts:
paths:
- _inst
+ - xorg-sgml-doctools-*.tar.xz
#
# Make sure xorg-docs builds with the xorg-sgml-doctools package built above
@@ -157,3 +159,59 @@ docs-build:
artifacts:
paths:
- _inst
+
+meson:
+ extends:
+ - .fdo.distribution-image@debian
+
+ stage: build
+ script:
+ - mkdir -p ../_inst
+ - meson setup builddir --prefix="$PWD/../_inst"
+ - meson install -C builddir
+
+meson from tarball:
+ extends:
+ - .fdo.distribution-image@debian
+
+ stage: test
+ script:
+ - mkdir -p _tarball_build
+ - tar xf xorg-sgml-doctools-*.tar.xz -C _tarball_build
+ - pushd _tarball_build/xorg-sgml-doctools-*
+ - meson setup builddir
+ - meson install -C builddir
+ needs:
+ - autotools
+ variables:
+ GIT_STRATEGY: none
+
+compare meson and autotools:
+ extends:
+ - .fdo.distribution-image@debian
+
+ stage: test
+ script:
+ - mkdir -p $PWD/_meson_inst
+ - mkdir -p $PWD/_autotools_inst
+ - meson setup builddir --prefix=/usr/X11
+ - DESTDIR=$PWD/_meson_inst meson install -C builddir
+ - export INSTDIR="$PWD/_inst"
+ - export ACLOCAL="aclocal -I $INSTDIR/share/aclocal"
+ - autoreconf -ivf
+ - ./configure --prefix=/usr/X11
+ - make && DESTDIR=$PWD/_autotools_inst make install
+ - diff --brief --recursive $PWD/_meson_inst $PWD/_autotools_inst
+
+check versions are in sync:
+ extends:
+ - .fdo.distribution-image@debian
+
+ stage: test
+ script:
+ - export INSTDIR="$PWD/_inst"
+ - export ACLOCAL="aclocal -I $INSTDIR/share/aclocal"
+ - autoreconf -ivf
+ - ./configure --version | head -n 1 | sed -e 's/xorg-sgml-doctools configure //' > autotools.version
+ - meson introspect meson.build --projectinfo | jq -r '.version' > meson.version
+ - diff -u autotools.version meson.version || (echo "ERROR - autotools and meson versions not in sync" && false)