Permalink
Fetching contributors…
Cannot retrieve contributors at this time
153 lines (142 sloc) 4.28 KB
language: c
sudo: false
_packages:
- &i386-packages
apt:
packages:
- gcc-multilib
- &arm-packages
apt:
packages:
- qemu-user
- gcc-arm-linux-gnueabihf
- libc6-dev-armhf-cross
- &aarch64-packages
apt:
packages:
- qemu-user
- gcc-aarch64-linux-gnu
- libc6-dev-arm64-cross
_environments:
- &i386-env
- TOOLCHAIN=gcc-i686
- &i386-darwin-env
- TOOLCHAIN=gcc-darwin-i686
- &arm-env
- ARCH=arm
- TARGET=linux-gnueabihf
- TOOLCHAIN=gcc-generic
- CMAKE_OPTS=-DUSE_QEMU=ON
- &aarch64-env
- ARCH=aarch64
- TARGET=linux-gnu
- TOOLCHAIN=gcc-generic
- CMAKE_OPTS=-DUSE_QEMU=ON
- &coverity-key
secure: "L/VOabxezhZm26zaNQN0KjIvNukSzkxdC3bgMZ6ZIA0WUP5WcyqxNTfrlM0SpN04Mu5NReItJDCFGSWcqqkuRVs1Va6xIdsTtmiM0xLeQWOx2s0bwpaxt+2jJ7RlBjVNRrkR5DnJTL5uOztEyxYIYkJc9rswWFDJjBKqcdlXzEE3m6m4hUSoSAoq58EvjAc8CKYMvbLIcN/b77ZGc/IhblrDfI6rxmCA7xq2tDXFSk48snhFQ5NeF3KeQxNH6jxxt4rVU6LLlC85E/YRH9GXu1uxW4O7Vf5bmznpYnGoBwAR7y3IeJp5n2xM8vghD+QPd/94Xy/vYn3gFT0pk/evO8vEgO9Vs3Jj+CyO19m2C+a0hGjukL/97rrtyCNaDtWTzVTjCbWJHqXk1D8W267xywxLggCDN+hu/wnBGqXmwYp4wtXONZaE/aBU6mvHHWonq/8n7q7Sg8OVNMSGyI1MP1zATkX2SzX2fKafRk0G8cj2T98xHk+zNnguvCAFucvaefCr+J9wt+XhI3zjGVO3wdcQztrL3gLefNFEJCiiMAd/aap+siFLpVKfbMEyQmHBe0KiAZobrRcuVz7wroc8EEItszhGcv+Y/Ezre1k30FDVRslUOo420xpZIB0YfwkqE1+sW/9V875Gm4IPhEteY7uPIxlUlWAV3xNvFKnPImM="
matrix:
include:
# Linux
# x86_64
- env: CONFIGURATION=Debug
compiler: gcc
- env: CONFIGURATION=Release
compiler: gcc
- env: CONFIGURATION=RelWithDebInfo
compiler: gcc
# i386
- env: [CONFIGURATION=Debug, *i386-env]
addons: *i386-packages
compiler: gcc
- env: [CONFIGURATION=Release, *i386-env]
addons: *i386-packages
compiler: gcc
- env: [CONFIGURATION=RelWithDebInfo, *i386-env]
addons: *i386-packages
compiler: gcc
# ARM
- env: [CONFIGURATION=Debug, *arm-env]
addons: *arm-packages
compiler: gcc
- env: [CONFIGURATION=Release, *arm-env]
addons: *arm-packages
compiler: gcc
- env: [CONFIGURATION=RelWithDebInfo, *arm-env]
addons: *arm-packages
compiler: gcc
# AArch64
- env: [CONFIGURATION=Debug, *aarch64-env]
sudo: required
dist: trusty
addons: *aarch64-packages
compiler: gcc
- env: [CONFIGURATION=Release, *aarch64-env]
sudo: required
dist: trusty
addons: *aarch64-packages
compiler: gcc
- env: [CONFIGURATION=RelWithDebInfo, *aarch64-env]
sudo: required
dist: trusty
addons: *aarch64-packages
compiler: gcc
# OS X
# x86_64
- env: CONFIGURATION=Debug
os: osx
compiler: clang
- env: CONFIGURATION=Release
os: osx
compiler: clang
- env: CONFIGURATION=RelWithDebInfo
os: osx
compiler: clang
- env: [CONFIGURATION=Debug, *i386-darwin-env]
os: osx
compiler: clang
- env: [CONFIGURATION=Release, *i386-darwin-env]
os: osx
compiler: clang
- env: [CONFIGURATION=RelWithDebInfo, *i386-darwin-env]
os: osx
compiler: clang
# Coverity scan, when applicable
- compiler: gcc
env: [*coverity-key]
allow_failures:
- env: [*coverity-key]
before_install:
- if [ -z "${TARGET}" ]; then export TARGET=${ARCH}; fi
- if [ -n "${SUDO_PKG}" ]; then sudo apt-get install -qq ${SUDO_PKG}; fi
script:
- mkdir -p build && cd $_
- |
if [ -n "${TOOLCHAIN}" ]; then
TC_FILE="../.cmake/Toolchains/Toolchain-${TOOLCHAIN}.cmake"
if [ -n "${ARCH}" ]; then
export CMAKE_OPTS="${CMAKE_OPTS} -DARCH=${ARCH}"
export CMAKE_OPTS="${CMAKE_OPTS} -DTARGET=${TARGET}"
fi
export CMAKE_OPTS="${CMAKE_OPTS} -DCMAKE_TOOLCHAIN_FILE=${TC_FILE}"
fi
- >
cmake
-Wno-dev
-DCMAKE_BUILD_TYPE=${CONFIGURATION}
-DCMAKE_INSTALL_PREFIX=mimick-${TRAVIS_TAG}
${CMAKE_OPTS}
..
- TERM=dumb cmake --build . -- -j4
- |
if [ "${TESTS:-ON}" = "ON" ]; then
ctest
fi
addons:
coverity_scan:
project:
name: "Snaipe/Mimick"
description: "A KISS, cross-platform C Mocking library"
notification_email: franklinmathieu@gmail.com
build_command_prepend: "cmake ."
build_command: "make -j4"
branch_pattern: coverity_scan