summaryrefslogtreecommitdiffstats
path: root/.packit.yml
blob: 49f684c47bc5f41929df6f9b12fb15da1e40b849 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
---
# vi:ts=2 sw=2 et:
#
# Docs: https://packit.dev/docs/

specfile_path: .packit_rpm/systemd.spec
synced_files:
  - .packit.yaml
  - src: .packit_rpm/systemd.spec
    dest: systemd.spec
upstream_package_name: systemd
downstream_package_name: systemd
# `git describe` returns in systemd's case 'v245-xxx' which breaks RPM version
# detection (that expects 245-xxxx'). Let's tweak the version string accordingly
upstream_tag_template: "v{version}"

actions:
  post-upstream-clone:
    # Use the Fedora Rawhide specfile
    - "git clone https://src.fedoraproject.org/rpms/systemd .packit_rpm --depth=1"
    # Drop backported patches from the specfile, but keep the downstream-only ones
    # - Patch0000-0499: backported patches from upstream
    # - Patch0500-9999: downstream-only patches
    - "sed -ri '/^Patch0[0-4][0-9]{2}+\\:.+\\.patch/d' .packit_rpm/systemd.spec"
    # Build the RPMs with -Werror to catch possible compiler warnings. Since
    # --werror in meson doesn't seem to work with -Db_lto=true [0], let's use
    # -Dc_args= and -Dcpp_args= instead.
    #
    # Exceptions:
    #   - use -Wno-deprecated-declarations to get around mallinfo() use in
    #     basic/selinux-util.c
    #   - don't use -Werror on x86 architectures, otherwise all function checks
    #     will fail (with error: cast from pointer to integer of different size)
    #
    # [0] https://github.com/mesonbuild/meson/issues/7360
    - 'sed -i "/^CONFIGURE_OPTS=(/a%ifnarch i386 i686\n-Dc_args=\"-Werror -Wno-deprecated-declarations\" -Dcpp_args=\"-Werror -Wno-deprecated-declarations\"\n%endif" .packit_rpm/systemd.spec'

jobs:
- job: copr_build
  trigger: pull_request
  metadata:
    targets:
    - fedora-rawhide-aarch64
    - fedora-rawhide-i386
    - fedora-rawhide-x86_64
    - fedora-eln-aarch64
    - fedora-eln-x86_64