The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
1.9 KiB
72 lines
1.9 KiB
#!/bin/bash |
|
|
|
set -e |
|
|
|
msg() { echo -e "\x1b[1;32mINFO: \x1b[37m$*\x1b[0m"; } |
|
|
|
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then |
|
# TODO enable coverage |
|
#curl -s https://codecov.io/bash > upload.sh |
|
#chmod +x upload.sh |
|
|
|
# We need to copy the current checkout inside the Docker container, |
|
# because it has the MR id to be tested checked out. |
|
|
|
msg "Generating runner:" |
|
cat <<EOF | tee run.sh |
|
#!/bin/bash |
|
|
|
set -e |
|
|
|
export CC=$CC |
|
export CXX=$CXX |
|
export OBJC=$CC |
|
export OBJCXX=$CXX |
|
export PATH=/root/tools:$PATH |
|
if test "$MESON_RSP_THRESHOLD" != "" |
|
then |
|
export MESON_RSP_THRESHOLD=$MESON_RSP_THRESHOLD |
|
fi |
|
|
|
source /ci/env_vars.sh |
|
cd /root |
|
|
|
update-alternatives --set x86_64-w64-mingw32-gcc /usr/bin/x86_64-w64-mingw32-gcc-posix |
|
update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix |
|
update-alternatives --set i686-w64-mingw32-gcc /usr/bin/i686-w64-mingw32-gcc-posix |
|
update-alternatives --set i686-w64-mingw32-g++ /usr/bin/i686-w64-mingw32-g++-posix |
|
|
|
./run_tests.py $RUN_TESTS_ARGS -- $MESON_ARGS |
|
#./upload.sh |
|
|
|
EOF |
|
|
|
chmod +x run.sh |
|
|
|
msg "Generating Dockerfile:" |
|
cat <<EOF | tee Dockerfile |
|
FROM mesonbuild/eoan |
|
ADD . /root |
|
|
|
EOF |
|
|
|
msg "Building the docker image..." |
|
docker build -t test_img . |
|
|
|
msg "Start running tests" |
|
#ci_env=`bash <(curl -s https://codecov.io/env)` |
|
docker run --security-opt seccomp:unconfined test_img /root/run.sh |
|
|
|
elif [[ "$TRAVIS_OS_NAME" == "osx" ]]; then |
|
# Ensure that llvm is added after $PATH, otherwise the clang from that llvm install will be used instead of the native apple clang. |
|
export SDKROOT=$(xcodebuild -version -sdk macosx Path) |
|
export CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib |
|
export OBJC=$CC |
|
export OBJCXX=$CXX |
|
export PATH=$HOME/tools:/usr/local/opt/qt/bin:$PATH:$(brew --prefix llvm)/bin |
|
if test "$MESON_RSP_THRESHOLD" != "" |
|
then |
|
export MESON_RSP_THRESHOLD=$MESON_RSP_THRESHOLD |
|
fi |
|
./run_tests.py $RUN_TESTS_ARGS --backend=ninja -- $MESON_ARGS |
|
fi
|
|
|