diff --git a/radio/src/opentx.h b/radio/src/opentx.h index 1da964969..2d1d1ac30 100644 --- a/radio/src/opentx.h +++ b/radio/src/opentx.h @@ -251,7 +251,7 @@ #include "debug.h" -#if defined(PCBFRSKY) +#if defined(PCBFRSKY) || defined(PCBFLYSKY) #define SWSRC_THR SWSRC_SB2 #define SWSRC_GEA SWSRC_SG2 #define SWSRC_ID0 SWSRC_SA0 diff --git a/tools/commit-tests.sh b/tools/commit-tests.sh index a24ff3d0b..98ca01181 100755 --- a/tools/commit-tests.sh +++ b/tools/commit-tests.sh @@ -4,13 +4,20 @@ set -e set -x -# Allow variable core usage, default uses all cpu cores, to set 8 cores for example : commit-tests.sh -j8 -num_cpus=$(nproc) +# Allow variable core usage +# default uses all cpu cores +# +if [ -f /usr/bin/nproc ]; then + num_cpus=$(nproc) +elif [ -f /usr/sbin/sysctl ]; then + num_cpus=$(sysctl -n hw.logicalcpu) +else + num_cpus=2 +fi : "${CORES:=$num_cpus}" -# Default build treats warnings as errors, set -Wno-error to override, e.g.: commit-tests.sh -Wno-error -: "${WERROR:=1}" -# A board name to build for, or ALL -: "${FLAVOR:=ALL}" + +# If no build target, exit +#: "${FLAVOR:=ALL}" for i in "$@" do @@ -34,20 +41,16 @@ case $i in esac done -if [ "$(uname)" = "Darwin" ]; then - SCRIPT=$(python -c 'import os,sys;print(os.path.realpath(sys.argv[1]))' "$0") -else - SCRIPT=$(readlink -f "$0") -fi - +# Add GCC_ARM to PATH if [[ -n ${GCC_ARM} ]] ; then export PATH=${GCC_ARM}:$PATH fi -: ${SRCDIR:=$(dirname "$SCRIPT")/..} +: ${SRCDIR:=$(dirname $(pwd)/"$0")/..} -: ${COMMON_OPTIONS:="-DCMAKE_BUILD_TYPE=Debug -DTRACE_SIMPGMSPACE=NO -DVERBOSE_CMAKELISTS=YES -DCMAKE_RULE_MESSAGES=OFF -Wno-dev"} -if (( $WERROR )); then COMMON_OPTIONS+=" -DWARNINGS_AS_ERRORS=YES -DMULTIMODULE=YES"; fi +: ${BUILD_TYPE:=Debug} +: ${COMMON_OPTIONS:="-DCMAKE_BUILD_TYPE=$BUILD_TYPE -Wno-dev "} +if (( $WERROR )); then COMMON_OPTIONS+=" -DWARNINGS_AS_ERRORS=YES "; fi : ${EXTRA_OPTIONS:="$EXTRA_OPTIONS"} @@ -55,219 +58,96 @@ COMMON_OPTIONS+=${EXTRA_OPTIONS} : ${FIRMARE_TARGET:="firmware-size"} -mkdir build || true -cd build +# wipe build directory clean +rm -rf build && mkdir -p build && cd build -if [[ " SKY9X ARM9X ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on Sky9x - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=SKY9X -DHELI=YES DLUA=YES -DTELEMETRY=FRSKY -DPPM_LIMITS_SYMETRICAL=YES -DVARIO=YES -DAUTOSWITCH=YES -DAUTOSOURCE=YES -DAUDIO=YES -DGPS=YES -DPPM_CENTER_ADJUSTABLE=YES -DFLIGHT_MODES=YES -DOVERRIDE_CHANNEL_FUNCTION=YES -DFRSKY_STICKS=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi +target_names=$(echo "$FLAVOR" | tr '[:upper:]' '[:lower:]' | tr ';' '\n') -if [[ " AR9X ARM9X ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on AR9X - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=AR9X -DHELI=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi +for target_name in $target_names +do + BUILD_OPTIONS=${COMMON_OPTIONS} -if [[ " 9XRPRO ARM9X ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on Sky9x - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=9XRPRO -DHELI=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi + echo "Testing ${target_name}" + case $target_name in -if [[ " X9LITE ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X9LITE - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X9LITE -DHELI=YES -DGVARS=YES -DTRANSLATIONS=CZ "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi + x9lite) + BUILD_OPTIONS+="-DPCB=X9LITE" + ;; + x9lites) + BUILD_OPTIONS+="-DPCB=X9LITES" + ;; + x7) + BUILD_OPTIONS+="-DPCB=X7" + ;; + x7-access) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=ACCESS -DPXX1=YES" + ;; + t12) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=T12 -DINTERNAL_MODULE_MULTI=ON" + ;; + tx12) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TX12" + ;; + t8) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=T8" + ;; + tlite) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TLITE" + ;; + xlite) + BUILD_OPTIONS+="-DPCB=XLITE" + ;; + xlites) + BUILD_OPTIONS+="-DPCB=XLITES" + ;; + x9d) + BUILD_OPTIONS+="-DPCB=X9D" + ;; + x9dp) + BUILD_OPTIONS+="-DPCB=X9D+" + ;; + x9dp2019) + BUILD_OPTIONS+="-DPCB=X9D+ -DPCBREV=2019" + ;; + x9e) + BUILD_OPTIONS+="-DPCB=X9E" + ;; + x10) + BUILD_OPTIONS+="-DPCB=X10" + ;; + x10-access) + BUILD_OPTIONS+="-DPCB=X10 -DPCBREV=ACCESS -DPXX1=YES" + ;; + x12s) + BUILD_OPTIONS+="-DPCB=X12S" + ;; + t16) + BUILD_OPTIONS+="-DPCB=X10 -DPCBREV=T16 -DINTERNAL_MODULE_MULTI=ON" + ;; + t16-fs) + BUILD_OPTIONS+="-DPCB=X10 -DPCBREV=T16 -DINTERNAL_MODULE_MULTI=ON -DFLYSKY_HALL_STICKS=ON" + ;; + t18) + BUILD_OPTIONS+="-DPCB=X10 -DPCBREV=T18" + ;; + t18-fs) + BUILD_OPTIONS+="-DPCB=X10 -DPCBREV=T18 -DFLYSKY_HALL_STICKS=ON" + ;; + tx16s) + BUILD_OPTIONS+="-DPCB=X10 -DPCBREV=TX16S" + ;; + tx16s-fs) + BUILD_OPTIONS+="-DPCB=X10 -DPCBREV=TX16S -DFLYSKY_HALL_STICKS=ON" + ;; + nv14) + BUILD_OPTIONS+="-DPCB=NV14" + ;; + esac -if [[ " X9LITES X9LITE ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X9LITES - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X9LITES -DHELI=YES -DGVARS=YES -DMULTIMODULE=NO -DTRANSLATIONS=DE "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi + cmake ${BUILD_OPTIONS} "${SRCDIR}" + make -j"${CORES}" ${FIRMARE_TARGET} + make -j"${CORES}" libsimulator + make -j"${CORES}" tests-radio -if [[ " X7 ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X7 - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X7 -DHELI=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " X7ACCESS ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X7 ACCESS - rm -rf ./* - cmake "${COMMON_OPTIONS}" -DPCB=X7 -DPCBREV=ACCESS -DHELI=YES -DGVARS=YES -DTRANSLATIONS=FR "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " T12 ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on T12 - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X7 -DPCBREV=T12 -DHELI=YES -DGVARS=YES -DTRANSLATIONS=IT "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " TX12 ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on TX12 - rm -rf ./* - cmake "${COMMON_OPTIONS}" -DPCB=X7 -DPCBREV=TX12 -DHELI=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " T8 ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on T8 - rm -rf ./* - cmake "${COMMON_OPTIONS}" -DPCB=X7 -DPCBREV=T8 -DHELI=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " TLITE ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on TLITE - rm -rf ./* - cmake "${COMMON_OPTIONS}" -DPCB=X7 -DPCBREV=TLITE -DHELI=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " XLITE ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X-Lite - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=XLITE -DHELI=YES -DGVARS=YES -DTRANSLATIONS=SK "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " XLITES ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X-Lites - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=XLITES -DHELI=YES -DGVARS=YES -DTRANSLATIONS=SE "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " X9D ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X9D - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X9D -DHELI=YES -DLUA=YES -DGVARS=YES -DTRANSLATIONS=PL "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " X9DP ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X9D+ - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X9D+ -DHELI=YES -DLUA=YES -DGVARS=YES -DTRANSLATIONS=HU "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " X9DP2019 ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X9D+ 2019 - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X9D+ -DPCBREV=2019 -DHELI=YES -DLUA=YES -DGVARS=YES -DTRANSLATIONS=NL "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " X9E ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on Taranis X9E - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X9E -DHELI=YES -DLUA=YES -DGVARS=YES -DPPM_UNIT=PERCENT_PREC1 "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " X10 COLORLCD ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X10 boards - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X10 -DHELI=YES -DLUA=YES -DGVARS=YES "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " T16 COLORLCD ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on T16 boards - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X10 -DPCBREV=T16 -DHELI=YES -DLUA=YES -DGVARS=YES -DAFHDS3=NO "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " T18 COLORLCD ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on T16 boards - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X10 -DPCBREV=T18 -DHELI=YES -DLUA=YES -DGVARS=YES -DAFHDS3=NO "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " TX16S COLORLCD ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on TX16S boards - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X10 -DPCBREV=TX16S -DHELI=YES -DLUA=YES -DGVARS=YES -DTRANSLATIONS=CN "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " X12S COLORLCD ALL " =~ \ ${FLAVOR}\ ]] ; then - # OpenTX on X12S - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X12S -DHELI=YES -DLUA=YES -DGVARS=YES -DMULTIMODULE=NO "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - make -j"${CORES}" tests-radio -fi - -if [[ " NV14 COLORLCD ALL " =~ \ ${FLAVOR}\ ]] ; then - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=NV14 "${SRCDIR}" - make -j"${CORES}" ${FIRMARE_TARGET} - make -j"${CORES}" libsimulator - #TODO: make -j"${CORES}" tests-radio -fi - -if [[ " COMPANION ALL " =~ \ ${FLAVOR}\ ]] ; then - # Companion - rm -rf ./* || true - cmake "${COMMON_OPTIONS}" "${SRCDIR}" - make -j"${CORES}" companion24 simulator24 - make -j"${CORES}" tests-companion -fi + rm -f CMakeCache.txt +done