mirror of https://gitlab.com/cppit/libclangmm
6 changed files with 146 additions and 0 deletions
@ -0,0 +1,20 @@ |
|||||||
|
sudo: required |
||||||
|
|
||||||
|
env: |
||||||
|
- distribution: ubuntu |
||||||
|
- distribution: fedora |
||||||
|
- distribution: arch |
||||||
|
- distribution: debian-testing |
||||||
|
- distribution: debian |
||||||
|
|
||||||
|
services: |
||||||
|
- docker |
||||||
|
|
||||||
|
before_install: |
||||||
|
- ./ci/update_ci.sh |
||||||
|
|
||||||
|
script: |
||||||
|
- script=compile CXX=clang++ CC=clang ./ci/execute.sh |
||||||
|
- script=clean ./ci/execute.sh |
||||||
|
- script=compile CXX=g++ CC=gcc ./ci/execute.sh |
||||||
|
- script=static_analysis ./ci/execute.sh |
||||||
@ -0,0 +1,15 @@ |
|||||||
|
platform: |
||||||
|
- x64 |
||||||
|
|
||||||
|
environment: |
||||||
|
MSYSTEM: MSYS |
||||||
|
|
||||||
|
before_build: |
||||||
|
- C:\msys64\usr\bin\pacman --noconfirm --sync --refresh --refresh pacman |
||||||
|
- C:\msys64\usr\bin\pacman --noconfirm --sync --refresh --refresh git |
||||||
|
- C:\msys64\usr\bin\pacman --noconfirm --sync --refresh --refresh --sysupgrade --sysupgrade |
||||||
|
- C:\msys64\usr\bin\bash -lc "$(cygpath ${APPVEYOR_BUILD_FOLDER})/ci/update_ci.sh" |
||||||
|
|
||||||
|
build_script: |
||||||
|
- C:\msys64\usr\bin\bash -lc "script=compile $(cygpath ${APPVEYOR_BUILD_FOLDER})/ci/execute.sh" |
||||||
|
- C:\msys64\usr\bin\bash -lc "script=compile make_command='CTEST_OUTPUT_ON_FAILURE=1 make test' $(cygpath ${APPVEYOR_BUILD_FOLDER})/ci/execute.sh" |
||||||
@ -0,0 +1,25 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
if [ "${cmake_command}" == "" ]; then |
||||||
|
if [ "$APPVEYOR" != "" ]; then |
||||||
|
if [ "$PLATFORM" == "x64" ]; then |
||||||
|
mingw="mingw64" |
||||||
|
else |
||||||
|
mingw="mingw32" |
||||||
|
fi |
||||||
|
cmake_command="cmake -G\"MSYS Makefiles\" -DCMAKE_INSTALL_PREFIX=/${mingw} -DENABLE_TESTING=1 .." |
||||||
|
make_command="make" |
||||||
|
else |
||||||
|
cmake_command="cmake -DENABLE_TESTING=1 .." |
||||||
|
fi |
||||||
|
fi |
||||||
|
|
||||||
|
if [ "${make_command}" == "" ]; then |
||||||
|
make_command="make -j 2" |
||||||
|
fi |
||||||
|
|
||||||
|
cd libclangmm || echo "Can't cd into libclangmm" |
||||||
|
git submodule update --init --recursive # appveyor doesn't checkout recursively |
||||||
|
mkdir -p build && cd build || echo "Error making build directory" |
||||||
|
sh -c "${cmake_command}" || echo "Cmake configuration failed" |
||||||
|
exec sh -c "${make_command}" |
||||||
@ -0,0 +1,36 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
function linux () { |
||||||
|
cd ci || exit |
||||||
|
if [ "${script}" == "clean" ]; then |
||||||
|
sudo rm ../build -rf |
||||||
|
return 0 |
||||||
|
fi |
||||||
|
sudo docker run -it \ |
||||||
|
-e "CXX=$CXX" \ |
||||||
|
-e "CC=$CC" \ |
||||||
|
-e "make_command=$make_command" \ |
||||||
|
-e "cmake_command=$cmake_command" \ |
||||||
|
-e "distribution=$distribution" \ |
||||||
|
-v "$PWD/../:/libclangmm" \ |
||||||
|
--entrypoint="/libclangmm/ci/${script}.sh" \ |
||||||
|
"cppit/jucipp:$distribution" |
||||||
|
} |
||||||
|
|
||||||
|
function windows () { |
||||||
|
export PATH="/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/WINDOWS/system32:/c/WINDOWS:/c/WINDOWS/System32/Wbem:/c/WINDOWS/System32/WindowsPowerShell/v1.0:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl" |
||||||
|
bf=$(cygpath ${APPVEYOR_BUILD_FOLDER}) |
||||||
|
cd "$bf" || (echo "Error changing directory"; return 1) |
||||||
|
if [ "${script}" == "clean" ]; then |
||||||
|
sudo rm "./build" -rf |
||||||
|
return 0 |
||||||
|
fi |
||||||
|
sh -c "${bf}/ci/${script}.sh" |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
if [ "$TRAVIS_OS_NAME" == "" ]; then |
||||||
|
TRAVIS_OS_NAME=windows |
||||||
|
fi |
||||||
|
|
||||||
|
$TRAVIS_OS_NAME |
||||||
@ -0,0 +1,8 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
if [ "${make_command}" == "" ]; then |
||||||
|
make_command="make -j 2" |
||||||
|
fi |
||||||
|
|
||||||
|
cd libclangmm/build || exit |
||||||
|
exec sh -c "scan-build -o ../html_${distribution} --status-bugs ${make_command}" |
||||||
@ -0,0 +1,42 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
function linux () { |
||||||
|
sudo apt-get update |
||||||
|
sudo apt-get purge lxc-docker |
||||||
|
sudo apt-get install --yes --force-yes -o Dpkg::Options::="--force-confnew" linux-image-extra-$(uname -r) docker-engine |
||||||
|
sudo service docker stop || exit |
||||||
|
sudo rm -rf /var/lib/docker || exit |
||||||
|
sudo service docker start || exit |
||||||
|
} |
||||||
|
|
||||||
|
function brew_install() { |
||||||
|
(brew outdated "$1" || brew install $1) || (echo "Error installing $1"; return 1) |
||||||
|
} |
||||||
|
|
||||||
|
function osx () { |
||||||
|
brew update || return 1 |
||||||
|
brew uninstall llvm --force || return 1 |
||||||
|
brew upgrade --all || return 1 |
||||||
|
brew update || return 1 |
||||||
|
brew upgrade --all || return 1 |
||||||
|
brew install --with-clang llvm |
||||||
|
brew_install "boost" || return 1 |
||||||
|
brew_install "aspell" || return 1 |
||||||
|
brew_install "clang-format" || return 1 |
||||||
|
brew_install "pkg-config" || return 1 |
||||||
|
brew_install "gtksourceviewmm3" || return 1 |
||||||
|
} |
||||||
|
|
||||||
|
function windows () { |
||||||
|
arch=x86_64 |
||||||
|
if [ "$PLATFORM" == "x86" ]; then |
||||||
|
arch=i686 |
||||||
|
fi |
||||||
|
sh -c "pacman -S --noconfirm git mingw-w64-${arch}-cmake make mingw-w64-${arch}-toolchain mingw-w64-${arch}-clang mingw-w64-${arch}-gtkmm3 mingw-w64-${arch}-gtksourceviewmm3 mingw-w64-${arch}-boost mingw-w64-${arch}-aspell mingw-w64-${arch}-aspell-en mingw-w64-${arch}-libgit2" |
||||||
|
} |
||||||
|
|
||||||
|
if [ "$TRAVIS_OS_NAME" == "" ]; then |
||||||
|
TRAVIS_OS_NAME=windows |
||||||
|
fi |
||||||
|
|
||||||
|
$TRAVIS_OS_NAME |
||||||
Loading…
Reference in new issue