mirror of
https://github.com/open-source-parsers/jsoncpp.git
synced 2025-05-03 07:52:28 +02:00
Merge pull request #955 from baylesj/yaml-cleanups
Modernize Travis and Appveyor configs
This commit is contained in:
commit
101d4797db
52
.travis.yml
52
.travis.yml
@ -1,10 +1,9 @@
|
|||||||
# Build matrix / environment variables are explained on:
|
# Build matrix / environment variables are explained on:
|
||||||
# http://about.travis-ci.org/docs/user/build-configuration/
|
# http://about.travis-ci.org/docs/user/build-configuration/
|
||||||
# This file can be validated on:
|
# This file can be validated on: http://www.yamllint.com/
|
||||||
# http://lint.travis-ci.org/
|
# Or using the Ruby based travel command line tool:
|
||||||
# See also
|
# gem install travis --no-rdoc --no-ri
|
||||||
# http://stackoverflow.com/questions/22111549/travis-ci-with-clang-3-4-and-c11/30925448#30925448
|
# travis lint .travis.yml
|
||||||
# to allow C++11, though we are not yet building with -std=c++11
|
|
||||||
language: cpp
|
language: cpp
|
||||||
sudo: false
|
sudo: false
|
||||||
addons:
|
addons:
|
||||||
@ -15,12 +14,10 @@ addons:
|
|||||||
update: false # do not update homebrew by default
|
update: false # do not update homebrew by default
|
||||||
apt:
|
apt:
|
||||||
sources:
|
sources:
|
||||||
#- ubuntu-toolchain-r-test
|
- ubuntu-toolchain-r-test
|
||||||
- llvm-toolchain-precise-3.5
|
- llvm-toolchain-xenial-8
|
||||||
packages:
|
packages:
|
||||||
#- gcc-4.9
|
- clang-8
|
||||||
#- g++-4.9
|
|
||||||
- clang-3.5
|
|
||||||
- valgrind
|
- valgrind
|
||||||
matrix:
|
matrix:
|
||||||
allow_failures:
|
allow_failures:
|
||||||
@ -28,21 +25,21 @@ matrix:
|
|||||||
include:
|
include:
|
||||||
- name: Mac clang meson static release testing
|
- name: Mac clang meson static release testing
|
||||||
os: osx
|
os: osx
|
||||||
osx_image: xcode9.4
|
osx_image: xcode10.2
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env:
|
env:
|
||||||
CXX="clang++-3.5"
|
CXX="clang++"
|
||||||
CC="clang-3.5"
|
CC="clang"
|
||||||
LIB_TYPE=static
|
LIB_TYPE=static
|
||||||
BUILD_TYPE=release
|
BUILD_TYPE=release
|
||||||
script: ./.travis_scripts/meson_builder.sh
|
script: ./.travis_scripts/meson_builder.sh
|
||||||
- name: trusty clang meson static release testing
|
- name: Linux xenial clang meson static release testing
|
||||||
os: linux
|
os: linux
|
||||||
dist: trusty
|
dist: xenial
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env:
|
env:
|
||||||
CXX="clang++-3.5"
|
CXX="clang++"
|
||||||
CC="clang-3.5"
|
CC="clang"
|
||||||
LIB_TYPE=static
|
LIB_TYPE=static
|
||||||
BUILD_TYPE=release
|
BUILD_TYPE=release
|
||||||
# before_install and install steps only needed for linux meson builds
|
# before_install and install steps only needed for linux meson builds
|
||||||
@ -51,27 +48,18 @@ matrix:
|
|||||||
install:
|
install:
|
||||||
- source ./.travis_scripts/travis.install.${TRAVIS_OS_NAME}.sh
|
- source ./.travis_scripts/travis.install.${TRAVIS_OS_NAME}.sh
|
||||||
script: ./.travis_scripts/meson_builder.sh
|
script: ./.travis_scripts/meson_builder.sh
|
||||||
- name: xenial gcc cmake coverage
|
- name: Linux xenial gcc cmake coverage
|
||||||
os: linux
|
os: linux
|
||||||
dist: xenial
|
dist: xenial
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env:
|
env:
|
||||||
CXX=g++
|
CXX=g++
|
||||||
CC=gcc
|
CC=gcc
|
||||||
DO_Coverage=ON
|
DO_Coverage=ON
|
||||||
BUILD_TOOL="Unix Makefiles"
|
BUILD_TOOL="Unix Makefiles"
|
||||||
BUILD_TYPE=Debug
|
BUILD_TYPE=Debug
|
||||||
LIB_TYPE=shared
|
LIB_TYPE=shared
|
||||||
DESTDIR=/tmp/cmake_json_cpp
|
DESTDIR=/tmp/cmake_json_cpp
|
||||||
script: ./.travis_scripts/cmake_builder.sh
|
script: ./.travis_scripts/cmake_builder.sh
|
||||||
# Valgrind has too many false positives from the python wrapping. Need a good suppression file
|
|
||||||
# - name: xenial gcc cmake coverage
|
|
||||||
# os: linux
|
|
||||||
# dist: xenial
|
|
||||||
# compiler: gcc
|
|
||||||
# env: DO_MemCheck=ON CXX=/usr/bin/g++ BUILD_TOOL="Unix Makefiles" BUILD_TYPE=Debug LIB_TYPE=shared DESTDIR=/tmp/cmake_json_cpp
|
|
||||||
# script: ./.travis_scripts/cmake_builder.sh
|
|
||||||
notifications:
|
notifications:
|
||||||
email: false
|
email: false
|
||||||
|
|
||||||
|
|
||||||
|
@ -12,10 +12,10 @@
|
|||||||
# Optional environmental variables
|
# Optional environmental variables
|
||||||
# - DESTDIR <- used for setting the install prefix
|
# - DESTDIR <- used for setting the install prefix
|
||||||
# - BUILD_TOOL=["Unix Makefile"|"Ninja"]
|
# - BUILD_TOOL=["Unix Makefile"|"Ninja"]
|
||||||
# - BUILDNAME <-- how to identify this build on the dashboard
|
# - BUILDNAME <- how to identify this build on the dashboard
|
||||||
# - DO_MemCheck <- if set, try to use valgrind
|
# - DO_MemCheck <- if set, try to use valgrind
|
||||||
# - DO_Coverage <- if set, try to do dashboard coverage testing
|
# - DO_Coverage <- if set, try to do dashboard coverage testing
|
||||||
#
|
#
|
||||||
|
|
||||||
env_set=1
|
env_set=1
|
||||||
if ${BUILD_TYPE+false}; then
|
if ${BUILD_TYPE+false}; then
|
||||||
@ -78,7 +78,7 @@ if ! ${DO_MemCheck+false}; then
|
|||||||
valgrind --version
|
valgrind --version
|
||||||
CTEST_TESTING_OPTION="-D ExperimentalMemCheck"
|
CTEST_TESTING_OPTION="-D ExperimentalMemCheck"
|
||||||
else
|
else
|
||||||
# - DO_Coverage <- if set, try to do dashboard coverage testing
|
# - DO_Coverage <- if set, try to do dashboard coverage testing
|
||||||
if ! ${DO_Coverage+false}; then
|
if ! ${DO_Coverage+false}; then
|
||||||
export CXXFLAGS="-fprofile-arcs -ftest-coverage"
|
export CXXFLAGS="-fprofile-arcs -ftest-coverage"
|
||||||
export LDFLAGS="-fprofile-arcs -ftest-coverage"
|
export LDFLAGS="-fprofile-arcs -ftest-coverage"
|
||||||
@ -117,14 +117,14 @@ cd "${_BUILD_DIR_NAME}"
|
|||||||
ctest -C ${BUILD_TYPE} -D ExperimentalStart -D ExperimentalConfigure -D ExperimentalBuild ${CTEST_TESTING_OPTION} -D ExperimentalSubmit
|
ctest -C ${BUILD_TYPE} -D ExperimentalStart -D ExperimentalConfigure -D ExperimentalBuild ${CTEST_TESTING_OPTION} -D ExperimentalSubmit
|
||||||
# Final step is to verify that installation succeeds
|
# Final step is to verify that installation succeeds
|
||||||
cmake --build . --config ${BUILD_TYPE} --target install
|
cmake --build . --config ${BUILD_TYPE} --target install
|
||||||
|
|
||||||
if [ "${DESTDIR}" != "/usr/local" ]; then
|
if [ "${DESTDIR}" != "/usr/local" ]; then
|
||||||
${_BUILD_EXE} install
|
${_BUILD_EXE} install
|
||||||
fi
|
fi
|
||||||
cd -
|
cd -
|
||||||
|
|
||||||
if ${CLEANUP+false}; then
|
if ${CLEANUP+false}; then
|
||||||
echo "Skipping cleanup: build directory will persist."
|
echo "Skipping cleanup: build directory will persist."
|
||||||
else
|
else
|
||||||
rm -r "${_BUILD_DIR_NAME}"
|
rm -r "${_BUILD_DIR_NAME}"
|
||||||
fi
|
fi
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
set -vex
|
set -vex
|
||||||
#before_install: pyenv install 3.5.4 && pyenv global 3.5.4
|
|
||||||
#before_install: pyenv global 3.6
|
|
||||||
# https://docs.travis-ci.com/user/languages/python/
|
|
||||||
# "for Trusty, this means 2.7.6 and 3.4.3"
|
|
||||||
|
|
||||||
pyenv global 3.6
|
# Preinstalled versions of python are dependent on which Ubuntu distribution
|
||||||
|
# you are running. The below version needs to be updated whenever we roll
|
||||||
|
# the Ubuntu version used in Travis.
|
||||||
|
# https://docs.travis-ci.com/user/languages/python/
|
||||||
|
|
||||||
|
pyenv global 3.7.1
|
||||||
|
@ -1,5 +1 @@
|
|||||||
# NOTHING TO DO HERE
|
# NOTHING TO DO HERE
|
||||||
# set -vex
|
|
||||||
|
|
||||||
#brew install pyenv
|
|
||||||
#which pyenv
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
set -vex
|
set -vex
|
||||||
|
|
||||||
wget https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-linux.zip
|
wget https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-linux.zip
|
||||||
unzip -q ninja-linux.zip -d build
|
unzip -q ninja-linux.zip -d build
|
||||||
|
|
||||||
pip3 install meson
|
pip3 install meson
|
||||||
|
@ -1,5 +1 @@
|
|||||||
# NOTHING TO DO HERE
|
# NOTHING TO DO HERE
|
||||||
# set -vex
|
|
||||||
|
|
||||||
#python3 -m venv venv
|
|
||||||
#source venv/bin/activate
|
|
||||||
|
20
appveyor.yml
20
appveyor.yml
@ -2,19 +2,25 @@ clone_folder: c:\projects\jsoncpp
|
|||||||
|
|
||||||
environment:
|
environment:
|
||||||
matrix:
|
matrix:
|
||||||
- CMAKE_GENERATOR: Visual Studio 12 2013
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||||
- CMAKE_GENERATOR: Visual Studio 12 2013 Win64
|
CMAKE_GENERATOR: Visual Studio 14 2015
|
||||||
- CMAKE_GENERATOR: Visual Studio 14 2015
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||||
- CMAKE_GENERATOR: Visual Studio 14 2015 Win64
|
CMAKE_GENERATOR: Visual Studio 14 2015 Win64
|
||||||
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
CMAKE_GENERATOR: Visual Studio 15 2017
|
||||||
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
CMAKE_GENERATOR: Visual Studio 15 2017 Win64
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- cmake --version
|
- cmake --version
|
||||||
- cd c:\projects\jsoncpp
|
- cd c:\projects\jsoncpp
|
||||||
- cmake -G "%CMAKE_GENERATOR%" -DCMAKE_INSTALL_PREFIX:PATH=%CD:\=/%/install -DBUILD_SHARED_LIBS:BOOL=ON .
|
- cmake -G "%CMAKE_GENERATOR%" -DCMAKE_INSTALL_PREFIX:PATH=%CD:\=/%/install -DBUILD_SHARED_LIBS:BOOL=ON .
|
||||||
# Use ctest to make a dashboard build ctest -D Experimental(Start|Update|Configure|Build|Test|Coverage|MemCheck|Submit)
|
# Use ctest to make a dashboard build:
|
||||||
#NOTE Testing on window is not yet finished - ctest -C Release -D ExperimentalStart -D ExperimentalConfigure -D ExperimentalBuild -D ExperimentalTest -D ExperimentalSubmit
|
# - ctest -D Experimental(Start|Update|Configure|Build|Test|Coverage|MemCheck|Submit)
|
||||||
|
# NOTE: Testing on window is not yet finished:
|
||||||
|
# - ctest -C Release -D ExperimentalStart -D ExperimentalConfigure -D ExperimentalBuild -D ExperimentalTest -D ExperimentalSubmit
|
||||||
- ctest -C Release -D ExperimentalStart -D ExperimentalConfigure -D ExperimentalBuild -D ExperimentalSubmit
|
- ctest -C Release -D ExperimentalStart -D ExperimentalConfigure -D ExperimentalBuild -D ExperimentalSubmit
|
||||||
# Final step is to verify that installation succeeds
|
# Final step is to verify that installation succeeds
|
||||||
- cmake --build . --config Release --target install
|
- cmake --build . --config Release --target install
|
||||||
|
|
||||||
deploy:
|
deploy:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user