Working on Github Actions
This commit is contained in:
parent
c0f9f1413d
commit
11abe7ebde
29
.github/workflows/build-and-test.yml
vendored
29
.github/workflows/build-and-test.yml
vendored
|
@ -27,7 +27,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Linux / GCC (Release, Single Precision)",
|
||||
|
@ -38,7 +37,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Linux / GCC (Debug, Double Precision)",
|
||||
|
@ -49,7 +47,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: true,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Linux / GCC (Release, Double Precision)",
|
||||
|
@ -60,7 +57,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: true,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Linux / Clang (Debug, Single Precision)",
|
||||
|
@ -71,7 +67,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Linux / Clang (Release, Single Precision)",
|
||||
|
@ -82,7 +77,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Linux / Clang (Debug, Double Precision)",
|
||||
|
@ -93,7 +87,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: true,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Linux / Clang (Release, Double Precision)",
|
||||
|
@ -104,7 +97,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: true,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Windows / MSVC (Debug, Single Precision)",
|
||||
|
@ -115,7 +107,6 @@ jobs:
|
|||
generators: "Visual Studio 16 2019",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Windows / MSVC (Release, Single Precision)",
|
||||
|
@ -126,7 +117,6 @@ jobs:
|
|||
generators: "Visual Studio 16 2019",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Windows / MinGW (Debug, Single Precision)",
|
||||
|
@ -137,7 +127,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Windows / MinGW (Release, Single Precision)",
|
||||
|
@ -148,7 +137,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "MacOS / Clang (Debug, Single Precision)",
|
||||
|
@ -159,7 +147,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "MacOS / Clang (Release, Single Precision)",
|
||||
|
@ -170,7 +157,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "MacOS / GCC (Debug, Single Precision)",
|
||||
|
@ -181,18 +167,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
- {
|
||||
name: "Memory Leaks Test - Linux / GCC (Debug, Single Precision)",
|
||||
os: ubuntu-latest,
|
||||
build_type: "Debug",
|
||||
cc: "gcc",
|
||||
cxx: "g++",
|
||||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: false,
|
||||
memory_leaks_test: true
|
||||
}
|
||||
- {
|
||||
name: "Code Coverage",
|
||||
|
@ -203,7 +177,6 @@ jobs:
|
|||
generators: "Ninja",
|
||||
double_precision: false,
|
||||
coverage: true,
|
||||
memory_leaks_test: false
|
||||
}
|
||||
|
||||
steps:
|
||||
|
@ -299,7 +272,7 @@ jobs:
|
|||
./build_hello_world/helloworld
|
||||
|
||||
- name: Memory Leaks Test
|
||||
if: ${{ matrix.config.memory_leaks_test }}
|
||||
if: ${{ startsWith(matrix.config.name, 'Linux / GCC (Debug, Single Precision)') }}
|
||||
shell: bash
|
||||
run: valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --error-exitcode=1 ./build/test/tests
|
||||
|
||||
|
|
325
.travis.yml
325
.travis.yml
|
@ -1,325 +0,0 @@
|
|||
language: cpp
|
||||
|
||||
install:
|
||||
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo apt-get update -qq; fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo apt-get install valgrind; fi
|
||||
|
||||
matrix:
|
||||
|
||||
include:
|
||||
|
||||
# ----- Windows / Visual Studio -----
|
||||
- os: windows
|
||||
name: "Windows / Visual Studio (Debug)"
|
||||
env:
|
||||
- BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
||||
|
||||
# ----- Linux / GCC -----
|
||||
- os: linux
|
||||
name: "Linux / GCC (Debug)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8.1 && CXX=g++-8.1" BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: linux
|
||||
arch: arm64
|
||||
name: "Linux / GCC / ARM (Debug)"
|
||||
before_install:
|
||||
- sudo apt-get remove cmake
|
||||
- wget https://cmake.org/files/v3.8/cmake-3.8.2.tar.gz
|
||||
- tar xf cmake-3.8.2.tar.gz
|
||||
- cd cmake-3.8.2
|
||||
- ./configure
|
||||
- sudo make install
|
||||
- cmake --version
|
||||
- cd ../
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: linux
|
||||
name: "Linux / GCC (Release)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: linux
|
||||
arch: arm64
|
||||
name: "Linux / GCC / ARM (Release)"
|
||||
before_install:
|
||||
- sudo apt-get remove cmake
|
||||
- wget https://cmake.org/files/v3.8/cmake-3.8.2.tar.gz
|
||||
- tar xf cmake-3.8.2.tar.gz
|
||||
- cd cmake-3.8.2
|
||||
- ./configure
|
||||
- sudo make install
|
||||
- cmake --version
|
||||
- cd ../
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: linux
|
||||
name: "Linux / GCC (Debug, Double Precision)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
||||
|
||||
- os: linux
|
||||
name: "Linux / GCC (Release, Double Precision)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
||||
- os: linux
|
||||
name: "Linux / GCC (Debug, Profiler)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False" Profiler="True"
|
||||
- os: linux
|
||||
name: "Linux / GCC (Release, Profiler)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Release" DOUBLE_PRECISION="False" Profiler="True"
|
||||
- os: linux
|
||||
name: "Linux / GCC (Debug, Code Coverage)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
- lcov
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False" CODE_COVERAGE="True"
|
||||
- os: linux
|
||||
name: "Linux / GCC (Debug, Valgrind)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-8
|
||||
- valgrind
|
||||
env:
|
||||
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False" VALGRIND="True"
|
||||
|
||||
# ----- OS X / GCC -----
|
||||
- os: osx
|
||||
name: "OS X / GCC (Debug)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- MATRIX_EVAL="brew install gcc@8 && CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
||||
- os: osx
|
||||
name: "OS X / GCC (Release)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- MATRIX_EVAL="brew install gcc@8 && CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
||||
- os: osx
|
||||
name: "OS X / GCC (Debug, Double Precision)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- MATRIX_EVAL="brew install gcc@8 && CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
||||
- os: osx
|
||||
name: "OS X / GCC (Release, Double Precision)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- MATRIX_EVAL="brew install gcc@8 && CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
||||
- os: osx
|
||||
name: "OS X / GCC (Debug, Profiler)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- MATRIX_EVAL="brew install gcc@8 && CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False" PROFILER="True"
|
||||
- os: osx
|
||||
name: "OS X / GCC (Release, Profiler)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- MATRIX_EVAL="brew install gcc@8 && CC=gcc-8 && CXX=g++-8" BUILD_TYPE="Release" DOUBLE_PRECISION="False" PROFILER="True"
|
||||
|
||||
# ----- Linux / Clang -----
|
||||
- os: linux
|
||||
name: "Linux / Clang (Debug)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.8
|
||||
packages:
|
||||
- clang-3.8
|
||||
- g++-7
|
||||
env:
|
||||
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: linux
|
||||
name: "Linux / Clang (Release)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.8
|
||||
packages:
|
||||
- clang-3.8
|
||||
- g++-7
|
||||
env:
|
||||
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: linux
|
||||
name: "Linux / Clang (Debug, Double Precision)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.8
|
||||
packages:
|
||||
- clang-3.8
|
||||
- g++-7
|
||||
env:
|
||||
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
||||
|
||||
- os: linux
|
||||
name: "Linux / Clang (Release, Double Precision)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.8
|
||||
packages:
|
||||
- clang-3.8
|
||||
- g++-7
|
||||
env:
|
||||
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
||||
- os: linux
|
||||
name: "Linux / Clang (Debug, Double Precision, Profiler)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.8
|
||||
packages:
|
||||
- clang-3.8
|
||||
- g++-7
|
||||
env:
|
||||
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Debug" DOUBLE_PRECISION="True" PROFILER="True"
|
||||
- os: linux
|
||||
name: "Linux / Clang (Release, Double Precision, Profiler)"
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.8
|
||||
packages:
|
||||
- clang-3.8
|
||||
- g++-7
|
||||
env:
|
||||
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Release" DOUBLE_PRECISION="True" PROFILER="True"
|
||||
|
||||
# ----- OS X / Clang -----
|
||||
- os: osx
|
||||
name: "OS X / Clang (Debug)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: osx
|
||||
name: "OS X / Clang (Release)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
||||
|
||||
- os: osx
|
||||
name: "OS X / Clang (Debug, Double Precision)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
||||
|
||||
- os: osx
|
||||
name: "OS X / Clang (Release, Double Precision)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
||||
|
||||
- os: osx
|
||||
name: "OS X / Clang (Debug, Profiler)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- BUILD_TYPE="Debug" DOUBLE_PRECISION="False" PROFILER="True"
|
||||
|
||||
- os: osx
|
||||
name: "OS X / Clang (Release, Profiler)"
|
||||
osx_image: xcode11
|
||||
env:
|
||||
- BUILD_TYPE="Release" DOUBLE_PRECISION="False" PROFILER="True"
|
||||
|
||||
before_install:
|
||||
- eval "${MATRIX_EVAL}"
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
- develop
|
||||
|
||||
script:
|
||||
- mkdir build_rp3d
|
||||
- cd build_rp3d
|
||||
- cmake -DCMAKE_BUILD_TYPE=${BUILD_TYPE} —DRP3D_DOUBLE_PRECISION_ENABLED=${DOUBLE_PRECISION} -DRP3D_COMPILE_TESTS=True -DRP3D_PROFILING_ENABLED=${PROFILER} -DRP3D_CODE_COVERAGE_ENABLED=${CODE_COVERAGE} ../
|
||||
- cmake --build . -j2
|
||||
- make test ARGS="-V"
|
||||
- if [ "${VALGRIND}" == "True" ]; then
|
||||
valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --error-exitcode=1 test/tests;
|
||||
fi
|
||||
- if [ "${CODE_COVERAGE}" == "False" ]; then
|
||||
sudo cmake --install .;
|
||||
cd ../;
|
||||
mkdir build_helloworld;
|
||||
cd build_helloworld;
|
||||
cmake -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ../helloworld/;
|
||||
cmake --build . -j2;
|
||||
./helloworld;
|
||||
fi
|
||||
|
||||
|
||||
after_success:
|
||||
|
||||
# Generate code coverage report
|
||||
- if [ "${CODE_COVERAGE}" == "True" ]; then
|
||||
bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports";
|
||||
fi
|
Loading…
Reference in New Issue
Block a user