You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by pk...@apache.org on 2022/05/01 20:54:22 UTC

[incubator-nuttx] 01/02: arch: Move -fstack-protector-all from Make.defs to Toolchain.defs

This is an automated email from the ASF dual-hosted git repository.

pkarashchenko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git

commit 1fde7e17bbc833d0c9c2496212c8709e948b04c7
Author: Xiang Xiao <xi...@xiaomi.com>
AuthorDate: Sun May 1 19:44:14 2022 +0800

    arch: Move -fstack-protector-all from Make.defs to Toolchain.defs
    
    Signed-off-by: Xiang Xiao <xi...@xiaomi.com>
---
 arch/arm/src/arm/Toolchain.defs                          |  4 ++++
 arch/arm/src/armv6-m/Toolchain.defs                      |  4 ++++
 arch/arm/src/armv7-a/Toolchain.defs                      |  4 ++++
 arch/arm/src/armv7-m/Toolchain.defs                      |  4 ++++
 arch/arm/src/armv7-r/Toolchain.defs                      |  4 ++++
 arch/arm/src/armv8-m/Toolchain.defs                      |  4 ++++
 arch/risc-v/src/common/Toolchain.defs                    |  4 ++++
 arch/xtensa/src/lx6/Toolchain.defs                       |  4 ++++
 arch/xtensa/src/lx7/Toolchain.defs                       |  4 ++++
 boards/sim/sim/sim/scripts/Make.defs                     | 14 ++++++--------
 boards/xtensa/esp32/esp32-devkitc/scripts/Make.defs      |  4 ----
 boards/xtensa/esp32/esp32-ethernet-kit/scripts/Make.defs |  4 ----
 boards/xtensa/esp32/esp32-wrover-kit/scripts/Make.defs   |  4 ----
 boards/xtensa/esp32/ttgo_lora_esp32/scripts/Make.defs    |  4 ----
 14 files changed, 42 insertions(+), 24 deletions(-)

diff --git a/arch/arm/src/arm/Toolchain.defs b/arch/arm/src/arm/Toolchain.defs
index 5dffaefc2c..64eca4bb0d 100644
--- a/arch/arm/src/arm/Toolchain.defs
+++ b/arch/arm/src/arm/Toolchain.defs
@@ -71,6 +71,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 ifeq ($(CONFIG_MM_KASAN),y)
   ARCHCPUFLAGS += -fsanitize=kernel-address
 endif
diff --git a/arch/arm/src/armv6-m/Toolchain.defs b/arch/arm/src/armv6-m/Toolchain.defs
index 800026062c..bb184aac86 100644
--- a/arch/arm/src/armv6-m/Toolchain.defs
+++ b/arch/arm/src/armv6-m/Toolchain.defs
@@ -75,6 +75,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 # Parametrization for ARCHCPUFLAGS
 
 TOOLCHAIN_MTUNE  := -mcpu=cortex-m0 -mthumb
diff --git a/arch/arm/src/armv7-a/Toolchain.defs b/arch/arm/src/armv7-a/Toolchain.defs
index 87ca00b810..57ba38ed59 100644
--- a/arch/arm/src/armv7-a/Toolchain.defs
+++ b/arch/arm/src/armv7-a/Toolchain.defs
@@ -116,6 +116,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 ifeq ($(CONFIG_ENDIAN_BIG),y)
   TARGET_ARCH := armeb
 else
diff --git a/arch/arm/src/armv7-m/Toolchain.defs b/arch/arm/src/armv7-m/Toolchain.defs
index d80ed4f74e..1a2a3fbe7b 100644
--- a/arch/arm/src/armv7-m/Toolchain.defs
+++ b/arch/arm/src/armv7-m/Toolchain.defs
@@ -77,6 +77,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 # Parametrization for ARCHCPUFLAGS
 
 ifeq ($(CONFIG_ARCH_CORTEXM4),y)
diff --git a/arch/arm/src/armv7-r/Toolchain.defs b/arch/arm/src/armv7-r/Toolchain.defs
index 05289d6b95..d9c9427c54 100644
--- a/arch/arm/src/armv7-r/Toolchain.defs
+++ b/arch/arm/src/armv7-r/Toolchain.defs
@@ -65,6 +65,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 ifeq ($(CONFIG_ARCH_CORTEXR4),y)
   ARCHCPUFLAGS += -mcpu=cortex-r4
 else ifeq ($(CONFIG_ARCH_CORTEXR5),y)
diff --git a/arch/arm/src/armv8-m/Toolchain.defs b/arch/arm/src/armv8-m/Toolchain.defs
index 94ef2823a5..058b6ccc03 100644
--- a/arch/arm/src/armv8-m/Toolchain.defs
+++ b/arch/arm/src/armv8-m/Toolchain.defs
@@ -77,6 +77,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 # Parametrization for ARCHCPUFLAGS
 
 ifeq ($(CONFIG_ARCH_CORTEXM23),y)
diff --git a/arch/risc-v/src/common/Toolchain.defs b/arch/risc-v/src/common/Toolchain.defs
index 8930469173..174a20d44b 100644
--- a/arch/risc-v/src/common/Toolchain.defs
+++ b/arch/risc-v/src/common/Toolchain.defs
@@ -59,6 +59,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 ARCHCFLAGS += -fno-common
 ARCHCXXFLAGS += -fno-common -nostdinc++
 
diff --git a/arch/xtensa/src/lx6/Toolchain.defs b/arch/xtensa/src/lx6/Toolchain.defs
index 3f72c925df..5312e15056 100644
--- a/arch/xtensa/src/lx6/Toolchain.defs
+++ b/arch/xtensa/src/lx6/Toolchain.defs
@@ -63,6 +63,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 ARCHCFLAGS += -fno-common
 ARCHCXXFLAGS += -fno-common -nostdinc++
 
