qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] build: fix recurse-all target


From: Thomas Huth
Subject: Re: [PATCH] build: fix recurse-all target
Date: Mon, 31 Aug 2020 15:51:01 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0

On 31/08/2020 14.56, Paolo Bonzini wrote:
> The missing "/all" suffix prevents the pc-bios/ parts of the build
> from running.
> 
> In the meanwhile, -Wall has moved from QEMU_CFLAGS to CFLAGS.  Simplify
> everything by not passing down CFLAGS, and add -Wall in the recursive
> Makefiles.
> 
> Reported-by: Miroslav Rezanina <mrezanin@redhat.com>
> Fixes: 5e6d1573b4 ("remove Makefile.target", 2020-08-21)
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  Makefile                   | 4 ++--
>  pc-bios/optionrom/Makefile | 8 ++------
>  pc-bios/s390-ccw/Makefile  | 3 ++-
>  3 files changed, 6 insertions(+), 9 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 27bf8156ec..7230f0f1f3 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -186,10 +186,10 @@ ROM_DIRS_RULES=$(foreach t, all clean, $(addsuffix 
> /$(t), $(ROM_DIRS)))
>  # Only keep -O and -g cflags
>  .PHONY: $(ROM_DIRS_RULES)
>  $(ROM_DIRS_RULES):
> -     $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $(dir $@) V="$(V)" 
> TARGET_DIR="$(dir $@)" CFLAGS="$(filter -O% -g%,$(CFLAGS))" $(notdir $@),)
> +     $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $(dir $@) V="$(V)" 
> TARGET_DIR="$(dir $@)" $(notdir $@),)
>  
>  .PHONY: recurse-all recurse-clean
> -recurse-all: $(ROM_DIRS)
> +recurse-all: $(addsuffix /all, $(ROM_DIRS))
>  recurse-clean: $(addsuffix /clean, $(ROM_DIRS))
>  
>  ######################################################################
> diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
> index 51cb6ca9d8..6495802d9f 100644
> --- a/pc-bios/optionrom/Makefile
> +++ b/pc-bios/optionrom/Makefile
> @@ -8,15 +8,12 @@ all: multiboot.bin linuxboot.bin linuxboot_dma.bin 
> kvmvapic.bin pvh.bin
>       @true
>  
>  include ../../config-host.mak
> +CFLAGS = -O2 -g
>  
>  quiet-command = $(if $(V),$1,$(if $(2),@printf "  %-7s %s\n" $2 $3 && $1, 
> @$1))
>  cc-option = $(if $(shell $(CC) $1 -S -o /dev/null -xc /dev/null >/dev/null 
> 2>&1 && echo OK), $1, $2)
>  
> -# Compiling with no optimization creates ROMs that are too large
> -ifeq ($(lastword $(filter -O%, -O0 $(CFLAGS))),-O0)
> -override CFLAGS += -O2
> -endif
> -override CFLAGS += -march=i486
> +override CFLAGS += -march=i486 -Wall
>  
>  # Flags for dependency generation
>  override CPPFLAGS += -MMD -MP -MT $@ -MF $(@D)/$(*F).d
> @@ -42,7 +39,6 @@ Wa = -Wa,
>  override ASFLAGS += -32
>  override CFLAGS += $(call cc-option, $(Wa)-32)
>  
> -
>  LD_I386_EMULATION ?= elf_i386
>  override LDFLAGS = -m $(LD_I386_EMULATION) -T $(SRC_DIR)/flat.lds
>  override LDFLAGS += $(LDFLAGS_NOPIE)
> diff --git a/pc-bios/s390-ccw/Makefile b/pc-bios/s390-ccw/Makefile
> index cc0f77baa6..3eb785048a 100644
> --- a/pc-bios/s390-ccw/Makefile
> +++ b/pc-bios/s390-ccw/Makefile
> @@ -3,6 +3,7 @@ all: build-all
>       @true
>  
>  include ../../config-host.mak
> +CFLAGS = -O2 -g
>  
>  quiet-command = $(if $(V),$1,$(if $(2),@printf "  %-7s %s\n" $2 $3 && $1, 
> @$1))
>  cc-option = $(if $(shell $(CC) $1 -S -o /dev/null -xc /dev/null > /dev/null \
> @@ -28,7 +29,7 @@ QEMU_DGFLAGS = -MMD -MP -MT $@ -MF $(@D)/$(*F).d
>  OBJECTS = start.o main.o bootmap.o jump2ipl.o sclp.o menu.o \
>         virtio.o virtio-scsi.o virtio-blkdev.o libc.o cio.o dasd-ipl.o
>  
> -QEMU_CFLAGS := $(filter -W%, $(QEMU_CFLAGS))
> +QEMU_CFLAGS := -Wall $(filter -W%, $(QEMU_CFLAGS))
>  QEMU_CFLAGS += -ffreestanding -fno-delete-null-pointer-checks -msoft-float
>  QEMU_CFLAGS += -march=z900 -fPIE -fno-strict-aliasing
>  QEMU_CFLAGS += -fno-asynchronous-unwind-tables
> 

Thanks, this fixes the build of the s390-ccw bios on s390x, too!

Tested-by: Thomas Huth <thuth@redhat.com>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]