projects:
  - libvirt

gitlab:
  namespace: libvirt
  project: libvirt

targets:
  almalinux-9:
    jobs:
      - arch: x86_64
        builds: false
        variables:
          RPM: skip

      - arch: x86_64
        suffix: -clang
        variables:
          RPM: skip
          CC: clang

  alpine-319: x86_64

  alpine-edge:
    jobs:
      - arch: x86_64
        allow-failure: true

  centos-stream-9:
    jobs:
      - arch: x86_64
        artifacts:
          expire_in: 1 day
          paths:
            - libvirt-rpms

  debian-11:
    jobs:
      - arch: x86_64
        builds: false

      - arch: x86_64
        suffix: -clang
        builds: false

      - arch: aarch64
        containers: false
        builds: false

      - arch: armv6l
        containers: false
        builds: false

      - arch: armv7l
        builds: false

      - arch: i686
        containers: false
        builds: false

      - arch: mips64el
        containers: false
        builds: false

      - arch: mipsel
        containers: false
        builds: false

      - arch: ppc64le
        containers: false
        builds: false

      - arch: s390x
        containers: false
        builds: false

  debian-12:
    jobs:
      - arch: x86_64

      - arch: x86_64
        suffix: -clang

      - arch: aarch64
        containers: false
        builds: false

      - arch: armv6l
        containers: false
        builds: false

      - arch: armv7l

      - arch: i686
        containers: false
        builds: false

      - arch: mips64el
        containers: false
        builds: false

      - arch: mipsel
        containers: false
        builds: false

      - arch: ppc64le
        containers: false
        builds: false

      - arch: s390x
        containers: false
        builds: false

  debian-sid:
    jobs:
      - arch: x86_64
        allow-failure: true

      - arch: aarch64
        containers: false
        builds: false

      - arch: armv6l
        containers: false
        builds: false

      - arch: armv7l
        containers: false
        builds: false

      - arch: i686
        containers: false
        builds: false

      - arch: mips64el
        containers: false
        builds: false

      - arch: ppc64le
        containers: false
        builds: false

      - arch: s390x
        containers: false
        builds: false

  fedora-39:
    jobs:
      - arch: x86_64
        artifacts:
          expire_in: 1 day
          paths:
            - libvirt-rpms

  fedora-40:
    jobs:
      - arch: x86_64
        artifacts:
          expire_in: 1 day
          paths:
            - libvirt-rpms

      - arch: mingw32
        builds: false

      - arch: mingw64

  fedora-rawhide:
    jobs:
      - arch: x86_64
        allow-failure: true

      - arch: x86_64
        suffix: -clang
        allow-failure: true
        variables:
          CC: clang
          RPM: skip

      - arch: mingw32
        allow-failure: true

      - arch: mingw64
        allow-failure: true
        builds: false

  freebsd-13: x86_64

  freebsd-14: x86_64

  opensuse-leap-15:
    jobs:
      - arch: x86_64
        variables:
          RPM: skip
          # Keep until fix for: https://bugzilla.opensuse.org/show_bug.cgi?id=1216862
          CFLAGS: -Wno-missing-include-dirs

  opensuse-tumbleweed:
    jobs:
      - arch: x86_64
        allow-failure: true
        variables:
          RPM: skip

  macos-13:
    jobs:
      - arch: aarch64
        variables:
          PATH_EXTRA: /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin
          PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig

  macos-14:
    jobs:
      - arch: aarch64
        variables:
          PATH_EXTRA: /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin
          PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig

  ubuntu-2204:
    jobs:
      - arch: x86_64

  ubuntu-2404:
    jobs:
      - arch: x86_64
        builds: false

      - arch: x86_64
        suffix: -clang
        variables:
          CC: clang
          MESON_ARGS: -Db_lundef=false -Db_sanitize=address,undefined
          UBSAN_OPTIONS: print_stacktrace=1:halt_on_error=1