Hello Daniel!
On Sun, 29 Mar 2020 at 18:07, Daniel Pocock <daniel(a)pocock.pro> wrote:
Hi all,
In addition to the spec file in Fedora Git, I maintain an upstream spec
file and try to keep it up to date so people can take one of our
tarballs and build it on just about any RPM-based distribution whenever
they want.
I saw some discussions about how to maintain changelogs in the spec file
and other issues. Some of that intersects with the question of how to
maintain upstream spec files.
Keeping both an upstream spec file and a spec file in Fedora Git is a
pain for me. I'd prefer to have a way to maintain a single spec file
using macros to support any Fedora/EPEL permutation.
Time spent on maintaining multiple spec files is time that upstreams are
not spending on features.
Furthermore, the upstream spec files are generated by 'make dist', using
autotools. The changelog in the spec file provides an interesting
example of something I don't maintain manually.
Here are the relevant links so that you can see how this works in
practice for an upstream release manager:
The template for our spec files:
https://github.com/resiprocate/resiprocate/blob/master/resiprocate.spec.in
Include it in AC_OUTPUT to ensure the conversion
from *.spec.in -> *.spec takes place:
https://github.com/resiprocate/resiprocate/blob/master/configure.ac#L413
and make sure that *.spec really goes in the 'make dist' tarball:
https://github.com/resiprocate/resiprocate/blob/master/Makefile.am#L37
Cool, in that example, the %changelog section doesn't seem to be
automatically populated even though I believe that could be achieved
as well by adding and populating first @CHANGELOG@ variable?
Well, seems to be doing a good job for upstream projects using autotools.
If you maintain an rpm spec file template in upstream that when
rendered works well for all rpm distros the package is going to, then
there is not so much additional work, I suspect.
In our company, we started to use rpkg (
https://pagure.io/rpkg-util),
other option that I have used is tito. These options might be more
lightweight than autotools.
clime
>
> Regards,
>
> Daniel
> _______________________________________________
> devel mailing list -- devel(a)lists.fedoraproject.org
> To unsubscribe send an email to devel-leave(a)lists.fedoraproject.org
> 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@lists.fedoraproject.org