[cairo-commit] 3 commits - .gitlab-ci.yml src/meson.build test/meson.build

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Jul 22 14:31:01 UTC 2022


 .gitlab-ci.yml   |   10 +++++-----
 src/meson.build  |    2 ++
 test/meson.build |    1 +
 3 files changed, 8 insertions(+), 5 deletions(-)

New commits:
commit f482106645ddf3ad2ebb1a3d4352f12558028855
Merge: 7c998fa01 25ee24000
Author: Uli Schlachter <psychon at znc.in>
Date:   Fri Jul 22 14:30:59 2022 +0000

    Merge branch 'use-meson-test-for-scripts' into 'master'
    
    CI: Invoke several of the test scripts via `meson test`
    
    See merge request cairo/cairo!345

commit 25ee24000eaf5c0873a74d44d9dd6e80881122ff
Author: Simon McVittie <smcv at debian.org>
Date:   Thu Jul 14 18:16:50 2022 +0100

    CI: Invoke test scripts via `meson test` where possible
    
    Using `meson test` is the Meson equivalent of `make check`, and is the
    way developers of other Meson-built projects will generally expect to
    run tests. In particular, it encapsulates which of the tests want to be
    run from which directories, removing the need for the Gitlab-CI
    integration to know this.
    
    Signed-off-by: Simon McVittie <smcv at debian.org>

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7fa840856..ba63c8fc0 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -212,16 +212,16 @@ fedora meson build:
     - export CFLAGS="-Werror -Wno-error=deprecated-declarations"
     - meson builddir ${MESON_ARGS}
     - ninja -C builddir
-    # - ninja -C builddir test
 
     # Run test scripts
     #- (cd builddir/src && srcdir=../../src bash "$srcdir/check-def.sh")   This script calls "make cairo.def" and thus does not work with meson
     - mkdir builddir/src/.libs
     - touch builddir/src/.libs/libfoo.so
-    - MAKE=echo CAIRO_HAS_HIDDEN_SYMBOLS=1 bash src/check-plt.sh builddir/src/libcairo.so
-    - (cd src && bash "check-headers.sh")
-    - (cd src && bash "check-preprocessor-syntax.sh")
-    - (cd src && bash "check-doc-syntax.sh")
+    # Run all the tests, except for the big test executable which
+    # gets run separately
+    - meson test -C builddir --no-suite=slow
+
+    # TODO: These aren't set up as Meson tests yet
     - (cd doc/public && bash "check-doc-syntax.sh")
     # FIXME: The following line really needs gtk-doc to run first
     - (cd doc/public && DOC_MODULE=cairo bash "check-doc-coverage.sh")
commit 947f40f511efd8d36e78c1a76c57daa8f6886de0
Author: Simon McVittie <smcv at debian.org>
Date:   Thu Jul 14 18:11:38 2022 +0100

    meson: Split tests up into test suites
    
    This allows things like `meson test --no-suite=slow` to run subsets
    of the complete set of tests.
    
    Signed-off-by: Simon McVittie <smcv at debian.org>

diff --git a/src/meson.build b/src/meson.build
index 612a3fc47..3d50edd54 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -307,6 +307,7 @@ if shell.found()
   foreach test_script: test_scripts
     test(test_script, shell,
       args: [test_script],
+      suite: ['fast', 'lint'],
       workdir: meson.current_source_dir())
   endforeach
 
@@ -316,6 +317,7 @@ if shell.found()
   test('check-plt.sh', shell,
     args: ['check-plt.sh', libcairo ],
     env: env,
+    suite: ['fast', 'plt'],
     workdir: meson.current_source_dir())
 
 endif
diff --git a/test/meson.build b/test/meson.build
index bc1547494..47d590690 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -648,5 +648,6 @@ env.set('srcdir', meson.current_source_dir())
 test('cairo', exe,
   timeout: 60 * 60,
   env: env,
+  suite: ['cairo-test-suite', 'slow'],
   workdir: meson.current_build_dir(),
   depends: test_depends)


More information about the cairo-commit mailing list