mirror of
https://github.com/CLIUtils/CLI11.git
synced 2025-05-08 15:53:51 +00:00
Dropping cmake and clang 5 since they are now in Travis (#89)
* Dropping cmake and clang 5 since they are now in Travis * Dropping pathlib since it is now unused * Doxy build * Folding output and fixing ccache
This commit is contained in:
parent
b4b7d991f6
commit
2ef176e86c
@ -1,6 +1,6 @@
|
|||||||
branches:
|
branches:
|
||||||
except:
|
only:
|
||||||
- gh-pages
|
- master
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- set PATH=C:\Python36;%PATH%
|
- set PATH=C:\Python36;%PATH%
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
CMAKE_VERSION=3.9.6
|
|
||||||
CMAKE_MVERSION=${CMAKE_VERSION%.*}
|
|
||||||
# Non Bash version:
|
|
||||||
# echo CMAKE_MVERSION=`$var | awk -F"." '{ print $1"."$2 }'`
|
|
||||||
|
|
||||||
if [ "$TRAVIS_OS_NAME" = "linux" ] ; then CMAKE_URL="https://cmake.org/files/v${CMAKE_MVERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.tar.gz" ; fi
|
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ] ; then CMAKE_URL="https://cmake.org/files/v$CMAKE_MVERSION/cmake-$CMAKE_VERSION-Darwin-x86_64.tar.gz" ; fi
|
|
||||||
cd "${DEPS_DIR}"
|
|
||||||
|
|
||||||
if [[ ! -f "${DEPS_DIR}/cmake/bin/cmake" ]] ; then
|
|
||||||
echo "Downloading CMake $CMAKE_VERSION"
|
|
||||||
mkdir -p cmake
|
|
||||||
travis_retry wget --no-check-certificate --quiet -O - "${CMAKE_URL}" | tar --strip-components=1 -xz -C cmake
|
|
||||||
fi
|
|
||||||
|
|
||||||
export PATH="${DEPS_DIR}/cmake/bin:${PATH}"
|
|
||||||
cd "${TRAVIS_BUILD_DIR}"
|
|
@ -1,3 +1,5 @@
|
|||||||
|
set -evx
|
||||||
|
|
||||||
DOXYGEN_URL="ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.13.src.tar.gz"
|
DOXYGEN_URL="ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.13.src.tar.gz"
|
||||||
cd "${DEPS_DIR}"
|
cd "${DEPS_DIR}"
|
||||||
|
|
||||||
@ -15,3 +17,6 @@ fi
|
|||||||
export PATH="${DEPS_DIR}/doxygen/build/bin:${PATH}"
|
export PATH="${DEPS_DIR}/doxygen/build/bin:${PATH}"
|
||||||
|
|
||||||
cd "${TRAVIS_BUILD_DIR}"
|
cd "${TRAVIS_BUILD_DIR}"
|
||||||
|
|
||||||
|
set +evx
|
||||||
|
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
set -evx
|
||||||
|
|
||||||
LCOV_URL="http://ftp.de.debian.org/debian/pool/main/l/lcov/lcov_1.13.orig.tar.gz"
|
LCOV_URL="http://ftp.de.debian.org/debian/pool/main/l/lcov/lcov_1.13.orig.tar.gz"
|
||||||
cd "${DEPS_DIR}"
|
cd "${DEPS_DIR}"
|
||||||
|
|
||||||
@ -9,3 +11,5 @@ fi
|
|||||||
|
|
||||||
export PATH="${DEPS_DIR}/lcov/bin:${PATH}"
|
export PATH="${DEPS_DIR}/lcov/bin:${PATH}"
|
||||||
cd "${TRAVIS_BUILD_DIR}"
|
cd "${TRAVIS_BUILD_DIR}"
|
||||||
|
|
||||||
|
set +evx
|
||||||
|
@ -1,11 +1,21 @@
|
|||||||
#!/usr/bin/env sh
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
echo -en "travis_fold:start:script.build\\r"
|
||||||
|
echo "Building with tidy on..."
|
||||||
set -evx
|
set -evx
|
||||||
|
|
||||||
mkdir build-tidy || true
|
mkdir -p build-tidy
|
||||||
cd build-tidy
|
cd build-tidy
|
||||||
CXX_FLAGS="-Werror -Wall -Wextra -pedantic -std=c++11" cmake .. -DCLANG_TIDY_FIX=ON
|
CXX_FLAGS="-Werror -Wall -Wextra -pedantic -std=c++11" cmake .. -DCLANG_TIDY_FIX=ON
|
||||||
cmake --build .
|
cmake --build .
|
||||||
|
|
||||||
|
set -evx
|
||||||
|
echo -en "travis_fold:end:script.build\\r"
|
||||||
|
echo -en "travis_fold:start:script.compare\\r"
|
||||||
|
echo "Checking git diff..."
|
||||||
|
set -evx
|
||||||
|
|
||||||
git diff --exit-code --color
|
git diff --exit-code --color
|
||||||
|
|
||||||
set +evx
|
set +evx
|
||||||
|
echo -en "travis_fold:end:script.compare\\r"
|
||||||
|
20
.ci/make_and_test.sh
Executable file
20
.ci/make_and_test.sh
Executable file
@ -0,0 +1,20 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
echo -en "travis_fold:start:script.build\\r"
|
||||||
|
echo "Building..."
|
||||||
|
set -evx
|
||||||
|
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
cmake .. -DCLI_CXX_STD=$1 -DCLI_SINGLE_FILE_TESTS=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
|
||||||
|
cmake --build . -- -j2
|
||||||
|
|
||||||
|
set +evx
|
||||||
|
echo -en "travis_fold:end:script.build\\r"
|
||||||
|
echo -en "travis_fold:start:script.test\\r"
|
||||||
|
echo "Testing..."
|
||||||
|
set -evx
|
||||||
|
|
||||||
|
ctest --output-on-failure
|
||||||
|
|
||||||
|
set +evx
|
||||||
|
echo -en "travis_fold:end:script.test\\r"
|
@ -1,18 +0,0 @@
|
|||||||
cd "${DEPS_DIR}"
|
|
||||||
mkdir -p extrabin
|
|
||||||
cd extrabin
|
|
||||||
|
|
||||||
if [ "$CXX" = "g++" ] ; then
|
|
||||||
ln -s `which gcc-$COMPILER` gcc
|
|
||||||
ln -s `which g++-$COMPILER` g++
|
|
||||||
ln -s `which gcov-$COMPILER` gcov
|
|
||||||
else
|
|
||||||
ln -s `which clang-$COMPILER` clang
|
|
||||||
ln -s `which clang++-$COMPILER` clang++
|
|
||||||
ln -s `which clang-format-$COMPILER` clang-format
|
|
||||||
ln -s `which clang-tidy-$COMPILER` clang-tidy
|
|
||||||
fi
|
|
||||||
|
|
||||||
export PATH="${DEPS_DIR}/extrabin":$PATH
|
|
||||||
|
|
||||||
cd "${TRAVIS_BUILD_DIR}"
|
|
@ -1,3 +1,7 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
echo -en "travis_fold:start:script.build\\r"
|
||||||
|
echo "Building..."
|
||||||
set -evx
|
set -evx
|
||||||
|
|
||||||
cd ${TRAVIS_BUILD_DIR}
|
cd ${TRAVIS_BUILD_DIR}
|
||||||
@ -7,8 +11,17 @@ cmake .. -DCLI_SINGLE_FILE_TESTS=OFF -DCLI_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=Cover
|
|||||||
cmake --build . -- -j2
|
cmake --build . -- -j2
|
||||||
cmake --build . --target CLI_coverage
|
cmake --build . --target CLI_coverage
|
||||||
|
|
||||||
|
set +evx
|
||||||
|
echo -en "travis_fold:end:script.build\\r"
|
||||||
|
echo -en "travis_fold:start:script.lcov\\r"
|
||||||
|
echo "Capturing and uploading LCov..."
|
||||||
|
set -evx
|
||||||
|
|
||||||
lcov --directory . --capture --output-file coverage.info # capture coverage info
|
lcov --directory . --capture --output-file coverage.info # capture coverage info
|
||||||
lcov --remove coverage.info '*/tests/*' '*/examples/*' '*gtest*' '*gmock*' '/usr/*' --output-file coverage.info # filter out system
|
lcov --remove coverage.info '*/tests/*' '*/examples/*' '*gtest*' '*gmock*' '/usr/*' --output-file coverage.info # filter out system
|
||||||
lcov --list coverage.info #debug info
|
lcov --list coverage.info #debug info
|
||||||
# Uploading report to CodeCov
|
# Uploading report to CodeCov
|
||||||
bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
|
bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
|
||||||
|
|
||||||
|
set +evx
|
||||||
|
echo -en "travis_fold:end:script.lcov\\r"
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
#!/usr/bin/env sh
|
|
||||||
set -evx
|
|
||||||
|
|
||||||
mkdir build || true
|
|
||||||
cd build
|
|
||||||
cmake .. -DCLI_CXX_STD=11 -DCLI_SINGLE_FILE_TESTS=ON -DCMAKE_BUILD_TYPE=Debug
|
|
||||||
cmake --build . -- -j2
|
|
||||||
ctest --output-on-failure
|
|
||||||
if [ -n "$CLI_CXX_STD" ] && [ "$CLI_CXX_STD" -ge "14" ] ; then
|
|
||||||
cmake .. -DCLI_CXX_STD=14 -DCLI_SINGLE_FILE_TESTS=ON -DCMAKE_BUILD_TYPE=Debug
|
|
||||||
cmake --build . -- -j2
|
|
||||||
ctest --output-on-failure
|
|
||||||
fi
|
|
||||||
if [ -n "$CLI_CXX_STD" ] && [ "$CLI_CXX_STD" -ge "17" ] ; then
|
|
||||||
cmake .. -DCLI_CXX_STD=17 -DCLI_SINGLE_FILE_TESTS=ON -DCMAKE_BUILD_TYPE=Debug
|
|
||||||
cmake --build . -- -j2
|
|
||||||
ctest --output-on-failure
|
|
||||||
fi
|
|
||||||
|
|
||||||
set +evx
|
|
101
.travis.yml
101
.travis.yml
@ -1,55 +1,54 @@
|
|||||||
language: cpp
|
language: cpp
|
||||||
sudo: false
|
sudo: false
|
||||||
dist: trusty
|
dist: trusty
|
||||||
|
|
||||||
|
# Exclude ghpages,
|
||||||
|
# but even better, don't build branch and PR, just PR
|
||||||
branches:
|
branches:
|
||||||
exclude:
|
only:
|
||||||
- gh-pages
|
- master
|
||||||
|
|
||||||
cache:
|
cache:
|
||||||
|
ccache: true
|
||||||
|
apt: true
|
||||||
directories:
|
directories:
|
||||||
- "${TRAVIS_BUILD_DIR}/deps/cmake"
|
|
||||||
- "${TRAVIS_BUILD_DIR}/deps/doxygen"
|
- "${TRAVIS_BUILD_DIR}/deps/doxygen"
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
|
# Default clang
|
||||||
- compiler: clang
|
- compiler: clang
|
||||||
addons:
|
|
||||||
apt:
|
# Check style/tidy
|
||||||
sources:
|
- compiler: clang
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
- llvm-toolchain-trusty-5.0
|
|
||||||
packages:
|
|
||||||
- clang++-5.0
|
|
||||||
env:
|
|
||||||
- COMPILER=5.0
|
|
||||||
- CLI_CXX_STD=14
|
|
||||||
- compiler: clang
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- clang-3.9
|
|
||||||
- clang-format-3.9
|
|
||||||
- clang-tidy-3.9
|
|
||||||
env:
|
|
||||||
- COMPILER=3.9
|
|
||||||
- CLI_CXX_STD=14
|
|
||||||
script:
|
script:
|
||||||
- cd "${TRAVIS_BUILD_DIR}"
|
- cd "${TRAVIS_BUILD_DIR}"
|
||||||
- scripts/check_style.sh
|
- scripts/check_style.sh
|
||||||
- ".ci/check_tidy.sh"
|
- .ci/check_tidy.sh
|
||||||
|
|
||||||
|
# Docs and clang 3.5
|
||||||
- compiler: clang
|
- compiler: clang
|
||||||
|
env:
|
||||||
|
- DEPLOYMAT=yes
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
packages:
|
packages:
|
||||||
- clang-3.5
|
- clang-3.5
|
||||||
env:
|
install:
|
||||||
- COMPILER=3.5
|
- export CC=clang-3.5
|
||||||
- DEPLOY_MAT=yes
|
- export CXX=clang++-3.5
|
||||||
- DOXYFILE=$TRAVIS_BUILD_DIR/docs/Doxyfile
|
script:
|
||||||
|
- .ci/make_and_test.sh 11
|
||||||
after_success:
|
after_success:
|
||||||
|
- export DOXYFILE=$TRAVIS_BUILD_DIR/docs/Doxyfile
|
||||||
- |
|
- |
|
||||||
if [ "${TRAVIS_BRANCH}" == "master" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ]
|
if [ "${TRAVIS_BRANCH}" == "master" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ]
|
||||||
then
|
then
|
||||||
echo "Updating docs" && cd $TRAVIS_BUILD_DIR && .ci/build_docs.sh
|
. .ci/build_doxygen.sh
|
||||||
|
.ci/build_docs.sh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# GCC 6 and Coverage
|
||||||
- compiler: gcc
|
- compiler: gcc
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
@ -59,24 +58,27 @@ matrix:
|
|||||||
- g++-6
|
- g++-6
|
||||||
- curl
|
- curl
|
||||||
- lcov
|
- lcov
|
||||||
env:
|
install:
|
||||||
- COMPILER=6
|
- export CC=gcc-6
|
||||||
- CLI_CXX_STD=14
|
- export CXX=g++-6
|
||||||
before_install:
|
|
||||||
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
|
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
|
||||||
- cd $TRAVIS_BUILD_DIR
|
- cd $TRAVIS_BUILD_DIR
|
||||||
- ". .ci/build_lcov.sh"
|
- ". .ci/build_lcov.sh"
|
||||||
- ".ci/run_codecov.sh"
|
- ".ci/run_codecov.sh"
|
||||||
|
|
||||||
|
# GCC 4.7 and Conan
|
||||||
- compiler: gcc
|
- compiler: gcc
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
packages:
|
packages:
|
||||||
- g++-4.7
|
- g++-4.7
|
||||||
env:
|
install:
|
||||||
- COMPILER=4.7
|
- export CC=gcc-4.7
|
||||||
before_install:
|
- export CXX=g++-4.7
|
||||||
- python -m pip install --user conan
|
- python -m pip install --user conan
|
||||||
- conan user
|
- conan user
|
||||||
|
script:
|
||||||
|
- .ci/make_and_test.sh 11
|
||||||
after_success:
|
after_success:
|
||||||
- conan create . CLIUtils/stable
|
- conan create . CLIUtils/stable
|
||||||
- |
|
- |
|
||||||
@ -86,33 +88,28 @@ matrix:
|
|||||||
conan user -p ${BINFROG_API_KEY} -r origin henryiii
|
conan user -p ${BINFROG_API_KEY} -r origin henryiii
|
||||||
conan upload "*" -c -r origin --all
|
conan upload "*" -c -r origin --all
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# macOS and clang
|
||||||
- os: osx
|
- os: osx
|
||||||
compiler: clang
|
compiler: clang
|
||||||
before_install:
|
install:
|
||||||
- brew update
|
- brew update
|
||||||
- echo 'brew "python"' > Brewfile
|
- echo 'brew "python"' > Brewfile
|
||||||
- echo 'brew "conan"' >> Brewfile
|
- echo 'brew "conan"' >> Brewfile
|
||||||
|
- echo 'brew "ccache"' >> Brewfile
|
||||||
- brew bundle
|
- brew bundle
|
||||||
- python -m ensurepip --user
|
- python -m ensurepip --user
|
||||||
- conan user
|
- conan user
|
||||||
after_success:
|
after_success:
|
||||||
- conan create . CLIUtils/CLI11
|
- conan create . CLIUtils/CLI11
|
||||||
install:
|
|
||||||
- python -c 'import sys; print(sys.version_info[:])'
|
install: skip
|
||||||
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
|
|
||||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then cd $TRAVIS_BUILD_DIR && . .ci/prepare_altern.sh
|
|
||||||
; fi
|
|
||||||
- if [ "$TRAVIS_OS_NAME" = "linux" ] ; then cd $TRAVIS_BUILD_DIR && . .ci/build_cmake.sh
|
|
||||||
; fi
|
|
||||||
- if [ "$TRAVIS_OS_NAME" = "linux" ] ; then cd $TRAVIS_BUILD_DIR && . .ci/build_doxygen.sh
|
|
||||||
; fi
|
|
||||||
- cd "${DEPS_DIR}"
|
|
||||||
- if [ "$(python -c 'import sys; print(sys.version_info[0])')" = "2" ] ; then python
|
|
||||||
-m pip install --user pathlib ; fi
|
|
||||||
- cmake --version
|
|
||||||
script:
|
script:
|
||||||
- cd "${TRAVIS_BUILD_DIR}"
|
- .ci/make_and_test.sh 11
|
||||||
- ".ci/travis.sh"
|
- .ci/make_and_test.sh 14
|
||||||
|
|
||||||
|
|
||||||
deploy:
|
deploy:
|
||||||
provider: releases
|
provider: releases
|
||||||
api_key:
|
api_key:
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
|
|
||||||
# Requires pathlib on python 2
|
|
||||||
|
|
||||||
from __future__ import print_function, unicode_literals
|
from __future__ import print_function, unicode_literals
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
Loading…
x
Reference in New Issue
Block a user