[GuidelinesChange] Prepping BuildRoot For %install

Panu Matilainen pmatilai at laiskiainen.org
Wed Apr 11 13:20:22 UTC 2007


On Wed, 11 Apr 2007, Tony Nelson wrote:

> At 9:30 AM +0300 4/11/07, Panu Matilainen wrote:
>> On Tue, 10 Apr 2007, Tom \spot\ Callaway wrote:
>>
>>> On Mon, 2007-04-09 at 23:44 -0400, Tom Lane wrote:
>>>> "Tom \"spot\" Callaway" <tcallawa at redhat.com> writes:
>>>>> It is important to properly prepare the BuildRoot in the %install
>>>>> section of your package before it is used. Every Fedora package MUST
>>>>> have an %install section that begins with either:
>>>>> %install
>>>>> rm -rf %{buildroot}
>>>>> or
>>>>> %install
>>>>> rm -rf $RPM_BUILD_ROOT
>>>>
>>>> Just outta curiosity, why is it not considered an RPM bug that every
>>>> specfile has to take care of this detail?  Seems like it'd be trivial
>>>> to fix it once instead of memorializing this oversight in every package
>>>> till the end of time.
>>>
>>> This is absolutely an RPM bug. However, since RPM is riddled with bugs,
>>> we can either hope they get fixed, or work around them with guidelines
>>> until they get fixed.
>>>
>>> Historically, filing bugs against items like this have been futile since
>>> it would "change RPM's behavior", as broken as it may be.
>>
>> I've always been more than a bit puzzled by this... if the same logic was
>> applied everywhere we'd be stuck with egcs 1.x (or something) as the C
>> compiler because newer versions change the behavior and "break" a large
>> amount of existing software.
>
> When the C compiler is changed, already compiled programs keep running.
> When RPM is changed, already built RPMs stop working.  /Thats/ what freezes
> RPM's behavior.

Except this discussion (and several similar others) has been about rpm 
*build-time* functionality. Oh and good luck trying to actually run 
binaries built in lets say rpm-4.0.x era on current systems :)

 	- Panu -




More information about the fedora-devel-list mailing list