forked from MarlinFirmware/Marlin
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request MarlinFirmware#3661 from wavexx/cmake_testing3
CI: Update travis to build/test with cmake
- Loading branch information
Showing
5 changed files
with
75 additions
and
35 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
#!/bin/sh | ||
set -xe | ||
rm -rf build | ||
mkdir build | ||
cd build | ||
cmake .. \ | ||
-DCMAKE_TOOLCHAIN_FILE="../cmake/LocalAvrGcc.cmake" \ | ||
-DCMAKE_BUILD_TYPE=Release \ | ||
-G Ninja | ||
ninja ALL_FIRMWARE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
#!/bin/sh | ||
set -xe | ||
rm -rf build | ||
mkdir build | ||
cd build | ||
cmake .. -G Ninja | ||
ninja tests | ||
ctest |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
#!/bin/sh | ||
set -xe | ||
cp Firmware/variants/1_75mm_MK3S-EINSy10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
bash -x build.sh || { echo "1_75mm_MK3S-EINSy10a-E3Dv6full variant failed" && false; } | ||
bash -x build.sh EN_FARM || { echo "1_75mm_MK3S-EINSy10a-E3Dv6full EN_FARM failed" && false; } | ||
rm Firmware/Configuration_prusa.h | ||
cp Firmware/variants/1_75mm_MK3-EINSy10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
bash -x build.sh || { echo "1_75mm_MK3-EINSy10a-E3Dv6full variant failed" && false; } | ||
bash -x build.sh EN_FARM || { echo "1_75mm_MK3-EINSy10a-E3Dv6full EN_FARM failed" && false; } | ||
rm Firmware/Configuration_prusa.h | ||
cp Firmware/variants/1_75mm_MK25S-RAMBo13a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
bash -x build.sh || { echo "1_75mm_MK25S-RAMBo13a-E3Dv6full variant failed" && false; } | ||
rm Firmware/Configuration_prusa.h | ||
cp Firmware/variants/1_75mm_MK25S-RAMBo10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
bash -x build.sh || { echo "1_75mm_MK25S-RAMBo10a-E3Dv6full variant failed" && false; } | ||
rm Firmware/Configuration_prusa.h | ||
cp Firmware/variants/1_75mm_MK25-RAMBo13a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
bash -x build.sh || { echo "1_75mm_MK25-RAMBo13a-E3Dv6full variant failed" && false; } | ||
rm Firmware/Configuration_prusa.h | ||
cp Firmware/variants/1_75mm_MK25-RAMBo10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
bash -x build.sh || { echo "1_75mm_MK25-RAMBo10a-E3Dv6full variant failed" && false; } | ||
rm Firmware/Configuration_prusa.h |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,43 @@ | ||
dist: focal | ||
language: minimal | ||
|
||
before_install: | ||
- sudo apt-get install -y ninja-build python3-polib python3-pyelftools | ||
# Arduino IDE adds a lot of noise caused by network traffic, trying to firewall it off | ||
# Prepare the dependencies for the old build environment | ||
- sudo apt-get install -y python3-polib python3-pyelftools python3-regex | ||
|
||
# Undo whatever *GARBAGE* travis is doing with python and restore the system version | ||
- mkdir -p .dependencies/python3 | ||
- ln -sf /usr/bin/python3 .dependencies/python3/python3 | ||
- PATH=$PWD/.dependencies/python3:$PATH | ||
|
||
# Bootstrap cmake/ninja for the new build environment | ||
- ./utils/bootstrap.py | ||
- PATH=$(./utils/bootstrap.py --print-dependency-directory "cmake")/bin:$PATH | ||
- PATH=$(./utils/bootstrap.py --print-dependency-directory "ninja"):$PATH | ||
|
||
# Arduino IDE adds a lot of noise caused by network traffic, firewall it off | ||
- sudo iptables -P INPUT DROP | ||
- sudo iptables -P FORWARD DROP | ||
- sudo iptables -P OUTPUT ACCEPT | ||
- sudo iptables -A INPUT -i lo -j ACCEPT | ||
- sudo iptables -A OUTPUT -o lo -j ACCEPT | ||
- sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT | ||
script: | ||
- cp Firmware/variants/1_75mm_MK3S-EINSy10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
- bash -x build.sh || { echo "1_75mm_MK3S-EINSy10a-E3Dv6full variant failed" && false; } | ||
- bash -x build.sh EN_FARM || { echo "1_75mm_MK3S-EINSy10a-E3Dv6full EN_FARM failed" && false; } | ||
- rm Firmware/Configuration_prusa.h | ||
- cp Firmware/variants/1_75mm_MK3-EINSy10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
- bash -x build.sh || { echo "1_75mm_MK3-EINSy10a-E3Dv6full variant failed" && false; } | ||
- bash -x build.sh EN_FARM || { echo "1_75mm_MK3-EINSy10a-E3Dv6full EN_FARM failed" && false; } | ||
- rm Firmware/Configuration_prusa.h | ||
- cp Firmware/variants/1_75mm_MK25S-RAMBo13a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
- bash -x build.sh || { echo "1_75mm_MK25S-RAMBo13a-E3Dv6full variant failed" && false; } | ||
- rm Firmware/Configuration_prusa.h | ||
- cp Firmware/variants/1_75mm_MK25S-RAMBo10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
- bash -x build.sh || { echo "1_75mm_MK25S-RAMBo10a-E3Dv6full variant failed" && false; } | ||
- rm Firmware/Configuration_prusa.h | ||
- cp Firmware/variants/1_75mm_MK25-RAMBo13a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
- bash -x build.sh || { echo "1_75mm_MK25-RAMBo13a-E3Dv6full variant failed" && false; } | ||
- rm Firmware/Configuration_prusa.h | ||
- cp Firmware/variants/1_75mm_MK25-RAMBo10a-E3Dv6full.h Firmware/Configuration_prusa.h | ||
- bash -x build.sh || { echo "1_75mm_MK25-RAMBo10a-E3Dv6full variant failed" && false; } | ||
- rm Firmware/Configuration_prusa.h | ||
|
||
jobs: | ||
include: | ||
# legacy build.sh environment | ||
- stage: legacy | ||
script: ./.github/travis/legacy-build.sh | ||
|
||
# cmake-based build | ||
- stage: cmake | ||
script: ./.github/travis/cmake-build.sh | ||
|
||
# cmake tests | ||
- stage: tests | ||
script: ./.github/travis/cmake-test.sh | ||
|
||
stages: | ||
- cmake | ||
- legacy | ||
- tests |