new top_makefile with real make targets. All CC3D variants now with their own names, no more clashes and confusion. MAkefile still backwards compatible.
This commit is contained in:
parent
e6e5e3e33b
commit
4a65eadb52
|
@ -8,6 +8,7 @@ TARGET_FILE=obj/cleanflight_${TARGET}
|
|||
TRAVIS_REPO_SLUG=${TRAVIS_REPO_SLUG:=$USER/undefined}
|
||||
BUILDNAME=${BUILDNAME:=travis}
|
||||
TRAVIS_BUILD_NUMBER=${TRAVIS_BUILD_NUMBER:=undefined}
|
||||
MAKEFILE="-f Makefile"
|
||||
|
||||
CURL_BASEOPTS=(
|
||||
"--retry" "10"
|
||||
|
@ -51,7 +52,7 @@ elif [ $PUBLISHMETA ] ; then
|
|||
|
||||
else
|
||||
if [ $PUBLISH_URL ] ; then
|
||||
make -j2
|
||||
make -j2 $MAKEFILE
|
||||
if [ -f ${TARGET_FILE}.bin ] ; then
|
||||
TARGET_FILE=${TARGET_FILE}.bin
|
||||
elif [ -f ${TARGET_FILE}.hex ] ; then
|
||||
|
@ -64,6 +65,6 @@ else
|
|||
curl -k "${CURL_BASEOPTS[@]}" "${CURL_PUB_BASEOPTS[@]}" --form "file=@${TARGET_FILE}" ${PUBLISH_URL} || true
|
||||
exit 0;
|
||||
else
|
||||
make -j2
|
||||
make -j2 $MAKEFILE
|
||||
fi
|
||||
fi
|
||||
|
|
|
@ -3,7 +3,9 @@ env:
|
|||
- PUBLISHMETA=True
|
||||
- PUBLISHDOCS=True
|
||||
- TARGET=CC3D
|
||||
- TARGET=CC3D OPBL=yes
|
||||
- TARGET=CC3D_OPBL
|
||||
- TARGET=CC3D_BP6
|
||||
- TARGET=CC3D_OPBL_BP6
|
||||
- TARGET=COLIBRI_RACE
|
||||
- TARGET=CHEBUZZF3
|
||||
- TARGET=CJMCU
|
||||
|
|
76
Makefile
76
Makefile
|
@ -11,6 +11,8 @@
|
|||
#
|
||||
|
||||
###############################################################################
|
||||
|
||||
|
||||
# Things that the user might override on the commandline
|
||||
#
|
||||
|
||||
|
@ -38,21 +40,34 @@ FLASH_SIZE ?=
|
|||
|
||||
FORKNAME = betaflight
|
||||
|
||||
VALID_TARGETS = NAZE NAZE32PRO OLIMEXINO STM32F3DISCOVERY CHEBUZZF3 CC3D CJMCU EUSTM32F103RC SPRACINGF3 PORT103R SPARKY ALIENWIIF1 ALIENWIIF3 COLIBRI_RACE MOTOLAB RMDO IRCFUSIONF3
|
||||
CC3D_TARGETS = CC3D CC3D_OPBL CC3D_BP6 CC3D_OPBL_BP6
|
||||
|
||||
VALID_TARGETS = NAZE NAZE32PRO OLIMEXINO STM32F3DISCOVERY CHEBUZZF3 $(CC3D_TARGETS) CJMCU EUSTM32F103RC SPRACINGF3 PORT103R SPARKY ALIENWIIF1 ALIENWIIF3 COLIBRI_RACE MOTOLAB RMDO IRCFUSIONF3
|
||||
|
||||
# Valid targets for OP VCP support
|
||||
VCP_VALID_TARGETS = $(CC3D_TARGETS)
|
||||
|
||||
# Valid targets for OP BootLoader support
|
||||
OPBL_VALID_TARGETS = CC3D
|
||||
OPBL_VALID_TARGETS = CC3D_OPBL CC3D_OPBL_BP6
|
||||
BP6_VALID_TARGETS = CC3D_BP6 CC3D_OPBL_BP6
|
||||
|
||||
64K_TARGETS = CJMCU
|
||||
128K_TARGETS = ALIENWIIF1 $(CC3D_TARGETS) NAZE OLIMEXINO RMDO
|
||||
256K_TARGETS = EUSTM32F103RC PORT103R STM32F3DISCOVERY CHEBUZZF3 NAZE32PRO SPRACINGF3 IRCFUSIONF3 SPARKY ALIENWIIF3 COLIBRI_RACE MOTOLAB
|
||||
|
||||
F3_TARGETS = STM32F3DISCOVERY CHEBUZZF3 NAZE32PRO SPRACINGF3 IRCFUSIONF3 SPARKY ALIENWIIF3 COLIBRI_RACE MOTOLAB RMDO
|
||||
|
||||
|
||||
# Configure default flash sizes for the targets
|
||||
ifeq ($(FLASH_SIZE),)
|
||||
ifeq ($(TARGET),$(filter $(TARGET),CJMCU))
|
||||
ifeq ($(TARGET),$(filter $(TARGET),$(64K_TARGETS)))
|
||||
FLASH_SIZE = 64
|
||||
else ifeq ($(TARGET),$(filter $(TARGET),ALIENWIIF1 CC3D NAZE OLIMEXINO RMDO))
|
||||
else ifeq ($(TARGET),$(filter $(TARGET),$(128K_TARGETS)))
|
||||
FLASH_SIZE = 128
|
||||
else ifeq ($(TARGET),$(filter $(TARGET),EUSTM32F103RC PORT103R STM32F3DISCOVERY CHEBUZZF3 NAZE32PRO SPRACINGF3 IRCFUSIONF3 SPARKY ALIENWIIF3 COLIBRI_RACE MOTOLAB))
|
||||
else ifeq ($(TARGET),$(filter $(TARGET),$(256K_TARGETS)))
|
||||
FLASH_SIZE = 256
|
||||
else
|
||||
$(error FLASH_SIZE not configured for target)
|
||||
$(error FLASH_SIZE not configured for target $(TARGET))
|
||||
endif
|
||||
endif
|
||||
|
||||
|
@ -72,7 +87,7 @@ VPATH := $(SRC_DIR):$(SRC_DIR)/startup
|
|||
USBFS_DIR = $(ROOT)/lib/main/STM32_USB-FS-Device_Driver
|
||||
USBPERIPH_SRC = $(notdir $(wildcard $(USBFS_DIR)/src/*.c))
|
||||
|
||||
ifeq ($(TARGET),$(filter $(TARGET),STM32F3DISCOVERY CHEBUZZF3 NAZE32PRO SPRACINGF3 IRCFUSIONF3 SPARKY ALIENWIIF3 COLIBRI_RACE MOTOLAB RMDO))
|
||||
ifeq ($(TARGET),$(filter $(TARGET),$(F3_TARGETS)))
|
||||
|
||||
CSOURCES := $(shell find $(SRC_DIR) -name '*.c')
|
||||
|
||||
|
@ -180,7 +195,7 @@ INCLUDE_DIRS := $(INCLUDE_DIRS) \
|
|||
|
||||
DEVICE_STDPERIPH_SRC = $(STDPERIPH_SRC)
|
||||
|
||||
ifeq ($(TARGET),CC3D)
|
||||
ifeq ($(TARGET),$(filter $(TARGET), $(VCP_VALID_TARGETS)))
|
||||
INCLUDE_DIRS := $(INCLUDE_DIRS) \
|
||||
$(USBFS_DIR)/inc \
|
||||
$(ROOT)/src/main/vcp
|
||||
|
@ -213,6 +228,36 @@ TARGET_FLAGS := $(TARGET_FLAGS) -DNAZE -DALIENWII32
|
|||
TARGET_DIR = $(ROOT)/src/main/target/NAZE
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET),$(filter $(TARGET), $(CC3D_TARGETS)))
|
||||
TARGET_FLAGS := $(TARGET_FLAGS) -DCC3D
|
||||
TARGET_DIR = $(ROOT)/src/main/target/CC3D
|
||||
endif
|
||||
|
||||
ifneq ($(filter $(TARGET),$(OPBL_VALID_TARGETS)),)
|
||||
OPBL=yes
|
||||
endif
|
||||
|
||||
ifeq ($(OPBL),yes)
|
||||
ifneq ($(filter $(TARGET),$(OPBL_VALID_TARGETS)),)
|
||||
TARGET_FLAGS := -DOPBL $(TARGET_FLAGS)
|
||||
LD_SCRIPT = $(LINKER_DIR)/stm32_flash_f103_$(FLASH_SIZE)k_opbl.ld
|
||||
.DEFAULT_GOAL := binary
|
||||
else
|
||||
$(error OPBL specified with a unsupported target)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
ifneq ($(filter $(TARGET),$(BP6_VALID_TARGETS)),)
|
||||
BP6=yes
|
||||
endif
|
||||
|
||||
ifeq ($(BP6),yes)
|
||||
TARGET_FLAGS := -DBEEPER_PIN6 $(TARGET_FLAGS)
|
||||
endif
|
||||
|
||||
|
||||
|
||||
INCLUDE_DIRS := $(INCLUDE_DIRS) \
|
||||
$(TARGET_DIR)
|
||||
|
||||
|
@ -410,16 +455,6 @@ OLIMEXINO_SRC = startup_stm32f10x_md_gcc.S \
|
|||
$(HIGHEND_SRC) \
|
||||
$(COMMON_SRC)
|
||||
|
||||
ifeq ($(OPBL),yes)
|
||||
ifneq ($(filter $(TARGET),$(OPBL_VALID_TARGETS)),)
|
||||
TARGET_FLAGS := -DOPBL $(TARGET_FLAGS)
|
||||
LD_SCRIPT = $(LINKER_DIR)/stm32_flash_f103_$(FLASH_SIZE)k_opbl.ld
|
||||
.DEFAULT_GOAL := binary
|
||||
else
|
||||
$(error OPBL specified with a unsupported target)
|
||||
endif
|
||||
endif
|
||||
|
||||
CJMCU_SRC = \
|
||||
startup_stm32f10x_md_gcc.S \
|
||||
drivers/adc.c \
|
||||
|
@ -705,6 +740,10 @@ ifeq ($(filter $(TARGET),$(VALID_TARGETS)),)
|
|||
$(error Target '$(TARGET)' is not valid, must be one of $(VALID_TARGETS))
|
||||
endif
|
||||
|
||||
CC3D_OPBL_SRC = $(CC3D_SRC)
|
||||
CC3D_OPBL_BP6_SRC = $(CC3D_SRC)
|
||||
CC3D_BP6_SRC = $(CC3D_SRC)
|
||||
|
||||
TARGET_BIN = $(BIN_DIR)/$(FORKNAME)_$(TARGET).bin
|
||||
TARGET_HEX = $(BIN_DIR)/$(FORKNAME)_$(TARGET).hex
|
||||
TARGET_ELF = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET).elf
|
||||
|
@ -775,6 +814,7 @@ st-flash_$(TARGET): $(TARGET_BIN)
|
|||
st-flash: st-flash_$(TARGET)
|
||||
|
||||
binary: $(TARGET_BIN)
|
||||
hex: $(TARGET_HEX)
|
||||
|
||||
unbrick_$(TARGET): $(TARGET_HEX)
|
||||
stty -F $(SERIAL_DEVICE) raw speed 115200 -crtscts cs8 -parenb -cstopb -ixon
|
||||
|
|
|
@ -3,7 +3,9 @@
|
|||
targets=("PUBLISHMETA=True" \
|
||||
"RUNTESTS=True" \
|
||||
"TARGET=CC3D" \
|
||||
"TARGET=CC3D OPBL=yes" \
|
||||
"TARGET=CC3D_OPBL" \
|
||||
"TARGET=CC3D_BP6" \
|
||||
"TARGET=CC3D_OPBL_BP6" \
|
||||
"TARGET=CHEBUZZF3" \
|
||||
"TARGET=CJMCU" \
|
||||
"TARGET=COLIBRI_RACE" \
|
||||
|
@ -26,8 +28,8 @@ export TRAVIS_REPO_SLUG=${TRAVIS_REPO_SLUG:=$USER/simulated}
|
|||
|
||||
for target in "${targets[@]}"
|
||||
do
|
||||
unset RUNTESTS PUBLISHMETA TARGET OPBL
|
||||
unset RUNTESTS PUBLISHMETA TARGET
|
||||
eval "export $target"
|
||||
make clean
|
||||
make -f Makefile clean
|
||||
./.travis.sh
|
||||
done
|
||||
|
|
|
@ -0,0 +1,75 @@
|
|||
ALL_TARGETS := naze \
|
||||
cc3d \
|
||||
cc3d_opbl \
|
||||
cc3d_bp6 \
|
||||
cc3d_opbl_bp6 \
|
||||
nazepro \
|
||||
olimexino \
|
||||
stm32f3discovery \
|
||||
chebuzzf3 \
|
||||
cjmcu \
|
||||
eustm32f103rc \
|
||||
spracingf3 \
|
||||
port103r \
|
||||
sparky \
|
||||
alienwiif1 \
|
||||
alienwiif3 \
|
||||
colibri_race \
|
||||
motolab \
|
||||
rmdo \
|
||||
ircfusionf3 \
|
||||
|
||||
|
||||
CLEAN_TARGETS := $(addprefix clean_, $(ALL_TARGETS))
|
||||
|
||||
clean_naze naze : opts := TARGET=NAZE
|
||||
clean_cc3d cc3d: opts := TARGET=CC3D
|
||||
clean_cc3d_opbl cc3d_opbl : opts := TARGET=CC3D_OPBL
|
||||
clean_cc3d_bp6 cc3d_bp6 : opts := TARGET=CC3D_BP6
|
||||
clean_cc3d_opbl_bp6 cc3d_opbl_bp6 : opts := TARGET=CC3D_OPBL_BP6
|
||||
clean_nazepro nazepro : opts := TARGET=NAZE32PRO
|
||||
clean_olimexino olimexino : opts := TARGET=OLIMEXINO
|
||||
clean_stm32f3discovery stm32f3discovery : opts := TARGET=STM32F3DISCOVERY
|
||||
clean_chebuzzf3 chebuzzf3 : opts := TARGET=CHEBUZZF3
|
||||
clean_cjmcu cjmcu : opts := TARGET=CJMCU
|
||||
clean_eustm32f103rc eustm32f103rc : opts := TARGET=EUSTM32F103RC
|
||||
clean_spracingf3 spracingf3 : opts := TARGET=SPRACINGF3
|
||||
clean_port103r port103r : opts := TARGET=PORT103R
|
||||
clean_sparky sparky : opts := TARGET=SPARKY
|
||||
clean_alienwiif1 alienwiif1 : opts := TARGET=ALIENWIIF1
|
||||
clean_alienwiif3 alienwiif3 : opts := TARGET=ALIENWIIF3
|
||||
clean_colibri_race colibri_race : opts := TARGET=COLIBRI_RACE
|
||||
clean_motolab motolab : opts := TARGET=MOTOLAB
|
||||
clean_rmdo rmdo : opts := TARGET=RMDO
|
||||
clean_ircfusionf3 ircfusionf3 : opts := TARGET=IRCFUSIONF3
|
||||
|
||||
|
||||
.PHONY: all clean
|
||||
all: everything
|
||||
clean: clean_everything
|
||||
|
||||
|
||||
.PHONY: clean_everything
|
||||
clean_everything: $(CLEAN_TARGETS)
|
||||
|
||||
.PHONY: everything
|
||||
everything: $(ALL_TARGETS)
|
||||
|
||||
|
||||
.PHONY:$(ALL_TARGETS)
|
||||
$(ALL_TARGETS):
|
||||
make -f Makefile $(opts)
|
||||
|
||||
.PHONY: $(CLEAN_TARGETS)
|
||||
$(CLEAN_TARGETS):
|
||||
make -f Makefile clean $(opts)
|
||||
|
||||
.PHONY: help
|
||||
help:
|
||||
@echo "This is your new top makefile. synopsis: make <target>" .
|
||||
@echo "Valid targets":
|
||||
@echo "all"
|
||||
@echo "clean"
|
||||
@echo "$(ALL_TARGETS)"
|
||||
@echo "$(CLEAN_TARGETS)"
|
||||
|
Loading…
Reference in New Issue