pkg/cmsis-dsp: use modules to compile package
This commit is contained in:
parent
cc954274a7
commit
75902c96f8
@ -5,7 +5,21 @@ PKG_LICENSE=Apache-2.0
|
|||||||
|
|
||||||
include $(RIOTBASE)/pkg/pkg.mk
|
include $(RIOTBASE)/pkg/pkg.mk
|
||||||
|
|
||||||
CFLAGS += -Wno-strict-aliasing -Wno-unused-parameter
|
CMSIS_DSP_MODULES = \
|
||||||
|
cmsis-dsp_BasicMathFunctions \
|
||||||
|
cmsis-dsp_CommonTables \
|
||||||
|
cmsis-dsp_ComplexMathFunctions \
|
||||||
|
cmsis-dsp_ControllerFunctions \
|
||||||
|
cmsis-dsp_FastMathFunctions \
|
||||||
|
cmsis-dsp_FilteringFunctions \
|
||||||
|
cmsis-dsp_MatrixFunctions \
|
||||||
|
cmsis-dsp_StatisticsFunctions \
|
||||||
|
cmsis-dsp_SupportFunctions \
|
||||||
|
cmsis-dsp_TransformFunctions \
|
||||||
|
|
||||||
all:
|
.PHONY: cmsis-dsp_%
|
||||||
"$(MAKE)" -C $(PKG_SOURCE_DIR) -f $(CURDIR)/Makefile.$(PKG_NAME) all
|
|
||||||
|
all: $(CMSIS_DSP_MODULES)
|
||||||
|
|
||||||
|
cmsis-dsp_%:
|
||||||
|
$(MAKE) -C $(PKG_SOURCE_DIR)/CMSIS/DSP/Source/$* -f $(CURDIR)/Makefile.cmsis-dsp MODULE=$@
|
||||||
|
|||||||
@ -1,40 +1,5 @@
|
|||||||
PKG_NAME=cmsis-dsp
|
CFLAGS += -Wno-strict-aliasing
|
||||||
|
CFLAGS += -Wno-unused-parameter
|
||||||
# A list of all the directories to build for CMSIS-DSP
|
|
||||||
CMSIS_DIRS += \
|
|
||||||
CMSIS/DSP/Source/BasicMathFunctions \
|
|
||||||
CMSIS/DSP/Source/CommonTables \
|
|
||||||
CMSIS/DSP/Source/ComplexMathFunctions \
|
|
||||||
CMSIS/DSP/Source/ControllerFunctions \
|
|
||||||
CMSIS/DSP/Source/FastMathFunctions \
|
|
||||||
CMSIS/DSP/Source/FilteringFunctions \
|
|
||||||
CMSIS/DSP/Source/MatrixFunctions \
|
|
||||||
CMSIS/DSP/Source/StatisticsFunctions \
|
|
||||||
CMSIS/DSP/Source/SupportFunctions \
|
|
||||||
CMSIS/DSP/Source/TransformFunctions \
|
|
||||||
#
|
|
||||||
|
|
||||||
INCLUDES += -I$(CURDIR)/CMSIS/DSP/Include
|
|
||||||
CMSIS_BINDIRS = $(addprefix $(BINDIR)/$(PKG_NAME)/,$(CMSIS_DIRS))
|
|
||||||
|
|
||||||
# Override default RIOT search path for sources to include all of the CMSIS-DSP
|
|
||||||
# sources in one library instead of one library per subdirectory.
|
|
||||||
SRC := $(foreach DIR,$(CMSIS_DIRS),$(wildcard $(DIR)/*.c))
|
|
||||||
SRCXX := $(foreach DIR,$(CMSIS_DIRS),$(wildcard $(DIR)/*.cpp))
|
|
||||||
ASMSRC := $(foreach DIR,$(CMSIS_DIRS),$(wildcard $(DIR)/*.s))
|
|
||||||
ASSMSRC := $(foreach DIR,$(CMSIS_DIRS),$(wildcard $(DIR)/*.S))
|
|
||||||
|
|
||||||
OBJC := $(SRC:%.c=$(BINDIR)/$(PKG_NAME)/%.o)
|
|
||||||
OBJCXX := $(SRCXX:%.cpp=$(BINDIR)/$(PKG_NAME)/%.o)
|
|
||||||
ASMOBJ := $(ASMSRC:%.s=$(BINDIR)/$(PKG_NAME)/%.o)
|
|
||||||
ASSMOBJ := $(ASSMSRC:%.S=$(BINDIR)/$(PKG_NAME)/%.o)
|
|
||||||
OBJ = $(OBJC) $(OBJCXX) $(ASMOBJ) $(ASSMOBJ)
|
|
||||||
|
|
||||||
# Create subdirectories if they do not already exist
|
|
||||||
$(OBJ): | $(CMSIS_BINDIRS)
|
|
||||||
|
|
||||||
$(CMSIS_BINDIRS):
|
|
||||||
@mkdir -p $@
|
|
||||||
|
|
||||||
# Include RIOT settings and recipes
|
# Include RIOT settings and recipes
|
||||||
include $(RIOTBASE)/Makefile.base
|
include $(RIOTBASE)/Makefile.base
|
||||||
|
|||||||
10
pkg/cmsis-dsp/Makefile.dep
Normal file
10
pkg/cmsis-dsp/Makefile.dep
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
USEMODULE += cmsis-dsp_BasicMathFunctions
|
||||||
|
USEMODULE += cmsis-dsp_CommonTables
|
||||||
|
USEMODULE += cmsis-dsp_ComplexMathFunctions
|
||||||
|
USEMODULE += cmsis-dsp_ControllerFunctions
|
||||||
|
USEMODULE += cmsis-dsp_FastMathFunctions
|
||||||
|
USEMODULE += cmsis-dsp_FilteringFunctions
|
||||||
|
USEMODULE += cmsis-dsp_MatrixFunctions
|
||||||
|
USEMODULE += cmsis-dsp_StatisticsFunctions
|
||||||
|
USEMODULE += cmsis-dsp_SupportFunctions
|
||||||
|
USEMODULE += cmsis-dsp_TransformFunctions
|
||||||
@ -1 +1,4 @@
|
|||||||
INCLUDES += -I$(PKGDIRBASE)/cmsis-dsp/CMSIS/DSP/Include
|
INCLUDES += -I$(PKGDIRBASE)/cmsis-dsp/CMSIS/DSP/Include
|
||||||
|
|
||||||
|
# cmsis-dsp module is not a concrete module, so declare it as a pseudomodule
|
||||||
|
PSEUDOMODULES += cmsis-dsp
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user