lkml.org 
[lkml]   [2018]   [Nov]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] kbuild: consolidate single targets
From
Date

On 30/10/2018 04:32, Masahiro Yamada wrote:
> Instead of specifying target/source pairs, let's list patterns that we
> want to handle as single targets. This slightly changes the behavior;
> the top Makefile previously checked the presence of a source file,
> now Kbuild will descend into a subdirectory anyway to find out what to
> do there.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---
>
> Makefile | 16 +---------------
> 1 file changed, 1 insertion(+), 15 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index be76e6e..7d13add 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1713,21 +1713,7 @@ else
> target-dir = $(if $(KBUILD_EXTMOD),$(dir $<),$(dir $@))
> endif
>
> -%.s: %.c prepare scripts FORCE
> - $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
> -%.i: %.c prepare scripts FORCE
> - $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
> -%.o: %.c prepare scripts FORCE
> - $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
> -%.lst: %.c prepare scripts FORCE
> - $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
> -%.s: %.S prepare scripts FORCE
> - $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
> -%.o: %.S prepare scripts FORCE
> - $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
> -%.symtypes: %.c prepare scripts FORCE
> - $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
> -%.ll: %.c prepare scripts FORCE
> +%.i %.ll %.lst %.o %.s %.symtypes: prepare scripts FORCE
> $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
>
> # Modules

On one of my build machines (an older ubuntu 14.04 machine), this is
commit is causing 'make mrproper' or 'make distclean' to fail. Reverting
this commit fixes the problem.

$ make mrproper
Error: kernelrelease not valid - run 'make prepare' to update it
CC kernel/bounds.s
In file included from <command-line>:0:0:
././include/linux/kconfig.h:5:32: fatal error: generated/autoconf.h: No
such file or directory
#include <generated/autoconf.h>
^
compilation terminated.
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2

FWIW, this machine has ...

$ make --version
GNU Make 3.81

Cheers
Jon

--
nvpublic

\
 
 \ /
  Last update: 2018-11-02 10:45    [W:0.052 / U:0.624 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site