On Mon, Mar 26, 2018 at 10:29 PM, Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> wrote: > The kbuild cache was introduced to remember the result of shell > commands, some of which are expensive to compute, such as > $(call cc-option,...). > > However, this turned out not so clever as I had first expected. > Actually, it is problematic. For example, "$(CC) -print-file-name" > is cached. If the compiler is updated, the stale search path causes > build error, which is difficult to figure out. Another problem > scenario is cache files could be touched while install targets are > running under the root permission. We can patch them if desired, > but the build infrastructure is getting uglier and uglier. > > Now, we are going to move compiler flag tests to the configuration > phase. If this is completed, the result of compiler tests will be > naturally cached in the .config file. We will not have performance > issues of incremental building since this testing only happens at > Kconfig time. > > To start this work with a cleaner code base, remove the kbuild > cache first. > > Revert the following commits: > Commit 9a234a2e3843 ("kbuild: create directory for make cache only when necessary") > Commit e17c400ae194 ("kbuild: shrink .cache.mk when it exceeds 1000 lines") > Commit 4e56207130ed ("kbuild: Cache a few more calls to the compiler") > Commit 3298b690b21c ("kbuild: Add a cache for generated variables") > > Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx> -Kees -- Kees Cook Pixel Security -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html