Преглед изворни кода

Merge branch 'bugfix/github_prs' into 'master'

Merge some small fixes from Github

See merge request idf/esp-idf!2500
Angus Gratton пре 7 година
родитељ
комит
b2ff235bd0

+ 1 - 0
components/cxx/component.mk

@@ -9,3 +9,4 @@ ifndef CONFIG_CXX_EXCEPTIONS
 COMPONENT_ADD_LDFLAGS += -u __cxx_fatal_exception
 endif
 
+COMPONENT_ADD_INCLUDEDIRS =

+ 4 - 0
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).

+ 1 - 1
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));

+ 3 - 0
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<HandleEntry>
 {
     static uint32_t s_nvs_next_handle;

+ 12 - 0
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.")

+ 3 - 0
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
 -------------------

+ 4 - 0
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

+ 1 - 1
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” 属性页面。