unleashed-firmware/site_scons/cc.scons
hedger bc309cebe6
Toolchain fixes (#3451)
toolchain: updated to v33 with debugging & other fixes
toolchain: better error handling during update/env configuration process
debugging: improved udev rules file, added readme on installation
firmware: bumped compiler C/C++ standards (stricter code checks)
firmware: fixed warnings emerging from newer standards
ufbt: FBT_NOENV is now also supported by ufbt
fbt: added ccache-related variables to env forward list on Windows
2024-02-26 16:16:19 +04:00

50 lines
1.1 KiB
Text

Import("ENV")
ENV.AppendUnique(
CFLAGS=[
"-std=gnu2x",
],
CXXFLAGS=[
"-std=c++20",
"-fno-rtti",
"-fno-use-cxa-atexit",
"-fno-exceptions",
"-fno-threadsafe-statics",
"-ftemplate-depth=4096",
],
CCFLAGS=[
"-mcpu=cortex-m4",
"-mfloat-abi=hard",
"-mfpu=fpv4-sp-d16",
"-mthumb",
# "-MMD",
# "-MP",
"-Wall",
"-Wextra",
"-Werror",
"-Wno-error=deprecated-declarations",
"-Wno-address-of-packed-member",
"-Wredundant-decls",
"-Wdouble-promotion",
"-fdata-sections",
"-ffunction-sections",
"-fsingle-precision-constant",
"-fno-math-errno",
# Generates .su files with stack usage information
# "-fstack-usage",
"-g",
],
CPPDEFINES=[
"_GNU_SOURCE",
*GetOption("extra_defines"),
],
LINKFLAGS=[
"-mcpu=cortex-m4",
"-mfloat-abi=hard",
"-mfpu=fpv4-sp-d16",
"-mlittle-endian",
"-mthumb",
"-Wl,--no-warn-rwx-segment",
],
)