@@ -337,9 +337,11 @@ ECHO = echo
337
337
SYS_LIBS = $(patsubst % ,$(ARDUINO_LIB_PATH ) /% ,$(ARDUINO_LIBS ) )
338
338
SYS_INCLUDES = $(patsubst % ,-I% ,$(SYS_LIBS ) )
339
339
LIB_C_SRCS = $(wildcard $(patsubst % ,% /* .c,$(SYS_LIBS ) ) )
340
+ LIB_AS_SRCS = $(wildcard $(patsubst % ,% /* .S,$(SYS_LIBS ) ) )
340
341
LIB_CPP_SRCS = $(wildcard $(patsubst % ,% /* .cpp,$(SYS_LIBS ) ) )
341
342
LIB_OBJS = $(patsubst $(ARDUINO_LIB_PATH ) /% .c,$(OBJDIR ) /libs/% .o,$(LIB_C_SRCS ) ) \
342
- $(patsubst $(ARDUINO_LIB_PATH ) /% .cpp,$(OBJDIR ) /libs/% .o,$(LIB_CPP_SRCS ) )
343
+ $(patsubst $(ARDUINO_LIB_PATH ) /% .cpp,$(OBJDIR ) /libs/% .o,$(LIB_CPP_SRCS ) ) \
344
+ $(patsubst $(ARDUINO_LIB_PATH ) /% .S,$(OBJDIR ) /libs/% .o,$(LIB_AS_SRCS ) )
343
345
344
346
CPPFLAGS = -mmcu=$(MCU ) -DF_CPU=$(F_CPU ) -DARDUINO=$(ARDUINO_VERSION ) \
345
347
-I. -I$(ARDUINO_CORE_PATH ) -I$(ARDUINO_VAR_PATH ) /$(VARIANT ) \
@@ -370,6 +372,10 @@ $(OBJDIR)/libs/%.o: $(ARDUINO_LIB_PATH)/%.cpp
370
372
mkdir -p $(dir $@ )
371
373
$(CC ) -c $(CPPFLAGS ) $(CXXFLAGS ) $< -o $@
372
374
375
+ $(OBJDIR ) /libs/% .o : $(ARDUINO_LIB_PATH ) /% .S
376
+ mkdir -p $(dir $@ )
377
+ $(CC ) -c $(CPPFLAGS ) $(ASFLAGS ) $< -o $@
378
+
373
379
# normal local sources
374
380
# .o rules are for objects, .d for dependency tracking
375
381
# there seems to be an awful lot of duplication here!!!
0 commit comments