@@ -105,50 +105,7 @@ $(EXTENSIONS_DIR)/micro_ros_src/install: $(EXTENSIONS_DIR)/esp32_toolchain.cmake
105105 -DCMAKE_C_STANDARD=$(C_STANDARD ) \
106106 -DUCLIENT_C_STANDARD=$(C_STANDARD ) ;
107107
108- patch_atomic :$(EXTENSIONS_DIR ) /micro_ros_src/install
109- # Workaround https://github.com/micro-ROS/micro_ros_espidf_component/issues/18
110- ifeq ($(IDF_TARGET ) ,$(filter $(IDF_TARGET ) ,esp32s2 esp32c3 esp32c6) )
111- echo $(UROS_DIR)/atomic_workaround; \
112- mkdir $(UROS_DIR)/atomic_workaround; cd $(UROS_DIR)/atomic_workaround; \
113- $(X_AR) x $(UROS_DIR)/install/lib/librcutils.a; \
114- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_fetch_add_8; \
115- if [ $(IDF_VERSION_MAJOR) -ge 4 ] && [ $(IDF_VERSION_MINOR) -ge 3 ]; then \
116- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_load_8; \
117- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_store_8; \
118- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_exchange_8; \
119- fi; \
120- if [ $(IDF_VERSION_MAJOR) -ge 4 ] && [ $(IDF_VERSION_MINOR) -ge 4 ]; then \
121- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_load_8; \
122- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_store_8; \
123- fi; \
124- if [ $(IDF_VERSION_MAJOR) -ge 5 ] && [ $(IDF_VERSION_MINOR) -ge 0 ]; then \
125- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_load_8; \
126- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_store_8; \
127- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_exchange_8; \
128- fi; \
129- $(X_AR) rc -s librcutils.a *.obj; \
130- cp -rf librcutils.a $(UROS_DIR)/install/lib/librcutils.a; \
131- cd ..; \
132- rm -rf $(UROS_DIR)/atomic_workaround;
133- endif
134- # ESP32-S3, ESP32-P4, ESP32: only need workaround in IDF 5.5
135- ifeq ($(IDF_TARGET ) ,$(filter $(IDF_TARGET ) ,esp32s3 esp32p4 esp32) )
136- @if [ $(IDF_VERSION_MAJOR) -eq 5 ] && [ $(IDF_VERSION_MINOR) -eq 5 ]; then \
137- echo $(UROS_DIR)/atomic_workaround; \
138- mkdir $(UROS_DIR)/atomic_workaround; cd $(UROS_DIR)/atomic_workaround; \
139- $(X_AR) x $(UROS_DIR)/install/lib/librcutils.a; \
140- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_fetch_add_8; \
141- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_load_8; \
142- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_store_8; \
143- $(X_STRIP) atomic_64bits.c.obj --strip-symbol=__atomic_exchange_8; \
144- $(X_AR) rc -s librcutils.a *.obj; \
145- cp -rf librcutils.a $(UROS_DIR)/install/lib/librcutils.a; \
146- cd ..; \
147- rm -rf $(UROS_DIR)/atomic_workaround; \
148- fi
149- endif
150-
151- $(EXTENSIONS_DIR ) /libmicroros.a : $(EXTENSIONS_DIR ) /micro_ros_src/install patch_atomic
108+ $(EXTENSIONS_DIR ) /libmicroros.a : $(EXTENSIONS_DIR ) /micro_ros_src/install
152109 mkdir -p $(UROS_DIR ) /libmicroros; cd $(UROS_DIR ) /libmicroros; \
153110 for file in $$ (find $( UROS_DIR) /install/lib/ -name ' *.a' ); do \
154111 folder=$$(echo $$file | sed -E "s/(.+ ) \/ (.+).a/\2 /" ); \
0 commit comments