On Thu, Dec 9, 2021 at 3:33 PM Ben Beasley <code(a)musicinmybrain.net> wrote:
(snip)
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.
I think making the *subpackages* noarch is a good idea, if that's possible.
In fact, that's how Rust packages already work (well, they're not
"header-only", but "source-only", but the difference doesn't
matter
here ...)
We run a test build and run tests on all supported architectures, but
ship sources as noarch -devel subpackages.
Fabio