Fedora Account System
Red Hat Associate
Red Hat Customer
It happens to me quite often to me that things during build of larger packages, such as virtualbox, sunbird, or openjdk. It's very convenient that I can resume the build after fixing the problem by hand and proceed with --short-circuit. That way I can check whether my %files sections are OK without repeating the build. It's a pity that I can't build a RPM package when using --short-circuit. That way I could check the dependencies or run rpmlint or whatever and spot potential problems without another rebuild of the package. No idea if it's technically possible to short-circuit to binary rpm build, but I'd be very thankful if it could be done.
Permitting --short-circuit to resume a build and produce packages is more of a religious/philosophical issue than an engineering issue. The patch (from Mandrake, yes Mandrake) to do what you want has been known for years. Find the patch, apply to rpm, rebuild and be happy is likely your best bet. The religion/philosophy discussion has been going on almost a decade with no winner yet re --short-circuit behavior.
Created attachment 328021 [details] Be able to short circuit a binary package build (In reply to comment #1) > Permitting --short-circuit to resume a build and produce packages > is more of a religious/philosophical issue than an engineering issue. I have a good hope backed by previous experience that religious issues don't apply to Fedora :) > The patch (from Mandrake, yes Mandrake) to do what you want has > been known for years. Find the patch, apply to rpm, rebuild and be happy > is likely your best bet. The religion/philosophy discussion has been > going on almost a decade with no winner yet re --short-circuit behavior. Thanks for the pointer to the patch, I attached it here for quicker reference. I hope that since the patch considerably improves packaging experience while having completely no impact of the rest of the package and can be safely ignored it's a good candidate for inclusion in RPM. Unfortunately (or not? :) I have not been able to find a relevant discussion (though I have not tried too hard). The only possible problem I see with the patch is decision whether to break bb before or after the clean, but I guess that was not the point of the discussions.
There's easily 5 --short-circuit RFE's against rpm in bugzilla. But I absolutely agree bugzilla searching is way way broken. I can likely find another 5 or so Talmudic discussions on the merits (or not) of --short-circuit on various mailing list archives in minutes if necessary *shrug* The issue that noone understands is that rpm *guarantees* that a package build goes from soup-to-nuts on some build machine at some point in time. I.e. rpm guarantees that packages build from sources with no strings attached, a quite important guarantee with FLOSS software. Once one understands the strength of the guarantee, one can discover how one's build machine is misconfigured rather than blaming rpm to relieve frustration and boredom. But the guarantee != --short-circuit behavior, another easily mis-understood point. rpm does not have to forcibly prevent building, the guarantee can be supplied through policy, not through implementation. Ask 5 Fedora developers, collect 8 answers, all different, if you want to see the religous nature of the discussion. I actually did a --short-circuit poll with that result while @redhat.com.
(In reply to comment #3) > The issue that noone understands is that rpm *guarantees* that a package > build goes from soup-to-nuts on some build machine at some point in time. > I.e. rpm guarantees that packages build from sources with no strings attached, > a quite important guarantee with FLOSS software. Does it? I thought mock was invented because it does not. I've seen spec files having "BuildRoot: /" and picking files from live system. I can manipulate contents of the buildroot during the build, I can copy files from anywhere there. There're infinite possibilities to do a non-reproducible build. > Ask 5 Fedora developers, collect 8 answers, all different, if you want to see > the religous nature > of the discussion. I actually did a --short-circuit poll with that result while > @redhat.com. Well, are all those relevant? Are polls relevant here? See, if you asked me if GIMP should gain support of CMYK, and I replied "No way, that's an picture editor for web designers" just because I wouldn't use it, would my reply be relevant?
You may have seen BuildRoot: / but you obviously have never tried to build that spec file. Picking files from a live system is a different matter than a guarantee. A soup-to-nuts guarantee reduces the "live" time window on a build system. Consider what happens with partially completed builds restarted hours/days/weeks later on a "live" system that includes "live" files including build tools. Noone promised an *absolute* guarantee, not even mock can make that claim. Is religion any more relevant than developer opinions? You will have to shop your own answers ...
*** This bug has been marked as a duplicate of bug 497827 ***