[Fedora-packaging] RFD: C/C++ template packages

Ralf Corsepius rc040203 at freenet.de
Mon Oct 15 11:54:30 UTC 2012


On 10/15/2012 01:03 PM, Paul Howarth wrote:
> On 2012-10-15 11:05, Ralf Corsepius wrote:
>> Hi,
>>
>> Fedora carries some "C/C++" "template"/"header-only" packages
>> (Packages which contain C/C++-headers only).
>>
>> Typically, these packages are being built "BuildArch: noarch".
>>
>> == These packages are supposed to be arch-independent.
>>
>> In reality, many of these packages often are wrapper headers, trying
>> to wrap to something highly OS-/arch-dependent, from system-headers
>> and compiler built-ins defines.
>>
>> I.e. though these packages are supposed to be arch-independent, there
>> is no guarantee nor check whether these packages actually are
>> arch-independent.
>>
>>
>> I am proposing to:
>>
>> Proposal:
>>
>> All "C/C++-template/header-only packages" must be built using an
>> "arch'ed BuildArch", with the resulting binary packages implemented as
>> "Arch: noarch"-subpackages.
>>
>>
>> Benefits:
>>
>> - This would assure such packages would be built on all architectures
>> Fedora supports and not only the architecture noarch-packages are
>> being built.
>>
>> - This would exercise potentially existing configuration-scripts on
>> all architectures and would allow to exercise test-scripts rsp. coding
>> examples (which can be regarded as compilation-checks) on all Fedora
>> supported architectures.
>>
>>
>> Comments, opinions?
>
> If the packages do turn out to be arch-specific (e.g. different
> constants for different architectures), the use of noarch subpackages
> would cause the build to fail, which _would_ be a good thing. To fix
> that, the packager would either have to use tricks like the ones often
> found to provide multi-arch support for library-config scripts, or
> making the packages arch-specific, which would probably result in
> multi-arch conflicts unless the install paths were made arch-specific too.
>
> So I think this is a good plan except I wouldn't make the use of noarch
> subpackages a MUST - it would be OK to have them arch-specific as long
> as they didn't have multi-arch conflicts (so for example i386 and x86_64
> could be installed in parallel).

Good point - My proposal needs refinements ;)

In my posting above, I am referring to "C/C++-template/headers-only" 
which currently are shipped or about to be shipped "noarch" in Fedora [1].

Ralf

[1] Background of this RFD is me having tripped over such "lack of 
generality" bug when activating the code-examples and test-building such 
a noarched "C-/C++-header-only" package in a i386-mock instead of 
x86_64-environment, some weeks ago (Unfortunately, ATM, I don't recall 
which package it was.)




More information about the packaging mailing list