aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorPeter Foley <pefoley2@verizon.net>2011-07-05 19:42:18 -0400
committerMichal Marek <mmarek@suse.cz>2011-07-19 19:32:32 -0400
commite78e8f2d8318851d0911039999c903a6082bef2e (patch)
tree6de5c0c1fd3219985116b2225448c0c0f8a23093 /kernel
parentf210735fe2f17a6225432ee3d1239bcf23a8659c (diff)
kernel: prevent unnecessary rebuilding due to config_data.gz
When IKCONFIG is built-in make oldconfig will cause the kernel to be relinked even if .config didn't change. This happens because of a config_data.gz dependency on .config. This patch changes the if_changed to a filechk so that config_data.h is only rebuilt when the contents have actually changed. Signed-off-by: Peter Foley <pefoley2@verizon.net> Signed-off-by: Michal Marek <mmarek@suse.cz>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/Makefile5
1 files changed, 2 insertions, 3 deletions
diff --git a/kernel/Makefile b/kernel/Makefile
index 2d64cfcc8b42..d06467fc8f7c 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -125,11 +125,10 @@ targets += config_data.gz
125$(obj)/config_data.gz: $(KCONFIG_CONFIG) FORCE 125$(obj)/config_data.gz: $(KCONFIG_CONFIG) FORCE
126 $(call if_changed,gzip) 126 $(call if_changed,gzip)
127 127
128quiet_cmd_ikconfiggz = IKCFG $@ 128 filechk_ikconfiggz = (echo "static const char kernel_config_data[] __used = MAGIC_START"; cat $< | scripts/bin2c; echo "MAGIC_END;")
129 cmd_ikconfiggz = (echo "static const char kernel_config_data[] __used = MAGIC_START"; cat $< | scripts/bin2c; echo "MAGIC_END;") > $@
130targets += config_data.h 129targets += config_data.h
131$(obj)/config_data.h: $(obj)/config_data.gz FORCE 130$(obj)/config_data.h: $(obj)/config_data.gz FORCE
132 $(call if_changed,ikconfiggz) 131 $(call filechk,ikconfiggz)
133 132
134$(obj)/time.o: $(obj)/timeconst.h 133$(obj)/time.o: $(obj)/timeconst.h
135 134