aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Ehrhardt <christian.ehrhardt@canonical.com>2022-03-23 10:07:13 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2022-03-24 18:44:07 +0100
commit9584d3d00a454f47b0341465142bcf0735d734ae (patch)
tree36a0f261a19a2a8227420b8e99270933e477c237
parent5286c3662294119dc2dd1e9296757337211451f6 (diff)
downloadqemu-9584d3d00a454f47b0341465142bcf0735d734ae.zip
qemu-9584d3d00a454f47b0341465142bcf0735d734ae.tar.gz
qemu-9584d3d00a454f47b0341465142bcf0735d734ae.tar.bz2
build: disable fcf-protection on -march=486 -m16
Some of the roms build with -march=i486 -m16 which is incompatible with -fcf-protection. That in turn is can be set by default, for example in Ubuntu [1]. That causes: cc1: error: ‘-fcf-protection’ is not compatible with this target This won't work on -march=i486 -m16 and no matter if set or not we can override it to "none" if the option is known to the compiler to be able to build reliably. Fixes: https://gitlab.com/qemu-project/qemu/-/issues/889 [1]: https://wiki.ubuntu.com/ToolChain/CompilerFlags#A-fcf-protection Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <20220323090713.1002588-1-christian.ehrhardt@canonical.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--pc-bios/optionrom/Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
index 5d55d25..f1ef898 100644
--- a/pc-bios/optionrom/Makefile
+++ b/pc-bios/optionrom/Makefile
@@ -14,6 +14,10 @@ cc-option = $(if $(shell $(CC) $1 -c -o /dev/null -xc /dev/null >/dev/null 2>&1
override CFLAGS += -march=i486 -Wall
+# If -fcf-protection is enabled in flags or compiler defaults that will
+# conflict with -march=i486
+override CFLAGS += $(call cc-option, -fcf-protection=none)
+
# Flags for dependency generation
override CPPFLAGS += -MMD -MP -MT $@ -MF $(@D)/$(*F).d