diff options
| author | Reinhard Panhuber <[email protected]> | 2021-03-10 19:33:11 +0100 |
|---|---|---|
| committer | Reinhard Panhuber <[email protected]> | 2021-03-10 19:33:11 +0100 |
| commit | 8cb3bd3cd30172d3023facb2522a435b414a3b7e (patch) | |
| tree | 1bc65aa35561cc43f4fab139a3a6e2654b110faa /examples/make.mk | |
| parent | d5a5a1cab63e8e43b22f13db95df35afdfa6befb (diff) | |
| parent | a397353916db36d925f5aec654fc66d5ca09f427 (diff) | |
Merge remote-tracking branch 'upstream/edpt_ISO_xfer' into edpt_ISO_xfer
Diffstat (limited to 'examples/make.mk')
| -rw-r--r-- | examples/make.mk | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/examples/make.mk b/examples/make.mk index 5387a4ec4..82fbd020b 100644 --- a/examples/make.mk +++ b/examples/make.mk @@ -15,24 +15,14 @@ check_defined = \ __check_defined = \ $(if $(value $1),, \ $(error Undefined make flag: $1$(if $2, ($2)))) - -# TODO Check if submodule haven't checkout yet -fetch_submodule_if_empty = \ - ifeq ($(wildcard $(TOP)/$1/*),) \ - $(info $(shell git -C $(TOP) submodule update --init)) \ - endif #-------------- Select the board to build for. ------------ -#BOARD_LIST = $(sort $(subst /.,,$(subst $(TOP)/hw/bsp/,,$(wildcard $(TOP)/hw/bsp/*/.)))) -#ifeq ($(filter $(BOARD),$(BOARD_LIST)),) -# $(info You must provide a BOARD parameter with 'BOARD=', supported boards are:) -# $(foreach b,$(BOARD_LIST),$(info - $(b))) -# $(error Invalid BOARD specified) -#endif # Board without family -BOARD_PATH := $(subst $(TOP)/,,$(wildcard $(TOP)/hw/bsp/$(BOARD))) +ifneq ($(wildcard $(TOP)/hw/bsp/$(BOARD)/board.mk),) +BOARD_PATH := hw/bsp/$(BOARD) FAMILY := +endif # Board within family ifeq ($(BOARD_PATH),) @@ -42,6 +32,7 @@ ifeq ($(BOARD_PATH),) endif ifeq ($(BOARD_PATH),) + $(info You must provide a BOARD parameter with 'BOARD=') $(error Invalid BOARD specified) endif @@ -56,6 +47,16 @@ endif #TODO $(call fetch_submodule_if_empty,lib/sct_neopixel) +# Fetch submodules depended by family +fetch_submodule_if_empty = \ + ifeq ($(wildcard $(TOP)/$1/*),) \ + $(info $(shell git -C $(TOP) submodule update --init $1)) \ + endif + +ifdef DEPS_SUBMODULES + $(foreach s,$(DEPS_SUBMODULES),:$(call fetch_submodule_if_empty,$(s))) +endif + #-------------- Cross Compiler ------------ # Can be set by board, default to ARM GCC CROSS_COMPILE ?= arm-none-eabi- @@ -65,13 +66,14 @@ CXX = $(CROSS_COMPILE)g++ OBJCOPY = $(CROSS_COMPILE)objcopy SIZE = $(CROSS_COMPILE)size MKDIR = mkdir + ifeq ($(CMDEXE),1) -CP = copy -RM = del + CP = copy + RM = del else -SED = sed -CP = cp -RM = rm + SED = sed + CP = cp + RM = rm endif #-------------- Source files and compiler flags -------------- @@ -80,6 +82,8 @@ endif SRC_C += hw/bsp/board.c SRC_C += $(subst $(TOP)/,,$(wildcard $(TOP)/$(BOARD_PATH)/*.c)) +INC += $(TOP)/$(FAMILY_PATH) + # Compiler Flags CFLAGS += \ -ggdb \ |
