mirror of
https://github.com/boostorg/parameter.git
synced 2026-01-22 05:22:31 +00:00
Compare commits
16 Commits
boost-1.75
...
boost-1.77
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
94bfc0544a | ||
|
|
91b5d79782 | ||
|
|
aeb122089c | ||
|
|
27d0bfaf8c | ||
|
|
e38b1160ae | ||
|
|
6f4cdc939d | ||
|
|
63104db02c | ||
|
|
8f1405b880 | ||
|
|
c397e90107 | ||
|
|
b3ed2d1bcf | ||
|
|
3eada7d595 | ||
|
|
9f0b903f88 | ||
|
|
187377089a | ||
|
|
983bf6bebc | ||
|
|
e16f1025d7 | ||
|
|
7d168437b7 |
164
.travis.yml
164
.travis.yml
@@ -1,10 +1,10 @@
|
||||
# Copyright 2016 Edward Diener
|
||||
# Copyright 2017 Cromwell D. Enage
|
||||
# Copyright 2021 Andrey Semashev
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://boost.org/LICENSE_1_0.txt)
|
||||
|
||||
dist: xenial
|
||||
language: cpp
|
||||
|
||||
python: "2.7"
|
||||
@@ -25,8 +25,10 @@ matrix:
|
||||
- env: BOGUS_JOB=true
|
||||
|
||||
include:
|
||||
# gcc, Linux
|
||||
- os: linux
|
||||
compiler: g++-4.4
|
||||
dist: trusty
|
||||
compiler: gcc-4.4
|
||||
env: TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98,0x
|
||||
addons:
|
||||
apt:
|
||||
@@ -36,7 +38,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-4.6
|
||||
dist: trusty
|
||||
compiler: gcc-4.6
|
||||
env: TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x
|
||||
addons:
|
||||
apt:
|
||||
@@ -46,6 +49,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: gcc-4.7
|
||||
env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
@@ -55,6 +60,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: xenial
|
||||
compiler: gcc-4.8
|
||||
env: TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
@@ -64,6 +71,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: xenial
|
||||
compiler: gcc-4.9
|
||||
env: TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
@@ -73,6 +82,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: xenial
|
||||
compiler: gcc-5
|
||||
env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14
|
||||
addons:
|
||||
apt:
|
||||
@@ -82,6 +93,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: xenial
|
||||
compiler: gcc-6
|
||||
env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
@@ -91,6 +104,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: xenial
|
||||
compiler: gcc-6
|
||||
env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z CXXSTD_DIALECT=cxxstd-dialect=gnu
|
||||
addons:
|
||||
apt:
|
||||
@@ -100,8 +115,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: g++-7
|
||||
dist: xenial
|
||||
compiler: gcc-7
|
||||
env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17
|
||||
addons:
|
||||
apt:
|
||||
@@ -111,8 +126,8 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: g++-7
|
||||
dist: xenial
|
||||
compiler: gcc-7
|
||||
env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17 CXXSTD_DIALECT=cxxstd-dialect=gnu
|
||||
addons:
|
||||
apt:
|
||||
@@ -122,8 +137,9 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-8
|
||||
env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17
|
||||
dist: xenial
|
||||
compiler: gcc-8
|
||||
env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17,2a
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
@@ -132,6 +148,31 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: bionic
|
||||
compiler: gcc-9
|
||||
env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17,2a
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-9
|
||||
sources:
|
||||
- sourceline: "ppa:ubuntu-toolchain-r/test"
|
||||
|
||||
- os: linux
|
||||
dist: focal
|
||||
compiler: gcc-10
|
||||
env: TOOLSET=gcc COMPILER=g++-10 CXXSTD=03,11,14,17,20
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-10
|
||||
sources:
|
||||
- sourceline: "ppa:ubuntu-toolchain-r/test"
|
||||
|
||||
# clang, Linux
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: clang-3.5
|
||||
env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
@@ -139,9 +180,12 @@ matrix:
|
||||
- clang-3.5
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.5
|
||||
- sourceline: "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.5 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: clang-3.6
|
||||
env: TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
@@ -149,9 +193,12 @@ matrix:
|
||||
- clang-3.6
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.6
|
||||
- sourceline: "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.6 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: clang-3.7
|
||||
env: TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
@@ -159,9 +206,12 @@ matrix:
|
||||
- clang-3.7
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.7
|
||||
- sourceline: "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.7 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
dist: xenial
|
||||
compiler: clang-3.8
|
||||
env: TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
@@ -169,9 +219,12 @@ matrix:
|
||||
- clang-3.8
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.8
|
||||
- sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.8 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
dist: xenial
|
||||
compiler: clang-3.9
|
||||
env: TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
@@ -179,10 +232,12 @@ matrix:
|
||||
- clang-3.9
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-precise-3.9
|
||||
- sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.9 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-4.0
|
||||
dist: xenial
|
||||
compiler: clang-4
|
||||
env: TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
@@ -190,10 +245,12 @@ matrix:
|
||||
- clang-4.0
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-xenial-4.0
|
||||
- sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-4.0 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-5.0
|
||||
dist: xenial
|
||||
compiler: clang-5
|
||||
env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
@@ -201,10 +258,12 @@ matrix:
|
||||
- clang-5.0
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-xenial-5.0
|
||||
- sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-5.0 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-6.0
|
||||
dist: xenial
|
||||
compiler: clang-6
|
||||
env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,1z,2a
|
||||
addons:
|
||||
apt:
|
||||
@@ -215,10 +274,12 @@ matrix:
|
||||
- libstdc++-8-dev
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-xenial-6.0
|
||||
- sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-7
|
||||
dist: xenial
|
||||
compiler: clang-7
|
||||
env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=14,1z,2a
|
||||
addons:
|
||||
apt:
|
||||
@@ -229,10 +290,12 @@ matrix:
|
||||
- libstdc++-8-dev
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-xenial-7
|
||||
- sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-8
|
||||
dist: xenial
|
||||
compiler: clang-8
|
||||
env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=14,1z,2a
|
||||
addons:
|
||||
apt:
|
||||
@@ -243,7 +306,36 @@ matrix:
|
||||
- libstdc++-8-dev
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-xenial-8
|
||||
- sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
dist: bionic
|
||||
compiler: clang-9
|
||||
env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=14,17,2a
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-9
|
||||
- libstdc++-9-dev
|
||||
sources:
|
||||
- sourceline: "ppa:ubuntu-toolchain-r/test"
|
||||
- sourceline: "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-9 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: linux
|
||||
dist: focal
|
||||
compiler: clang-10
|
||||
env: TOOLSET=clang COMPILER=clang++-10 CXXSTD=14,17,20
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-10
|
||||
- libstdc++-9-dev
|
||||
sources:
|
||||
- sourceline: "ppa:ubuntu-toolchain-r/test"
|
||||
- sourceline: "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-10 main"
|
||||
key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key"
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
@@ -258,18 +350,21 @@ matrix:
|
||||
osx_image: xcode9.4.1
|
||||
|
||||
install:
|
||||
- BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
||||
- GIT_FETCH_JOBS=8
|
||||
- BOOST_BRANCH=develop
|
||||
- if [ "$TRAVIS_BRANCH" = "master" ]; then BOOST_BRANCH=master; fi
|
||||
- cd ..
|
||||
- git clone -b $TRAVIS_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
- cd boost-root
|
||||
- git submodule update --init tools/build
|
||||
- git submodule update --init libs/config
|
||||
- git submodule update --init tools/boostdep
|
||||
- git submodule update --init libs/parameter_python
|
||||
- git submodule update --init tools/boost_install
|
||||
- git submodule update --init libs/headers
|
||||
- git submodule init tools/build
|
||||
- git submodule init tools/boostdep
|
||||
- git submodule init tools/boost_install
|
||||
- git submodule init libs/headers
|
||||
- git submodule init libs/config
|
||||
- git submodule init libs/parameter_python
|
||||
- git submodule update --jobs $GIT_FETCH_JOBS
|
||||
- cp -r $TRAVIS_BUILD_DIR/* libs/parameter
|
||||
- python tools/boostdep/depinst/depinst.py parameter
|
||||
- python tools/boostdep/depinst/depinst.py --git_args "--jobs $GIT_FETCH_JOBS" parameter
|
||||
- ./bootstrap.sh
|
||||
- ./b2 headers
|
||||
|
||||
@@ -277,9 +372,8 @@ script:
|
||||
- |-
|
||||
echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
|
||||
- ./b2 --verbose-test libs/config/test//config_info toolset=$TOOLSET cxxstd=$CXXSTD || true
|
||||
- cd libs/parameter/test
|
||||
- ../../../b2 -j`(nproc || sysctl -n hw.ncpu) 2> /dev/null` toolset=$TOOLSET cxxstd=$CXXSTD $CXXSTD_DIALECT
|
||||
- cd ../../..
|
||||
- BUILD_JOBS=`(nproc || sysctl -n hw.ncpu) 2> /dev/null`
|
||||
- ./b2 -j $BUILD_JOBS libs/parameter/test toolset=$TOOLSET cxxstd=$CXXSTD $CXXSTD_DIALECT
|
||||
|
||||
notifications:
|
||||
email:
|
||||
|
||||
@@ -1,36 +1,34 @@
|
||||
# Copyright 2019 Mike Dev
|
||||
# Generated by `boostdep --cmake parameter`
|
||||
# Copyright 2020 Peter Dimov
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt
|
||||
#
|
||||
# NOTE: CMake support for Boost.Parameter is currently experimental at best
|
||||
# and the interface is likely to change in the future
|
||||
# https://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
cmake_minimum_required( VERSION 3.5 )
|
||||
project( BoostParameter LANGUAGES CXX)
|
||||
cmake_minimum_required(VERSION 3.5...3.16)
|
||||
|
||||
option(BOOST_PARAMETER_INCLUDE_TESTS OFF "Include Boost.Parameter tests")
|
||||
project(boost_parameter VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX)
|
||||
|
||||
add_library( boost_parameter INTERFACE )
|
||||
add_library( Boost::parameter ALIAS boost_parameter )
|
||||
add_library(boost_parameter INTERFACE)
|
||||
add_library(Boost::parameter ALIAS boost_parameter)
|
||||
|
||||
target_include_directories( boost_parameter INTERFACE include )
|
||||
target_include_directories(boost_parameter INTERFACE include)
|
||||
|
||||
target_link_libraries( boost_parameter
|
||||
INTERFACE
|
||||
Boost::config
|
||||
Boost::core
|
||||
Boost::function
|
||||
Boost::fusion
|
||||
# TODO: we only need mp11 or mpl
|
||||
Boost::mp11
|
||||
Boost::mpl
|
||||
Boost::optional
|
||||
Boost::preprocessor
|
||||
Boost::type_traits
|
||||
Boost::utility
|
||||
target_link_libraries(boost_parameter
|
||||
INTERFACE
|
||||
Boost::config
|
||||
Boost::core
|
||||
Boost::function
|
||||
Boost::fusion
|
||||
Boost::mp11
|
||||
Boost::mpl
|
||||
Boost::optional
|
||||
Boost::preprocessor
|
||||
Boost::type_traits
|
||||
Boost::utility
|
||||
)
|
||||
|
||||
if(BOOST_PARAMETER_INCLUDE_TESTS)
|
||||
enable_testing()
|
||||
add_subdirectory(test)
|
||||
if(BUILD_TESTING AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/test/CMakeLists.txt")
|
||||
|
||||
add_subdirectory(test)
|
||||
|
||||
endif()
|
||||
|
||||
|
||||
26
README.md
Normal file
26
README.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# Boost.Parameter
|
||||
|
||||
Boost.Parameter, part of collection of the [Boost C++ Libraries](https://github.com/boostorg), is a header-only library that implements named parameters for functions and templates in C++.
|
||||
|
||||
### Directories
|
||||
|
||||
* **doc** - Documentation sources
|
||||
* **include** - Interface headers of Boost.Parameter
|
||||
* **test** - Boost.Parameter unit tests
|
||||
|
||||
### More information
|
||||
|
||||
* [Documentation](https://www.boost.org/libs/parameter)
|
||||
* [Report bugs](https://github.com/boostorg/parameter/issues/new). Be sure to mention Boost version, platform and compiler you're using. A small compilable code sample to reproduce the problem is always good as well.
|
||||
* Submit your patches as [pull requests](https://github.com/boostorg/parameter/compare) against **develop** branch. Note that by submitting patches you agree to license your modifications under the [Boost Software License, Version 1.0](https://www.boost.org/LICENSE_1_0.txt).
|
||||
|
||||
### Build status
|
||||
|
||||
Branch | Travis CI | AppVeyor | Test Matrix | Dependencies |
|
||||
:-------------: | --------- | -------- | ----------- | ------------ |
|
||||
[`master`](https://github.com/boostorg/parameter/tree/master) | [](https://travis-ci.org/boostorg/parameter) | [](https://ci.appveyor.com/project/Lastique/parameter/branch/master) | [](http://www.boost.org/development/tests/master/developer/parameter.html) | [](https://pdimov.github.io/boostdep-report/master/parameter.html)
|
||||
[`develop`](https://github.com/boostorg/parameter/tree/develop) | [](https://travis-ci.org/boostorg/parameter) | [](https://ci.appveyor.com/project/Lastique/parameter/branch/develop) | [](http://www.boost.org/development/tests/develop/developer/parameter.html) | [](https://pdimov.github.io/boostdep-report/develop/parameter.html)
|
||||
|
||||
### License
|
||||
|
||||
Distributed under the [Boost Software License, Version 1.0](https://www.boost.org/LICENSE_1_0.txt).
|
||||
84
appveyor.yml
84
appveyor.yml
@@ -1,5 +1,6 @@
|
||||
# Copyright 2017 Edward Diener
|
||||
# Copyright 2017 Cromwell D. Enage
|
||||
# Copyright 2021 Andrey Semashev
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://boost.org/LICENSE_1_0.txt)
|
||||
@@ -12,58 +13,61 @@ branches:
|
||||
only:
|
||||
- master
|
||||
- develop
|
||||
- /feature\/.*/
|
||||
|
||||
environment:
|
||||
matrix:
|
||||
- ARGS: --toolset=gcc address-model=32
|
||||
PATH: C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0\mingw32\bin;%PATH%
|
||||
- ARGS: --toolset=gcc address-model=32 linkflags=-Wl,-allow-multiple-definition
|
||||
- ARGS: toolset=msvc-9.0,msvc-10.0,msvc-11.0,msvc-12.0 address-model=32
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- ARGS: toolset=msvc-14.0 address-model=32,64 cxxstd=14,latest
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- ARGS: toolset=msvc-14.1 address-model=32,64 cxxstd=14,17,latest
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
- ARGS: toolset=msvc-14.2 address-model=32,64 cxxstd=14,17,latest
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||
- ARGS: toolset=gcc address-model=32 cxxstd=03,11,14,1z
|
||||
PATH: C:\cygwin\bin;%PATH%
|
||||
# Cygwin does not have python headers installed, the compiler picks up Win32 headers in C:\Python27\Include and fails
|
||||
BOOST_PARAMETER_TEST_WITHOUT_PYTHON_TESTS: 1
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- ARGS: toolset=gcc address-model=64 cxxstd=03,11,14,1z
|
||||
PATH: C:\cygwin64\bin;%PATH%
|
||||
# Cygwin64 does not have python headers installed, the compiler picks up Win32 headers in C:\Python27\Include and fails
|
||||
BOOST_PARAMETER_TEST_WITHOUT_PYTHON_TESTS: 1
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- ARGS: toolset=gcc address-model=32 cxxstd=03,11 linkflags=-Wl,-allow-multiple-definition
|
||||
PATH: C:\MinGW\bin;%PATH%
|
||||
- ARGS: --toolset=gcc address-model=64
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- ARGS: toolset=gcc address-model=32 cxxstd=03,11,14
|
||||
PATH: C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0\mingw32\bin;%PATH%
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- ARGS: toolset=gcc address-model=64 cxxstd=03,11,14,1z
|
||||
PATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH%
|
||||
- ARGS: --toolset=gcc address-model=64 cxxflags=-std=gnu++1z
|
||||
PATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH%
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-9.0 address-model=32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-10.0 address-model=32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-11.0 address-model=32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-12.0 address-model=32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-12.0 address-model=64
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-14.0 address-model=32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-14.0 address-model=64
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
ARGS: --toolset=msvc-14.0 address-model=64 cxxflags=-std:c++latest
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=64
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=64 cxxflags=-std:c++latest
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- ARGS: toolset=gcc address-model=64 cxxstd=03,11,14,1z
|
||||
PATH: C:\mingw-w64\x86_64-7.3.0-posix-seh-rt_v5-rev0\mingw64\bin;%PATH%
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
|
||||
install:
|
||||
- set GIT_FETCH_JOBS=8
|
||||
- set BOOST_BRANCH=develop
|
||||
- if "%APPVEYOR_REPO_BRANCH%" == "master" set BOOST_BRANCH=master
|
||||
- cd ..
|
||||
- git clone -b %APPVEYOR_REPO_BRANCH% https://github.com/boostorg/boost.git boost-root
|
||||
- git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
- cd boost-root
|
||||
- git submodule update --init tools/build
|
||||
- git submodule update --init libs/config
|
||||
- git submodule update --init tools/boostdep
|
||||
- git submodule update --init libs/parameter_python
|
||||
- git submodule update --init tools/boost_install
|
||||
- git submodule update --init libs/headers
|
||||
- git submodule init tools/build
|
||||
- git submodule init tools/boostdep
|
||||
- git submodule init tools/boost_install
|
||||
- git submodule init libs/headers
|
||||
- git submodule init libs/config
|
||||
- git submodule init libs/parameter_python
|
||||
- git submodule update --jobs %GIT_FETCH_JOBS%
|
||||
- xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\parameter
|
||||
- python tools/boostdep/depinst/depinst.py parameter
|
||||
- bootstrap
|
||||
- python tools/boostdep/depinst/depinst.py --git_args "--jobs %GIT_FETCH_JOBS%" parameter
|
||||
- cmd /c bootstrap
|
||||
- b2 headers
|
||||
|
||||
build: off
|
||||
|
||||
test_script:
|
||||
- cd libs\parameter\test
|
||||
- ..\..\..\b2 -j%NUMBER_OF_PROCESSORS% --hash %ARGS%
|
||||
- cd ..\..\..
|
||||
- b2 -j %NUMBER_OF_PROCESSORS% libs/parameter/test %ARGS%
|
||||
|
||||
@@ -91,6 +91,17 @@ namespace boost { namespace parameter { namespace aux {
|
||||
{
|
||||
}
|
||||
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC, < 1910)
|
||||
// MSVC 2015 miscompiles moves for classes containing rvalue ref members
|
||||
// using the default generated move constructor
|
||||
// when moving into a function
|
||||
// https://github.com/boostorg/parameter/pull/109
|
||||
inline BOOST_CONSTEXPR default_r_(default_r_&& x)
|
||||
: value(::std::forward<Value>(x.value))
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
Value&& value;
|
||||
};
|
||||
}}} // namespace boost::parameter::aux
|
||||
|
||||
@@ -13,5 +13,6 @@
|
||||
"maintainers": [
|
||||
"David Abrahams <dave -at- boost-consulting.com>",
|
||||
"Daniel Wallin <daniel -at- boostpro.com>"
|
||||
]
|
||||
],
|
||||
"cxxstd": "03"
|
||||
}
|
||||
|
||||
@@ -8,20 +8,30 @@
|
||||
# TODO: Also process literate tests
|
||||
file(GLOB test_files *.cpp)
|
||||
|
||||
# remove some test for which the dependencies are not yet available or have special requirements
|
||||
# remove some test for which the dependencies are not yet available or have
|
||||
# special requirements
|
||||
# TODO: enable more tests
|
||||
list(FILTER test_files EXCLUDE REGEX
|
||||
efficiency|deduced_unmatched_arg|python_test|duplicates)
|
||||
|
||||
# Attach all our tests to the `tests` target, to enable
|
||||
# `cmake --build . --target tests`
|
||||
if(NOT TARGET tests)
|
||||
add_custom_target(tests)
|
||||
endif()
|
||||
|
||||
foreach(file IN LISTS test_files)
|
||||
|
||||
get_filename_component(core_name ${file} NAME_WE)
|
||||
set(test_name test_boost_parameter_${core_name})
|
||||
set(test_name boost_parameter-test-${core_name})
|
||||
|
||||
add_executable(${test_name} ${file})
|
||||
# add Boost.Parameter and any libraries that are only needed by the tests (none at the moment)
|
||||
add_executable(${test_name} EXCLUDE_FROM_ALL ${file})
|
||||
add_dependencies(tests ${test_name})
|
||||
|
||||
# add Boost.Parameter and any libraries that are only needed by the tests
|
||||
# (none at the moment)
|
||||
target_link_libraries(${test_name} Boost::parameter)
|
||||
|
||||
add_test(NAME ${test_name} COMMAND ${test_name})
|
||||
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
120
test/Jamfile.v2
120
test/Jamfile.v2
@@ -6,6 +6,7 @@
|
||||
|
||||
# Boost Parameter Library test Jamfile
|
||||
|
||||
import os ;
|
||||
import testing ;
|
||||
|
||||
project boost/parameter
|
||||
@@ -492,68 +493,75 @@ alias parameter_literate_tests
|
||||
]
|
||||
;
|
||||
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for clang on linux with cxxstd set to 14
|
||||
<target-os>linux
|
||||
<toolset>clang
|
||||
<cxxstd>14
|
||||
;
|
||||
if ! [ os.environ BOOST_PARAMETER_TEST_WITHOUT_PYTHON_TESTS ]
|
||||
{
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for clang on linux with cxxstd set to 14
|
||||
<target-os>linux
|
||||
<toolset>clang
|
||||
<cxxstd>14
|
||||
;
|
||||
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for clang on linux with cxxstd set to 1z
|
||||
<target-os>linux
|
||||
<toolset>clang
|
||||
<cxxstd>1z
|
||||
;
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for clang on linux with cxxstd set to 1z
|
||||
<target-os>linux
|
||||
<toolset>clang
|
||||
<cxxstd>1z
|
||||
;
|
||||
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for xcode 8.3.0 on osx
|
||||
# so we turn off this test for this compiler completely for now
|
||||
<target-os>darwin
|
||||
# TODO: Differentiate by xcode version or by clang version
|
||||
;
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for xcode 8.3.0 on osx
|
||||
# so we turn off this test for this compiler completely for now
|
||||
<target-os>darwin
|
||||
# TODO: Differentiate by xcode version or by clang version
|
||||
;
|
||||
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for mingw compilers with cxxstd set to 11 or higher
|
||||
# because of a Python header problem
|
||||
# so we turn off this test for this compiler completely
|
||||
<target-os>windows
|
||||
<toolset>gcc
|
||||
<address-model>32
|
||||
;
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for mingw compilers with cxxstd set to 11 or higher
|
||||
# because of a Python header problem
|
||||
# so we turn off this test for this compiler completely
|
||||
<target-os>windows
|
||||
<toolset>gcc
|
||||
<address-model>32
|
||||
;
|
||||
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for clang-linux compilers with cxxstd set to 11 or higher
|
||||
# because of a Python header problem
|
||||
# so we turn off this test for this compiler completely
|
||||
<target-os>windows
|
||||
<toolset>clang-linux
|
||||
<address-model>32
|
||||
;
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for clang-linux compilers with cxxstd set to 11 or higher
|
||||
# because of a Python header problem
|
||||
# so we turn off this test for this compiler completely
|
||||
<target-os>windows
|
||||
<toolset>clang-linux
|
||||
<address-model>32
|
||||
;
|
||||
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for windows compilers with 64-bit addressing set
|
||||
# because of a Python header problem
|
||||
<target-os>windows
|
||||
<address-model>64
|
||||
;
|
||||
alias parameter_python_test
|
||||
:
|
||||
:
|
||||
# Python fails for windows compilers with 64-bit addressing set
|
||||
# because of a Python header problem
|
||||
<target-os>windows
|
||||
<address-model>64
|
||||
;
|
||||
|
||||
alias parameter_python_test
|
||||
:
|
||||
[ bpl-test python_test ]
|
||||
;
|
||||
alias parameter_python_test
|
||||
:
|
||||
[ bpl-test python_test ]
|
||||
;
|
||||
}
|
||||
else
|
||||
{
|
||||
alias parameter_python_test ;
|
||||
}
|
||||
|
||||
alias parameter_macros_eval_category
|
||||
:
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/parameter.hpp>
|
||||
#include <boost/bind.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
#include "basics.hpp"
|
||||
|
||||
namespace test {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
#include <boost/parameter.hpp>
|
||||
#include <boost/parameter/macros.hpp>
|
||||
#include <boost/bind.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
#include "basics.hpp"
|
||||
|
||||
namespace test {
|
||||
@@ -38,7 +38,7 @@ namespace test {
|
||||
}
|
||||
} // namespace test
|
||||
|
||||
#include <boost/ref.hpp>
|
||||
#include <boost/core/ref.hpp>
|
||||
#include <boost/core/lightweight_test.hpp>
|
||||
#include <string>
|
||||
|
||||
@@ -65,4 +65,3 @@ int main()
|
||||
|
||||
return boost::report_errors();
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/parameter/config.hpp>
|
||||
#include <cstddef>
|
||||
|
||||
#if (BOOST_PARAMETER_MAX_ARITY < 2)
|
||||
#error Define BOOST_PARAMETER_MAX_ARITY as 2 or greater.
|
||||
|
||||
Reference in New Issue
Block a user