From: Angus Gratton Date: Tue, 5 Jun 2018 03:51:35 +0000 (+0800) Subject: Merge branch 'bugfix/github_prs' into 'master' X-Git-Tag: v3.1-beta1~54 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b2ff235bd003bf3dcb114ff7efe3e0c605c4dd9f;hp=8a4c9d7dfb7879822d17fb67153397de0bf06a9d;p=esp-idf Merge branch 'bugfix/github_prs' into 'master' Merge some small fixes from Github See merge request idf/esp-idf!2500 --- 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 = 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). 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)); 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; 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.") 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 7d17d6c159..d3102d5a0b 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 sometimes fails to find correct header directories. + .. _eclipse-build-project: Building in Eclipse 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” 属性页面。