diff --git a/arch/xtensa/src/lx7/Toolchain.defs b/arch/xtensa/src/lx7/Toolchain.defs
index 0483c8073b..da9fb6f1d3 100644
--- a/arch/xtensa/src/lx7/Toolchain.defs
+++ b/arch/xtensa/src/lx7/Toolchain.defs
@@ -63,6 +63,10 @@ else
   ARCHOPTIMIZATION += -fomit-frame-pointer
 endif
 
+ifeq ($(CONFIG_STACK_CANARIES),y)
+  ARCHOPTIMIZATION += -fstack-protector-all
+endif
+
 ARCHCFLAGS += -fno-common
 ARCHCXXFLAGS += -fno-common -nostdinc++
 
diff --git a/boards/sim/sim/sim/scripts/Make.defs b/boards/sim/sim/sim/scripts/Make.defs
index f51d30e3b5..1ff305e567 100644
--- a/boards/sim/sim/sim/scripts/Make.defs
+++ b/boards/sim/sim/sim/scripts/Make.defs
@@ -57,6 +57,12 @@ else
   ARCHOPTIMIZATIONRUST += -C opt-level=0
 endif
 
+ifeq ($(CONFIG_FRAME_POINTER),y)
+  ARCHOPTIMIZATION += -fno-omit-frame-pointer -fno-optimize-sibling-calls
+else
+  ARCHOPTIMIZATION += -fomit-frame-pointer
+endif
+
 ifeq ($(CONFIG_STACK_CANARIES),y)
   ARCHOPTIMIZATION += -fstack-protector-all
 endif
@@ -148,14 +154,6 @@ ifeq ($(CONFIG_SIM_UBSAN),y)
   CXXFLAGS += -fsanitize=undefined
 endif
 
-ifeq ($(CONFIG_FRAME_POINTER),y)
-  CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
-  CXXFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
-else
-  CFLAGS += -fomit-frame-pointer
-  CXXFLAGS += -fomit-frame-pointer
-endif
-
 # Loadable module definitions
 
 CMODULEFLAGS = $(CFLAGS)
diff --git a/boards/xtensa/esp32/esp32-devkitc/scripts/Make.defs b/boards/xtensa/esp32/esp32-devkitc/scripts/Make.defs
index 2a81c3924f..a0e33e781d 100644
--- a/boards/xtensa/esp32/esp32-devkitc/scripts/Make.defs
+++ b/boards/xtensa/esp32/esp32-devkitc/scripts/Make.defs
@@ -53,10 +53,6 @@ else
 	LDSCRIPT_TEMPLATE = $(BOARD_COMMON_DIR)$(DELIM)scripts$(DELIM)esp32.template.ld
 endif
 
-ifeq ($(CONFIG_STACK_CANARIES),y)
-  ARCHOPTIMIZATION += -fstack-protector-all
-endif
-
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
 ARCHPICFLAGS = -fpic
diff --git a/boards/xtensa/esp32/esp32-ethernet-kit/scripts/Make.defs b/boards/xtensa/esp32/esp32-ethernet-kit/scripts/Make.defs
index a5e40bc600..fb6b793fd5 100644
--- a/boards/xtensa/esp32/esp32-ethernet-kit/scripts/Make.defs
+++ b/boards/xtensa/esp32/esp32-ethernet-kit/scripts/Make.defs
@@ -53,10 +53,6 @@ else
 	LDSCRIPT_TEMPLATE = $(BOARD_COMMON_DIR)$(DELIM)scripts$(DELIM)esp32.template.ld
 endif
 
-ifeq ($(CONFIG_STACK_CANARIES),y)
-  ARCHOPTIMIZATION += -fstack-protector-all
-endif
-
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
 ARCHPICFLAGS = -fpic
diff --git a/boards/xtensa/esp32/esp32-wrover-kit/scripts/Make.defs b/boards/xtensa/esp32/esp32-wrover-kit/scripts/Make.defs
index 9392e6fa9f..564067a1bf 100644
--- a/boards/xtensa/esp32/esp32-wrover-kit/scripts/Make.defs
+++ b/boards/xtensa/esp32/esp32-wrover-kit/scripts/Make.defs
@@ -53,10 +53,6 @@ else
 	LDSCRIPT_TEMPLATE = $(BOARD_COMMON_DIR)$(DELIM)scripts$(DELIM)esp32.template.ld
 endif
 
-ifeq ($(CONFIG_STACK_CANARIES),y)
-  ARCHOPTIMIZATION += -fstack-protector-all
-endif
-
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
 ARCHPICFLAGS = -fpic
diff --git a/boards/xtensa/esp32/ttgo_lora_esp32/scripts/Make.defs b/boards/xtensa/esp32/ttgo_lora_esp32/scripts/Make.defs
index f0dd050f92..5a250bece1 100644
--- a/boards/xtensa/esp32/ttgo_lora_esp32/scripts/Make.defs
+++ b/boards/xtensa/esp32/ttgo_lora_esp32/scripts/Make.defs
@@ -53,10 +53,6 @@ else
 	LDSCRIPT_TEMPLATE = $(BOARD_COMMON_DIR)$(DELIM)scripts$(DELIM)esp32.template.ld
 endif
 
-ifeq ($(CONFIG_STACK_CANARIES),y)
-  ARCHOPTIMIZATION += -fstack-protector-all
-endif
-
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
 ARCHPICFLAGS = -fpic