mirror of
https://github.com/cesanta/mongoose.git
synced 2026-09-30 21:42:42 +07:00
Merge pull request #3204 from cesanta/tests
Moving tests from GH yaml to bash scripts and Makefiles
This commit is contained in:
+7
-2
@@ -7,18 +7,23 @@ IMAGE ?= scaprile/cubeozone
|
||||
|
||||
all: $(PROJECTS)
|
||||
$(DOCKER) $(IMAGE) $(PATHTO)headless-build.sh -data workspace -removeAll workspace
|
||||
$(DOCKER) $(IMAGE) /bin/bash -c "rm -rf workspace/.metadata"
|
||||
|
||||
$(PROJECTS): FORCE
|
||||
(make -C $@ && sudo make -C $@ clean) || ( \
|
||||
COREDIRS=`find $@ -maxdepth 1 -name 'CM*' -print` && ( \
|
||||
(test "$$COREDIRS" = "" && \
|
||||
PROJNAME=`xq -r .projectDescription.name $@/.project` && \
|
||||
$(DOCKER) $(IMAGE) $(PATHTO)headless-build.sh -data workspace -import $@ -cleanBuild $$PROJNAME/$(TARGET) ) || ( \
|
||||
$(DOCKER) $(IMAGE) $(PATHTO)headless-build.sh -data workspace -import $@ -cleanBuild $$PROJNAME/$(TARGET) && \
|
||||
$(DOCKER) $(IMAGE) $(PATHTO)headless-build.sh -data workspace -remove $@ && \
|
||||
$(DOCKER) $(IMAGE) /bin/bash -c "rm -rf $@/.settings $@/$(TARGET)") || ( \
|
||||
(test "$$COREDIRS" != "" && \
|
||||
for core in $$COREDIRS; do \
|
||||
DIR=`basename $$core` \
|
||||
PROJNAME=`xq -r .projectDescription.name $@/$$DIR/.project` && \
|
||||
$(DOCKER) $(IMAGE) $(PATHTO)headless-build.sh -data workspace -import $@/$$DIR -cleanBuild $$PROJNAME/$(TARGET) || exit 1; \
|
||||
$(DOCKER) $(IMAGE) $(PATHTO)headless-build.sh -data workspace -import $@/$$DIR -cleanBuild $$PROJNAME/$(TARGET) && \
|
||||
$(DOCKER) $(IMAGE) $(PATHTO)headless-build.sh -data workspace -remove $@/$$DIR && \
|
||||
$(DOCKER) $(IMAGE) /bin/bash -c "rm -rf $@/$$DIR/.settings $@/$$DIR/Drivers $@/$$DIR/Middlewares $@/$$DIR/$(TARGET)" || exit 1; \
|
||||
done ))))
|
||||
|
||||
FORCE:
|
||||
|
||||
@@ -11,6 +11,6 @@ all: $(PROJECTS)
|
||||
$(PROJECTS): FORCE
|
||||
(make -C $@ build && make -C $@ clean) || ( \
|
||||
$(DOCKER) $(IMAGE) /bin/bash -c 'cd $@ && idf.py build' && \
|
||||
rm -rf build sdkconfig )
|
||||
$(DOCKER) $(IMAGE) /bin/bash -c 'rm -rf .cache && cd $@ && rm -rf build sdkconfig')
|
||||
|
||||
FORCE:
|
||||
|
||||
+10
-3
@@ -6,12 +6,15 @@ ifeq "$(IDE)" "GCC+make"
|
||||
BUILD = $(MAKE) -f ../gcc+make/Makefile PROJECTS=wizard
|
||||
endif
|
||||
ifeq "$(IDE)" "CubeIDE"
|
||||
BUILD = $(MAKE) -f ../cube/Makefile PROJECTS=wizard && rm -rf workspace
|
||||
BUILD = mkdir -p workspace && $(MAKE) -f ../cube/Makefile PROJECTS=wizard && rmdir workspace
|
||||
endif
|
||||
ifeq "$(IDE)" "MCUXpresso"
|
||||
BUILD = $(MAKE) -f ../xpresso/Makefile PROJECTS=wizard && rm -rf workspace
|
||||
BUILD = mkdir -p workspace && $(MAKE) -f ../xpresso/Makefile PROJECTS=wizard && rmdir workspace
|
||||
endif
|
||||
ifeq "$(IDE)" "Keil"
|
||||
ifeq "$(IDE)" "ModusIDE"
|
||||
BUILD = true
|
||||
endif
|
||||
ifeq "$(IDE)" "e2studio"
|
||||
BUILD = true
|
||||
endif
|
||||
ifeq "$(IDE)" "Pico-SDK"
|
||||
@@ -20,6 +23,9 @@ endif
|
||||
ifeq "$(IDE)" "ESP-IDF"
|
||||
BUILD = $(MAKE) -f ../esp-idf/Makefile PROJECTS=wizard
|
||||
endif
|
||||
ifeq "$(IDE)" "Keil"
|
||||
BUILD = true
|
||||
endif
|
||||
ifeq "$(IDE)" "Arduino"
|
||||
BUILD = true
|
||||
endif
|
||||
@@ -32,6 +38,7 @@ endif
|
||||
|
||||
|
||||
firmware.bin: wizard
|
||||
(test "$(BUILD)" == "true" && echo "NOT TESTING $(BOARD) $(IDE) $(RTOS): don't know how to test $(IDE) projects" >> test.log) || true
|
||||
$(BUILD) && rm -rf wizard*
|
||||
|
||||
wizard: FORCE
|
||||
|
||||
+33
-15
@@ -29,7 +29,7 @@ done
|
||||
dotest h7s3l8 GCC+make baremetal
|
||||
|
||||
|
||||
NXP="mcxn947"
|
||||
NXP="rt1020 rt1024 rt1040 rt1060 rt1064 rt1170 mcxn947"
|
||||
NXPIDES="GCC+make MCUXpresso"
|
||||
for board in $NXP; do
|
||||
for ide in $NXPIDES; do
|
||||
@@ -38,16 +38,9 @@ for board in $NXP; do
|
||||
done
|
||||
done
|
||||
done
|
||||
NXP="rt1020 rt1024 rt1040 rt1060 rt1064 rt1170"
|
||||
NXP="rw612"
|
||||
for board in $NXP; do
|
||||
dotest $board "GCC+make" "baremetal"
|
||||
done
|
||||
|
||||
|
||||
INFINEON="xmc4400 xmc4700 xmc7200"
|
||||
INFINEONIDES="GCC+make"
|
||||
for board in $INFINEON; do
|
||||
for ide in $INFINEONIDES; do
|
||||
for ide in $NXPIDES; do
|
||||
for rtos in "baremetal"; do
|
||||
dotest $board $ide $rtos
|
||||
done
|
||||
@@ -67,10 +60,13 @@ done
|
||||
dotest "tms570" "CGT+make" "baremetal"
|
||||
|
||||
|
||||
PICO="evb-pico evb-pico2 evb-pico2-w5100 pico-w pico2-w"
|
||||
for board in $PICO; do
|
||||
for rtos in "baremetal"; do
|
||||
dotest $board "Pico-SDK" $rtos
|
||||
INFINEON="xmc4400 xmc4700 xmc7200"
|
||||
INFINEONIDES="GCC+make ModusIDE"
|
||||
for board in $INFINEON; do
|
||||
for ide in $INFINEONIDES; do
|
||||
for rtos in "baremetal"; do
|
||||
dotest $board $ide $rtos
|
||||
done
|
||||
done
|
||||
done
|
||||
|
||||
@@ -80,10 +76,32 @@ for board in $ESP; do
|
||||
dotest $board "ESP-IDF" "baremetal"
|
||||
done
|
||||
|
||||
|
||||
PICO="evb-pico evb-pico2 evb-pico2-w5100 pico-w pico2-w"
|
||||
for board in $PICO; do
|
||||
for rtos in "baremetal"; do
|
||||
dotest $board "Pico-SDK" $rtos
|
||||
done
|
||||
done
|
||||
|
||||
|
||||
#NORDIC
|
||||
|
||||
RENESAS="ra6 ra8m1"
|
||||
RENESASIDES="GCC+make e2studio"
|
||||
for board in $RENESAS; do
|
||||
for ide in $RENESASIDES; do
|
||||
for rtos in "baremetal"; do
|
||||
dotest $board $ide $rtos
|
||||
done
|
||||
done
|
||||
done
|
||||
|
||||
|
||||
# f439 not supported
|
||||
# h755 not supported in 3.7.0 branch; master branch currently not building
|
||||
# other ST boards (PHY address != 0) might build and not work
|
||||
ZEPHYR="zephyr zephyr-w5500 f207 f429 f746 f756 f767 h563 h573 h723 h735 h743 h745 h747 h753 mcxn947 rt1060 rt1064 evb-pico"
|
||||
ZEPHYR="zephyr zephyr-w5500 f207 f429 f746 f756 f767 h563 h573 h723 h735 h743 h745 h747 h753 mcxn947 rt1060 rt1064 evb-pico nrf91"
|
||||
for board in $ZEPHYR; do
|
||||
dotest $board "Zephyr" "baremetal"
|
||||
done
|
||||
|
||||
@@ -1,17 +1,21 @@
|
||||
# NXP command line tool is useless for this task, using Eclipse headless build
|
||||
|
||||
ROOT ?= $(realpath $(CURDIR)/../..)
|
||||
PROJECTS ?= $(wildcard ../../tutorials/nxp/*-xpresso-*)
|
||||
TARGET ?= Debug
|
||||
DOCKER = docker run --rm -v $(ROOT):$(ROOT) -v $(CURDIR):/root -w $(CURDIR)
|
||||
DOCKER = docker run --rm --ulimit nofile=1024:524288 -v $(ROOT):$(ROOT) -v $(CURDIR):/root -w $(CURDIR)
|
||||
IMAGE ?= scaprile/xpresso
|
||||
HEADLESS_BUILD = /usr/local/mcuxpressoide/ide/mcuxpressoide --launcher.suppressErrors -nosplash -application org.eclipse.cdt.managedbuilder.core.headlessbuild
|
||||
|
||||
all: $(PROJECTS)
|
||||
$(DOCKER) $(IMAGE) $(HEADLESS_BUILD) -data workspace -removeAll workspace
|
||||
$(DOCKER) $(IMAGE) /bin/bash -c "rm -rf workspace/.metadata workspace/.mcuxpressoide* workspace/.gitignore mcuxpresso .cache .p2 .eclipse"
|
||||
|
||||
$(PROJECTS): FORCE
|
||||
(make -C $@ && make -C $@ clean) || ( \
|
||||
PROJNAME=`xq -r .projectDescription.name $@/.project` && \
|
||||
($(DOCKER) $(IMAGE) $(HEADLESS_BUILD) -data workspace -import wizard -cleanBuild $$PROJNAME/$(TARGET) || true) && \
|
||||
test -f $(@F)/$(TARGET)/$$PROJNAME.axf )
|
||||
($(DOCKER) $(IMAGE) $(HEADLESS_BUILD) -data workspace -import $@ -cleanBuild $$PROJNAME/$(TARGET) || true) && \
|
||||
test -f $(@F)/$(TARGET)/$$PROJNAME.axf && \
|
||||
$(DOCKER) $(IMAGE) /bin/bash -c "find $@/$(TARGET) -mindepth 1 ! -name '*.ld' -exec rm -rf {} +")
|
||||
|
||||
FORCE:
|
||||
|
||||
Reference in New Issue
Block a user