add const, remove float cast
[betaflight.git] / make / targets_list.mk
blobfa2a59a49600ffbcb1390b98efd34aa36d36093c
1 OFFICIAL_TARGETS = \
2 ALIENFLIGHTF3 \
3 ALIENFLIGHTF4 \
4 ANYFCF7 \
5 BETAFLIGHTF3 \
6 BLUEJAYF4 \
7 FURYF4 REVO \
8 SIRINFPV \
9 SPARKY \
10 SPRACINGF3 \
11 SPRACINGF3EVO \
12 SPRACINGF3NEO \
13 SPRACINGF4EVO \
14 SPRACINGF7DUAL \
15 STM32F3DISCOVERY
17 ALT_TARGET_PATHS = $(filter-out %/target,$(basename $(wildcard $(ROOT)/src/main/target/*/*.mk)))
18 ALT_TARGET_NAMES = $(notdir $(ALT_TARGET_PATHS))
19 BASE_TARGET_NAMES = $(notdir $(patsubst %/,%,$(dir $(ALT_TARGET_PATHS))))
20 BASE_ALT_PAIRS = $(join $(BASE_TARGET_NAMES:=/),$(ALT_TARGET_NAMES))
22 ALT_TARGETS = $(sort $(notdir $(BASE_ALT_PAIRS)))
23 BASE_TARGETS = $(sort $(notdir $(patsubst %/,%,$(dir $(wildcard $(ROOT)/src/main/target/*/target.mk)))))
24 NOBUILD_TARGETS = $(sort $(filter-out target,$(basename $(notdir $(wildcard $(ROOT)/src/main/target/*/*.nomk)))))
25 OPBL_TARGETS = $(sort $(filter %_OPBL,$(ALT_TARGETS)))
27 VALID_TARGETS = $(sort $(filter-out $(NOBUILD_TARGETS),$(BASE_TARGETS) $(ALT_TARGETS)))
29 # For alt targets, returns their base target name.
30 # For base targets, returns the (same) target name.
31 # param $1 = target name
32 find_target_pair = $(filter %/$(1),$(BASE_ALT_PAIRS))
33 get_base_target = $(if $(call find_target_pair,$(1)),$(patsubst %/,%,$(dir $(call find_target_pair,$(1)))),$(1))
35 UNSUPPORTED_TARGETS := \
36 AFROMINI \
37 ALIENFLIGHTF1 \
38 BEEBRAIN \
39 CC3D \
40 CC3D_OPBL \
41 CJMCU \
42 MICROSCISKY \
43 NAZE
45 SUPPORTED_TARGETS := $(filter-out $(UNSUPPORTED_TARGETS), $(VALID_TARGETS))
47 TARGETS_TOTAL := $(words $(SUPPORTED_TARGETS))
48 TARGET_GROUPS := 5
49 TARGETS_PER_GROUP := $(shell expr $(TARGETS_TOTAL) / $(TARGET_GROUPS) )
51 ST := 1
52 ET := $(shell expr $(ST) + $(TARGETS_PER_GROUP))
53 GROUP_1_TARGETS := $(wordlist $(ST), $(ET), $(SUPPORTED_TARGETS))
55 ST := $(shell expr $(ET) + 1)
56 ET := $(shell expr $(ST) + $(TARGETS_PER_GROUP))
57 GROUP_2_TARGETS := $(wordlist $(ST), $(ET), $(SUPPORTED_TARGETS))
59 ST := $(shell expr $(ET) + 1)
60 ET := $(shell expr $(ST) + $(TARGETS_PER_GROUP))
61 GROUP_3_TARGETS := $(wordlist $(ST), $(ET), $(SUPPORTED_TARGETS))
63 ST := $(shell expr $(ET) + 1)
64 ET := $(shell expr $(ST) + $(TARGETS_PER_GROUP))
65 GROUP_4_TARGETS := $(wordlist $(ST), $(ET), $(SUPPORTED_TARGETS))
67 GROUP_OTHER_TARGETS := $(filter-out $(GROUP_1_TARGETS) $(GROUP_2_TARGETS) $(GROUP_3_TARGETS) $(GROUP_4_TARGETS), $(SUPPORTED_TARGETS))