Re: Planning to start unifying native and mingw packages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/2/22 5:07 AM, Fabio Valentini wrote:
> On Fri, Sep 2, 2022 at 1:43 PM Richard Shaw <hobbes1069@xxxxxxxxx> wrote:
>>
>>> If looking at a single package in isolation it may look wasteful, but from
>>> the POV of the distro as a whole packages with potential mingw sub-RPMs
>>> are a small subset of what goes through koji every day.
>>
>>
>> Perhaps, but the engineer in me finds this very distasteful :)
>>
>> It would probably be too much work but it would be useful to have a pseudo-arch "mingw" which would just build on the first available "noarch" builder.
> 
> Building noarch subpackages on multiple architectures actually
> provides some benefits, even if some - or all - of the output is
> thrown away:
> 
> - architecture-specific bugs that result in generation of different
> "noarch" subpackages get caught (which they wouldn't be if the
> "noarch" subpackage were only ever built once)
> - you can run tests for the functionality that's provided by the
> "noarch" subpackages on different architectures
> - etc.
> 
> For example, all Rust library packages build only "noarch"
> subpackages, but the packages themselves are built on *all*
> architectures, because we want to know whether the shipped code
> actually *compiles* and tests *succeed* on all supported
> architectures. If we didn't do that, catching architecture-specific
> bugs would be much harder, and would only result in random problems,
> or build failures in leaf *application* packages instead of in the
> package that actually has the problem.

Well since you mention Rust, I'll also counterpoint that I do have the
toolchain configured to only use x86_64 to build wasm/mingw noarch
subpackages of the standard library.

The reason is that they include a crate "disambiguator" hash which does
end up capturing host differences as well, so each host arch would end
up with different hashes in the target libs. But that doesn't actually
matter when other host toolchains just *use* those libs in
cross-compilation, so it's fine to ship that noarch everywhere.

But the standard library is a little special in that regard, at least
until the dynamic -Zbuild-std option may be stabilized. As you say, for
most Rust libraries we only ship noarch sources, and it totally makes
sense to still build and test those on each host individually.
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-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/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux