On Mon, 2022-09-05 at 15:00 -0500, Maxwell G via devel wrote: > On Monday, September 5, 2022 Richard W.M. Jones wrote: > > I have a downstream patch[0] which -- I don't really understand why > > -- > > breaks riscv64 builds but is necessary for primary Fedora arches. > > Is > > it correct to do: > > > > %ifnarch riscv64 > > Patch123: downstream.patch > > %endif > > > > given that the package uses %autosetup and therefore doesn't have > > explicit %patch lines. > > > > I think this means that if I build the SRPM on riscv64 then the > > downstream patch wouldn't be included, meaning that SRPM would then > > fail to build on other arches. In this particular case that > > doesn't > > matter, but it feels wrong. Is there a recommended way to do this > > (apart from fixing the patch)? > > Yes, conditionalizing Source or Patch lines is a bad idea. This exact > case is > explicitly forbidden by the guidelines[1]. There is also a guidelines > PR to > forbid any type of Source/Patch conditionaliztion[2]. because src.rpm will be different if build in one specific arch and src.rpm should have the same results built in any arch > [1]: https://docs.fedoraproject.org/en-US/packaging-guidelines/ > #_no_arch_specific_sources_or_patches > > [2]: https://pagure.io/packaging-committee/pull-request/1163 > > If you don't want to add %patchX for every Patch, you can use regular > `%setup > -q` together with %autopatch, which allows more granular control than > `%autosetup`. > > From /usr/lib/rpm/macros: > > ``` > # Apply patches using %autosetup configured SCM. > # Typically used with no arguments to apply all patches in the order > # introduced in the spec, but alternatively can be used to apply > indvidual > # patches in arbitrary order by passing them as arguments. > # -v Verbose > # -p<N> Prefix strip (ie patch -p argument) > # -m<min> Apply patches with number >= min only (if no > arguments) > # -M<max> Apply patches with number <= max only (if no > arguments) > %autopatch(vp:m:M:) %{lua: > ``` maybe this works: %autosetup -M122 -m124 %ifnarch riscv64 %patch123 -p1 %endif -- Sérgio M. B. _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue