[Rpm-maint] macrofiles: ignored in rpmbuild 4.6.0-rc1

Panu Matilainen pmatilai at redhat.com
Wed Dec 17 11:32:07 UTC 2008

On Tue, 16 Dec 2008, Joachim Worringen wrote:

> Greetings,
> we are using a pretty complex script + spec files to build RPMs from our
> software stack.
> This operation works well on a wide range of distributions (all we
> know), but now fails with rpm 4.6.0-rc1 (from Fedora Core 10).
> The reason is that the "macrofiles: ..." line from a rpmrc file is
> ignored, and thus _topdir and others are not set as it should: it's
> defined in a macro file placed at an arbitrary place in the file system,
> to which the macrofiles: line points.
> I verified that defining the macros in $HOME/.rpmmacros works, but we
> don't want to do this as we have customers build the RPMs themselves (to
> match their kernel), and we don't want to mess with their $HOME.
> A workaround is to use --define on the rpmbuild command line, but this
> becomes pretty lenghty and clumsy because of the required quoting, and
> we'd rather put the macro definitions in a file to be sourced.
> Thus, is this change a bug, or is it by design? If by design, what's the
> rationale? If it's a bug, I can provide a simple test case.

It's intentional, as a step to slowly phase out rpmrc as it is (ie very 
much insufficient for describing cross-arch/platform build 
configurations). You can use --macros=<file:...> option to define & use 
alternative list of macro files, that way you dont have to --define 
everything on the command line.

 	- Panu -

More information about the Rpm-maint mailing list