Message ID | 20200326135621.687685-1-anthony.perard@citrix.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [XEN] build: detect compiler upgrade to rerun kconfig | expand |
On 26/03/2020 13:56, Anthony PERARD wrote: > This simple comment allows to detect when $(CC) changes version. > Kconfig will be rerun in this case. (Rerun is forced by > include/config.auto.cmd which detects changes of CC_VERSION_TEXT > value). > > Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> I'd suggest s/upgrade/change/ in the subject. When developing with two different compilers, one half of the transitions will be a downgrade. Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
On Thu, Mar 26, 2020 at 02:02:43PM +0000, Andrew Cooper wrote: > On 26/03/2020 13:56, Anthony PERARD wrote: > > This simple comment allows to detect when $(CC) changes version. > > Kconfig will be rerun in this case. (Rerun is forced by > > include/config.auto.cmd which detects changes of CC_VERSION_TEXT :-(, there's a typo here, the path should read "include/config/auto.conf.cmd". > > value). > > > > Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> > > I'd suggest s/upgrade/change/ in the subject. When developing with two > different compilers, one half of the transitions will be a downgrade. Change of $(CC) is already been taken care of ;-). "upgrade" is what Linux choose to call it but "change" might be ok too. > Acked-by: Andrew Cooper <andrew.cooper3@citrix.com> Thanks,
On 26.03.2020 14:56, Anthony PERARD wrote: > This simple comment allows to detect when $(CC) changes version. > Kconfig will be rerun in this case. (Rerun is forced by > include/config.auto.cmd which detects changes of CC_VERSION_TEXT > value). > > Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> Well, as said on the other thread, while this is a step forward, it doesn't cover all relevant cases. Jan
diff --git a/xen/Kconfig b/xen/Kconfig index 073042f46730..4ffa2f90a267 100644 --- a/xen/Kconfig +++ b/xen/Kconfig @@ -4,6 +4,8 @@ # mainmenu "Xen/$(SRCARCH) $(XEN_FULLVERSION) Configuration" +comment "Compiler: $(CC_VERSION_TEXT)" + source "scripts/Kconfig.include" config BROKEN diff --git a/xen/Makefile b/xen/Makefile index e5f7b1ae13bc..6dadb3afc119 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -277,6 +277,10 @@ $(foreach base,arch/x86/mm/guest_walk_% \ arch/x86/mm/shadow/guest_%, \ $(foreach ext,o i s,$(call build-intermediate,$(base).$(ext)))) +# CC_VERSION_TEXT is referenced from Kconfig (so it needs export), +# and from include/config/auto.conf.cmd to detect the compiler upgrade. +export CC_VERSION_TEXT := $(shell $(CC) --version 2>/dev/null | head -n 1) + kconfig := oldconfig config menuconfig defconfig allyesconfig allnoconfig \ nconfig xconfig gconfig savedefconfig listnewconfig olddefconfig \ randconfig $(notdir $(wildcard arch/$(SRCARCH)/configs/*_defconfig))
This simple comment allows to detect when $(CC) changes version. Kconfig will be rerun in this case. (Rerun is forced by include/config.auto.cmd which detects changes of CC_VERSION_TEXT value). Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> --- xen/Kconfig | 2 ++ xen/Makefile | 4 ++++ 2 files changed, 6 insertions(+)