mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
x86: Add -fno-exceptions to list of possibly-supported CFLAGS for embedded targets.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
This commit is contained in:
1 parent
8fc69686f5
commit
55a2e36cbc
6 files changed
+10
-19
No files matched your search
@@ -59,6 +59,8 @@ define cc-option-add-closure
|
||||
endif
|
||||
endef
|
||||
|
||||
cc-options-add = $(foreach o,$(3),$(call cc-option-add,$(1),$(2),$(o)))
|
||||
|
||||
# cc-ver: Check compiler is at least specified version. Return boolean 'y'/'n'.
|
||||
# Usage: ifeq ($(call cc-ver,$(CC),0x030400),y)
|
||||
cc-ver = $(shell if [ $$((`$(1) -dumpversion | awk -F. \
|
||||
@@ -134,6 +136,9 @@ $(call cc-option-add,CFLAGS,CC,-Wdeclaration-after-statement)
|
||||
LDFLAGS += $(foreach i, $(EXTRA_LIB), -L$(i))
|
||||
CFLAGS += $(foreach i, $(EXTRA_INCLUDES), -I$(i))
|
||||
|
||||
EMBEDDED_EXTRA_CFLAGS := -nopie -fno-stack-protector -fno-stack-protector-all
|
||||
EMBEDDED_EXTRA_CFLAGS += -fno-exceptions
|
||||
|
||||
# Enable XSM security module. Enabling XSM requires selection of an
|
||||
# XSM security module (FLASK_ENABLE or ACM_SECURITY).
|
||||
XSM_ENABLE ?= n
|
||||
|
||||
+1
-3
@@ -58,9 +58,7 @@ CROSS_PREFIX=$(CURDIR)/$(CROSS_ROOT)
|
||||
# Disable PIE/SSP if GCC supports them. They can break us.
|
||||
TARGET_CFLAGS += $(CFLAGS)
|
||||
TARGET_CPPFLAGS += $(CPPFLAGS)
|
||||
TARGET_CFLAGS += $(call cc-option,$(CC),-nopie,)
|
||||
TARGET_CFLAGS += $(call cc-option,$(CC),-fno-stack-protector,)
|
||||
TARGET_CFLAGS += $(call cc-option,$(CC),-fno-stack-protector-all,)
|
||||
$(call cc-options-add,TARGET_CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
|
||||
|
||||
# Do not use host headers and libs
|
||||
GCC_INSTALL = $(shell LANG=C gcc -print-search-dirs | sed -n -e 's/install: \(.*\)/\1/p')
|
||||
|
||||
@@ -12,10 +12,7 @@ endif
|
||||
|
||||
CFLAGS += -Werror
|
||||
|
||||
# Disable PIE/SSP if GCC supports them. They can break us.
|
||||
$(call cc-option-add,CFLAGS,CC,-nopie)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector-all)
|
||||
$(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
|
||||
|
||||
# Extra CFLAGS suitable for an embedded type of environment.
|
||||
CFLAGS += -fno-builtin -msoft-float
|
||||
@@ -4,10 +4,7 @@ XEN_ROOT = ../..
|
||||
CFLAGS =
|
||||
include $(XEN_ROOT)/tools/Rules.mk
|
||||
|
||||
# Disable PIE/SSP if GCC supports them. They can break us.
|
||||
$(call cc-option-add,CFLAGS,CC,-nopie)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector-all)
|
||||
$(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
|
||||
|
||||
CFLAGS += -fno-builtin -msoft-float
|
||||
|
||||
|
||||
@@ -25,10 +25,7 @@ CFLAGS += -I$(BASEDIR)/include/asm-x86/mach-default
|
||||
# Prevent floating-point variables from creeping into Xen.
|
||||
CFLAGS += -msoft-float
|
||||
|
||||
# Disable PIE/SSP if GCC supports them. They can break us.
|
||||
$(call cc-option-add,CFLAGS,CC,-nopie)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector-all)
|
||||
$(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
|
||||
|
||||
ifeq ($(supervisor_mode_kernel),y)
|
||||
CFLAGS += -DCONFIG_X86_SUPERVISOR_MODE_KERNEL=1
|
||||
|
||||
@@ -3,10 +3,7 @@ override XEN_TARGET_ARCH=x86_32
|
||||
CFLAGS =
|
||||
include $(XEN_ROOT)/Config.mk
|
||||
|
||||
# Disable PIE/SSP if GCC supports them. They can break us.
|
||||
$(call cc-option-add,CFLAGS,CC,-nopie)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector)
|
||||
$(call cc-option-add,CFLAGS,CC,-fno-stack-protector-all)
|
||||
$(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
|
||||
|
||||
CFLAGS += -Werror -fno-builtin -msoft-float
|
||||
|
||||
|
||||