[Rpm-maint] rpm %makeinstall macro brokenness

Ville Skyttä ville.skytta at iki.fi
Mon Dec 24 21:53:36 UTC 2007

On Monday 24 December 2007, Lennert Buytenhek wrote:
> Hi all,
> I noticed this (rpm
> Apart from the funny way of writing %{?buildroot}, trying to coax
> 'make install' into installing files into %{buildroot} by redefining
> prefix= is very much the wrong thing to do.

With recent autotools, that's right, and that's one reason why eg. the Fedora 
packaging guidelines advice against using it.

But %makeinstall in its current form AFAIK predates the DESTDIR standard for 
doing staged installs and is still useful for old software that use old 
autotools versions without DESTDIR support.

Changing it to expand to eg. "make DESTDIR=... install" would be a backwards 
incompatible change, break some package builds, and cause the need to take 
the rpmbuild version into account in specfiles which is a problem when 
multiple distros or distro versions are supposed to be built from the same 
specfile, effectively (I guess) resulting in fewer and fewer people 
continuing to use it any more at all.  Just writing "make 
DESTDIR=$RPM_BUILD_ROOT install" is less obfuscated, more portable, and not 
really that much more/harder to write than "%makeinstall".

More information about the Rpm-maint mailing list