On 08/07/2017 03:39 AM, David C. Rankin wrote: > On 08/06/2017 10:23 PM, David C. Rankin wrote: >> All, >> >> There was a fix for a gtk2 bug I filed regarding the recentchooserdefault.c >> file. (it was a one-line fix where a variable needed reset to 0). Is there any >> way I can configure makepkg to behave as if the gcc -MP -MD options had been >> given to have it only recompile the one patched source without rebuilding the >> entire package -- again? >> >> I've been through the wiki and the man page, and other than --repackage, >> there doesn't seem to be anything that would work (or I'm just missing it). > > If it wasn't clear, I have already built the gtk2 package yesterday to > --enable-debug=yes so I have all of the files in a state I could call > --repackge on, except for the gtk/gtkrecentchooser.c file with the one line > change. I was wondering if there was a way to avoid the full 15 minute rebuild > of all of gtk2 and just compile gtkrecentchooserdefault.c to object and then > --repackage? I think you're misunderstanding what -MP does. As for rebuilding only the one source, makepkg source extraction should result in extracting files with the same initial timestamp as the last time they were extracted. Although if you are using the gtk2 PKGBUILD from the ABS, it uses git anyway... So Make should consider all objects to be up-to-date, except the one you have sed'ed. You could also use `makepkg --noextract` which assumes you applied the fix by hand rather than in the PGBUILD, which is probably safer as it skips prepare(), and in theory re-running configure should not cause Make to expire all object files (though with autotools who really knows...) Aside: repackage does not do what you want, since it doesn't rebuild anything. Granted, Makefiles usually have the install target depend on the default target, so it would probably end up being built too... in fakeroot... -- Eli Schwartz
Attachment:
signature.asc
Description: OpenPGP digital signature