On Fri, 27 Feb 2004, Lamar Owen wrote:
The point is that the $RPM_BUILD_ROOT recommendation isn't even
consistently
followed in the rpmmacros definitions themselves, meaning that every spec
file is using a willy-nilly mix of %{buildroot} and $RPM_BUILD_ROOT even if
those strings do not appear in your spec file itself. Thus the
recommendation and checklist item is totally redundant and really deserves to
be removed, Jeff's comments notwithstanding. If and when Jeff actually
changes ${buildroot} basic core rpm build macros will break, and break badly,
so the likelihood of that change happening is somewhere between slim and
none, and Slim just left town. Of course, Jeff has surprised us
before... :-)
Each have their uses, and the spec file maintainer may intend %{buildroot}
where it is specified; and $RPM_BUILD_ROOT might be better for another. But
it is obvious that %{buildroot} is a little (marginally) easier to type and
read.
I'm kindof rather amused by people arguing over "Which should be
used $RPM_BUILD_ROOT or %{buildroot}?" so violently. It's very
emacs versus vi'ish indeed. ;o)
For the record, I use RPM_BUILD_ROOT exclusively myself, but only
because that's what I started using way back when, and it just
stuck.
Considering the fact that there are a massive number of RPM
packages in existance both inside the distribution and outside of
it which use either one of the two, removal of either one of them
would essentially break anywhere from 40-60% of all src.rpms in
existance at a guess.
The likelyhood of that major of a change happening to rpm *ever*,
is very unrealistic IMHO, and so it really makes no difference
which people use, so arguing vehemently about which one is more
"correct" is a sheer and utter waste of time. ;o)
That said, if there ever was an officially declared standard that
was adopted by Red Hat, Mandrake, SuSE, all major 3rd party
repositories, I would switch all my spec files in a heartbeat to
comply, but the likelyhood of that ever actually happening is
very small IMHO.
Why not argue instead about why RPM's %if/%ifarch macros are not
nestable? Or why there is no %elseif? ;o)
--
Mike A. Harris
ftp://people.redhat.com/mharris
OS Systems Engineer - XFree86 maintainer - Red Hat