Neal Gompa wrote:
On Sat, Feb 23, 2019 at 7:25 PM Sérgio Basto
<sergio(a)serjux.com> wrote:
>
> Sorry for the mistake I just fixed the subject ...
>
> Hi,
>
> %autosetup -n GDCM-%{version} -S git -N
> %patch1 -p1
> %patch2 -p1
> %patch3 -p1
> %patch4 -p1
> %patch5 -p1
> %if 0%{?fedora} > 29
> %patch6 -p1 -b .poppler.0.73.0
> %endif
>
> Is this the correct way to apply one patch only in F30 ? , i.e.
> I need patch 6 not be applied on F28 and epel7, how I do that when we
> are using %autosetup ?
>
If you need to do per-patch application, don't use %autosetup.
Use individual %patchN macros or use a strategy like this:
%patch -p1 -P 1 2 3 4 5
%if 0%{?fedora} >= 30
%patch6 -p1 -b .poppler.0.73.0
%endif
Alternately, if you move the %if condition to the Patch6:
header you can let %autosetup handle things still. In other
words:
...
Patch5: number5.patch
%if 0%{?fedora} > 29
Patch6: fedora-30-and-above.patch
%endif
...
%prep
%autosetup -n GDCM-%{version} -S git
...
I don't see anything in the guidelines section on patches
about avoiding such a conditional, but it's possible there's
a more general rule which I'm forgetting. If so, I'm happy
to be reminded. :)
--
Todd