Message ID | 20190422164937.21350-21-julien.grall@arm.com |
---|---|
State | New |
Headers | show |
Series | xen/arm: Clean-up & fixes in boot/mm code | expand |
Hi, Please ignore this patch. This was already sent separately. Cheers, On 22/04/2019 17:49, Julien Grall wrote: > CONFIG_EARLY_PRINTK can only be set when CONFIG_DEBUG is enabled. It can > be quite convenient to only modify the target. > > However, the target clean will not include the .config. This means > CONFIG_DEBUG is not enabled and therefore make will throw an error > preventing clean to continue. > > The check is not moved at linking time. > > Signed-off-by: Julien Grall <julien.grall@arm.com> > > --- > > This code is pretty nasty, but I haven't found a better way for avoiding > to check if CONFIG_DEBUG is enabled when the target clean is called. > > Ideally we will want to move CONFIG_EARLY_PRINTK in Kconfig. I haven't > had time yet to look at it properly so far. > --- > xen/arch/arm/Makefile | 5 +++++ > xen/arch/arm/Rules.mk | 7 ------- > 2 files changed, 5 insertions(+), 7 deletions(-) > > diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile > index cb902cb6fe..fef508c836 100644 > --- a/xen/arch/arm/Makefile > +++ b/xen/arch/arm/Makefile > @@ -101,6 +101,11 @@ prelink.o: $(ALL_OBJS) > endif > > $(TARGET)-syms: prelink.o xen.lds > +ifneq ($(CONFIG_EARLY_PRINTK), ) > +ifneq ($(CONFIG_DEBUG), y) > + $(error CONFIG_EARLY_PRINTK enabled for non-debug build) > +endif > +endif > $(LD) $(LDFLAGS) -T xen.lds -N prelink.o \ > $(BASEDIR)/common/symbols-dummy.o -o $(@D)/.$(@F).0 > $(NM) -pa --format=sysv $(@D)/.$(@F).0 \ > diff --git a/xen/arch/arm/Rules.mk b/xen/arch/arm/Rules.mk > index f264592aef..12150986c5 100644 > --- a/xen/arch/arm/Rules.mk > +++ b/xen/arch/arm/Rules.mk > @@ -80,11 +80,4 @@ CFLAGS-$(EARLY_PRINTK) += -DEARLY_PRINTK_BAUD=$(EARLY_PRINTK_BAUD) > CFLAGS-$(EARLY_PRINTK) += -DEARLY_UART_BASE_ADDRESS=$(EARLY_UART_BASE_ADDRESS) > CFLAGS-$(EARLY_PRINTK) += -DEARLY_UART_REG_SHIFT=$(EARLY_UART_REG_SHIFT) > > -else # !CONFIG_DEBUG > - > -ifneq ($(CONFIG_EARLY_PRINTK),) > -# Early printk is dependant on a debug build. > -$(error CONFIG_EARLY_PRINTK enabled for non-debug build) > -endif > - > endif >
diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index cb902cb6fe..fef508c836 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -101,6 +101,11 @@ prelink.o: $(ALL_OBJS) endif $(TARGET)-syms: prelink.o xen.lds +ifneq ($(CONFIG_EARLY_PRINTK), ) +ifneq ($(CONFIG_DEBUG), y) + $(error CONFIG_EARLY_PRINTK enabled for non-debug build) +endif +endif $(LD) $(LDFLAGS) -T xen.lds -N prelink.o \ $(BASEDIR)/common/symbols-dummy.o -o $(@D)/.$(@F).0 $(NM) -pa --format=sysv $(@D)/.$(@F).0 \ diff --git a/xen/arch/arm/Rules.mk b/xen/arch/arm/Rules.mk index f264592aef..12150986c5 100644 --- a/xen/arch/arm/Rules.mk +++ b/xen/arch/arm/Rules.mk @@ -80,11 +80,4 @@ CFLAGS-$(EARLY_PRINTK) += -DEARLY_PRINTK_BAUD=$(EARLY_PRINTK_BAUD) CFLAGS-$(EARLY_PRINTK) += -DEARLY_UART_BASE_ADDRESS=$(EARLY_UART_BASE_ADDRESS) CFLAGS-$(EARLY_PRINTK) += -DEARLY_UART_REG_SHIFT=$(EARLY_UART_REG_SHIFT) -else # !CONFIG_DEBUG - -ifneq ($(CONFIG_EARLY_PRINTK),) -# Early printk is dependant on a debug build. -$(error CONFIG_EARLY_PRINTK enabled for non-debug build) -endif - endif
CONFIG_EARLY_PRINTK can only be set when CONFIG_DEBUG is enabled. It can be quite convenient to only modify the target. However, the target clean will not include the .config. This means CONFIG_DEBUG is not enabled and therefore make will throw an error preventing clean to continue. The check is not moved at linking time. Signed-off-by: Julien Grall <julien.grall@arm.com> --- This code is pretty nasty, but I haven't found a better way for avoiding to check if CONFIG_DEBUG is enabled when the target clean is called. Ideally we will want to move CONFIG_EARLY_PRINTK in Kconfig. I haven't had time yet to look at it properly so far. --- xen/arch/arm/Makefile | 5 +++++ xen/arch/arm/Rules.mk | 7 ------- 2 files changed, 5 insertions(+), 7 deletions(-)