diff --git a/appveyor.sh b/appveyor.sh new file mode 100755 index 0000000..d14530b --- /dev/null +++ b/appveyor.sh @@ -0,0 +1,7 @@ +cd ${APPVEYOR_BUILD_FOLDER} +git submodule update --init --recursive +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" + diff --git a/appveyor.yml b/appveyor.yml index 9be8a56..8f4945c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -3,13 +3,13 @@ platform: environment: MSYSTEM: MSYS + CTEST_OUTPUT_ON_FAILURE: 1 before_build: - - C:\msys64\usr\bin\pacman --noconfirm --ask 20 --sync --refresh --refresh --sysupgrade --sysupgrade - - C:\msys64\usr\bin\pacman --noconfirm --sync --refresh --refresh pacman - - C:\msys64\usr\bin\pacman --noconfirm --sync --refresh --refresh git - - C:\msys64\usr\bin\bash -lc "$(cygpath ${APPVEYOR_BUILD_FOLDER})/ci/update_ci.sh" + - 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 mingw-w64-x86_64-gtkmm3 mingw-w64-x86_64-gtksourceviewmm3 mingw-w64-x86_64-boost mingw-w64-x86_64-aspell mingw-w64-x86_64-aspell-en mingw-w64-x86_64-libgit2 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" + - C:\msys64\usr\bin\bash -lc "$(cygpath ${APPVEYOR_BUILD_FOLDER})/appveyor.sh" diff --git a/ci/compile.sh b/ci/compile.sh deleted file mode 100755 index d1c9ad3..0000000 --- a/ci/compile.sh +++ /dev/null @@ -1,25 +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 jucipp || echo "Can't cd into jucipp" -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}" diff --git a/ci/execute.sh b/ci/execute.sh deleted file mode 100755 index 18df1d6..0000000 --- a/ci/execute.sh +++ /dev/null @@ -1,46 +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/../:/jucipp" \ - --entrypoint="/jucipp/ci/${script}.sh" \ - "cppit/jucipp:$distribution" -} - -#TODO Should run compile/install instructions for osx -function osx () { - cd .. || (echo "Error changing directory";return 1) - if [ "${script}" == "clean" ]; then - sudo rm -rf "./jucipp/build" - return 0 - fi - sh -c "./jucipp/ci/${script}.sh" || return 1 -} - -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 diff --git a/ci/static_analysis.sh b/ci/static_analysis.sh deleted file mode 100755 index bdd34f7..0000000 --- a/ci/static_analysis.sh +++ /dev/null @@ -1,15 +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 jucipp || echo "Can't cd into jucipp" -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}" diff --git a/ci/update_ci.sh b/ci/update_ci.sh deleted file mode 100755 index 93ebb0e..0000000 --- a/ci/update_ci.sh +++ /dev/null @@ -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 \ No newline at end of file