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_no...
>
> [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_Guidel...
>