summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
Commit message (Collapse)AuthorAgeFilesLines
* ci: add some more workflow rulesTim-Philipp Müller2023-04-161-0/+8
| | | | cargo-culted from the ci-templates template.
* ci: bump windows image to latestTim-Philipp Müller2023-04-161-1/+1
|
* Drop cairo-glEmmanuele Bassi2023-01-271-10/+0
| | | | | | | | | The GL support in Cairo has always been a prototype, and nothing happened in the past 10+ years to make it work as it was meant to. GL support is not enabled by any downstream packagers of Cairo, so nobody should notice its absence.
* Merge branch 'colr-v1' into 'master'Adrian Johnson2023-01-101-1/+1
|\ | | | | | | | | COLRv1 glyph renderer See merge request cairo/cairo!397
| * Enable error log output of meson test --no-suite=slow in CIAdrian Johnson2023-01-081-1/+1
| | | | | | | | So the cause of the failure can be seen.
* | Remove autotools buildAdrian Johnson2023-01-081-14/+0
|/
* Merge branch 'separate-check-refs' into 'master'Adrian Johnson2023-01-031-2/+6
|\ | | | | | | | | Move check-refs.sh into its own test See merge request cairo/cairo!388
| * Move check-refs.sh into its own testAdrian Johnson2023-01-031-2/+6
| | | | | | | | to avoid make the tests wait too long before they start
* | ci: bump windows tag to latestTim-Philipp Müller2023-01-031-1/+1
|/ | | | Which will be in runner cache already.
* Merge branch 'ci-tests-meson' into 'master'Uli Schlachter2023-01-021-37/+46
|\ | | | | | | | | Switch CI tests from autotools to meson See merge request cairo/cairo!300
| * CI: Update test artifacts to be appropriate for out-of-tree Meson buildSimon McVittie2022-12-311-6/+6
| | | | | | | | Signed-off-by: Simon McVittie <smcv@debian.org>
| * Switch CI tests from autotools to mesonUli Schlachter2022-12-311-31/+40
| | | | | | | | | | | | | | | | | | | | The autotools build files are on their way out (See !298). As preparation for dropping the autotools build, this commit switches CI to run tests based on the meson build instead of the autotools one. No functional changes intended. Signed-off-by: Uli Schlachter <psychon@znc.in>
* | Support check-def.sh in meson buildAdrian Johnson2023-01-021-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The original check-def.sh called make. In meson, check-def.sh is replaced by two shell scripts, one for generating cairo.def, the other for comparing with the library symbols. The library filename appended to the cairo.def has been omitted as this is only reqired in autotools builds where the cairo.def is also to generate cairo.dll in the windows build. make-cairo-def.sh is based on the cairo.def target in Makefile.am. meson-check-def.sh is based on check-def.sh
* | Run check-refs.sh in CIUli Schlachter2022-12-311-0/+2
|/ | | | | | | | The check-refs.sh script detects duplicate reference images. This commit adds it to be run by CI. For this, the script is extended with a proper exit code. Signed-off-by: Uli Schlachter <psychon@znc.in>
* Merge branch 'ft-svg-fonts' into 'master'Adrian Johnson2022-12-311-0/+1
|\ | | | | | | | | Support SVG fonts in FT backend See merge request cairo/cairo!319
| * SVG font test using cairo logoAdrian Johnson2022-12-281-0/+1
| |
* | Test cairo-ps in CIUli Schlachter2022-12-281-1/+21
|/ | | | | | | This adds the necessary dependencies for testing cairo-ps to CI and sets up jobs for testing the ps2 and ps3 backends. Signed-off-by: Uli Schlachter <psychon@znc.in>
* Require macOS CI job to pass again.John Ralls2022-11-171-2/+0
|
* ci: mark macOS job as allowed to fail, unit tests are brokenTim-Philipp Müller2022-10-281-0/+2
|
* ci: bump macOS image to latest / 12.3Tim-Philipp Müller2022-10-271-1/+1
|
* ci: update Windows image to latest, and glib wrap tooTim-Philipp Müller2022-10-271-7/+20
| | | | | | | | | Glib subproject git checkout isn't cached any more on the GStreamer CI image, so use tarball for now, and update to more recent glib. This means we can no longer use --default-library=both on Windows, so add separate jobs for static/shared build.
* Merge branch 'ci-update-windows-image' into 'master'Tim-Philipp Müller2022-07-221-4/+4
|\ | | | | | | | | ci: update windows image and use new 2022 runner and vs2019 See merge request cairo/cairo!347
| * ci: update windows image and use new 2022 runner and vs2019Tim-Philipp Müller2022-07-211-4/+4
| | | | | | | | Old 1809 runner is going to go away at some point.
* | CI: Invoke test scripts via `meson test` where possibleSimon McVittie2022-07-141-5/+5
|/ | | | | | | | | | 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@debian.org>
* Run test scripts in meson CIUli Schlachter2022-07-141-0/+13
| | | | | | | | | The autofoo build is on its way out and I am too lazy to properly integrate these scripts with the meson build. Thus, this commit just adds them to one single CI build. At least those that can relatively easily be made to work. The others are left as comments. Signed-off-by: Uli Schlachter <psychon@znc.in>
* Merge branch 'reenable-windows-ci' into 'master'Uli Schlachter2022-05-291-2/+0
|\ | | | | | | | | Revert "ci: Make Windows jobs manual" See merge request cairo/cairo!326
| * Revert "ci: Make Windows jobs manual"Uli Schlachter2022-05-151-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9cfa5104648bb6ebaa264a2b427a8a991faee570. The vs2017 amd64 and x86 jobs where marked as manual in MR !285 with the following reasoning: The CI runners for Windows are currently timing out on the fd.o infrastructure. The issue is being worked on, but we should avoid blocking our entire CI pipeline until it's fixed, as it sounds it is going to take a while. It is time to re-enable these jobs. Signed-off-by: Uli Schlachter <psychon@znc.in>
* | autotools CI: build it fasterAdrian Johnson2022-05-281-1/+1
|/
* Merge branch 'mingw-ci' into 'master'Adrian Johnson2022-05-091-0/+36
|\ | | | | | | | | Add mingw-32 and mingw-64 CI builds See merge request cairo/cairo!321
| * Add mingw-32 and mingw-64 CI buildsAdrian Johnson2022-05-071-0/+36
| |
* | Add -Werror for meson CI buildAdrian Johnson2022-05-071-0/+1
|/
* ci: Make Windows jobs manualEmmanuele Bassi2022-02-251-0/+2
| | | | | | | The CI runners for Windows are currently timing out on the fd.o infrastructure. The issue is being worked on, but we should avoid blocking our entire CI pipeline until it's fixed, as it sounds it is going to take a while.
* tanis: Remove cairo-coglEmmanuele Bassi2022-02-251-1/+0
| | | | Cogl's upstream is unmaintained, and has been for the past 6 years.
* Remove cairo-drmEmmanuele Bassi2022-02-251-1/+0
| | | | | The DRM backend has always been a science experiment, but now it hasn't been built in more than 10 years, and it's completely broken.
* ci: update links in ci template from gst-ci to gstreamer monorepTim-Philipp Müller2021-10-071-3/+4
|
* ci: bump windows image to latestTim-Philipp Müller2021-10-071-5/+4
| | | | Which should include the subprojects cache again.
* ci: disable aarch64 neon asm in pixman to fix android buildTim-Philipp Müller2021-10-031-1/+1
| | | | To work around build failures, see #515
* ci: update windows imageTim-Philipp Müller2021-10-031-2/+4
| | | | | | | | | Some root certs expired, which causes problems with letsencrypt certificates, so update to latest image with updated certificates. https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/ Fixes #515
* meson: rely on automatic wrap promotion from subprojectsTim-Philipp Müller2021-08-261-2/+2
| | | | | | | | | | | | | | | | | | | Don't ship wrap files for things that are only dependencies of dependencies, such as gperf (for fontconfig), or libffi + proxy-libintl (for glib). Instead, let Meson use the wraps that these subprojects ship, which Meson will pick up automatically since v56, so there's no need for us to ship these wraps any more. Bump the Meson requirement to 0.56 accordingly. Fix expat package dep for fedora ci and bump the tag so it gets picked up. See https://mesonbuild.com/Release-notes-for-0-56-0.html#wraps-from-subprojects-are-automatically-promoted Closes #445
* ci: make sure existing subproject checkouts are in sync with wrapsTim-Philipp Müller2021-08-141-0/+1
|
* Add ft-color-font testAdrian Johnson2021-07-311-1/+2
|
* svg: Fix create-for-stream test caseUli Schlachter2021-07-241-1/+0
| | | | | | | | | | | | | | | | | | | | | | Commit 2fbd53 added another test to create-for-stream that failed for cairo-pdf. Manual testing shows that this test also fails for cairo-svg. However, this was not noticed because even before this addition to the test, create-for-stream already failed for cairo-svg. Since the introduction on CI was done based on "let's ignore all current failures", this hid the error. This commit applies the trivial fix for cairo-svg to make this test pass. It is basically the same error that cairo-pdf had. Additionally, this removes the hack to ignore create-for-stream failures in CI since it is now no longer necessary. Thanks to Knut Peterson for reporting this [0]. [0]: https://lists.cairographics.org/archives/cairo/2021-July/029291.html Signed-off-by: Uli Schlachter <psychon@znc.in>
* Always run tests with an X11 serverUli Schlachter2021-06-041-5/+5
| | | | | | | This allows tests xcb-surface-source and xlib-surface-source to run. Somehow I thought this would be more complicated... Signed-off-by: Uli Schlachter <psychon@znc.in>
* CI: Split test execution into per-backend jobsUli Schlachter2021-06-041-20/+80
| | | | | | | | | | | | | | | This creates one job per cairo backend that is tested on CI. That backend is then tested in its own job. One motivation is that this will hopefully be faster, because tests are run in parallel. Another motivation is that this lets us get around the one hour time limit per job. A downside is that the inter-backend tests are not run in CI. For example, xlib-surface-source requires a working X11 server. I am not providing that X11 server here. Signed-off-by: Uli Schlachter <psychon@znc.in>
* Switch to line-separated test failure listsUli Schlachter2021-06-031-24/+24
| | | | | | | | | | | | | Having comma separated lists of test names that we expect to fail leads to really unreadable and useless diffs. Thus, this commit changes these lists to be separated by newlines. This change was generated with: ( cd .gitlab-ci ; for x in * ; do tr ',' '\n' < $x > .$x ; mv .$x $x ; done ) The code in .gitlab-ci.yml is changed to use tr again to transfer these lists back so that everything still works. Signed-off-by: Uli Schlachter <psychon@znc.in>
* Rename a fileUli Schlachter2021-06-031-1/+1
| | | | | | | | | | Because shell variables cannot contain &, this character was replaced with an underscore in the shell variable. However, we can have this character just fine in the file name. Thus, this commits renames a file to actually include the proper name of the boilerplate target, which is xcb-window&. Signed-off-by: Uli Schlachter <psychon@znc.in>
* Move test failure lists into separate filesUli Schlachter2021-06-031-24/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, .gitlab-ci.yml is way too large, because it contains the list with all the expected test failure. This commit moves those lists to extra files. The files were generated with a shell one-liner: grep CAIRO_TEST_IGNORE .gitlab-ci.yml | while read line ; do backend=$(echo $line | cut -f 3 -d ' ' | cut -f1 -d= | sed -e 's/CAIRO_TEST_IGNORE_//;s/_/-/g') ; content=$(echo $line | cut -f2- -d=) ; echo $backend ; echo $content > .gitlab-ci/ignore-${backend}.txt ; done The changes to .gitlab-ci.yml were also generated with some shell scripting that generates a sed argument: grep CAIRO_TEST_IGNORE .gitlab-ci.yml | while read line ; do backend=$(echo $line | cut -f 3 -d ' ' | cut -f1 -d= ) ; file=$(echo $backend | sed -e 's/CAIRO_TEST_IGNORE_//;s/_/-/g') ; printf "/$backend/s#=.*#=\$(cat .gitlab-ci/ignore-${file}.txt)#;"; done ; echo The above can then be applied via (but of course adding ' around it and I also left out the final ;): sed -i -e [the output of the above] .gitlab-ci.yml Just for completeness, [the output of the above] is: /CAIRO_TEST_IGNORE_pdf_argb32/s#=.*#=$(cat .gitlab-ci/ignore-pdf-argb32.txt)#;/CAIRO_TEST_IGNORE_pdf_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-pdf-rgb24.txt)#;/CAIRO_TEST_IGNORE_script_argb32/s#=.*#=$(cat .gitlab-ci/ignore-script-argb32.txt)#;/CAIRO_TEST_IGNORE_image_argb32/s#=.*#=$(cat .gitlab-ci/ignore-image-argb32.txt)#;/CAIRO_TEST_IGNORE_image_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-image-rgb24.txt)#;/CAIRO_TEST_IGNORE_image16_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-image16-rgb24.txt)#;/CAIRO_TEST_IGNORE_recording_argb32/s#=.*#=$(cat .gitlab-ci/ignore-recording-argb32.txt)#;/CAIRO_TEST_IGNORE_recording_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-recording-rgb24.txt)#;/CAIRO_TEST_IGNORE_svg11_argb32/s#=.*#=$(cat .gitlab-ci/ignore-svg11-argb32.txt)#;/CAIRO_TEST_IGNORE_svg11_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-svg11-rgb24.txt)#;/CAIRO_TEST_IGNORE_xcb_argb32/s#=.*#=$(cat .gitlab-ci/ignore-xcb-argb32.txt)#;/CAIRO_TEST_IGNORE_xcb_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xcb-rgb24.txt)#;/CAIRO_TEST_IGNORE_xcb_window_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xcb-window-rgb24.txt)#;/CAIRO_TEST_IGNORE_xcb_window__rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xcb-window--rgb24.txt)#;/CAIRO_TEST_IGNORE_xcb_render_0_0_argb32/s#=.*#=$(cat .gitlab-ci/ignore-xcb-render-0-0-argb32.txt)#;/CAIRO_TEST_IGNORE_xcb_render_0_0_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xcb-render-0-0-rgb24.txt)#;/CAIRO_TEST_IGNORE_xcb_fallback_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xcb-fallback-rgb24.txt)#;/CAIRO_TEST_IGNORE_xlib_argb32/s#=.*#=$(cat .gitlab-ci/ignore-xlib-argb32.txt)#;/CAIRO_TEST_IGNORE_xlib_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xlib-rgb24.txt)#;/CAIRO_TEST_IGNORE_xlib_window_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xlib-window-rgb24.txt)#;/CAIRO_TEST_IGNORE_xlib_render_0_0_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xlib-render-0-0-rgb24.txt)#;/CAIRO_TEST_IGNORE_xlib_fallback_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-xlib-fallback-rgb24.txt)#;/CAIRO_TEST_IGNORE_quartz_argb32/s#=.*#=$(cat .gitlab-ci/ignore-quartz-argb32.txt)#;/CAIRO_TEST_IGNORE_quartz_rgb24/s#=.*#=$(cat .gitlab-ci/ignore-quartz-rgb24.txt)#; (All line breaks are only added for readability and are not part of the one-liners) Signed-off-by: Uli Schlachter <psychon@znc.in>
* Merge branch 'master' into 'svg-backend-work'afdw2021-05-291-7/+17
|\ | | | | | | | | | | | | # Conflicts: # .gitlab-ci.yml # test/Makefile.sources # test/meson.build
| * Install DejaVu fonts on macOSAnton Danilkin2021-05-081-3/+8
| | | | | | | | This also fixes some test failures.
| * Export test images in artifacts on macOSAnton Danilkin2021-05-071-4/+9
| |