[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-kbuild
Subject:    Re: [PATCH] fs: proc: move linux_proc_banner to where it is used
From:       Rasmus Villemoes <linux () rasmusvillemoes ! dk>
Date:       2018-10-30 8:17:54
Message-ID: 408ef493-de1d-37bb-de66-69134c5a1aca () rasmusvillemoes ! dk
[Download RAW message or body]

On 2018-10-27 21:47, Alexey Dobriyan wrote:
> On Fri, Oct 26, 2018 at 11:20:34PM +0200, Rasmus Villemoes wrote:
>> +#include <generated/compile.h>
> 
>> +#define linux_proc_banner \
>> +	"%s version %s" \
>> +	" (" LINUX_COMPILE_BY "@" LINUX_COMPILE_HOST ")" \
>> +	" (" LINUX_COMPILER ") %s\n"
> 
> Include doesn't work if compiling from scratch:

Urgh, thanks. I assumed that all the include/generated/ stuff was always
generated by the prepare steps in the top Makefile. But the logic for
making compile.h is in init/Makefile.

> 	rm -rf ../obj
> 	mkdir ../obj
> 	make O=../obj defconfig
> 	make O=../obj fs/proc/version.o
> 
>   CC      fs/proc/version.o
> fs/proc/version.c:2:10: fatal error: generated/compile.h: No such file or directory

The same happens in current mainline for arch/x86/boot/version.o:

$ make arch/x86/boot/version.o
  CALL    scripts/checksyscalls.sh
  DESCEND  objtool
  CC      arch/x86/boot/version.o
arch/x86/boot/version.c:17:31: fatal error: generated/compile.h: No such
file or directory

Cc kbuild: Wouldn't it be a little nicer creating generated/compile.h
along with the other files in generated/, so that everybody can rely on
them being there instead of having the logic for compile.h hidden away
in init/Makefile and listing it as an explicit dependency? Or is there
some reason compile.h is special?

Rasmus

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic