I have submitted a Packaging Draft:
https://pagure.io/packaging-committee/pull-request/1140
https://pagure.io/packaging-committee/issue/1141
On 12/9/21 09:03, Ben Beasley wrote:
Currently, the packaging guidelines say the following[1] regarding
header-only libraries:
Do not use noarch
It may be tempting to make the header library package noarch, since
the header files themselves are simply text. However, a library should
have tests which should be run on all architectures. Also, the install
process may modify the installed headers depending on the build
architecture. For these reasons, header-only packages must not be
marked noarch.
I’d like to collect feedback on the idea of revising this guidance to
clarify that the *base* package, which in a header-only library package
typically has no %files section and does not produce a binary RPM, must
be arched, but that any subpackages, specifically including the -devel
package, may be noarch.
This would address both of the justifications for the general
prohibition in the guidelines:
- The package will still be built, and any tests executed, on all
architectures so long as the base package is not noarch
- Differences in the installed headers depending on the build
architecture would be detected by koji[2], failing the build
(and thereby indicating the need to drop “noarch”)
However, it would confer the following benefits:
- The vast majority of header-only packages could produce noarch
binary rpms. This would:
* save storage and bandwidth
* be less surprising and confusing to packagers and users, who
normally expect arch-independent content to appear in noarch
packages
I have created a PR[3] on the “atomic-queue” package as an example. In
the associated scratch build, you can see that builds occur on all
architectures, but only a single noarch RPM is produced.
If feedback here is positive, I’ll open a Packaging Draft[4] with
specific proposed text.
[1]
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_do_not_use_noarch
[2] https://docs.pagure.org/koji/misc/#how-noarch-sub-packages-are-built
[3] https://src.fedoraproject.org/rpms/atomic-queue/pull-request/1
[4]
https://fedoraproject.org/wiki/Packaging_Committee#Step_One:_Draft_Guidelines
_______________________________________________
packaging mailing list -- packaging@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to packaging-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/packaging@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure