Question about dist-cvs make targets

Enrico Scholz enrico.scholz at informatik.tu-chemnitz.de
Sat Jan 9 12:20:41 UTC 2010


Till Maas <opensource at till.name> writes:

> Iirc there is a rediff target to keep the comments in a spec.

I never got this to work; e.g.

$ LANG=C make rediff SUFFIX=arridx
/bin/sh: line 0: cd: /var/tmp/sessiondir-ensc.1262717944.trKTtL/cvsextras/hunt-1.5/..: No such file or directory


It seems to assume a %name-%version-$SUFFIX.patch naming scheme.  Lot of
my patches are from a previous %version so that it does not apply.


>> | %apply -n23 -p1
>
> Would you please provide more instructions about how to implement it and
> how to use it?

Place

| %{!?apply:%global  apply(p:n:b:) %patch%%{-n:%%{-n*}} %%{-p:-p %%{-p*}} %%{-b:-b %%{-b*}} \
| %nil}

in every .spec file and replace

| %patchX -pN

by

| %apply -nX -pN

there. In your local ~/.rpmmacros, add

--------
%apply(p:n:b:)          \
        if test -n "$RPM_NO_DEVEL"; then        \
%patch%{-n:%{-n*}} %-p %-b              \
        else \
           quilt import %-p %{!-p:-p 0} %{P:%{-n*}} \
           quilt push -f; \
        fi \
%nil
--------

Do *not* indent the %patch line; %patchX seems to be implemented very
tricky in rpm and does not work when it does not start on the beginning
of a line.



Enrico




More information about the fedora-devel-list mailing list