esp32: disable -Wframe-address

Since the behavior is well defined on Xtensa with Window ABI we can
suppress a frame-address warning. Also fix the CMAKE_C*_FLAGS parsing.
This commit is contained in:
Anton Maklakov 2019-04-09 10:14:31 +07:00 committed by Ivan Grokhotkov
parent 5719cd6fac
commit 2e6c8cdce3
3 changed files with 5 additions and 2 deletions

View File

@ -397,6 +397,7 @@ endif #CONFIG_WARN_WRITE_STRINGS
# Flags which control code generation and dependency generation, both for C and C++
COMMON_FLAGS = \
-Wno-frame-address \
-ffunction-sections -fdata-sections \
-fstrict-volatile-bitfields \
-mlongcalls \

View File

@ -92,6 +92,8 @@ function(idf_set_global_compile_options)
list(APPEND compile_definitions "ESP_PLATFORM" "HAVE_CONFIG_H")
spaces2list(CMAKE_C_FLAGS)
spaces2list(CMAKE_CXX_FLAGS)
list(APPEND compile_options "${CMAKE_C_FLAGS}")
list(APPEND c_compile_options "${CMAKE_C_FLAGS}")
list(APPEND cxx_compile_options "${CMAKE_CXX_FLAGS}")

View File

@ -5,5 +5,5 @@ set(CMAKE_CXX_COMPILER xtensa-esp32-elf-g++)
set(CMAKE_ASM_COMPILER xtensa-esp32-elf-gcc)
set(CMAKE_EXE_LINKER_FLAGS "-nostdlib" CACHE STRING "Linker Base Flags")
set(CMAKE_C_FLAGS "-mlongcalls" CACHE STRING "C Compiler Base Flags")
set(CMAKE_CXX_FLAGS "-mlongcalls" CACHE STRING "C++ Compiler Base Flags")
set(CMAKE_C_FLAGS "-mlongcalls -Wno-frame-address" CACHE STRING "C Compiler Base Flags")
set(CMAKE_CXX_FLAGS "-mlongcalls -Wno-frame-address" CACHE STRING "C++ Compiler Base Flags")