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 <mreza...@redhat.com> > Fixes: 5e6d1573b4 ("remove Makefile.target", 2020-08-21) > Signed-off-by: Paolo Bonzini <pbonz...@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 <th...@redhat.com>