Kaynağa Gözat

Use different library link lists for esp8266-rtos-sdk v3.3 and v3.4.

ccrause 3 yıl önce
ebeveyn
işleme
ea345f34aa

+ 5 - 1
compiler/pmodules.pas

@@ -416,7 +416,11 @@ implementation
 {$ifdef XTENSA}
         if not(current_module.is_unit) and (target_info.system=system_xtensa_freertos) then
           if (current_settings.controllertype=ct_esp32) and (idf_version>=40200) then
-            AddUnit('espidf_40200');
+            AddUnit('espidf_40200')
+          else if (current_settings.controllertype=ct_esp8266) and (idf_version>30300) then
+            AddUnit('esp8266rtos_30400')
+          else
+            AddUnit('esp8266rtos_30300');
 {$endif XTENSA}
       end;
 

+ 1 - 1
rtl/freertos/Makefile

@@ -521,7 +521,7 @@ CPU_UNITS=esp32 espidf_40200
 CPU_UNITS_DEFINED=1
 endif
 ifeq ($(SUBARCH),lx106)
-CPU_UNITS=esp8266
+CPU_UNITS=esp8266 esp8266rtos_30300 esp8266rtos_30400
 CPU_UNITS_DEFINED=1
 endif
 ifeq ($(CPU_UNITS_DEFINED),)

+ 1 - 1
rtl/freertos/Makefile.fpc

@@ -231,7 +231,7 @@ CPU_UNITS=esp32 espidf_40200
 CPU_UNITS_DEFINED=1
 endif
 ifeq ($(SUBARCH),lx106)
-CPU_UNITS=esp8266
+CPU_UNITS=esp8266 esp8266rtos_30300 esp8266rtos_30400
 CPU_UNITS_DEFINED=1
 endif
 ifeq ($(CPU_UNITS_DEFINED),)

+ 0 - 21
rtl/freertos/xtensa/esp8266.pp

@@ -8,27 +8,6 @@ unit esp8266;
 
   interface
 
-{$linklib esp8266, static}
-{$linklib log, static}
-{$linklib c_fnano, static}
-{$linklib newlib, static}
-{$linklib heap, static}
-{$linklib vfs, static}
-{$linklib esp_common, static}
-{$linklib core, static}
-{$linklib freertos, static}
-{$linklib phy, static}
-{$linklib net80211, static}
-{$linklib hal, static}
-{$linklib nvs_flash, static}
-{$linklib rtc, static}
-{$linklib spi_flash, static}
-{$linklib esp_ringbuf, static}
-{$linklib gcc, static}
-{$linklib pp, static}
-{$linklib stdc++, static}
-{$linklib pthread, static}
-
   implementation
 
     uses

+ 43 - 0
rtl/freertos/xtensa/esp8266rtos_30300.pp

@@ -0,0 +1,43 @@
+{
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2021 by Florian Klaempfl
+    member of the Free Pascal development team.
+
+    System unit for FreeRTOS systems
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+unit esp8266rtos_30300;
+
+interface
+
+{$linklib esp8266, static}
+{$linklib log, static}
+{$linklib c_fnano, static}
+{$linklib newlib, static}
+{$linklib heap, static}
+{$linklib vfs, static}
+{$linklib esp_common, static}
+{$linklib core, static}
+{$linklib freertos, static}
+{$linklib phy, static}
+{$linklib net80211, static}
+{$linklib hal, static}
+{$linklib nvs_flash, static}
+{$linklib rtc, static}
+{$linklib spi_flash, static}
+{$linklib esp_ringbuf, static}
+{$linklib gcc, static}
+{$linklib pp, static}
+{$linklib stdc++, static}
+{$linklib pthread, static}
+
+implementation
+
+end.

+ 43 - 0
rtl/freertos/xtensa/esp8266rtos_30400.pp

@@ -0,0 +1,43 @@
+{
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2021 by Florian Klaempfl
+    member of the Free Pascal development team.
+
+    System unit for FreeRTOS systems
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+unit esp8266rtos_30400;
+
+interface
+
+{$linklib esp8266, static}
+{$linklib log, static}
+{$linklib newlib, static}
+{$linklib c_nano, static}
+{$linklib heap, static}
+{$linklib vfs, static}
+{$linklib esp_common, static}
+{$linklib core, static}
+{$linklib freertos, static}
+{$linklib phy, static}
+{$linklib net80211, static}
+{$linklib hal, static}
+{$linklib nvs_flash, static}
+{$linklib rtc, static}
+{$linklib spi_flash, static}
+{$linklib esp_ringbuf, static}
+{$linklib gcc, static}
+{$linklib pp, static}
+{$linklib stdc++, static}
+{$linklib pthread, static}
+
+implementation
+
+end.