Messages in this thread Patch in this message | | | Date | Tue, 6 Jan 2009 23:09:50 +0100 | From | Sam Ravnborg <> | Subject | Re: [REGRESSION] Recent change to kernel spikes out ccache/distcc |
| |
On Tue, Jan 06, 2009 at 10:15:26AM -0500, Theodore Ts'o wrote: > The following commit, ad7a953c, "kbuild: strip generated symbols from > *.ko" which was merged to the mainline last week (December 28th) has the > unfortunate side effct of making ccache useless. That's because all > files are now built using a two step process. First they are compiled > to assembly via "gcc -S -o .tmp_foo.s" and then assembled via "gcc" in a > separate step. Unfortunately, ccache doesn't seem to be able to cache > either the compilation or the assembly step (and it may not be worth it > once the two steps are separated).
Hi Ted.
How about this simple patch.
diff --git a/scripts/Makefile.build b/scripts/Makefile.build index 5d90030..3b9b8f5 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build @@ -208,7 +208,7 @@ cmd_modversions = \ fi; \ else \ rm -f $(v_file); \ - $(CC) $(no_g_c_flags) -c -o $@ $(s_file); \ + $(CC) $(no_g_c_flags) -c -o $@ $< ; \ fi; endif It basically starts all over again with the C file if the file did not export any symbols (typical case).
This I think should allow ccache to be functional again.
I do not propose this as a final suggestion - more so that I'm sure I understand the problem.
Sam
| |