RPM hacking.

Mike A. Harris mharris at redhat.com
Wed Mar 17 03:09:10 UTC 2004

On Tue, 16 Mar 2004, Sam Varshavchik wrote:

>I have a dim recollection of an undocumented option to rpm (now rpmbuild) 
>that's essentially equivalent to "-bb --short-circuit".  That is, it jumps 
>directly to binary RPM files creation; the installation buildroot is already 
>assumed to exist and populated according to whatever's in %files.
>Anyone remember what it is?

Unless this has changed since times past, there is no such 
option.  If I recall correctly, rpm very intentionally does not 
allow you to skip over all stages and jump directly to the file 
packaging stage which then writes out the final binary packages.

The reason for rpm disallowing that, is because you can easily 
end up with binary rpm packages to which the src.rpm that is 
supposed to match them, can not be used to recreate the identical 

For example, if a build fails, I could cd into the RPM_BUILD_DIR, 
edit a Makefile to fix something, then use rpm's short-circuit to 
continue the build through building binary rpms.  The resulting 
rpms were not produced by the src.rpm that matches them, but 
rather were produced by the src.rpm plus handmade hacking.

This has been a very much debated topic on the rpm-list in the 
past, and probably other forums, but I think any decision about 
what rpm should or shouldn't do in this regard has been well 
hashed out in the past, and any opinion on either side of the 
debate has been long since stated.  ;o)

So, if rpm still disallows the creation of binary files via using 
--short-circuit, which I assume is the case, IMHO, it is unlikely 
that will change in the future.  I believe I asked jbj about this 
before and was given a detailed explanation, but I don't remember 
100%.  I think my above comments more or less summarize the often 
repeated debate however.

Oddly enough, if I also remember correctly, the often repeated 
debate ends in the same resolution each time.  ;o)

Not that it matters much, but I also favour rpm disallowing the 
creation of binary rpms while using the --short-circuit option.


Mike A. Harris     ftp://people.redhat.com/mharris
OS Systems Engineer - XFree86 maintainer - Red Hat

More information about the fedora-devel-list mailing list