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}
|
TRAVIS_REPO_SLUG=${TRAVIS_REPO_SLUG:=$USER/undefined}
|
||||||
BUILDNAME=${BUILDNAME:=travis}
|
BUILDNAME=${BUILDNAME:=travis}
|
||||||
TRAVIS_BUILD_NUMBER=${TRAVIS_BUILD_NUMBER:=undefined}
|
TRAVIS_BUILD_NUMBER=${TRAVIS_BUILD_NUMBER:=undefined}
|
||||||
|
MAKEFILE="-f Makefile"
|
||||||
|
|
||||||
CURL_BASEOPTS=(
|
CURL_BASEOPTS=(
|
||||||
"--retry" "10"
|
"--retry" "10"
|
||||||
|
@ -51,7 +52,7 @@ elif [ $PUBLISHMETA ] ; then
|
||||||
|
|
||||||
else
|
else
|
||||||
if [ $PUBLISH_URL ] ; then
|
if [ $PUBLISH_URL ] ; then
|
||||||
make -j2
|
make -j2 $MAKEFILE
|
||||||
if [ -f ${TARGET_FILE}.bin ] ; then
|
if [ -f ${TARGET_FILE}.bin ] ; then
|
||||||
TARGET_FILE=${TARGET_FILE}.bin
|
TARGET_FILE=${TARGET_FILE}.bin
|
||||||
elif [ -f ${TARGET_FILE}.hex ] ; then
|
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
|
curl -k "${CURL_BASEOPTS[@]}" "${CURL_PUB_BASEOPTS[@]}" --form "file=@${TARGET_FILE}" ${PUBLISH_URL} || true
|
||||||
exit 0;
|
exit 0;
|
||||||
else
|
else
|
||||||
make -j2
|
make -j2 $MAKEFILE
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -3,7 +3,9 @@ env:
|
||||||
- PUBLISHMETA=True
|
- PUBLISHMETA=True
|
||||||
- PUBLISHDOCS=True
|
- PUBLISHDOCS=True
|
||||||
- TARGET=CC3D
|
- TARGET=CC3D
|
||||||
- TARGET=CC3D OPBL=yes
|
- TARGET=CC3D_OPBL
|
||||||
|
- TARGET=CC3D_BP6
|
||||||
|
- TARGET=CC3D_OPBL_BP6
|
||||||
- TARGET=COLIBRI_RACE
|
- TARGET=COLIBRI_RACE
|
||||||
- TARGET=CHEBUZZF3
|
- TARGET=CHEBUZZF3
|
||||||
- TARGET=CJMCU
|
- TARGET=CJMCU
|
||||||
|
|
76
Makefile
76
Makefile
|
@ -11,6 +11,8 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
|
|
||||||
# Things that the user might override on the commandline
|
# Things that the user might override on the commandline
|
||||||
#
|
#
|
||||||
|
|
||||||
|
@ -38,21 +40,34 @@ FLASH_SIZE ?=
|
||||||
|
|
||||||
FORKNAME = betaflight
|
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
|
# 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
|
# Configure default flash sizes for the targets
|
||||||
ifeq ($(FLASH_SIZE),)
|
ifeq ($(FLASH_SIZE),)
|
||||||
ifeq ($(TARGET),$(filter $(TARGET),CJMCU))
|
ifeq ($(TARGET),$(filter $(TARGET),$(64K_TARGETS)))
|
||||||
FLASH_SIZE = 64
|
FLASH_SIZE = 64
|
||||||
else ifeq ($(TARGET),$(filter $(TARGET),ALIENWIIF1 CC3D NAZE OLIMEXINO RMDO))
|
else ifeq ($(TARGET),$(filter $(TARGET),$(128K_TARGETS)))
|
||||||
FLASH_SIZE = 128
|
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
|
FLASH_SIZE = 256
|
||||||
else
|
else
|
||||||
$(error FLASH_SIZE not configured for target)
|
$(error FLASH_SIZE not configured for target $(TARGET))
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -72,7 +87,7 @@ VPATH := $(SRC_DIR):$(SRC_DIR)/startup
|
||||||
USBFS_DIR = $(ROOT)/lib/main/STM32_USB-FS-Device_Driver
|
USBFS_DIR = $(ROOT)/lib/main/STM32_USB-FS-Device_Driver
|
||||||
USBPERIPH_SRC = $(notdir $(wildcard $(USBFS_DIR)/src/*.c))
|
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')
|
CSOURCES := $(shell find $(SRC_DIR) -name '*.c')
|
||||||
|
|
||||||
|
@ -180,7 +195,7 @@ INCLUDE_DIRS := $(INCLUDE_DIRS) \
|
||||||
|
|
||||||
DEVICE_STDPERIPH_SRC = $(STDPERIPH_SRC)
|
DEVICE_STDPERIPH_SRC = $(STDPERIPH_SRC)
|
||||||
|
|
||||||
ifeq ($(TARGET),CC3D)
|
ifeq ($(TARGET),$(filter $(TARGET), $(VCP_VALID_TARGETS)))
|
||||||
INCLUDE_DIRS := $(INCLUDE_DIRS) \
|
INCLUDE_DIRS := $(INCLUDE_DIRS) \
|
||||||
$(USBFS_DIR)/inc \
|
$(USBFS_DIR)/inc \
|
||||||
$(ROOT)/src/main/vcp
|
$(ROOT)/src/main/vcp
|
||||||
|
@ -213,6 +228,36 @@ TARGET_FLAGS := $(TARGET_FLAGS) -DNAZE -DALIENWII32
|
||||||
TARGET_DIR = $(ROOT)/src/main/target/NAZE
|
TARGET_DIR = $(ROOT)/src/main/target/NAZE
|
||||||
endif
|
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) \
|
INCLUDE_DIRS := $(INCLUDE_DIRS) \
|
||||||
$(TARGET_DIR)
|
$(TARGET_DIR)
|
||||||
|
|
||||||
|
@ -410,16 +455,6 @@ OLIMEXINO_SRC = startup_stm32f10x_md_gcc.S \
|
||||||
$(HIGHEND_SRC) \
|
$(HIGHEND_SRC) \
|
||||||
$(COMMON_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 = \
|
CJMCU_SRC = \
|
||||||
startup_stm32f10x_md_gcc.S \
|
startup_stm32f10x_md_gcc.S \
|
||||||
drivers/adc.c \
|
drivers/adc.c \
|
||||||
|
@ -705,6 +740,10 @@ ifeq ($(filter $(TARGET),$(VALID_TARGETS)),)
|
||||||
$(error Target '$(TARGET)' is not valid, must be one of $(VALID_TARGETS))
|
$(error Target '$(TARGET)' is not valid, must be one of $(VALID_TARGETS))
|
||||||
endif
|
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_BIN = $(BIN_DIR)/$(FORKNAME)_$(TARGET).bin
|
||||||
TARGET_HEX = $(BIN_DIR)/$(FORKNAME)_$(TARGET).hex
|
TARGET_HEX = $(BIN_DIR)/$(FORKNAME)_$(TARGET).hex
|
||||||
TARGET_ELF = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET).elf
|
TARGET_ELF = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET).elf
|
||||||
|
@ -775,6 +814,7 @@ st-flash_$(TARGET): $(TARGET_BIN)
|
||||||
st-flash: st-flash_$(TARGET)
|
st-flash: st-flash_$(TARGET)
|
||||||
|
|
||||||
binary: $(TARGET_BIN)
|
binary: $(TARGET_BIN)
|
||||||
|
hex: $(TARGET_HEX)
|
||||||
|
|
||||||
unbrick_$(TARGET): $(TARGET_HEX)
|
unbrick_$(TARGET): $(TARGET_HEX)
|
||||||
stty -F $(SERIAL_DEVICE) raw speed 115200 -crtscts cs8 -parenb -cstopb -ixon
|
stty -F $(SERIAL_DEVICE) raw speed 115200 -crtscts cs8 -parenb -cstopb -ixon
|
||||||
|
|
|
@ -3,7 +3,9 @@
|
||||||
targets=("PUBLISHMETA=True" \
|
targets=("PUBLISHMETA=True" \
|
||||||
"RUNTESTS=True" \
|
"RUNTESTS=True" \
|
||||||
"TARGET=CC3D" \
|
"TARGET=CC3D" \
|
||||||
"TARGET=CC3D OPBL=yes" \
|
"TARGET=CC3D_OPBL" \
|
||||||
|
"TARGET=CC3D_BP6" \
|
||||||
|
"TARGET=CC3D_OPBL_BP6" \
|
||||||
"TARGET=CHEBUZZF3" \
|
"TARGET=CHEBUZZF3" \
|
||||||
"TARGET=CJMCU" \
|
"TARGET=CJMCU" \
|
||||||
"TARGET=COLIBRI_RACE" \
|
"TARGET=COLIBRI_RACE" \
|
||||||
|
@ -26,8 +28,8 @@ export TRAVIS_REPO_SLUG=${TRAVIS_REPO_SLUG:=$USER/simulated}
|
||||||
|
|
||||||
for target in "${targets[@]}"
|
for target in "${targets[@]}"
|
||||||
do
|
do
|
||||||
unset RUNTESTS PUBLISHMETA TARGET OPBL
|
unset RUNTESTS PUBLISHMETA TARGET
|
||||||
eval "export $target"
|
eval "export $target"
|
||||||
make clean
|
make -f Makefile clean
|
||||||
./.travis.sh
|
./.travis.sh
|
||||||
done
|
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