OVMS3-idf/tools
Ivan Grokhotkov 499d087c91 C++: add provisions for optional RTTI support
Ref. https://github.com/espressif/esp-idf/issues/1684

This change allows RTTI to be enabled in menuconfig. For full RTTI
support, libstdc++.a in the toolchain should be built without
-fno-rtti, as it is done now.

Generally if libstdc++.a is built with RTTI, applications which do not
use RTTI (and build with -fno-rtti) could still include typeinfo
structures referenced from STL classes’ vtables. This change works
around this, by moving all typeinfo structures from libstdc++.a into
a non-loadable section, placed into a non-existent memory region
starting at address 0. This can be done because when the application
is compiled with -fno-rtti, typeinfo structures are not used at run
time. This way, typeinfo structures do not contribute to the
application binary size.

If the application is build with RTTI support, typeinfo structures are
linked into the application .rodata section as usual.

Note that this commit does not actually enable RTTI support.
The respective Kconfig option is hidden, and will be made visible when
the toolchain is updated.
2019-10-13 14:46:44 +02:00
..
ble nimble_test: Fix nimble example test CI 2019-09-13 08:18:43 +00:00
catch move Catch framework header into tools directory 2017-04-17 11:01:18 +08:00
ci Handle deprecated values in sdkconfig.defaults 2019-10-02 16:29:25 +00:00
cmake C++: add provisions for optional RTTI support 2019-10-13 14:46:44 +02:00
docker tools: add Dockerfile 2019-07-18 06:18:04 +00:00
esp_app_trace tools: Mass fixing of empty prototypes (for -Wstrict-prototypes) 2019-08-01 16:28:56 +07:00
esp_prov esp_prov : Minor refactoring in argument dependent logic 2019-07-04 15:02:07 +05:30
kconfig Tools: Fix shebang for MacOs 2019-08-26 13:53:52 +02:00
kconfig_new Handle deprecated values in sdkconfig.defaults 2019-10-02 16:29:25 +00:00
ldgen Merge branch 'feature/compile_option_O0' into 'master' 2019-09-17 16:54:55 +08:00
mass_mfg Add Chinese translation for README files in components and tools folders, including: 2019-09-06 20:18:19 +08:00
test_idf_monitor tools: Test IDF Monitor after it is ready to receive data 2019-02-25 10:35:09 +01:00
test_idf_py idf.py: Fix execution order for dependent tasks 2019-09-16 22:48:57 +08:00
test_idf_size idf_size: Support JSON output 2019-05-29 17:11:53 +10:00
test_idf_tools update toolchain to esp32-2019r1 release 2019-06-04 23:43:29 +08:00
tiny-test-fw Support ELF files loadable with gdb 2019-09-24 07:19:50 +00:00
unit-test-app Support ELF files loadable with gdb 2019-09-24 07:19:50 +00:00
windows tools: bump windows tools installer version to v2.1 2019-09-24 06:00:31 +02:00
check_kconfigs.py tools: Fix Kconfig checker for comments and source after help 2019-06-20 09:48:04 +02:00
check_python_dependencies.py tools/check_python_dependencies: make aware of IDF_TOOLS_PATH 2019-05-24 17:04:23 +08:00
eclipse-code-style.xml tools: add code formatter rules for Eclipse 2016-11-03 18:41:00 +08:00
elf_to_ld.sh misc adjustment of esp32 component 2019-04-03 19:57:46 +08:00
format-minimal.sh docs: add style guide 2016-11-03 18:41:00 +08:00
format.sh Added basic C++ style guide 2019-10-09 12:25:48 +08:00
gen_esp_err_to_name.py tools/gen_esp_err_to_name.py: Don't include already included headers 2019-05-06 15:08:37 +02:00
idf.py tools: Fix idf.py menuconfig characters in MSYS2 2019-10-08 08:11:53 +00:00
idf_monitor.py idf_monitor: Exit with CTRL+X in menu 2019-10-08 08:15:51 +00:00
idf_size.py idf_size: Support JSON output 2019-05-29 17:11:53 +10:00
idf_tools.py idf_tools.py: add workaround for PermissionError in os.rename 2019-09-24 06:00:31 +02:00
set-submodules-to-github.sh tools: Add a script for switching to real submodules in forks 2019-07-05 11:12:06 +07:00
test_check_kconfigs.py tools: Fix Kconfig checker for comments and source after help 2019-06-20 09:48:04 +02:00
toolchain_versions.mk update toolchain to esp32-2019r1 release 2019-06-04 23:43:29 +08:00
tools.json Tools: Add OpenOCD for the ARM architecture 2019-08-22 16:51:04 +02:00
tools_schema.json tools: add metadata file and idf_tools.py 2019-05-24 17:04:23 +08:00