Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add full debug builds for all tests #5146

Merged
merged 9 commits into from
Sep 21, 2018
4 changes: 4 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ matrix:
- BUILD_TYPE=build_even
- env:
- BUILD_TYPE=build_odd
- env:
- BUILD_TYPE=debug_even
- env:
- BUILD_TYPE=debug_odd
- env:
- BUILD_TYPE=platformio
- env:
Expand Down
6 changes: 6 additions & 0 deletions libraries/ESP8266AVRISP/src/ESP8266AVRISP.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,13 @@ extern "C" {
#include "mem.h"
}

#ifdef malloc
#undef malloc
#endif
#define malloc os_malloc
#ifdef free
#undef free
#endif
#define free os_free

// #define AVRISP_DEBUG(fmt, ...) os_printf("[AVRP] " fmt "\r\n", ##__VA_ARGS__ )
Expand Down
27 changes: 21 additions & 6 deletions tests/common.sh
Original file line number Diff line number Diff line change
Expand Up @@ -103,16 +103,24 @@ function install_ide()
{
local ide_path=$1
local core_path=$2
local debug=$3
wget -O arduino.tar.xz https://www.arduino.cc/download.php?f=/arduino-nightly-linux64.tar.xz
tar xf arduino.tar.xz
mv arduino-nightly $ide_path
cd $ide_path/hardware
mkdir esp8266com
cd esp8266com
ln -s $core_path esp8266
local debug_flags=""
if [ "$debug" = "debug" ]; then
debug_flags="-DDEBUG_ESP_PORT=Serial -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER -DDEBUG_ESP_CORE -DDEBUG_ESP_WIFI -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_UPDATER -DDEBUG_ESP_OTA -DDEBUG_ESP_OOM"
fi
# Set custom warnings for all builds (i.e. could add -Wextra at some point)
echo "compiler.c.extra_flags=-Wall -Werror" > esp8266/platform.local.txt
echo "compiler.cpp.extra_flags=-Wall -Werror" >> esp8266/platform.local.txt
echo "compiler.c.extra_flags=-Wall -Wextra -Werror $debug_flags" > esp8266/platform.local.txt
echo "compiler.cpp.extra_flags=-Wall -Wextra -Werror $debug_flags" >> esp8266/platform.local.txt
echo -e "\n----platform.local.txt----"
cat esp8266/platform.local.txt
echo -e "\n----\n"
cd esp8266/tools
python get.py
export PATH="$ide_path:$core_path/tools/xtensa-lx106-elf/bin:$PATH"
Expand Down Expand Up @@ -197,10 +205,11 @@ function build_sketches_with_platformio()

function install_arduino()
{
local debug=$1
# Install Arduino IDE and required libraries
echo -e "travis_fold:start:sketch_test_env_prepare"
cd $TRAVIS_BUILD_DIR
install_ide $HOME/arduino_ide $TRAVIS_BUILD_DIR
install_ide $HOME/arduino_ide $TRAVIS_BUILD_DIR $debug
which arduino
cd $TRAVIS_BUILD_DIR
install_libraries
Expand Down Expand Up @@ -248,13 +257,19 @@ if [ -z "$TRAVIS_BUILD_DIR" ]; then
fi

if [ "$BUILD_TYPE" = "build" ]; then
install_arduino
install_arduino nodebug
build_sketches_with_arduino 1 0
elif [ "$BUILD_TYPE" = "build_even" ]; then
install_arduino
install_arduino nodebug
build_sketches_with_arduino 2 0
elif [ "$BUILD_TYPE" = "build_odd" ]; then
install_arduino
install_arduino nodebug
build_sketches_with_arduino 2 1
elif [ "$BUILD_TYPE" = "debug_even" ]; then
install_arduino debug
build_sketches_with_arduino 2 0
elif [ "$BUILD_TYPE" = "debug_odd" ]; then
install_arduino debug
build_sketches_with_arduino 2 1
elif [ "$BUILD_TYPE" = "platformio" ]; then
# PlatformIO
Expand Down