Browse Source

Updated CI

merge-requests/37/head
eidheim 8 years ago
parent
commit
8e446de1f4
  1. 5
      .appveyor.sh
  2. 15
      .appveyor.yml
  3. 26
      .gitlab-ci.yml
  4. 20
      .travis.yml
  5. 2
      README.md
  6. 15
      appveyor.yml
  7. 24
      ci/compile.sh
  8. 36
      ci/execute.sh
  9. 14
      ci/static_analysis.sh
  10. 42
      ci/update_ci.sh

5
.appveyor.sh

@ -0,0 +1,5 @@
cd ${APPVEYOR_BUILD_FOLDER}
mkdir -p build
cd build
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"
exec sh -c "cmake -G\"MSYS Makefiles\" -DCMAKE_INSTALL_PREFIX=/mingw64 -DBUILD_TESTING=1 .. && make && make test"

15
.appveyor.yml

@ -0,0 +1,15 @@
platform:
- x64
environment:
MSYSTEM: MSYS
CTEST_OUTPUT_ON_FAILURE: 1
before_build:
- C:\msys64\usr\bin\pacman --noconfirm --ask 20 --sync --refresh --sysupgrade
- C:\msys64\usr\bin\pacman --noconfirm --sync --refresh pacman
- C:\msys64\usr\bin\pacman --noconfirm --sync --refresh git
- C:\msys64\usr\bin\pacman --noconfirm --needed --sync mingw-w64-x86_64-cmake make mingw-w64-x86_64-toolchain mingw-w64-x86_64-clang
build_script:
- C:\msys64\usr\bin\bash -lc "$(cygpath ${APPVEYOR_BUILD_FOLDER})/.appveyor.sh"

26
.gitlab-ci.yml

@ -0,0 +1,26 @@
.script: &compile
script:
- mkdir build
- cd build
- scan-build cmake ..
- scan-build --status-bugs make -j$(nproc)
- rm -r *
- cmake -DBUILD_TESTING=1 ..
- make -j$(nproc)
- CTEST_OUTPUT_ON_FAILURE=1 make test
ubuntu:
image: cppit/jucipp:ubuntu
<<: *compile
fedora:
image: cppit/jucipp:fedora
<<: *compile
arch:
image: cppit/jucipp:arch
<<: *compile
debian-testing:
image: cppit/jucipp:debian-testing
<<: *compile
debian:
image: cppit/jucipp:debian
<<: *compile

20
.travis.yml

@ -1,20 +0,0 @@
sudo: required
env:
- distribution: ubuntu
- distribution: fedora
- distribution: arch
- distribution: debian-testing
- distribution: debian
services:
- docker
before_install:
- ./ci/update_ci.sh
script:
- script=static_analysis ./ci/execute.sh
- script=clean ./ci/execute.sh
- script=compile CXX=g++ CC=gcc ./ci/execute.sh
- script=compile make_command="CTEST_OUTPUT_ON_FAILURE=1 make test" ./ci/execute.sh

2
README.md

@ -1,4 +1,4 @@
# libclangmm [![Build Status](https://travis-ci.org/cppit/libclangmm.svg?branch=master)](https://travis-ci.org/cppit/libclangmm) [![Build status](https://ci.appveyor.com/api/projects/status/bqcva8fovxu31yp3/branch/master?svg=true)](https://ci.appveyor.com/project/zalox/libclangmm/branch/master) # libclangmm
###### an easy-to-use C++ wrapper for libclang ###### an easy-to-use C++ wrapper for libclang

15
appveyor.yml

@ -1,15 +0,0 @@
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"

24
ci/compile.sh

@ -1,24 +0,0 @@
#!/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} -DBUILD_TESTING=1 .."
make_command="make"
else
cmake_command="cmake -DBUILD_TESTING=1 .."
fi
fi
if [ "${make_command}" == "" ]; then
make_command="make -j 2"
fi
cd libclangmm || echo "Can't cd into libclangmm"
mkdir -p build && cd build || echo "Error making build directory"
sh -c "${cmake_command}" || echo "Cmake configuration failed"
exec sh -c "${make_command}"

36
ci/execute.sh

@ -1,36 +0,0 @@
#!/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

14
ci/static_analysis.sh

@ -1,14 +0,0 @@
#!/bin/bash
if [ "${cmake_command}" == "" ]; then
cmake_command="scan-build cmake .."
fi
if [ "${make_command}" == "" ]; then
make_command="scan-build --status-bugs make -j 2"
fi
cd libclangmm || echo "Can't cd into libclangmm"
mkdir -p build && cd build || echo "Error making build directory"
sh -c "${cmake_command}" || echo "Cmake configuration failed"
exec sh -c "${make_command}"

42
ci/update_ci.sh

@ -1,42 +0,0 @@
#!/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…
Cancel
Save