From d3b0e0e3fd59051ccaddac85f6bf56ec55ef756d Mon Sep 17 00:00:00 2001 From: Paul Reimer Date: Mon, 14 May 2018 10:10:03 -0700 Subject: [PATCH 1/8] Unset COMPONENT_ADD_INCLUDEDIRS in cxx component to fix C++ -Wmissing-include-dirs warning Merges https://github.com/espressif/esp-idf/pull/1956 --- components/cxx/component.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/components/cxx/component.mk b/components/cxx/component.mk index 00e05e0db2..7d819675a8 100644 --- a/components/cxx/component.mk +++ b/components/cxx/component.mk @@ -9,3 +9,4 @@ ifndef CONFIG_CXX_EXCEPTIONS COMPONENT_ADD_LDFLAGS += -u __cxx_fatal_exception endif +COMPONENT_ADD_INCLUDEDIRS = From e5ac96f49a7fc917d36409396e4d5ed1440bd58f Mon Sep 17 00:00:00 2001 From: Paul Reimer Date: Mon, 14 May 2018 10:17:04 -0700 Subject: [PATCH 2/8] Add declarations of private cxx_guard functions (__cxa_guard_*) in cxx component to fix C++ -Wmissing-declarations warning Merges https://github.com/espressif/esp-idf/pull/1956 --- components/cxx/cxx_guards.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/components/cxx/cxx_guards.cpp b/components/cxx/cxx_guards.cpp index 288ff3ea03..48819a7ab5 100644 --- a/components/cxx/cxx_guards.cpp +++ b/components/cxx/cxx_guards.cpp @@ -33,6 +33,10 @@ static size_t s_static_init_waiting_count = 0; //!< number of tasks static size_t s_static_init_max_waiting_count = 0; //!< maximum ever value of the above; can be inspected using GDB for debugging purposes #endif +extern "C" int __cxa_guard_acquire(__guard* pg); +extern "C" void __cxa_guard_release(__guard* pg); +extern "C" void __cxa_guard_abort(__guard* pg); +extern "C" void __cxa_guard_dummy(); /** * Layout of the guard object (defined by the ABI). From c83c3b64cda8a3f096a1f4ac8b2fa4aaed0101ea Mon Sep 17 00:00:00 2001 From: Paul Reimer Date: Mon, 14 May 2018 22:33:53 -0700 Subject: [PATCH 3/8] Add declarations of private nvs functions (nvs_*) in nvs_flash component to fix C++ -Wmissing-declarations warning Merges https://github.com/espressif/esp-idf/pull/1956 --- components/nvs_flash/src/nvs_api.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/components/nvs_flash/src/nvs_api.cpp b/components/nvs_flash/src/nvs_api.cpp index 40d67b942b..8d0e6c0389 100644 --- a/components/nvs_flash/src/nvs_api.cpp +++ b/components/nvs_flash/src/nvs_api.cpp @@ -28,6 +28,9 @@ static const char* TAG = "nvs"; #define ESP_LOGD(...) #endif +extern "C" void nvs_dump(const char *partName); +extern "C" esp_err_t nvs_flash_init_custom(const char *partName, uint32_t baseSector, uint32_t sectorCount); + class HandleEntry : public intrusive_list_node { static uint32_t s_nvs_next_handle; From 18533346b881eab3375b43e8d7873f1533588253 Mon Sep 17 00:00:00 2001 From: Stefan Profanter Date: Wed, 16 May 2018 13:25:38 +0200 Subject: [PATCH 4/8] Fix compile error using asm In function 'xPortGetCoreID': error: expected ')' before ':' token :"=r"(id)); Merges https://github.com/espressif/esp-idf/pull/1965 --- components/freertos/include/freertos/portable.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/freertos/include/freertos/portable.h b/components/freertos/include/freertos/portable.h index 9fe74b60c0..33b740e890 100644 --- a/components/freertos/include/freertos/portable.h +++ b/components/freertos/include/freertos/portable.h @@ -205,7 +205,7 @@ BaseType_t xPortInterruptedFromISRContext(); /* Multi-core: get current core ID */ static inline uint32_t IRAM_ATTR xPortGetCoreID() { int id; - asm ( + __asm__ ( "rsr.prid %0\n" " extui %0,%0,13,1" :"=r"(id)); From 2a6c35c9af992e6ffa788219454d35eb1ae4c08c Mon Sep 17 00:00:00 2001 From: Wenderson Oliveira Date: Wed, 23 May 2018 08:16:25 -0300 Subject: [PATCH 5/8] Update eclipse-setup.rst This is workaround for eclipse indexer problems. When I disable that option, my problems with eclipse and header files are gone. Merges https://github.com/espressif/esp-idf/pull/1990 --- docs/en/get-started/eclipse-setup.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/en/get-started/eclipse-setup.rst b/docs/en/get-started/eclipse-setup.rst index 7d17d6c159..21e68c11c0 100644 --- a/docs/en/get-started/eclipse-setup.rst +++ b/docs/en/get-started/eclipse-setup.rst @@ -63,6 +63,10 @@ Navigate to "C/C++ General" -> "Preprocessor Include Paths" property page: * In the list of providers, click "CDT GCC Build Output Parser" and type ``xtensa-esp32-elf-`` at the beginning of the Compiler command pattern. This means the full Compiler command pattern should be ``xtensa-esp32-elf-(g?cc)|([gc]\+\+)|(clang)`` +Navigate to "C/C++ General" -> "Indexer" property page: + +* Uncheck "Allow heuristic resolution of includes". When this option is enabled, Eclipse can make some mistakes when eclipse try to find project headers. + .. _eclipse-build-project: Building in Eclipse From 5bc1bf4add7aedceebe3e1b50a2126bee8dc6d02 Mon Sep 17 00:00:00 2001 From: Marcin Jaworski Date: Thu, 31 May 2018 16:26:38 +0200 Subject: [PATCH 6/8] Fix PartitionDefinition comparison in Python 3 Merges https://github.com/espressif/esp-idf/pull/2018 --- components/partition_table/gen_esp32part.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/components/partition_table/gen_esp32part.py b/components/partition_table/gen_esp32part.py index 275976b741..0e3a0b7e95 100755 --- a/components/partition_table/gen_esp32part.py +++ b/components/partition_table/gen_esp32part.py @@ -250,6 +250,18 @@ class PartitionDefinition(object): def __cmp__(self, other): return self.offset - other.offset + def __lt__(self, other): + return self.offset < other.offset + + def __gt__(self, other): + return self.offset > other.offset + + def __le__(self, other): + return self.offset <= other.offset + + def __ge__(self, other): + return self.offset >= other.offset + def parse_type(self, strval): if strval == "": raise InputError("Field 'type' can't be left empty.") From 736e10749f844f7756a1a45ca321e80c0eb6b745 Mon Sep 17 00:00:00 2001 From: wushifu32 Date: Sun, 3 Jun 2018 11:44:26 +0800 Subject: [PATCH 7/8] correct eclipse build command Merges https://github.com/espressif/esp-idf/pull/2024 --- docs/zh_CN/get-started/eclipse-setup-windows.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/zh_CN/get-started/eclipse-setup-windows.rst b/docs/zh_CN/get-started/eclipse-setup-windows.rst index 4047dc939e..f386d83b8d 100644 --- a/docs/zh_CN/get-started/eclipse-setup-windows.rst +++ b/docs/zh_CN/get-started/eclipse-setup-windows.rst @@ -44,7 +44,7 @@ Windows 平台上的 Eclipse 配置 * 点击 “C/C++ Build” 属性页。 - * 取消选中 “Use default build command”,然后输入命令:``python${IDF_PATH}/tools/windows/eclipse_make.py``,开始自定义创建。 + * 取消选中 “Use default build command”,然后输入命令:``python ${IDF_PATH}/tools/windows/eclipse_make.py``,开始自定义创建。 * 点击 “C/C++ Build” 下的 “Environment” 属性页面。 From a8504b9628e6f849c37004e1727fad67b0c8bc47 Mon Sep 17 00:00:00 2001 From: Angus Gratton Date: Tue, 5 Jun 2018 09:53:59 +1000 Subject: [PATCH 8/8] docs: eclipse: Reword sentence, copy to Windows Eclipse guide also Ref https://github.com/espressif/esp-idf/pull/1990 --- docs/en/get-started/eclipse-setup-windows.rst | 3 +++ docs/en/get-started/eclipse-setup.rst | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/en/get-started/eclipse-setup-windows.rst b/docs/en/get-started/eclipse-setup-windows.rst index 2728eb2970..0bfba92262 100644 --- a/docs/en/get-started/eclipse-setup-windows.rst +++ b/docs/en/get-started/eclipse-setup-windows.rst @@ -61,6 +61,9 @@ Project Properties * In the list of providers, click "CDT GCC Build Output Parser" and type ``xtensa-esp32-elf-`` at the beginning of the Compiler command pattern, and wrap remaining part with brackets. This means the full Compiler command pattern should be ``xtensa-esp32-elf-((g?cc)|([gc]\+\+)|(clang))`` +Navigate to "C/C++ General" -> "Indexer" property page: + +* Uncheck "Allow heuristic resolution of includes". When this option is enabled Eclipse sometimes fails to find correct header directories. Building in Eclipse ------------------- diff --git a/docs/en/get-started/eclipse-setup.rst b/docs/en/get-started/eclipse-setup.rst index 21e68c11c0..d3102d5a0b 100644 --- a/docs/en/get-started/eclipse-setup.rst +++ b/docs/en/get-started/eclipse-setup.rst @@ -65,7 +65,7 @@ Navigate to "C/C++ General" -> "Preprocessor Include Paths" property page: Navigate to "C/C++ General" -> "Indexer" property page: -* Uncheck "Allow heuristic resolution of includes". When this option is enabled, Eclipse can make some mistakes when eclipse try to find project headers. +* Uncheck "Allow heuristic resolution of includes". When this option is enabled Eclipse sometimes fails to find correct header directories. .. _eclipse-build-project: