| # vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0 filetype=yaml: |
| |
| ####################################### |
| # # |
| # THIS FILE IS GENERATED, DO NOT EDIT # |
| # # |
| ####################################### |
| |
| # To change the gitlab CI, edit .gitlab-ci/ci.template and/or .gitlab-ci/config.yml |
| # and run ci-fairy generate-template. For details, see |
| # https://freedesktop.pages.freedesktop.org/ci-templates/ci-fairy.html#templating-gitlab-ci-yml |
| |
| .templates_sha: &template_sha 98b1218f146a1ec96d65e3ce0041f9a6ec5cb5e6 |
| |
| include: |
| # Fedora container builder template |
| - project: 'freedesktop/ci-templates' |
| ref: *template_sha |
| file: '/templates/fedora.yml' |
| # Freebsd container builder template |
| - project: 'freedesktop/ci-templates' |
| ref: *template_sha |
| file: '/templates/freebsd.yml' |
| - project: 'freedesktop/ci-templates' |
| ref: *template_sha |
| file: '/templates/ci-fairy.yml' |
| - local: '.gitlab-ci/other.yml' |
| |
| stages: |
| - sanity check |
| - prep |
| - test |
| - deploy |
| - container_clean |
| |
| variables: |
| FDO_UPSTREAM_REPO: fontconfig/fontconfig |
| GIT_DEPTH: 1 |
| |
| # these tags should be updated each time the list of packages is updated |
| # changing these will force rebuilding the associated image |
| # Note: these tags have no meaning and are not tied to a particular |
| # fontconfig version |
| FEDORA_TAG: '2024-04-22.1-3f4457bbcc1d' |
| FREEBSD_TAG: '2024-04-22.1-eae64220fd2b' |
| |
| FEDORA_EXEC: 'bash .gitlab-ci/fedora-install.sh' |
| FREEBSD_EXEC: 'bash .gitlab-ci/freebsd-install.sh' |
| |
| ####################################### |
| # # |
| # sanity check # |
| # # |
| ####################################### |
| |
| fail-if-fork-is-not-public: |
| stage: sanity check |
| script: |
| - | |
| if [ $CI_PROJECT_VISIBILITY != "public" ]; then |
| echo "*************************************************************************************" |
| echo "Project visibility must be set to 'public'." |
| echo "Change this in $CI_PROJECT_URL/edit under 'Visibility, project features, permissions'" |
| echo "*************************************************************************************" |
| exit 1 |
| fi |
| except: |
| - main@fontconfig/fontconfig |
| |
| check-ci-script: |
| extends: |
| - .fdo.ci-fairy |
| stage: sanity check |
| script: |
| - ci-fairy generate-template --verify && exit 0 || true |
| - > |
| printf "%s\n" \ |
| "Committed gitlab-ci.yml differs from generated gitlab-ci.yml." \ |
| "To change the gitlab CI, edit .gitlab-ci/ci.template and/or .gitlab-ci/config.yml" \ |
| " and run ci-fairy generate-template. For details, see " \ |
| "https://freedesktop.pages.freedesktop.org/ci-templates/ci-fairy.html#templating-gitlab-ci-yml" |
| - exit 1 |
| |
| ####################################### |
| # # |
| # containers stage # |
| # # |
| ####################################### |
| |
| # Build a container for each distribution + version. The ci-templates |
| # will re-use the containers if the tag doesn't change. |
| |
| fedora:rawhide@container-prep: |
| extends: .fdo.container-build@fedora |
| stage: prep |
| variables: |
| GIT_STRATEGY: none |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 wine' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC |
| |
| fedora:40@container-prep: |
| extends: .fdo.container-build@fedora |
| stage: prep |
| variables: |
| GIT_STRATEGY: none |
| FDO_DISTRIBUTION_VERSION: '40' |
| FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 wine' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC |
| |
| fedora:39@container-prep: |
| extends: .fdo.container-build@fedora |
| stage: prep |
| variables: |
| GIT_STRATEGY: none |
| FDO_DISTRIBUTION_VERSION: '39' |
| FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 wine' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC |
| |
| freebsd:14.0@container-prep: |
| extends: .fdo.qemu-build@freebsd |
| tags: |
| - kvm |
| stage: prep |
| variables: |
| GIT_STRATEGY: none |
| FDO_DISTRIBUTION_VERSION: '14.0' |
| FDO_DISTRIBUTION_PACKAGES: 'gcc autoconf automake libtool gettext gperf expat libxml2 freetype2 json-c git ninja wget python3 py39-pip pkgconf gmake gettext-runtime' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FDO_DISTRIBUTION_EXEC: $FREEBSD_EXEC |
| |
| freebsd:13.2@container-prep: |
| extends: .fdo.qemu-build@freebsd |
| tags: |
| - kvm |
| stage: prep |
| variables: |
| GIT_STRATEGY: none |
| FDO_DISTRIBUTION_VERSION: '13.2' |
| FDO_DISTRIBUTION_PACKAGES: 'gcc autoconf automake libtool gettext gperf expat libxml2 freetype2 json-c git ninja wget python3 py39-pip pkgconf gmake gettext-runtime' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FDO_DISTRIBUTION_EXEC: $FREEBSD_EXEC |
| |
| ####################################### |
| # # |
| # container clean stage # |
| # # |
| ####################################### |
| |
| # |
| # This stage will look for the container images e currently have in |
| # the registry and will remove any that are not tagged with the provided |
| # $container_image:$tag |
| # |
| # This job only runs for a scheduled pipeline. |
| # |
| # Go to your Profile, Settings, Access Tokens |
| # Create a personal token with `api' scope, copy the value. |
| # Go to CI/CD, Schedules, schedule a monthly job. |
| # Define a variable of type File named AUTHFILE. Content is that token |
| # value. |
| .container-clean: |
| stage: container_clean |
| image: golang:alpine |
| before_script: |
| - apk add python3 py-pip git |
| - pip3 install git+http://gitlab.freedesktop.org/freedesktop/ci-templates |
| script: |
| - ci-fairy -v --authfile $AUTHFILE delete-image |
| --repository $FDO_DISTRIBUTION_NAME/$FDO_DISTRIBUTION_VERSION |
| --exclude-tag $FDO_DISTRIBUTION_TAG |
| dependencies: [] |
| allow_failure: true |
| only: |
| - schedules |
| |
| fedora:rawhide@container-clean: |
| extends: |
| - .container-clean |
| variables: |
| GIT_STRATEGY: none |
| CURRENT_CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/fedora/$FDO_DISTRIBUTION_VERSION:$FDO_DISTRIBUTION_TAG |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| |
| fedora:40@container-clean: |
| extends: |
| - .container-clean |
| variables: |
| GIT_STRATEGY: none |
| CURRENT_CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/fedora/$FDO_DISTRIBUTION_VERSION:$FDO_DISTRIBUTION_TAG |
| FDO_DISTRIBUTION_VERSION: '40' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| |
| fedora:39@container-clean: |
| extends: |
| - .container-clean |
| variables: |
| GIT_STRATEGY: none |
| CURRENT_CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/fedora/$FDO_DISTRIBUTION_VERSION:$FDO_DISTRIBUTION_TAG |
| FDO_DISTRIBUTION_VERSION: '39' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| |
| freebsd:14.0@container-clean: |
| extends: |
| - .container-clean |
| variables: |
| GIT_STRATEGY: none |
| CURRENT_CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/freebsd/$FDO_DISTRIBUTION_VERSION:$FDO_DISTRIBUTION_TAG |
| FDO_DISTRIBUTION_VERSION: '14.0' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| |
| freebsd:13.2@container-clean: |
| extends: |
| - .container-clean |
| variables: |
| GIT_STRATEGY: none |
| CURRENT_CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/freebsd/$FDO_DISTRIBUTION_VERSION:$FDO_DISTRIBUTION_TAG |
| FDO_DISTRIBUTION_VERSION: '13.2' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| |
| |
| ####################################### |
| # # |
| # build stage # |
| # # |
| ####################################### |
| |
| .check_tainted: &check_tainted | |
| # make sure the kernel is not tainted |
| if [[ "$(ssh localhost -p 5555 cat /proc/sys/kernel/tainted)" -gt 0 ]]; |
| then |
| echo tainted kernel ; |
| exit 1 ; |
| fi |
| |
| .build-in-qemu@template: |
| tags: |
| - kvm |
| script: |
| - /app/vmctl start || (echo "Error - Failed to start the VM." && exit 1) |
| |
| - *check_tainted |
| |
| - export BUILD_ID="fontconfig-$CI_JOB_NAME_$CI_COMMIT_SHA-$CI_JOB_ID" |
| - export PREFIX="$(pwd)/prefix-$BUILD_ID" |
| - export BUILDDIR="$(pwd)/build-$BUILD_ID" |
| - export MAKEFLAGS="-j4" |
| - | |
| buildopt=() |
| for bo in $FC_BUILD_ENABLED; do |
| buildopt+=(-e $bo) |
| done |
| for bo in $FC_BUILD_DISABLED; do |
| buildopt+=(-d $bo) |
| done |
| [ -n "$FC_BUILD_ARCH" ] && buildopt+=(-a $FC_BUILD_ARCH) |
| [ $FC_BUILD_DISTCHECK -eq 1 ] && buildopt+=(-c) |
| [ $FC_BUILD_NO_INSTALL -eq 1 ] && buildopt+=(-I) |
| [ $FC_BUILD_NO_CHECK -eq 1 ] && buildopt+=(-C) |
| buildopt+=(-s $FC_BUILDSYS) |
| buildopt+=(-t $FC_BUILD_TYPE) |
| buildopt+=(-X $FC_XML_BACKEND) |
| export buildopt |
| - "scp -r $(pwd) vm:" |
| - echo "CI_JOB_ID=\"$CI_JOB_ID\"" > fcenv |
| - echo "CI_JOB_NAME=\"$CI_JOB_NAME\"" >> fcenv |
| - echo "BUILD_ID=\"$BUILD_ID\"" >> fcenv |
| - echo "MAKEFLAGS=\"$MAKEFLAGS\"" >> fcenv |
| - echo "MAKE=\"$MAKE\"" >> fcenv |
| - "scp fcenv vm:~/$CI_PROJECT_NAME/.gitlab-ci/fcenv" |
| - /app/vmctl exec "cd $CI_PROJECT_NAME ; bash .gitlab-ci/build.sh ${buildopt[@]}" && touch .success || true |
| - scp -r vm:$CI_PROJECT_NAME/build $BUILDDIR |
| |
| - *check_tainted |
| |
| - /app/vmctl stop |
| - if [[ ! -e .success ]]; |
| then |
| exit 1 ; |
| fi |
| variables: |
| FC_BUILDSYS: autotools |
| FC_XML_BACKEND: expat |
| FC_BUILD_TYPE: both |
| FC_BUILD_DISTCHECK: 0 |
| FC_BUILD_NO_INSTALL: 0 |
| FC_BUILD_NO_CHECK: 0 |
| |
| .build@template: |
| script: |
| - export BUILD_ID="fontconfig-$CI_JOB_NAME_$CI_COMMIT_SHA-$CI_JOB_ID" |
| - export PREFIX="$(pwd)/prefix-$BUILD_ID" |
| - export BUILDDIR="$(pwd)/build-$BUILD_ID" |
| - export MAKEFLAGS="-j4" |
| - | |
| buildopt=() |
| for bo in $FC_BUILD_ENABLED; do |
| buildopt+=(-e $bo) |
| done |
| for bo in $FC_BUILD_DISABLED; do |
| buildopt+=(-d $bo) |
| done |
| [ -n "$FC_BUILD_ARCH" ] && buildopt+=(-a $FC_BUILD_ARCH) |
| [ $FC_BUILD_DISTCHECK -eq 1 ] && buildopt+=(-c) |
| [ $FC_BUILD_NO_INSTALL -eq 1 ] && buildopt+=(-I) |
| [ $FC_BUILD_NO_CHECK -eq 1 ] && buildopt+=(-C) |
| buildopt+=(-s $FC_BUILDSYS) |
| buildopt+=(-t $FC_BUILD_TYPE) |
| buildopt+=(-X $FC_XML_BACKEND) |
| sh .gitlab-ci/build.sh ${buildopt[@]} |
| variables: |
| FC_BUILDSYS: autotools |
| FC_XML_BACKEND: expat |
| FC_BUILD_TYPE: both |
| FC_BUILD_DISTCHECK: 0 |
| FC_BUILD_NO_INSTALL: 0 |
| FC_BUILD_NO_CHECK: 0 |
| |
| .fc_artifacts: |
| artifacts: |
| name: fontconfig-$CI_COMMIT_SHA-$CI_JOB_ID |
| when: always |
| expire_in: 5 days |
| paths: |
| - build*/doc/fontconfig-user.html |
| - build*/doc/fontconfig-devel/* |
| - build*/fc-build.log |
| - build*/config.log |
| - build*/fontconfig-*.tar.* |
| - build*/test/*log |
| - build*/fontconfig*/_build |
| - build*/meson-logs/* |
| |
| ####################################### |
| # # |
| # test stage # |
| # # |
| ####################################### |
| |
| |
| t_fedora:rawhide:autotools shared expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:autotools shared libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| FC_BUILD_DISTCHECK: 1 |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:meson shared expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:meson shared libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:autotools static expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: static |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:autotools static libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: static |
| FC_XML_BACKEND: libxml2 |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:meson static expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: static |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:meson static libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: static |
| FC_XML_BACKEND: libxml2 |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:mingw autotools static libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: static |
| FC_XML_BACKEND: libxml2 |
| FC_BUILD_PLATFORM: mingw |
| FC_BUILD_ARCH: x86_64-mingw32 |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:rawhide:mingw meson static expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: 'rawhide' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: static |
| FC_XML_BACKEND: expat |
| FC_BUILD_PLATFORM: mingw |
| FC_BUILD_ARCH: linux-mingw-w64-64bit |
| FC_BUILD_NO_INSTALL: 1 |
| needs: |
| - 'fedora:rawhide@container-prep' |
| |
| |
| t_fedora:40:autotools shared expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '40' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:40@container-prep' |
| |
| |
| t_fedora:40:autotools shared libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '40' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| FC_BUILD_DISTCHECK: 1 |
| needs: |
| - 'fedora:40@container-prep' |
| |
| |
| t_fedora:40:meson shared expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '40' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:40@container-prep' |
| |
| |
| t_fedora:40:meson shared libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '40' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| needs: |
| - 'fedora:40@container-prep' |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| t_fedora:39:autotools shared expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '39' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:39@container-prep' |
| |
| |
| t_fedora:39:autotools shared libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '39' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| FC_BUILD_DISTCHECK: 1 |
| needs: |
| - 'fedora:39@container-prep' |
| |
| |
| t_fedora:39:meson shared expat: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '39' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| needs: |
| - 'fedora:39@container-prep' |
| |
| |
| t_fedora:39:meson shared libxml2: |
| extends: |
| - .build@template |
| - .fdo.distribution-image@fedora |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: fedora |
| FDO_DISTRIBUTION_VERSION: '39' |
| FDO_DISTRIBUTION_TAG: $FEDORA_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| needs: |
| - 'fedora:39@container-prep' |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| t_freebsd:14.0:autotools shared expat: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '14.0' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| MAKE: gmake |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:14.0@container-prep' |
| |
| |
| t_freebsd:14.0:autotools shared libxml2: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '14.0' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| MAKE: gmake |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:14.0@container-prep' |
| |
| |
| t_freebsd:14.0:meson shared expat: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '14.0' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:14.0@container-prep' |
| |
| |
| t_freebsd:14.0:meson shared libxml2: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '14.0' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:14.0@container-prep' |
| |
| |
| t_freebsd:13.2:autotools shared expat: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '13.2' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| MAKE: gmake |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:13.2@container-prep' |
| |
| |
| t_freebsd:13.2:autotools shared libxml2: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '13.2' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: autotools |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| MAKE: gmake |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:13.2@container-prep' |
| |
| |
| t_freebsd:13.2:meson shared expat: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '13.2' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: expat |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:13.2@container-prep' |
| |
| |
| t_freebsd:13.2:meson shared libxml2: |
| extends: |
| - .build-in-qemu@template |
| - .fdo.distribution-image@freebsd |
| - .fc_artifacts |
| variables: |
| FC_DISTRO_NAME: freebsd |
| FDO_DISTRIBUTION_VERSION: '13.2' |
| FDO_DISTRIBUTION_TAG: $FREEBSD_TAG |
| FC_BUILDSYS: meson |
| FC_BUILD_TYPE: shared |
| FC_XML_BACKEND: libxml2 |
| FC_BUILD_NO_CHECK: 1 |
| needs: |
| - 'freebsd:13.2@container-prep' |
| |
| |
| ####################################### |
| # # |
| # deploy stage # |
| # # |
| ####################################### |
| |
| check-merge-request: |
| extends: |
| - .fdo.ci-fairy |
| stage: deploy |
| script: |
| - ci-fairy check-merge-request --require-allow-collaboration --junit-xml=results.xml |
| artifacts: |
| when: on_failure |
| reports: |
| junit: results.xml |
| allow_failure: true |
| |
| pages: |
| stage: deploy |
| script: |
| - | |
| mkdir public || : |
| cp -a build*/doc/fontconfig-user.html build*/doc/fontconfig-devel public/ |
| artifacts: |
| paths: |
| - public |
| dependencies: |
| - t_fedora:rawhide:autotools shared libxml2 |
| needs: |
| - t_fedora:rawhide:autotools shared libxml2 |
| rules: |
| - if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE != "merge_request_event" |