# Someone will thank me later for this. # Find and replace DEP_NAME with the name of your dependency. DEP_DEP_NAME_BUILD_DIR := $(FBARDUINO_FIRMWARE_LIB_BUILD_DIR)/DEP_NAME DEP_DEP_NAME := $(DEP_DEP_NAME_BUILD_DIR)/DEP_NAME.a DEP_DEP_NAME_SRC_DIR := $(ARDUINO_INSTALL_DIR)/libraries/DEP_NAME/src DEP_DEP_NAME_CFLAGS := \ -I$(DEP_DEP_NAME_SRC_DIR) DEP_DEP_NAME_CFLAGS := -I$(DEP_DEP_NAME_SRC_DIR) DEP_DEP_NAME_LDFLAGS := $(DEP_DEP_NAME_BUILD_DIR)/DEP_NAME.a -L$(DEP_DEP_NAME_BUILD_DIR) -lm DEP_DEP_NAME_ASM_SRC := $(call rwildcard, $(DEP_DEP_NAME_SRC_DIR), *.S) DEP_DEP_NAME_ASM_OBJ := $(DEP_DEP_NAME_ASM_SRC:.S=.o) DEP_DEP_NAME_C_SRC := $(call rwildcard, $(DEP_DEP_NAME_SRC_DIR), *.c) DEP_DEP_NAME_C_OBJ := $(DEP_DEP_NAME_C_SRC:.c=.o) DEP_DEP_NAME_CXX_SRC := $(call rwildcard, $(DEP_DEP_NAME_SRC_DIR), *.cpp) DEP_DEP_NAME_CXX_OBJ := $(DEP_DEP_NAME_CXX_SRC:.cpp=.o) DEP_DEP_NAME_ALL_OBJ := $(DEP_DEP_NAME_ASM_OBJ) $(DEP_DEP_NAME_C_SRC) $(DEP_DEP_NAME_CXX_OBJ) DEP_DEP_NAME_SRC := $(DEP_SERVO_ASM_SRC) $(DEP_SERVO_C_SRC) $(CXX_SRC) DEP_DEP_NAME_OBJ := $(patsubst $(DEP_DEP_NAME_SRC_DIR)/%,$(DEP_DEP_NAME_BUILD_DIR)/%,$(DEP_DEP_NAME_ALL_OBJ)) DEP_DEP_NAME_DIRS := $(sort $(dir $(DEP_DEP_NAME_OBJ))) ARDUINO_DEP_DEP_NAME_CXX_FLAGS_P := $(DEP_CORE_CXX_FLAGS_P) $(DEP_DEP_NAME_CFLAGS) $(DEP_DEP_NAME): $(DEP_CORE) $(DEP_DEP_NAME_BUILD_DIR) $(DEP_DEP_NAME_OBJ) $(AR) rcs $(DEP_DEP_NAME) $(DEP_DEP_NAME_OBJ) $(DEP_DEP_NAME_BUILD_DIR)/%.o: $(DEP_DEP_NAME_SRC_DIR)/%.cpp $(CXX) $(ARDUINO_DEP_DEP_NAME_CXX_FLAGS_P) $< -o $@ $(DEP_DEP_NAME_BUILD_DIR): $(MKDIR_P) $(DEP_DEP_NAME_DIRS) dep_DEP_NAME: $(DEP_DEP_NAME) dep_DEP_NAME_clean: $(RM) $(DEP_DEP_NAME_OBJ) $(RM) $(DEP_DEP_NAME)