forked from boostorg/predef
Compare commits
112 Commits
boost-1.64
...
pr/cmake-l
Author | SHA1 | Date | |
---|---|---|---|
225f1a8dc9 | |||
1be0e4a2d8 | |||
df63bf3dca | |||
8ee83ef1aa | |||
c9ee4eb329 | |||
cfbda6e0cc | |||
d37f35e578 | |||
d3460e05aa | |||
f51e4ff45e | |||
40c6205858 | |||
caa0627ab5 | |||
a7ac034985 | |||
6bcceefb48 | |||
d990549214 | |||
e697cafd12 | |||
99cfb298de | |||
17cb5b78d5 | |||
095faae58d | |||
9c46a94ae5 | |||
f6979bd4a7 | |||
078226b9f8 | |||
966707dc1f | |||
c092d00770 | |||
fa099f3b2c | |||
3330514089 | |||
aa6e232bf1 | |||
fb59068deb | |||
73d7b4f66f | |||
29095cefd9 | |||
fc99bc29cb | |||
4bc7cc02ed | |||
094ac2ffdd | |||
13de873d87 | |||
2e65c250f5 | |||
a2608f26a3 | |||
7e31244f01 | |||
6fea8a4b90 | |||
fee815d6d7 | |||
2e35ba95c8 | |||
cb4f8140f1 | |||
f2de8d8211 | |||
a340a52605 | |||
48d9231a1b | |||
eb682657a2 | |||
c53294180d | |||
9ead140e5b | |||
d33798214d | |||
f862009841 | |||
d58fcca2d5 | |||
aa94d69718 | |||
62a50d3892 | |||
32d4581c16 | |||
92881c4c7a | |||
07df9dd360 | |||
d8f410b4d0 | |||
759400b413 | |||
560ff5298e | |||
75b04d80e7 | |||
bb82002af6 | |||
5d8818ddcb | |||
11569d270c | |||
c8c0134926 | |||
c37ef8b959 | |||
aba0bb4470 | |||
02d09e78b6 | |||
7c0c1f2cb0 | |||
d7bad38b5d | |||
9e73c55298 | |||
7a4ca9dc90 | |||
e8681a9b37 | |||
9e31c6455c | |||
0bccaa9ead | |||
c8c26821b9 | |||
5e8f5d5a4b | |||
74f88005cc | |||
4a230ebe85 | |||
e62a9c68b1 | |||
e31d12f25d | |||
2bba31c5f4 | |||
e87cef64fe | |||
6f8a9ae440 | |||
a7cdea8faf | |||
1c0b55c2f9 | |||
0ab200d19e | |||
7c17b932e4 | |||
de79c6d341 | |||
7c99dfbbd5 | |||
284cde95a2 | |||
bca18299d2 | |||
aa4604a3bd | |||
ba45bd73f3 | |||
ada62932d0 | |||
6a24a3a4bb | |||
9afb15401b | |||
0d9d5591da | |||
db499c07df | |||
9f6191e0bc | |||
4c822c49c2 | |||
f109e20ad1 | |||
d81ab5cc34 | |||
cda33c33d9 | |||
6dfdf9d4dd | |||
5e76979e05 | |||
541ec7edef | |||
87c4de2da2 | |||
693e973635 | |||
77c66456dc | |||
43758299bc | |||
ec6c26ef68 | |||
0f86c9b95e | |||
523e866076 | |||
0bb6e754cb |
8
.gitignore
vendored
8
.gitignore
vendored
@ -1,2 +1,6 @@
|
||||
/bin
|
||||
/boost-build.jam
|
||||
.bin
|
||||
boost-build.jam
|
||||
project-config.jam
|
||||
*.pyc
|
||||
.vscode/settings.json
|
||||
.vscode/ipch
|
||||
|
11
.project
11
.project
@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>Boost Predef</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
</natures>
|
||||
</projectDescription>
|
98
.travis.yml
98
.travis.yml
@ -1,98 +0,0 @@
|
||||
# Use, modification, and distribution are
|
||||
# subject to the Boost Software License, Version 1.0. (See accompanying
|
||||
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
#
|
||||
# Copyright Rene Rivera 2015-2016.
|
||||
|
||||
# Setting up notifications like this is optional as the default behavior
|
||||
# of Travis is to notify the commiter of problems. But setting a specific
|
||||
# recipient this way ensures you get all the communications about the
|
||||
# builds.
|
||||
notifications:
|
||||
email:
|
||||
recipients:
|
||||
- grafikrobot@gmail.com
|
||||
|
||||
# For now the CI scripts only support the two main branches available
|
||||
# on the boost super-project.
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
- develop
|
||||
|
||||
# We specify a generic language instead of C++ as Travis sets up
|
||||
# additional environment vars that point to its default toolset
|
||||
# instead of the one we install. The extra env doesn't interfere,
|
||||
# but at the same time it's misleading. So to avoid confusion and
|
||||
# possible unseen side effects we stick with no C++ default setup.
|
||||
language: generic
|
||||
|
||||
# Speficy the default as Linux here, to avoid duplication in the matrix
|
||||
# below. We use Trausty as that's the latest we can use. And it's better
|
||||
# supported by the whole range of C++ toolsets we like to test on.
|
||||
dist: trusty
|
||||
os: linux
|
||||
|
||||
# Because we install our own toolsets and other software we need
|
||||
# to run the sudo support.
|
||||
sudo: required
|
||||
|
||||
# Travis has a long standing bug with their rather complicated
|
||||
# build matrix evaluation that causes empty jobs to be created.
|
||||
# This global matrix entry in combination with the exclusion
|
||||
# below works around that bug. This is the suggested fix from
|
||||
# the Travis support people.
|
||||
env:
|
||||
matrix:
|
||||
- TRAVIS_EMPTY_JOB_WORKAROUND=true
|
||||
|
||||
# This lists all the toolsets we will test with the Boost CI
|
||||
# scripts. Predef needs to check all of them as its job is to
|
||||
# distiguish between all of them. For other libraries you would
|
||||
# want to limit the list to the toolsets that are important
|
||||
# for that.
|
||||
matrix:
|
||||
exclude:
|
||||
- env: TRAVIS_EMPTY_JOB_WORKAROUND=true
|
||||
include:
|
||||
- env: TOOLSET=clang-3.4
|
||||
- env: TOOLSET=clang-3.5
|
||||
- env: TOOLSET=clang-3.6
|
||||
- env: TOOLSET=clang-3.7
|
||||
- env: TOOLSET=clang-3.8
|
||||
- env: TOOLSET=clang-3.9
|
||||
- env: TOOLSET=gcc-4.7
|
||||
- env: TOOLSET=gcc-4.8
|
||||
- env: TOOLSET=gcc-4.9
|
||||
- env: TOOLSET=gcc-5
|
||||
- env: TOOLSET=gcc-6
|
||||
- env: TOOLSET=xcode-6.1
|
||||
os: osx
|
||||
- env: TOOLSET=xcode-6.4
|
||||
os: osx
|
||||
osx_image: xcode6.4
|
||||
- env: TOOLSET=xcode-7.3
|
||||
os: osx
|
||||
osx_image: xcode7.3
|
||||
- env: TOOLSET=xcode-8.0
|
||||
os: osx
|
||||
osx_image: xcode8
|
||||
|
||||
# These are the standard steps to bootstrap the Boost CI scripts
|
||||
# and to forward the actions to the scripts.
|
||||
before_install:
|
||||
# Fetch the scripts to do the actual building/testing.
|
||||
- |
|
||||
wget "https://raw.githubusercontent.com/boostorg/regression/develop/ci/src/ci_boost_common.py" -P ..
|
||||
wget "https://raw.githubusercontent.com/boostorg/regression/develop/ci/src/ci_boost_library_test.py" -P ..
|
||||
|
||||
install: python "${TRAVIS_BUILD_DIR}/../ci_boost_library_test.py" install
|
||||
before_script: python "${TRAVIS_BUILD_DIR}/../ci_boost_library_test.py" before_script
|
||||
script: python "${TRAVIS_BUILD_DIR}/../ci_boost_library_test.py" script
|
||||
before_cache: python "${TRAVIS_BUILD_DIR}/../ci_boost_library_test.py" before_cache
|
||||
after_success: python "${TRAVIS_BUILD_DIR}/../ci_boost_library_test.py" after_success
|
||||
after_failure: python "${TRAVIS_BUILD_DIR}/../ci_boost_library_test.py" after_failure
|
||||
after_script: python "${TRAVIS_BUILD_DIR}/../ci_boost_library_test.py" after_script
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/boostorg/boost
|
38
CMakeLists.txt
Normal file
38
CMakeLists.txt
Normal file
@ -0,0 +1,38 @@
|
||||
# Copyright Mike Dev 2018
|
||||
# Copyright Rene Rivera 2018
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
# NOTE:
|
||||
# CMake support for Boost.Predef is currently experimental at best and the
|
||||
# interface is likely to change in the future
|
||||
#
|
||||
# This file provides minimal cmake support (no unit-tests,
|
||||
# no installation) for integration into a "host" cmake project
|
||||
# via the "add_subdirectory( <path-to-boost-predef> )" command.
|
||||
#
|
||||
# Other cmake targets can then use the public target name
|
||||
# "Boost::predef" in order to express their dependency
|
||||
# on this library. I.e:
|
||||
#
|
||||
# target_link_libraries( <my-exe/lib> PUBLIC Boost::predef )
|
||||
|
||||
# Only need the basic minimum of project, add_library, and
|
||||
# target_include_directories commands.
|
||||
cmake_minimum_required( VERSION 3.0 )
|
||||
|
||||
# Don't set VERSION, as that's a pita to keep up to date with the version
|
||||
# header. And don't set LANGUAGES as we are multi-language and header
|
||||
# only, so it's irrelevant.
|
||||
project( BoostPredef LANGUAGES NONE )
|
||||
|
||||
# Simple INTERFACE, and header only, library target.
|
||||
add_library( boost_predef INTERFACE )
|
||||
|
||||
# The only usage requirement is include dir for consumers.
|
||||
target_include_directories( boost_predef INTERFACE include )
|
||||
|
||||
# Add an alias to be compatible with consumers that may have used the
|
||||
# FindBoost script.
|
||||
add_library( Boost::predef ALIAS boost_predef )
|
72
appveyor.yml
72
appveyor.yml
@ -1,72 +0,0 @@
|
||||
# Use, modification, and distribution are
|
||||
# subject to the Boost Software License, Version 1.0. (See accompanying
|
||||
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
#
|
||||
# Copyright Rene Rivera 2015-2016.
|
||||
|
||||
# Set up notifications so that the maintainers of the library get
|
||||
# build status messages.
|
||||
notifications:
|
||||
- provider: Email
|
||||
to:
|
||||
- grafikrobot@gmail.com
|
||||
on_build_status_changed: true
|
||||
|
||||
# This lists all the toolsets we will test with the Boost CI
|
||||
# scripts. Predef needs to check all of them as its job is to
|
||||
# distiguish between all of them. For other libraries you would
|
||||
# want to limit the list to the toolsets that are important
|
||||
# for that.
|
||||
#
|
||||
# This also includes setting up how to create the cache. We
|
||||
# opt for slightly better compression and solid archives.
|
||||
# As we have a lot of files in the boost tree which is what
|
||||
# we are putting in the cache.
|
||||
environment:
|
||||
APPVEYOR_CACHE_ENTRY_ZIP_ARGS: -t7z -m0=lzma2 -mx=3
|
||||
matrix:
|
||||
- TOOLSET: vs-2008
|
||||
platform: 32
|
||||
- TOOLSET: vs-2010
|
||||
platform: 32
|
||||
- TOOLSET: vs-2012
|
||||
platform: 32
|
||||
- TOOLSET: vs-2013
|
||||
platform: 32
|
||||
- TOOLSET: vs-2013
|
||||
platform: 64
|
||||
- TOOLSET: vs-2015
|
||||
platform: 32
|
||||
- TOOLSET: vs-2015
|
||||
platform: 64
|
||||
|
||||
# We can also set up configurations for testing which map to
|
||||
# the b2 build variants.
|
||||
configuration:
|
||||
- debug
|
||||
- release
|
||||
|
||||
# These are the standard steps to bootstrap the Boost CI scripts
|
||||
# and to forward the actions to the scripts.
|
||||
init:
|
||||
# Fetch the scripts to do the actual building/testing.
|
||||
- cd %APPVEYOR_BUILD_FOLDER%/..
|
||||
- appveyor DownloadFile "https://raw.githubusercontent.com/boostorg/regression/develop/ci/src/ci_boost_common.py"
|
||||
- appveyor DownloadFile "https://raw.githubusercontent.com/boostorg/regression/develop/ci/src/ci_boost_library_test.py"
|
||||
- cd %APPVEYOR_BUILD_FOLDER%
|
||||
install: python ../ci_boost_library_test.py install
|
||||
before_build: python ../ci_boost_library_test.py before_build
|
||||
build_script: python ../ci_boost_library_test.py build_script
|
||||
after_build: python ../ci_boost_library_test.py after_build
|
||||
before_test: python ../ci_boost_library_test.py before_test
|
||||
test_script: python ../ci_boost_library_test.py test_script
|
||||
after_test: python ../ci_boost_library_test.py after_test
|
||||
on_success: python ../ci_boost_library_test.py on_success
|
||||
on_failure: python ../ci_boost_library_test.py on_failure
|
||||
on_finish: python ../ci_boost_library_test.py on_finish
|
||||
|
||||
# We cache the boost repo, which is cleaned before caching.
|
||||
# This saves some time as cloning the git submodules fresh
|
||||
# takes a few minutes on Windows.
|
||||
cache:
|
||||
- C:\projects\boostorg\boost -> appveyor.yml
|
226
azure-pipelines.yml
Normal file
226
azure-pipelines.yml
Normal file
@ -0,0 +1,226 @@
|
||||
# Use, modification, and distribution are
|
||||
# subject to the Boost Software License, Version 1.0. (See accompanying
|
||||
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
#
|
||||
# Copyright Rene Rivera 2019-2020.
|
||||
|
||||
trigger:
|
||||
branches:
|
||||
include:
|
||||
- develop
|
||||
- master
|
||||
- feature/*
|
||||
pr:
|
||||
branches:
|
||||
include:
|
||||
- develop
|
||||
|
||||
variables:
|
||||
AZP: 1
|
||||
AZP_REPO_DIR: $(Build.Repository.LocalPath)
|
||||
AZP_BRANCH: $(Build.SourceBranch)
|
||||
AZP_BRANCH_NAME: $(Build.SourceBranchName)
|
||||
AZP_COMMIT: $(Build.SourceVersion)
|
||||
AZP_REPO: $(Build.Repository.Name)
|
||||
AZP_PULL_REQUEST: $(System.PullRequest.PullRequestNumber)
|
||||
|
||||
stages:
|
||||
|
||||
- stage: Test
|
||||
jobs:
|
||||
|
||||
- job: 'Linux'
|
||||
strategy:
|
||||
matrix:
|
||||
GCC 10 (GNU): { CXX: g++-10, PACKAGES: g++-10, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc, B2_ARGS: 'cxxstd=03,11,14,17,2a cxxstd-dialect=gnu' }
|
||||
GCC 10 (ISO): { CXX: g++-10, PACKAGES: g++-10, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc, B2_ARGS: 'cxxstd=03,11,14,17,2a cxxstd-dialect=iso' }
|
||||
GCC 10: { CXX: g++-10, PACKAGES: g++-10, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc }
|
||||
GCC 9: { CXX: g++-9, PACKAGES: g++-9, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc }
|
||||
GCC 8: { CXX: g++-8, PACKAGES: g++-8, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc }
|
||||
GCC 7: { CXX: g++-7, PACKAGES: g++-7, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc }
|
||||
GCC 6: { CXX: g++-6, PACKAGES: g++-6, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc }
|
||||
GCC 5: { CXX: g++-5, PACKAGES: g++-5, VM_IMAGE: 'ubuntu-18.04', TOOLSET: gcc }
|
||||
GCC 4.9: { CXX: g++-4.9, PACKAGES: g++-4.9, VM_IMAGE: 'ubuntu-16.04', TOOLSET: gcc }
|
||||
GCC 4.8: { CXX: g++-4.8, PACKAGES: g++-4.8, VM_IMAGE: 'ubuntu-16.04', TOOLSET: gcc }
|
||||
GCC 4.7: { CXX: g++-4.7, PACKAGES: g++-4.7, VM_IMAGE: 'ubuntu-16.04', TOOLSET: gcc }
|
||||
Clang 11: { CXX: clang++-11, PACKAGES: clang-11, LLVM_OS: bionic, LLVM_VER: 11, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 10: { CXX: clang++-10, PACKAGES: clang-10, LLVM_OS: bionic, LLVM_VER: 10, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 9: { CXX: clang++-9, PACKAGES: clang-9, LLVM_OS: bionic, LLVM_VER: 9, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 8: { CXX: clang++-8, PACKAGES: clang-8, LLVM_OS: bionic, LLVM_VER: 8, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 7: { CXX: clang++-7, PACKAGES: clang-7, LLVM_OS: bionic, LLVM_VER: 7, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 6.0: { CXX: clang++-6.0, PACKAGES: clang-6.0, LLVM_OS: bionic, LLVM_VER: 6.0, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 5.0: { CXX: clang++-5.0, PACKAGES: clang-5.0, LLVM_OS: bionic, LLVM_VER: 5.0, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 4.0: { CXX: clang++-4.0, PACKAGES: clang-4.0, LLVM_OS: xenial, LLVM_VER: 4.0, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 3.9: { CXX: clang++-3.9, PACKAGES: clang-3.9, LLVM_OS: xenial, LLVM_VER: 3.9, VM_IMAGE: 'ubuntu-18.04', TOOLSET: clang }
|
||||
Clang 3.8: { CXX: clang++-3.8, PACKAGES: clang-3.8, LLVM_OS: xenial, LLVM_VER: 3.8, VM_IMAGE: 'ubuntu-16.04', TOOLSET: clang }
|
||||
Clang 3.7: { CXX: clang++-3.7, PACKAGES: clang-3.7, LLVM_OS: xenial, VM_IMAGE: 'ubuntu-16.04', TOOLSET: clang }
|
||||
Clang 3.6: { CXX: clang++-3.6, PACKAGES: clang-3.6, LLVM_OS: xenial, VM_IMAGE: 'ubuntu-16.04', TOOLSET: clang }
|
||||
Clang 3.5: { CXX: clang++-3.5, PACKAGES: clang-3.5, LLVM_OS: xenial, VM_IMAGE: 'ubuntu-16.04', TOOLSET: clang }
|
||||
pool:
|
||||
vmImage: $(VM_IMAGE)
|
||||
steps:
|
||||
- bash: |
|
||||
set -e
|
||||
uname -a
|
||||
./tools/ci/linux-cxx-install.sh
|
||||
displayName: 'Install CXX'
|
||||
- bash: |
|
||||
set -e
|
||||
pushd ${HOME}
|
||||
wget -nv https://github.com/boostorg/build/archive/develop.tar.gz
|
||||
tar -zxf develop.tar.gz
|
||||
cd build-develop
|
||||
CXX= ./bootstrap.sh
|
||||
sudo ./b2 install
|
||||
popd
|
||||
displayName: 'Install B2'
|
||||
- bash: |
|
||||
set -e
|
||||
CXX_PATH=`which ${CXX}`
|
||||
echo "using ${TOOLSET} : : ${CXX_PATH} ;" > ${HOME}/user-config.jam
|
||||
pushd test
|
||||
b2 --verbose-test -a toolset=${TOOLSET} ${B2_ARGS} predef-info
|
||||
b2 --debug-configuration -a toolset=${TOOLSET} ${B2_ARGS} predef predef-headers
|
||||
popd
|
||||
displayName: Test
|
||||
|
||||
- job: 'macOS'
|
||||
strategy:
|
||||
matrix:
|
||||
Xcode 11.4.1:
|
||||
TOOLSET: clang
|
||||
CXX: clang++
|
||||
XCODE_APP: /Applications/Xcode_11.4.1.app
|
||||
VM_IMAGE: 'macOS-10.15'
|
||||
Xcode 11.3.1:
|
||||
TOOLSET: clang
|
||||
CXX: clang++
|
||||
XCODE_APP: /Applications/Xcode_11.3.1.app
|
||||
VM_IMAGE: 'macOS-10.15'
|
||||
Xcode 11.2.1:
|
||||
TOOLSET: clang
|
||||
CXX: clang++
|
||||
XCODE_APP: /Applications/Xcode_11.2.1.app
|
||||
VM_IMAGE: 'macOS-10.15'
|
||||
Xcode 10.3:
|
||||
TOOLSET: clang
|
||||
CXX: clang++
|
||||
XCODE_APP: /Applications/Xcode_10.3.app
|
||||
VM_IMAGE: 'macOS-10.14'
|
||||
Xcode 10.2.1:
|
||||
TOOLSET: clang
|
||||
CXX: clang++
|
||||
XCODE_APP: /Applications/Xcode_10.2.1.app
|
||||
VM_IMAGE: 'macOS-10.14'
|
||||
Xcode 10.1:
|
||||
TOOLSET: clang
|
||||
CXX: clang++
|
||||
XCODE_APP: /Applications/Xcode_10.1.app
|
||||
VM_IMAGE: 'macOS-10.14'
|
||||
Xcode 10.0:
|
||||
TOOLSET: clang
|
||||
CXX: clang++
|
||||
XCODE_APP: /Applications/Xcode_10.app
|
||||
VM_IMAGE: 'macOS-10.14'
|
||||
pool:
|
||||
vmImage: $(VM_IMAGE)
|
||||
steps:
|
||||
- bash: |
|
||||
set -e
|
||||
uname -a
|
||||
sudo xcode-select -switch ${XCODE_APP}
|
||||
which clang++
|
||||
clang++ --version
|
||||
displayName: 'Install CXX'
|
||||
- bash: |
|
||||
set -e
|
||||
pushd ${HOME}
|
||||
wget -nv https://github.com/boostorg/build/archive/develop.tar.gz
|
||||
tar -zxf develop.tar.gz
|
||||
cd build-develop
|
||||
CXX= ./bootstrap.sh
|
||||
sudo ./b2 install
|
||||
popd
|
||||
displayName: 'Install B2'
|
||||
- bash: |
|
||||
set -e
|
||||
CXX_PATH=`which ${CXX}`
|
||||
echo "using ${TOOLSET} : : ${CXX_PATH} ;" > ${HOME}/user-config.jam
|
||||
pushd test
|
||||
b2 --verbose-test -a toolset=${TOOLSET} ${B2_ARGS} predef-info
|
||||
b2 --debug-configuration -a toolset=${TOOLSET} ${B2_ARGS} predef predef-headers
|
||||
popd
|
||||
displayName: Test
|
||||
|
||||
- job: 'Windows'
|
||||
strategy:
|
||||
matrix:
|
||||
VS 2019:
|
||||
TOOLSET: msvc
|
||||
TOOLSET_VERSION: 14.2
|
||||
B2_ARGS: address-model=32,64 cxxstd=14,latest
|
||||
VM_IMAGE: 'windows-2019'
|
||||
VS 2019 (UWP DESKTOP):
|
||||
TOOLSET: msvc
|
||||
TOOLSET_VERSION: 14.2
|
||||
B2_ARGS: address-model=64 define=_WIN32_WINNT=0x0A00 define=WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP
|
||||
VM_IMAGE: 'windows-2019'
|
||||
VS 2019 (UWP PHONE):
|
||||
TOOLSET: msvc
|
||||
TOOLSET_VERSION: 14.2
|
||||
B2_ARGS: address-model=64 define=_WIN32_WINNT=0x0A00 define=WINAPI_FAMILY=WINAPI_FAMILY_PHONE_APP
|
||||
VM_IMAGE: 'windows-2019'
|
||||
VS 2019 (UWP STORE):
|
||||
TOOLSET: msvc
|
||||
TOOLSET_VERSION: 14.2
|
||||
B2_ARGS: address-model=64 define=_WIN32_WINNT=0x0A00 define=WINAPI_FAMILY=WINAPI_FAMILY_PC_APP
|
||||
VM_IMAGE: 'windows-2019'
|
||||
VS 2019 (UWP SERVER):
|
||||
TOOLSET: msvc
|
||||
TOOLSET_VERSION: 14.2
|
||||
B2_ARGS: address-model=64 define=_WIN32_WINNT=0x0A00 define=WINAPI_FAMILY=WINAPI_FAMILY_SERVER
|
||||
VM_IMAGE: 'windows-2019'
|
||||
VS 2019 (UWP SYSTEM):
|
||||
TOOLSET: msvc
|
||||
TOOLSET_VERSION: 14.2
|
||||
B2_ARGS: address-model=64 define=_WIN32_WINNT=0x0A00 define=WINAPI_FAMILY=WINAPI_FAMILY_SYSTEM
|
||||
VM_IMAGE: 'windows-2019'
|
||||
VS 2017:
|
||||
TOOLSET: msvc
|
||||
TOOLSET_VERSION: 14.1
|
||||
VM_IMAGE: 'vs2017-win2016'
|
||||
MinGW 8.1.0:
|
||||
TOOLSET: gcc
|
||||
VM_IMAGE: 'windows-2019'
|
||||
MinGW 8.1.0 (UWP DESKTOP):
|
||||
TOOLSET: gcc
|
||||
B2_ARGS: define=_WIN32_WINNT=0x0A00 define=WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP
|
||||
VM_IMAGE: 'windows-2019'
|
||||
MinGW 8.1.0 (UWP STORE):
|
||||
TOOLSET: gcc
|
||||
B2_ARGS: define=_WIN32_WINNT=0x0A00 define=WINAPI_FAMILY=WINAPI_FAMILY_PC_APP
|
||||
VM_IMAGE: 'windows-2019'
|
||||
pool:
|
||||
vmImage: $(VM_IMAGE)
|
||||
steps:
|
||||
- script: |
|
||||
cd %BUILD_SOURCESDIRECTORY%/..
|
||||
curl "https://github.com/boostorg/build/archive/develop.zip" -L -o b2.zip
|
||||
displayName: Download B2
|
||||
- task: ExtractFiles@1
|
||||
inputs:
|
||||
archiveFilePatterns: $(Build.SourcesDirectory)/../b2.zip
|
||||
destinationFolder: $(Build.SourcesDirectory)/..
|
||||
cleanDestinationFolder: false
|
||||
displayName: Extract B2
|
||||
- script: |
|
||||
echo using %TOOLSET% ^: %TOOLSET_VERSION% ^; > %HOMEDRIVE%%HOMEPATH%/user-config.jam
|
||||
cd %BUILD_SOURCESDIRECTORY%/../build-develop
|
||||
cmd.exe /c bootstrap.bat
|
||||
displayName: Install B2
|
||||
- script: |
|
||||
set BOOST_BUILD_PATH=%BUILD_SOURCESDIRECTORY%/../build-develop
|
||||
cd %BUILD_SOURCESDIRECTORY%/test
|
||||
%BUILD_SOURCESDIRECTORY%/../build-develop/b2.exe --verbose-test -a toolset=%TOOLSET% %B2_ARGS% predef-info
|
||||
%BUILD_SOURCESDIRECTORY%/../build-develop/b2.exe --debug-configuration -a toolset=%TOOLSET% %B2_ARGS% predef predef-headers
|
||||
displayName: Test
|
39
build.jam
39
build.jam
@ -1,6 +1,43 @@
|
||||
# Copyright Rene Rivera 2014
|
||||
# Copyright Rene Rivera 2014-2019
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#|
|
||||
This B2 project provides support for using the Predef library externally as
|
||||
a standalone project or by embedding in your B2 project tree. To use
|
||||
externally you would need a `use-project` declaration and to use the
|
||||
project as a dependency where needed:
|
||||
|
||||
----
|
||||
use-project /hash-predef : /path/to/hash-predef/root ;
|
||||
|
||||
exe my_thing : main.cpp : <dependency>/hash-predef ;
|
||||
----
|
||||
|
||||
To use in your project tree you would only need to place the Predef tree
|
||||
in a subdirectory and reference the project location as a dependency where
|
||||
needed.
|
||||
|
||||
----
|
||||
exe my_thin : main.cpp : <dependency>libs/hash-predef ;
|
||||
----
|
||||
|#
|
||||
|
||||
import project ;
|
||||
|
||||
path-constant BOOST_PREDEF_ROOT : . ;
|
||||
path-constant BOOST_PREDEF_INCLUDE : include ;
|
||||
constant PREDEF_DIST : boost ;
|
||||
|
||||
project /boost/predef
|
||||
: usage-requirements
|
||||
<include>$(BOOST_PREDEF_INCLUDE) ;
|
||||
|
||||
if [ project.is-jamroot-module $(__name__) ]
|
||||
{
|
||||
local attributes = [ project.attributes $(__name__) ] ;
|
||||
$(attributes).set "build-dir" : .bin ;
|
||||
}
|
||||
|
||||
alias libs ;
|
||||
|
1
doc/.gitignore
vendored
1
doc/.gitignore
vendored
@ -1 +0,0 @@
|
||||
/html/
|
110
doc/build.jam
110
doc/build.jam
@ -1,100 +1,38 @@
|
||||
# Copyright Rene Rivera 2011-2016
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt)
|
||||
#|
|
||||
Copyright Rene Rivera 2011-2019
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
|#
|
||||
|
||||
using quickbook ;
|
||||
using boostbook ;
|
||||
import asciidoctor ;
|
||||
import modules ;
|
||||
import path ;
|
||||
|
||||
if ! $(BOOST_ROOT)
|
||||
{
|
||||
BOOST_ROOT = [ modules.peek : BOOST_ROOT ] ;
|
||||
}
|
||||
project predefdoc ;
|
||||
|
||||
if $(BOOST_PREDEF_ROOT)
|
||||
{
|
||||
path-constant BOOST_PREDEF_INCLUDE_ROOT : $(BOOST_PREDEF_ROOT)/include ;
|
||||
}
|
||||
else
|
||||
{
|
||||
path-constant BOOST_PREDEF_INCLUDE_ROOT : $(BOOST_ROOT) ;
|
||||
}
|
||||
path-constant PYGMENTS_DIR : . ;
|
||||
|
||||
local BOOST_PREDEF_HEADERS = [ path.glob-tree $(BOOST_PREDEF_INCLUDE_ROOT)/boost/predef : *.h ] ;
|
||||
doc-dir = [ MATCH "--doc-dir=(.*)" : [ modules.peek : ARGV ] ] ;
|
||||
doc-dir ?= . ;
|
||||
|
||||
# Intermediate targets..
|
||||
local headers = [ glob-tree-ex $(BOOST_PREDEF_INCLUDE) : *.h ] ;
|
||||
|
||||
# Quickbok to boostbook target.
|
||||
xml predef
|
||||
html index : predef.adoc :
|
||||
:
|
||||
predef.qbk
|
||||
:
|
||||
<dependency>$(BOOST_PREDEF_INCLUDE_ROOT)/boost/predef.h
|
||||
<dependency>$(BOOST_PREDEF_HEADERS)
|
||||
<flags>--require=$(PYGMENTS_DIR)/pygments_init.rb
|
||||
<flags>--trace
|
||||
<flags>--verbose
|
||||
<dependency>$(PYGMENTS_DIR)/pygments_init.rb
|
||||
<dependency>$(headers)
|
||||
;
|
||||
explicit predef ;
|
||||
explicit index ;
|
||||
|
||||
# HTML dependencies for standalone docs.
|
||||
install images : [ glob $(BOOST_ROOT)/doc/src/images/*.png ] : <location>html/images ;
|
||||
explicit images ;
|
||||
install callouts : [ glob $(BOOST_ROOT)/doc/src/images/callouts/*.png ] : <location>html/images/callouts ;
|
||||
explicit callouts ;
|
||||
install css : [ glob $(BOOST_ROOT)/doc/src/*.css ] : <location>html ;
|
||||
explicit css ;
|
||||
install html : index : <location>$(doc-dir) ;
|
||||
explicit html ;
|
||||
|
||||
# Default target builds standalone docs.
|
||||
boostbook standalone
|
||||
:
|
||||
predef
|
||||
:
|
||||
<xsl:param>boost.root=../../../..
|
||||
#<xsl:param>generate.section.toc.level=3
|
||||
<xsl:param>chunk.section.depth=2
|
||||
<xsl:param>chunk.first.sections=1
|
||||
|
||||
<dependency>images
|
||||
<dependency>callouts
|
||||
<dependency>css
|
||||
;
|
||||
|
||||
###############################################################################
|
||||
### Targets for Boost release integration.
|
||||
###############################################################################
|
||||
|
||||
# Target for Boost global documentation integration.
|
||||
#
|
||||
# For documentation that will be integrated into the global documentation
|
||||
# this should be an alias similar to:
|
||||
#
|
||||
# alias boostdoc : my_lib : : : <implicit-dependency>my_lib_boostbook_xml ;
|
||||
# explicit boostdoc ;
|
||||
#
|
||||
# For documentation that is not part of the global documentation, i.e.
|
||||
# it has stadalone documentation, it should be an empty alias:
|
||||
#
|
||||
# alias boostdoc ;
|
||||
# explicit boostdoc ;
|
||||
#
|
||||
alias boostdoc : predef ;
|
||||
alias boostdoc ;
|
||||
explicit boostdoc ;
|
||||
|
||||
# Target for Boost standalone release documentation building.
|
||||
#
|
||||
# For documentation that is not part of the global Boost documentation
|
||||
# this should be an alias to building the "standalone" documentation.
|
||||
# Usual this is just an alias to a "stadalone" target:
|
||||
#
|
||||
# alias boostrelease : stadalone ;
|
||||
# explicit boostrelease ;
|
||||
#
|
||||
# For documentation that is part of the global Boost documentation this
|
||||
# should be an empty alias:
|
||||
#
|
||||
# alias boostrelease ;
|
||||
# explicit boostrelease ;
|
||||
#
|
||||
alias boostrelease ;
|
||||
alias boostrelease : html ;
|
||||
explicit boostrelease ;
|
||||
|
||||
###############################################################################
|
||||
|
@ -1,89 +0,0 @@
|
||||
SIMD predefs depend on compiler options. For example, you will have to add the
|
||||
option `-msse3` to clang or gcc to enable SSE3. SIMD predefs are also inclusive.
|
||||
This means that if SSE3 is enabled, then every other extensions with a lower
|
||||
version number will implicitly be enabled and detected. However, some extensions
|
||||
are CPU specific, they may not be detected nor enabled when an upper version is
|
||||
enabled.
|
||||
|
||||
[note SSE(1) and SSE2 are automatically enabled by default when using x86-64
|
||||
architecture.]
|
||||
|
||||
To check if any SIMD extension has been enabled, you can use:
|
||||
|
||||
``
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
int main()
|
||||
{
|
||||
#if defined(BOOST_HW_SIMD_AVAILABLE)
|
||||
std::cout << "SIMD detected!" << std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
``
|
||||
|
||||
When writing SIMD specific code, you may want to check if a particular extension
|
||||
has been detected. To do so you have to use the right architecture predef and
|
||||
compare it. Those predef are of the form `BOOST_HW_SIMD_"ARCH"` (where `"ARCH"`
|
||||
is either `ARM`, `PPC`, or `X86`). For example, if you compile code for x86
|
||||
architecture, you will have to use `BOOST_HW_SIMD_X86`. Its value will be the
|
||||
version number of the most recent SIMD extension detected for the architecture.
|
||||
|
||||
To check if an extension has been enabled:
|
||||
|
||||
``
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
int main()
|
||||
{
|
||||
#if BOOST_HW_SIMD_X86 >= BOOST_HW_SIMD_X86_SSE3_VERSION
|
||||
std::cout << "This is SSE3!" << std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
``
|
||||
|
||||
[note The *_VERSION* defines that map version number to actual real
|
||||
identifiers. This way it is easier to write comparisons without messing up with
|
||||
version numbers.]
|
||||
|
||||
To *"stricly"* check the most recent detected extension:
|
||||
|
||||
``
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
int main()
|
||||
{
|
||||
#if BOOST_HW_SIMD_X86 == BOOST_HW_SIMD_X86_SSE3_VERSION
|
||||
std::cout << "This is SSE3 and this is the most recent enabled extension!"
|
||||
<< std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
``
|
||||
|
||||
Because of the version systems of predefs and of the inclusive property of SIMD
|
||||
extensions macros, you can easily check for ranges of supported extensions:
|
||||
|
||||
``
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
int main()
|
||||
{
|
||||
#if BOOST_HW_SIMD_X86 >= BOOST_HW_SIMD_X86_SSE2_VERSION &&\
|
||||
BOOST_HW_SIMD_X86 <= BOOST_HW_SIMD_X86_SSSE3_VERSION
|
||||
std::cout << "This is SSE2, SSE3 and SSSE3!" << std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
``
|
||||
|
||||
[note Unlike gcc and clang, Visual Studio does not allow you to specify precisely
|
||||
the SSE variants you want to use, the only detections that will take place are
|
||||
SSE, SSE2, AVX and AVX2. For more informations,
|
||||
see [@https://msdn.microsoft.com/en-us/library/b0084kay.aspx here].]
|
||||
|
135
doc/history.adoc
Normal file
135
doc/history.adoc
Normal file
@ -0,0 +1,135 @@
|
||||
////
|
||||
Copyright 2014-2021 Rene Rivera
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
////
|
||||
|
||||
= History
|
||||
|
||||
== 1.13
|
||||
|
||||
* Add `ARCH_PPC_64` predef.
|
||||
* Fix `ARCH_WORD_BITS*` redefinition warnings/errors.
|
||||
* Add `ARCH_E2K`, Elbrus 2000, architecture from Konstantin Ivlev.
|
||||
* Fix not handling recent C++ version that go above 10.x version.
|
||||
|
||||
== 1.12
|
||||
|
||||
* Switch to using the endian.h header on OpenBSD. (Brad Smith)
|
||||
* Fix not handling recent versions of stdcxx that go above version 9.
|
||||
* Fix including sub-BSD OS headers directly causing redef warnings.
|
||||
* Add CI testing of direct inclusion of all headers.
|
||||
* Add CI testing on FreeBSD for clang and gcc.
|
||||
* Add `WORD_BITS` set of predefs to detect the architecture word size.
|
||||
Initial implementation inspired by submission from Mikhail Komarov.
|
||||
* Add CI testing for Cygwin 32 and 64.
|
||||
|
||||
== 1.11
|
||||
|
||||
* Add `BOOST_ARCH_RISCV`. (from Andreas Schwab)
|
||||
* Add RISC-V endian detection. (from Thomas Petazzoni)
|
||||
* Convert documentation to AsciiDoctor format.
|
||||
* Document correct versions for C++ standard.
|
||||
* Fix compile error from not available header when building in WinCE.
|
||||
* Remove deprecated `BOOST_OS_ANDROID`.
|
||||
* Fix compile for Wine. (Kevin Puetz)
|
||||
|
||||
== 1.10
|
||||
|
||||
* Fix bad include of sub-BSD os headers from main BSD header.
|
||||
* Fix use of deprecated `TARGET_IPHONE_SIMULATOR` instead of newer
|
||||
`TARGET_OS_SIMULATOR`.
|
||||
* Add `BOOST_PLAT_ANDROID` to resolve conflict between Linux and Android
|
||||
OS predefs. The `BOOST_OS_ANDROID` predef is now deprecated and will be
|
||||
removed in a future release.
|
||||
* Add support for consuming Predef as a CMake project.
|
||||
* Add support for consuming Predef as a standalone B2 project.
|
||||
|
||||
== 1.9
|
||||
|
||||
* Fixes for `BOOST_COMP_NVCC*` predefs. (from Benjamin Worpitz)
|
||||
* Add specific version information for Cygwin OS predef. (from James E. King III)
|
||||
|
||||
== 1.8
|
||||
|
||||
* Add support for __ARM_ARCH macro. (from Tim Blechmann)
|
||||
* Add detection for PTX architecture. (from Benjamin Worpitz)
|
||||
* Add nvcc compiler detection. (from Benjamin Worpitz)
|
||||
* Add support for detecting CUDA. (from Benjamin Worpitz)
|
||||
* Remove reference to obsolete BOOST_ARCH_AMD64. (from Peter Kolbus)
|
||||
|
||||
== 1.7
|
||||
|
||||
* Fix BOOST_ARCH_PARISK/BOOST_ARCH_PARISC typo.
|
||||
* Improved Windows Universal Platform detection. (from James E. King, III)
|
||||
* Add detection for CloudABI with cloudlibc. (from James E. King, III)
|
||||
|
||||
== 1.6
|
||||
|
||||
* Fix Intel C/{CPP} version 9999 detection to be 12.1.0.
|
||||
* Addition of `BOOST_PREDEF_WORKAROUND` and `BOOST_PREDEF_TESTED_AT` macros
|
||||
for defect workarounds and detection.
|
||||
* Add ARM64 MSVC SIMD detection. (from Minmin Gong)
|
||||
* Add detection of iOS simulator vs device as a platform choice. (from Ruslan
|
||||
Baratov)
|
||||
* Fix MinGW incorrect header guard. (from Ruslan Baratov)
|
||||
|
||||
== 1.5
|
||||
|
||||
* Fix Intel C/{CPP} compiler version specification.
|
||||
* Add `BOOST_VERSION_NUMBER_MAJOR`, `BOOST_VERSION_NUMBER_MINOR`,
|
||||
`BOOST_VERSION_NUMBER_PATCH` macros to extract components from valid version
|
||||
numbers.
|
||||
* Change VS version numbering. Version after VS2015 will use the compiler
|
||||
version instead of the varied product versions.
|
||||
|
||||
== 1.4.1
|
||||
|
||||
* Small fixes for some redefinition errors, and mispelled macros.
|
||||
* Slightly rearrangement of structure to comply with current library requirements.
|
||||
|
||||
== 1.4
|
||||
|
||||
* Add detection of SIMD hardware. With the addition of the `BOOST_HW_*`
|
||||
category (from Charly Chevalier).
|
||||
* Add compile only version of check utilities to address cross-compile
|
||||
use cases. And changed the BBv2 check support to use compile only checks.
|
||||
* Fix test warnings.
|
||||
* Fix typos on `AVAILABLE` macros for Windows Platform. (from Vemund Handeland)
|
||||
|
||||
== 1.3
|
||||
|
||||
* Fix many problems with `predef_check` functionality.
|
||||
* Update SunPro detection to accommodate latest version of compiler from Oracle.
|
||||
* Addition of Travis-CI and Appveyor testing.
|
||||
* Add `and` and `or` logical operators for `predef_check` expression on the Boost Build side.
|
||||
* Fix `BOOST_ARCH_PARISC` to correctly spelled name (from Graham Hanson).
|
||||
* Fix `MAKE_YYYYM` macros to correctly limit the month (from rick68).
|
||||
|
||||
== 1.2
|
||||
|
||||
* Account for skip in Visual Studio product version vs. compiler version.
|
||||
This supports version of VS 2015 an onward.
|
||||
* Add detection of Haiku OS (from Jessica Hamilton).
|
||||
* Some fixes to endian detection for Android (from mstahl-at-redhat.com).
|
||||
* Add missing `BOOST_PREDEF_MAKE_0X_VVRRPP` macro (from Erik Lindahl).
|
||||
* Add `predef_check` program and BBv2 integration for build configuration
|
||||
checks.
|
||||
|
||||
== 1.1
|
||||
|
||||
* Addition of `BOOST_PLAT_*` platform definitions for MinGW and
|
||||
Windows platform variants.
|
||||
* Detection of ARM architecture for Windows compilers to target
|
||||
mobile devices of Windows 8.
|
||||
* Improved ARM detection for 64 bit ARM.
|
||||
* Added detection of iOS an an operating system.
|
||||
* Improved detection of endianess on some platforms.
|
||||
* Addition of exclusive plus emulated definitions for platform
|
||||
and compiler detection.
|
||||
|
||||
WARNING: The big change for this version is the restructuring of the
|
||||
definitions to avoid duplicate definitions in one category. That is, only one
|
||||
`BOOST_OS_*`, `BOOST_COMP_*`, and `BOOST_PLAT_*` variant will be detected
|
||||
(except for sub-categories).
|
@ -1,69 +0,0 @@
|
||||
[/
|
||||
Copyright 2014-2016 Rene Rivera
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
]
|
||||
|
||||
[section History]
|
||||
|
||||
[heading 1.5]
|
||||
|
||||
* Fix Intel C/C++ compiler version specification.
|
||||
* Add `BOOST_VERSION_NUMBER_MAJOR`, `BOOST_VERSION_NUMBER_MINOR`,
|
||||
`BOOST_VERSION_NUMBER_PATCH` macros to extract components from valid version
|
||||
numbers.
|
||||
* Change VS version numbering. Version after VS2015 will use the compiler
|
||||
version instead of the varied product versions.
|
||||
|
||||
[heading 1.4.1]
|
||||
|
||||
* Small fixes for some redefinition errors, and mispelled macros.
|
||||
* Slightly rearrangement of structure to comply with current library requirements.
|
||||
|
||||
[heading 1.4]
|
||||
|
||||
* Add detection of SIMD hardware. With the addition of the `BOOST_HW_*`
|
||||
category (from Charly Chevalier).
|
||||
* Add compile only version of check utilities to address cross-compile
|
||||
use cases. And changed the BBv2 check support to use compile only checks.
|
||||
* Fix test warnings.
|
||||
* Fix typos on `AVAILABLE` macros for Windows Platform. (from Vemund Handeland)
|
||||
|
||||
[heading 1.3]
|
||||
|
||||
* Fix many problems with `predef_check` functionality.
|
||||
* Update SunPro detection to accomodate latest version of compiler from Oracle.
|
||||
* Addition of Travis-CI and Appveyor testing.
|
||||
* Add `and` and `or` logical operators for `predef_check` expression on the Boost Build side.
|
||||
* Fix `BOOST_ARCH_PARISC` to correctly spelled name (from Graham Hanson).
|
||||
* Fix `MAKE_YYYYM` macros to correctly limit the month (from rick68).
|
||||
|
||||
[heading 1.2]
|
||||
|
||||
* Account for skip in Visual Studio product version vs. compiler version.
|
||||
This supports version of VS 2015 an onward.
|
||||
* Add detection of Haiku OS (from Jessica Hamilton).
|
||||
* Some fixes to endian detection for Android (from mstahl-at-redhat.com).
|
||||
* Add missing `BOOST_PREDEF_MAKE_0X_VVRRPP` macro (from Erik Lindahl).
|
||||
* Add `predef_check` program and BBv2 integration for build configuration
|
||||
checks.
|
||||
|
||||
[heading 1.1]
|
||||
|
||||
* Addition of `BOOST_PLAT_*` platform definitions for MinGW and
|
||||
Windows platform variants.
|
||||
* Detection of ARM architecture for Windows compilers to target
|
||||
mobile devices of Windows 8.
|
||||
* Improved ARM detection for 64 bit ARM.
|
||||
* Added detection of iOS an an operating system.
|
||||
* Improved detection of endianess on some platforms.
|
||||
* Addition of exclusive plus emulated definitions for platform
|
||||
and compiler detection.
|
||||
|
||||
[warning The big change for this version is the restructuring of the
|
||||
definitions to avoid duplicate definitions in one category. That is, only one
|
||||
`BOOST_OS_*`, `BOOST_COMP_*`, and `BOOST_PLAT_*` variant will be detected
|
||||
(except for sub-categories).]
|
||||
|
||||
[endsect]
|
7316
doc/index.html
Normal file
7316
doc/index.html
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
45
doc/predef.css
Normal file
45
doc/predef.css
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
Copyright 2018-2019 Rene Rivera
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
.admonitionblock .icon .title {
|
||||
font-size: 2.5em;
|
||||
text-shadow: 1px 1px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
.caution .icon .title {
|
||||
color: rgba(192, 51, 0, 1);
|
||||
}
|
||||
.important .icon .title {
|
||||
color: rgba(192, 0, 0, 1);
|
||||
}
|
||||
.note .icon .title {
|
||||
color: rgba(26, 64, 128, 1);
|
||||
}
|
||||
.tip .icon .title {
|
||||
color: rgba(255, 192, 0, 1);
|
||||
}
|
||||
.warning .icon .title {
|
||||
color: rgba(192, 102, 0, 1);
|
||||
}
|
||||
p,blockquote,dt,td.content,span.alt {
|
||||
font-size: 1.1rem
|
||||
}
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-weight: bold;
|
||||
}
|
||||
h1 {
|
||||
font-size: 2.25em;
|
||||
}
|
||||
h2 {
|
||||
font-size: 1.5em;
|
||||
}
|
||||
h3,#toctitle,.sidebarblock>.content>.title {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
h4, h5 {
|
||||
font-size: 1.2em;
|
||||
}
|
||||
h6 {
|
||||
font-size: 1.1em;
|
||||
}
|
11
doc/pygments_init.rb
Normal file
11
doc/pygments_init.rb
Normal file
@ -0,0 +1,11 @@
|
||||
=begin
|
||||
Copyright 2018 Rene Rivera
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.txt or http://www.boost.org/LICENSE_1_0.txt)
|
||||
=end
|
||||
|
||||
require 'pygments'
|
||||
|
||||
# Need to create/register non-builtin lexers even if they are global plugins.
|
||||
Pygments::Lexer.create name: 'Jam', aliases: ['jam','bjam','b2'],
|
||||
filenames: ['*.jam','Jamfile','Jamroot'], mimetypes: ['text/x-jam']
|
@ -1,13 +1,10 @@
|
||||
[/
|
||||
Copyright 2014 Rene Rivera
|
||||
////
|
||||
Copyright 2014-2017 Rene Rivera
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
]
|
||||
////
|
||||
|
||||
[section To Do]
|
||||
= To Do
|
||||
|
||||
* Improve reference documentation.
|
||||
* Provide BOOST_WORKAROUND style macros for public use.
|
||||
|
||||
[endsect]
|
@ -1,11 +0,0 @@
|
||||
// Copyright 2013 Rene Rivera
|
||||
// Distributed under the Boost Software License, Version 1.0. (See accompany-
|
||||
// ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#ifndef BOOST_DETAIL_ENDIAN_HPP
|
||||
#define BOOST_DETAIL_ENDIAN_HPP
|
||||
|
||||
// Use the Predef library for the detection of endianess.
|
||||
#include <boost/predef/detail/endian_compat.h>
|
||||
|
||||
#endif
|
@ -14,12 +14,15 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/architecture/arm.h>
|
||||
#include <boost/predef/architecture/blackfin.h>
|
||||
#include <boost/predef/architecture/convex.h>
|
||||
#include <boost/predef/architecture/e2k.h>
|
||||
#include <boost/predef/architecture/ia64.h>
|
||||
#include <boost/predef/architecture/m68k.h>
|
||||
#include <boost/predef/architecture/mips.h>
|
||||
#include <boost/predef/architecture/parisc.h>
|
||||
#include <boost/predef/architecture/ppc.h>
|
||||
#include <boost/predef/architecture/ptx.h>
|
||||
#include <boost/predef/architecture/pyramid.h>
|
||||
#include <boost/predef/architecture/riscv.h>
|
||||
#include <boost/predef/architecture/rs6k.h>
|
||||
#include <boost/predef/architecture/sparc.h>
|
||||
#include <boost/predef/architecture/superh.h>
|
||||
@ -27,6 +30,5 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/architecture/sys390.h>
|
||||
#include <boost/predef/architecture/x86.h>
|
||||
#include <boost/predef/architecture/z.h>
|
||||
/*#include <boost/predef/architecture/.h>*/
|
||||
|
||||
#endif
|
||||
|
@ -11,22 +11,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_ALPHA`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_ALPHA`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/DEC_Alpha DEC Alpha] architecture.
|
||||
http://en.wikipedia.org/wiki/DEC_Alpha[DEC Alpha] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[[`__alpha__`] [__predef_detection__]]
|
||||
[[`__alpha`] [__predef_detection__]]
|
||||
[[`_M_ALPHA`] [__predef_detection__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
| `+__alpha__+` | {predef_detection}
|
||||
| `+__alpha+` | {predef_detection}
|
||||
| `+_M_ALPHA+` | {predef_detection}
|
||||
|
||||
[[`__alpha_ev4__`] [4.0.0]]
|
||||
[[`__alpha_ev5__`] [5.0.0]]
|
||||
[[`__alpha_ev6__`] [6.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+__alpha_ev4__+` | 4.0.0
|
||||
| `+__alpha_ev5__+` | 5.0.0
|
||||
| `+__alpha_ev6__+` | 6.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_ALPHA BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -51,6 +52,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_ALPHA_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_ALPHA
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_ALPHA_NAME "DEC Alpha"
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Rene Rivera 2008-2015
|
||||
Copyright Rene Rivera 2008-2019
|
||||
Copyright Franz Detro 2014
|
||||
Copyright (c) Microsoft Corporation 2014
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
@ -13,36 +13,77 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_ARM`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_ARM`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/ARM_architecture ARM] architecture.
|
||||
http://en.wikipedia.org/wiki/ARM_architecture[ARM] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__arm__`] [__predef_detection__]]
|
||||
[[`__arm64`] [__predef_detection__]]
|
||||
[[`__thumb__`] [__predef_detection__]]
|
||||
[[`__TARGET_ARCH_ARM`] [__predef_detection__]]
|
||||
[[`__TARGET_ARCH_THUMB`] [__predef_detection__]]
|
||||
[[`_M_ARM`] [__predef_detection__]]
|
||||
| `+__ARM_ARCH+` | {predef_detection}
|
||||
| `+__TARGET_ARCH_ARM+` | {predef_detection}
|
||||
| `+__TARGET_ARCH_THUMB+` | {predef_detection}
|
||||
| `+_M_ARM+` | {predef_detection}
|
||||
| `+__arm__+` | {predef_detection}
|
||||
| `+__arm64+` | {predef_detection}
|
||||
| `+__thumb__+` | {predef_detection}
|
||||
| `+_M_ARM64+` | {predef_detection}
|
||||
| `+__aarch64__+` | {predef_detection}
|
||||
| `+__AARCH64EL__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_7__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_7A__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_7R__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_7M__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_6K__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_6Z__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_6KZ__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_6T2__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_5TE__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_5TEJ__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_4T__+` | {predef_detection}
|
||||
| `+__ARM_ARCH_4__+` | {predef_detection}
|
||||
|
||||
[[`__arm64`] [8.0.0]]
|
||||
[[`__TARGET_ARCH_ARM`] [V.0.0]]
|
||||
[[`__TARGET_ARCH_THUMB`] [V.0.0]]
|
||||
[[`_M_ARM`] [V.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+__ARM_ARCH+` | V.0.0
|
||||
| `+__TARGET_ARCH_ARM+` | V.0.0
|
||||
| `+__TARGET_ARCH_THUMB+` | V.0.0
|
||||
| `+_M_ARM+` | V.0.0
|
||||
| `+__arm64+` | 8.0.0
|
||||
| `+_M_ARM64+` | 8.0.0
|
||||
| `+__aarch64__+` | 8.0.0
|
||||
| `+__AARCH64EL__+` | 8.0.0
|
||||
| `+__ARM_ARCH_7__+` | 7.0.0
|
||||
| `+__ARM_ARCH_7A__+` | 7.0.0
|
||||
| `+__ARM_ARCH_7R__+` | 7.0.0
|
||||
| `+__ARM_ARCH_7M__+` | 7.0.0
|
||||
| `+__ARM_ARCH_6K__+` | 6.0.0
|
||||
| `+__ARM_ARCH_6Z__+` | 6.0.0
|
||||
| `+__ARM_ARCH_6KZ__+` | 6.0.0
|
||||
| `+__ARM_ARCH_6T2__+` | 6.0.0
|
||||
| `+__ARM_ARCH_5TE__+` | 5.0.0
|
||||
| `+__ARM_ARCH_5TEJ__+` | 5.0.0
|
||||
| `+__ARM_ARCH_4T__+` | 4.0.0
|
||||
| `+__ARM_ARCH_4__+` | 4.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_ARM BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__arm__) || defined(__arm64) || defined(__thumb__) || \
|
||||
defined(__TARGET_ARCH_ARM) || defined(__TARGET_ARCH_THUMB) || \
|
||||
defined(_M_ARM)
|
||||
#if \
|
||||
defined(__ARM_ARCH) || defined(__TARGET_ARCH_ARM) || \
|
||||
defined(__TARGET_ARCH_THUMB) || defined(_M_ARM) || \
|
||||
defined(__arm__) || defined(__arm64) || defined(__thumb__) || \
|
||||
defined(_M_ARM64) || defined(__aarch64__) || defined(__AARCH64EL__) || \
|
||||
defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \
|
||||
defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || \
|
||||
defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \
|
||||
defined(__ARM_ARCH_6KZ__) || defined(__ARM_ARCH_6T2__) || \
|
||||
defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__) || \
|
||||
defined(__ARM_ARCH_4T__) || defined(__ARM_ARCH_4__)
|
||||
# undef BOOST_ARCH_ARM
|
||||
# if !defined(BOOST_ARCH_ARM) && defined(__arm64)
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(8,0,0)
|
||||
# if !defined(BOOST_ARCH_ARM) && defined(__ARM_ARCH)
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(__ARM_ARCH,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_ARM) && defined(__TARGET_ARCH_ARM)
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(__TARGET_ARCH_ARM,0,0)
|
||||
@ -53,6 +94,29 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# if !defined(BOOST_ARCH_ARM) && defined(_M_ARM)
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(_M_ARM,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_ARM) && ( \
|
||||
defined(__arm64) || defined(_M_ARM64) || defined(__aarch64__) || \
|
||||
defined(__AARCH64EL__) )
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(8,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_ARM) && ( \
|
||||
defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \
|
||||
defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) )
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(7,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_ARM) && ( \
|
||||
defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \
|
||||
defined(__ARM_ARCH_6KZ__) || defined(__ARM_ARCH_6T2__) )
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(6,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_ARM) && ( \
|
||||
defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__) )
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(5,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_ARM) && ( \
|
||||
defined(__ARM_ARCH_4T__) || defined(__ARM_ARCH_4__) )
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(4,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_ARM)
|
||||
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
@ -62,6 +126,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_ARM_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_ARM
|
||||
# if BOOST_ARCH_ARM >= BOOST_VERSION_NUMBER(8,0,0)
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# else
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_ARM_NAME "ARM"
|
||||
|
||||
#endif
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_BLACKFIN`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_BLACKFIN`
|
||||
|
||||
Blackfin Processors from Analog Devices.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__bfin__`] [__predef_detection__]]
|
||||
[[`__BFIN__`] [__predef_detection__]]
|
||||
[[`bfin`] [__predef_detection__]]
|
||||
[[`BFIN`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__bfin__+` | {predef_detection}
|
||||
| `+__BFIN__+` | {predef_detection}
|
||||
| `bfin` | {predef_detection}
|
||||
| `BFIN` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_BLACKFIN BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -38,6 +39,11 @@ Blackfin Processors from Analog Devices.
|
||||
# define BOOST_ARCH_BLACKFIN_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_BLACKFIN
|
||||
# undef BOOST_ARCH_WORD_BITS_16
|
||||
# define BOOST_ARCH_WORD_BITS_16 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_BLACKFIN_NAME "Blackfin"
|
||||
|
||||
#endif
|
||||
|
@ -11,23 +11,24 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_CONVEX`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_CONVEX`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Convex_Computer Convex Computer] architecture.
|
||||
http://en.wikipedia.org/wiki/Convex_Computer[Convex Computer] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__convex__`] [__predef_detection__]]
|
||||
| `+__convex__+` | {predef_detection}
|
||||
|
||||
[[`__convex_c1__`] [1.0.0]]
|
||||
[[`__convex_c2__`] [2.0.0]]
|
||||
[[`__convex_c32__`] [3.2.0]]
|
||||
[[`__convex_c34__`] [3.4.0]]
|
||||
[[`__convex_c38__`] [3.8.0]]
|
||||
]
|
||||
*/
|
||||
| `+__convex_c1__+` | 1.0.0
|
||||
| `+__convex_c2__+` | 2.0.0
|
||||
| `+__convex_c32__+` | 3.2.0
|
||||
| `+__convex_c34__+` | 3.4.0
|
||||
| `+__convex_c38__+` | 3.8.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_CONVEX BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -57,6 +58,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_CONVEX_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_CONVEX
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_CONVEX_NAME "Convex Computer"
|
||||
|
||||
#endif
|
||||
|
54
include/boost/predef/architecture/e2k.h
Normal file
54
include/boost/predef/architecture/e2k.h
Normal file
@ -0,0 +1,54 @@
|
||||
/*
|
||||
Copyright Konstantin Ivlev 2021
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_ARCHITECTURE_E2K_H
|
||||
#define BOOST_PREDEF_ARCHITECTURE_E2K_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_E2K`
|
||||
|
||||
https://en.wikipedia.org/wiki/Elbrus_2000[E2K] architecture.
|
||||
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
| `+__e2k__+` | {predef_detection}
|
||||
|
||||
| `+__e2k__+` | V.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_E2K BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__e2k__)
|
||||
# undef BOOST_ARCH_E2K
|
||||
# if !defined(BOOST_ARCH_E2K) && defined(__iset__)
|
||||
# define BOOST_ARCH_E2K BOOST_VERSION_NUMBER(__iset__,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_E2K)
|
||||
# define BOOST_ARCH_E2K BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_E2K
|
||||
# define BOOST_ARCH_E2K_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_E2K
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_E2K_NAME "E2K"
|
||||
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_E2K,BOOST_ARCH_E2K_NAME)
|
@ -11,22 +11,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_IA64`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_IA64`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Ia64 Intel Itanium 64] architecture.
|
||||
http://en.wikipedia.org/wiki/Ia64[Intel Itanium 64] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__ia64__`] [__predef_detection__]]
|
||||
[[`_IA64`] [__predef_detection__]]
|
||||
[[`__IA64__`] [__predef_detection__]]
|
||||
[[`__ia64`] [__predef_detection__]]
|
||||
[[`_M_IA64`] [__predef_detection__]]
|
||||
[[`__itanium__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__ia64__+` | {predef_detection}
|
||||
| `+_IA64+` | {predef_detection}
|
||||
| `+__IA64__+` | {predef_detection}
|
||||
| `+__ia64+` | {predef_detection}
|
||||
| `+_M_IA64+` | {predef_detection}
|
||||
| `+__itanium__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_IA64 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -41,6 +42,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_IA64_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_IA64
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_IA64_NAME "Intel Itanium 64"
|
||||
|
||||
#endif
|
||||
|
@ -11,37 +11,38 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_M68K`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_M68K`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/M68k Motorola 68k] architecture.
|
||||
http://en.wikipedia.org/wiki/M68k[Motorola 68k] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__m68k__`] [__predef_detection__]]
|
||||
[[`M68000`] [__predef_detection__]]
|
||||
| `+__m68k__+` | {predef_detection}
|
||||
| `M68000` | {predef_detection}
|
||||
|
||||
[[`__mc68060__`] [6.0.0]]
|
||||
[[`mc68060`] [6.0.0]]
|
||||
[[`__mc68060`] [6.0.0]]
|
||||
[[`__mc68040__`] [4.0.0]]
|
||||
[[`mc68040`] [4.0.0]]
|
||||
[[`__mc68040`] [4.0.0]]
|
||||
[[`__mc68030__`] [3.0.0]]
|
||||
[[`mc68030`] [3.0.0]]
|
||||
[[`__mc68030`] [3.0.0]]
|
||||
[[`__mc68020__`] [2.0.0]]
|
||||
[[`mc68020`] [2.0.0]]
|
||||
[[`__mc68020`] [2.0.0]]
|
||||
[[`__mc68010__`] [1.0.0]]
|
||||
[[`mc68010`] [1.0.0]]
|
||||
[[`__mc68010`] [1.0.0]]
|
||||
[[`__mc68000__`] [0.0.1]]
|
||||
[[`mc68000`] [0.0.1]]
|
||||
[[`__mc68000`] [0.0.1]]
|
||||
]
|
||||
*/
|
||||
| `+__mc68060__+` | 6.0.0
|
||||
| `mc68060` | 6.0.0
|
||||
| `+__mc68060+` | 6.0.0
|
||||
| `+__mc68040__+` | 4.0.0
|
||||
| `mc68040` | 4.0.0
|
||||
| `+__mc68040+` | 4.0.0
|
||||
| `+__mc68030__+` | 3.0.0
|
||||
| `mc68030` | 3.0.0
|
||||
| `+__mc68030+` | 3.0.0
|
||||
| `+__mc68020__+` | 2.0.0
|
||||
| `mc68020` | 2.0.0
|
||||
| `+__mc68020+` | 2.0.0
|
||||
| `+__mc68010__+` | 1.0.0
|
||||
| `mc68010` | 1.0.0
|
||||
| `+__mc68010+` | 1.0.0
|
||||
| `+__mc68000__+` | 0.0.1
|
||||
| `mc68000` | 0.0.1
|
||||
| `+__mc68000+` | 0.0.1
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_M68K BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -74,6 +75,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_M68K_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_M68K
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_M68K_NAME "Motorola 68k"
|
||||
|
||||
#endif
|
||||
|
@ -11,30 +11,31 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_MIPS`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_MIPS`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/MIPS_architecture MIPS] architecture.
|
||||
http://en.wikipedia.org/wiki/MIPS_architecture[MIPS] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__mips__`] [__predef_detection__]]
|
||||
[[`__mips`] [__predef_detection__]]
|
||||
[[`__MIPS__`] [__predef_detection__]]
|
||||
| `+__mips__+` | {predef_detection}
|
||||
| `+__mips+` | {predef_detection}
|
||||
| `+__MIPS__+` | {predef_detection}
|
||||
|
||||
[[`__mips`] [V.0.0]]
|
||||
[[`_MIPS_ISA_MIPS1`] [1.0.0]]
|
||||
[[`_R3000`] [1.0.0]]
|
||||
[[`_MIPS_ISA_MIPS2`] [2.0.0]]
|
||||
[[`__MIPS_ISA2__`] [2.0.0]]
|
||||
[[`_R4000`] [2.0.0]]
|
||||
[[`_MIPS_ISA_MIPS3`] [3.0.0]]
|
||||
[[`__MIPS_ISA3__`] [3.0.0]]
|
||||
[[`_MIPS_ISA_MIPS4`] [4.0.0]]
|
||||
[[`__MIPS_ISA4__`] [4.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+__mips+` | V.0.0
|
||||
| `+_MIPS_ISA_MIPS1+` | 1.0.0
|
||||
| `+_R3000+` | 1.0.0
|
||||
| `+_MIPS_ISA_MIPS2+` | 2.0.0
|
||||
| `+__MIPS_ISA2__+` | 2.0.0
|
||||
| `+_R4000+` | 2.0.0
|
||||
| `+_MIPS_ISA_MIPS3+` | 3.0.0
|
||||
| `+__MIPS_ISA3__+` | 3.0.0
|
||||
| `+_MIPS_ISA_MIPS4+` | 4.0.0
|
||||
| `+__MIPS_ISA4__+` | 4.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_MIPS BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -65,6 +66,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_MIPS_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_MIPS
|
||||
# if BOOST_ARCH_MIPS >= BOOST_VERSION_NUMBER(3,0,0)
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# else
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_MIPS_NAME "MIPS"
|
||||
|
||||
#endif
|
||||
|
@ -11,28 +11,29 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_PARISK`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_PARISC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/PA-RISC_family HP/PA RISC] architecture.
|
||||
http://en.wikipedia.org/wiki/PA-RISC_family[HP/PA RISC] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__hppa__`] [__predef_detection__]]
|
||||
[[`__hppa`] [__predef_detection__]]
|
||||
[[`__HPPA__`] [__predef_detection__]]
|
||||
| `+__hppa__+` | {predef_detection}
|
||||
| `+__hppa+` | {predef_detection}
|
||||
| `+__HPPA__+` | {predef_detection}
|
||||
|
||||
[[`_PA_RISC1_0`] [1.0.0]]
|
||||
[[`_PA_RISC1_1`] [1.1.0]]
|
||||
[[`__HPPA11__`] [1.1.0]]
|
||||
[[`__PA7100__`] [1.1.0]]
|
||||
[[`_PA_RISC2_0`] [2.0.0]]
|
||||
[[`__RISC2_0__`] [2.0.0]]
|
||||
[[`__HPPA20__`] [2.0.0]]
|
||||
[[`__PA8000__`] [2.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+_PA_RISC1_0+` | 1.0.0
|
||||
| `+_PA_RISC1_1+` | 1.1.0
|
||||
| `+__HPPA11__+` | 1.1.0
|
||||
| `+__PA7100__+` | 1.1.0
|
||||
| `+_PA_RISC2_0+` | 2.0.0
|
||||
| `+__RISC2_0__+` | 2.0.0
|
||||
| `+__HPPA20__+` | 2.0.0
|
||||
| `+__PA8000__+` | 2.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_PARISC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -56,6 +57,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_PARISC_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_PARISC
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_PARISC_NAME "HP/PA RISC"
|
||||
|
||||
#endif
|
||||
|
@ -11,40 +11,49 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_PPC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_PPC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/PowerPC PowerPC] architecture.
|
||||
http://en.wikipedia.org/wiki/PowerPC[PowerPC] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__powerpc`] [__predef_detection__]]
|
||||
[[`__powerpc__`] [__predef_detection__]]
|
||||
[[`__POWERPC__`] [__predef_detection__]]
|
||||
[[`__ppc__`] [__predef_detection__]]
|
||||
[[`_M_PPC`] [__predef_detection__]]
|
||||
[[`_ARCH_PPC`] [__predef_detection__]]
|
||||
[[`__PPCGECKO__`] [__predef_detection__]]
|
||||
[[`__PPCBROADWAY__`] [__predef_detection__]]
|
||||
[[`_XENON`] [__predef_detection__]]
|
||||
| `+__powerpc+` | {predef_detection}
|
||||
| `+__powerpc__+` | {predef_detection}
|
||||
| `+__powerpc64__+` | {predef_detection}
|
||||
| `+__POWERPC__+` | {predef_detection}
|
||||
| `+__ppc__+` | {predef_detection}
|
||||
| `+__ppc64__+` | {predef_detection}
|
||||
| `+__PPC__+` | {predef_detection}
|
||||
| `+__PPC64__+` | {predef_detection}
|
||||
| `+_M_PPC+` | {predef_detection}
|
||||
| `+_ARCH_PPC+` | {predef_detection}
|
||||
| `+_ARCH_PPC64+` | {predef_detection}
|
||||
| `+__PPCGECKO__+` | {predef_detection}
|
||||
| `+__PPCBROADWAY__+` | {predef_detection}
|
||||
| `+_XENON+` | {predef_detection}
|
||||
| `+__ppc+` | {predef_detection}
|
||||
|
||||
[[`__ppc601__`] [6.1.0]]
|
||||
[[`_ARCH_601`] [6.1.0]]
|
||||
[[`__ppc603__`] [6.3.0]]
|
||||
[[`_ARCH_603`] [6.3.0]]
|
||||
[[`__ppc604__`] [6.4.0]]
|
||||
[[`__ppc604__`] [6.4.0]]
|
||||
]
|
||||
*/
|
||||
| `+__ppc601__+` | 6.1.0
|
||||
| `+_ARCH_601+` | 6.1.0
|
||||
| `+__ppc603__+` | 6.3.0
|
||||
| `+_ARCH_603+` | 6.3.0
|
||||
| `+__ppc604__+` | 6.4.0
|
||||
| `+__ppc604__+` | 6.4.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_PPC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__powerpc) || defined(__powerpc__) || \
|
||||
defined(__POWERPC__) || defined(__ppc__) || \
|
||||
defined(_M_PPC) || defined(_ARCH_PPC) || \
|
||||
#if defined(__powerpc) || defined(__powerpc__) || defined(__powerpc64__) || \
|
||||
defined(__POWERPC__) || defined(__ppc__) || defined(__ppc64__) || \
|
||||
defined(__PPC__) || defined(__PPC64__) || \
|
||||
defined(_M_PPC) || defined(_ARCH_PPC) || defined(_ARCH_PPC64) || \
|
||||
defined(__PPCGECKO__) || defined(__PPCBROADWAY__) || \
|
||||
defined(_XENON)
|
||||
defined(_XENON) || \
|
||||
defined(__ppc)
|
||||
# undef BOOST_ARCH_PPC
|
||||
# if !defined (BOOST_ARCH_PPC) && (defined(__ppc601__) || defined(_ARCH_601))
|
||||
# define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,1,0)
|
||||
@ -66,7 +75,50 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#define BOOST_ARCH_PPC_NAME "PowerPC"
|
||||
|
||||
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_PPC_64`
|
||||
|
||||
http://en.wikipedia.org/wiki/PowerPC[PowerPC] 64 bit architecture.
|
||||
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
| `+__powerpc64__+` | {predef_detection}
|
||||
| `+__ppc64__+` | {predef_detection}
|
||||
| `+__PPC64__+` | {predef_detection}
|
||||
| `+_ARCH_PPC64+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_PPC_64 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__powerpc64__) || defined(__ppc64__) || defined(__PPC64__) || \
|
||||
defined(_ARCH_PPC64)
|
||||
# undef BOOST_ARCH_PPC_64
|
||||
# define BOOST_ARCH_PPC_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_PPC_64
|
||||
# define BOOST_ARCH_PPC_64_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_PPC_64_NAME "PowerPC64"
|
||||
|
||||
|
||||
#if BOOST_ARCH_PPC_64
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#else
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC,BOOST_ARCH_PPC_NAME)
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC_64,BOOST_ARCH_PPC_64_NAME)
|
||||
|
50
include/boost/predef/architecture/ptx.h
Normal file
50
include/boost/predef/architecture/ptx.h
Normal file
@ -0,0 +1,50 @@
|
||||
/*
|
||||
Copyright Benjamin Worpitz 2018
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_ARCHITECTURE_PTX_H
|
||||
#define BOOST_PREDEF_ARCHITECTURE_PTX_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_PTX`
|
||||
|
||||
https://en.wikipedia.org/wiki/Parallel_Thread_Execution[PTX] architecture.
|
||||
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
| `+__CUDA_ARCH__+` | {predef_detection}
|
||||
|
||||
| `+__CUDA_ARCH__+` | V.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_PTX BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__CUDA_ARCH__)
|
||||
# undef BOOST_ARCH_PTX
|
||||
# define BOOST_ARCH_PTX BOOST_PREDEF_MAKE_10_VR0(__CUDA_ARCH__)
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_PTX
|
||||
# define BOOST_ARCH_PTX_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_PTX
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_PTX_NAME "PTX"
|
||||
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PTX,BOOST_ARCH_PTX_NAME)
|
@ -11,17 +11,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_PYRAMID`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_PYRAMID`
|
||||
|
||||
Pyramid 9810 architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`pyr`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `pyr` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_PYRAMID BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -34,6 +35,11 @@ Pyramid 9810 architecture.
|
||||
# define BOOST_ARCH_PYRAMID_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_PYRAMID
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_PYRAMID_NAME "Pyramid 9810"
|
||||
|
||||
#endif
|
||||
|
48
include/boost/predef/architecture/riscv.h
Normal file
48
include/boost/predef/architecture/riscv.h
Normal file
@ -0,0 +1,48 @@
|
||||
/*
|
||||
Copyright Andreas Schwab 2019
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_ARCHITECTURE_RISCV_H
|
||||
#define BOOST_PREDEF_ARCHITECTURE_RISCV_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_RISCV`
|
||||
|
||||
http://en.wikipedia.org/wiki/RISC-V[RISC-V] architecture.
|
||||
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
| `+__riscv+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_RISCV BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__riscv)
|
||||
# undef BOOST_ARCH_RISCV
|
||||
# define BOOST_ARCH_RISCV BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_RISCV
|
||||
# define BOOST_ARCH_RISCV_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_RISCV
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_RISCV_NAME "RISC-V"
|
||||
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_RISCV,BOOST_ARCH_RISCV_NAME)
|
@ -11,21 +11,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_RS6000`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_RS6000`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/RS/6000 RS/6000] architecture.
|
||||
http://en.wikipedia.org/wiki/RS/6000[RS/6000] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__THW_RS6000`] [__predef_detection__]]
|
||||
[[`_IBMR2`] [__predef_detection__]]
|
||||
[[`_POWER`] [__predef_detection__]]
|
||||
[[`_ARCH_PWR`] [__predef_detection__]]
|
||||
[[`_ARCH_PWR2`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__THW_RS6000+` | {predef_detection}
|
||||
| `+_IBMR2+` | {predef_detection}
|
||||
| `+_POWER+` | {predef_detection}
|
||||
| `+_ARCH_PWR+` | {predef_detection}
|
||||
| `+_ARCH_PWR2+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_RS6000 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -40,6 +41,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_RS6000_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_RS6000
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_RS6000_NAME "RS/6000"
|
||||
|
||||
#define BOOST_ARCH_PWR BOOST_ARCH_RS6000
|
||||
@ -48,6 +54,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_PWR_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_PWR
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_PWR_NAME BOOST_ARCH_RS6000_NAME
|
||||
|
||||
#endif
|
||||
|
@ -11,30 +11,33 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_SPARC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_SPARC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/SPARC SPARC] architecture.
|
||||
http://en.wikipedia.org/wiki/SPARC[SPARC] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__sparc__`] [__predef_detection__]]
|
||||
[[`__sparc`] [__predef_detection__]]
|
||||
| `+__sparc__+` | {predef_detection}
|
||||
| `+__sparc+` | {predef_detection}
|
||||
|
||||
[[`__sparcv9`] [9.0.0]]
|
||||
[[`__sparcv8`] [8.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+__sparcv9+` | 9.0.0
|
||||
| `+__sparc_v9__+` | 9.0.0
|
||||
| `+__sparcv8+` | 8.0.0
|
||||
| `+__sparc_v8__+` | 8.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_SPARC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__sparc__) || defined(__sparc)
|
||||
# undef BOOST_ARCH_SPARC
|
||||
# if !defined(BOOST_ARCH_SPARC) && defined(__sparcv9)
|
||||
# if !defined(BOOST_ARCH_SPARC) && (defined(__sparcv9) || defined(__sparc_v9__))
|
||||
# define BOOST_ARCH_SPARC BOOST_VERSION_NUMBER(9,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_SPARC) && defined(__sparcv8)
|
||||
# if !defined(BOOST_ARCH_SPARC) && (defined(__sparcv8) || defined(__sparc_v8__))
|
||||
# define BOOST_ARCH_SPARC BOOST_VERSION_NUMBER(8,0,0)
|
||||
# endif
|
||||
# if !defined(BOOST_ARCH_SPARC)
|
||||
@ -46,6 +49,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_SPARC_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_SPARC
|
||||
# if BOOST_ARCH_SPARC >= BOOST_VERSION_NUMBER(9,0,0)
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# else
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_SPARC_NAME "SPARC"
|
||||
|
||||
#endif
|
||||
|
@ -11,25 +11,26 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_SH`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_SH`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/SuperH SuperH] architecture:
|
||||
If available versions \[1-5\] are specifically detected.
|
||||
http://en.wikipedia.org/wiki/SuperH[SuperH] architecture:
|
||||
If available versions [1-5] are specifically detected.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__sh__`] [__predef_detection__]]
|
||||
| `+__sh__+` | {predef_detection}
|
||||
|
||||
[[`__SH5__`] [5.0.0]]
|
||||
[[`__SH4__`] [4.0.0]]
|
||||
[[`__sh3__`] [3.0.0]]
|
||||
[[`__SH3__`] [3.0.0]]
|
||||
[[`__sh2__`] [2.0.0]]
|
||||
[[`__sh1__`] [1.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+__SH5__+` | 5.0.0
|
||||
| `+__SH4__+` | 4.0.0
|
||||
| `+__sh3__+` | 3.0.0
|
||||
| `+__SH3__+` | 3.0.0
|
||||
| `+__sh2__+` | 2.0.0
|
||||
| `+__sh1__+` | 1.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_SH BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -59,6 +60,19 @@ If available versions \[1-5\] are specifically detected.
|
||||
# define BOOST_ARCH_SH_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_SH
|
||||
# if BOOST_ARCH_SH >= BOOST_VERSION_NUMBER(5,0,0)
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# elif BOOST_ARCH_SH >= BOOST_VERSION_NUMBER(3,0,0)
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# else
|
||||
# undef BOOST_ARCH_WORD_BITS_16
|
||||
# define BOOST_ARCH_WORD_BITS_16 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_SH_NAME "SuperH"
|
||||
|
||||
#endif
|
||||
|
@ -11,18 +11,19 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_SYS370`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_SYS370`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/System/370 System/370] architecture.
|
||||
http://en.wikipedia.org/wiki/System/370[System/370] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__370__`] [__predef_detection__]]
|
||||
[[`__THW_370__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__370__+` | {predef_detection}
|
||||
| `+__THW_370__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_SYS370 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -35,6 +36,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_SYS370_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_SYS370
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_SYS370_NAME "System/370"
|
||||
|
||||
#endif
|
||||
|
@ -11,18 +11,19 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_SYS390`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_SYS390`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/System/390 System/390] architecture.
|
||||
http://en.wikipedia.org/wiki/System/390[System/390] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__s390__`] [__predef_detection__]]
|
||||
[[`__s390x__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__s390__+` | {predef_detection}
|
||||
| `+__s390x__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_SYS390 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -35,6 +36,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_SYS390_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_SYS390
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_SYS390_NAME "System/390"
|
||||
|
||||
#endif
|
||||
|
@ -11,13 +11,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#ifndef BOOST_PREDEF_ARCHITECTURE_X86_H
|
||||
#define BOOST_PREDEF_ARCHITECTURE_X86_H
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_X86`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_X86`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/X86 Intel x86] architecture. This is
|
||||
http://en.wikipedia.org/wiki/X86[Intel x86] architecture. This is
|
||||
a category to indicate that either `BOOST_ARCH_X86_32` or
|
||||
`BOOST_ARCH_X86_64` is detected.
|
||||
*/
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_X86 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,35 +11,36 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_X86_32`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_X86_32`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/X86 Intel x86] architecture:
|
||||
If available versions \[3-6\] are specifically detected.
|
||||
http://en.wikipedia.org/wiki/X86[Intel x86] architecture:
|
||||
If available versions [3-6] are specifically detected.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`i386`] [__predef_detection__]]
|
||||
[[`__i386__`] [__predef_detection__]]
|
||||
[[`__i486__`] [__predef_detection__]]
|
||||
[[`__i586__`] [__predef_detection__]]
|
||||
[[`__i686__`] [__predef_detection__]]
|
||||
[[`__i386`] [__predef_detection__]]
|
||||
[[`_M_IX86`] [__predef_detection__]]
|
||||
[[`_X86_`] [__predef_detection__]]
|
||||
[[`__THW_INTEL__`] [__predef_detection__]]
|
||||
[[`__I86__`] [__predef_detection__]]
|
||||
[[`__INTEL__`] [__predef_detection__]]
|
||||
| `i386` | {predef_detection}
|
||||
| `+__i386__+` | {predef_detection}
|
||||
| `+__i486__+` | {predef_detection}
|
||||
| `+__i586__+` | {predef_detection}
|
||||
| `+__i686__+` | {predef_detection}
|
||||
| `+__i386+` | {predef_detection}
|
||||
| `+_M_IX86+` | {predef_detection}
|
||||
| `+_X86_+` | {predef_detection}
|
||||
| `+__THW_INTEL__+` | {predef_detection}
|
||||
| `+__I86__+` | {predef_detection}
|
||||
| `+__INTEL__+` | {predef_detection}
|
||||
|
||||
[[`__I86__`] [V.0.0]]
|
||||
[[`_M_IX86`] [V.0.0]]
|
||||
[[`__i686__`] [6.0.0]]
|
||||
[[`__i586__`] [5.0.0]]
|
||||
[[`__i486__`] [4.0.0]]
|
||||
[[`__i386__`] [3.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+__I86__+` | V.0.0
|
||||
| `+_M_IX86+` | V.0.0
|
||||
| `+__i686__+` | 6.0.0
|
||||
| `+__i586__+` | 5.0.0
|
||||
| `+__i486__+` | 4.0.0
|
||||
| `+__i386__+` | 3.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_X86_32 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -77,6 +78,11 @@ If available versions \[3-6\] are specifically detected.
|
||||
# define BOOST_ARCH_X86_32_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_X86_32
|
||||
# undef BOOST_ARCH_WORD_BITS_32
|
||||
# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_X86_32_NAME "Intel x86-32"
|
||||
|
||||
#include <boost/predef/architecture/x86.h>
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Rene Rivera 2008-2015
|
||||
Copyright Rene Rivera 2008-2021
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
@ -11,21 +11,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_X86_64`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_X86_64`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Ia64 Intel IA-64] architecture.
|
||||
https://en.wikipedia.org/wiki/X86-64[X86-64] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__x86_64`] [__predef_detection__]]
|
||||
[[`__x86_64__`] [__predef_detection__]]
|
||||
[[`__amd64__`] [__predef_detection__]]
|
||||
[[`__amd64`] [__predef_detection__]]
|
||||
[[`_M_X64`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__x86_64+` | {predef_detection}
|
||||
| `+__x86_64__+` | {predef_detection}
|
||||
| `+__amd64__+` | {predef_detection}
|
||||
| `+__amd64+` | {predef_detection}
|
||||
| `+_M_X64+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_X86_64 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -40,6 +41,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_X86_64_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_X86_64
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_X86_64_NAME "Intel x86-64"
|
||||
|
||||
#include <boost/predef/architecture/x86.h>
|
||||
|
@ -11,17 +11,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCH_Z`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_ARCH_Z`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Z/Architecture z/Architecture] architecture.
|
||||
http://en.wikipedia.org/wiki/Z/Architecture[z/Architecture] architecture.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__SYSC_ZARCH__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__SYSC_ZARCH__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_ARCH_Z BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -34,6 +35,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
# define BOOST_ARCH_Z_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if BOOST_ARCH_Z
|
||||
# undef BOOST_ARCH_WORD_BITS_64
|
||||
# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_ARCH_Z_NAME "z/Architecture"
|
||||
|
||||
#endif
|
||||
|
@ -32,6 +32,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/compiler/metrowerks.h>
|
||||
#include <boost/predef/compiler/microtec.h>
|
||||
#include <boost/predef/compiler/mpw.h>
|
||||
#include <boost/predef/compiler/nvcc.h>
|
||||
#include <boost/predef/compiler/palm.h>
|
||||
#include <boost/predef/compiler/pgi.h>
|
||||
#include <boost/predef/compiler/sgi_mipspro.h>
|
||||
|
@ -11,22 +11,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_BORLAND`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_BORLAND`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/C_plus_plus_builder Borland C++] compiler.
|
||||
http://en.wikipedia.org/wiki/C_plus_plus_builder[Borland {CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__BORLANDC__`] [__predef_detection__]]
|
||||
[[`__CODEGEARC__`] [__predef_detection__]]
|
||||
| `+__BORLANDC__+` | {predef_detection}
|
||||
| `+__CODEGEARC__+` | {predef_detection}
|
||||
|
||||
[[`__BORLANDC__`] [V.R.P]]
|
||||
[[`__CODEGEARC__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__BORLANDC__+` | V.R.P
|
||||
| `+__CODEGEARC__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_BORLAND BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_CLANG`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_CLANG`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Clang Clang] compiler.
|
||||
http://en.wikipedia.org/wiki/Clang[Clang] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__clang__`] [__predef_detection__]]
|
||||
| `+__clang__+` | {predef_detection}
|
||||
|
||||
[[`__clang_major__`, `__clang_minor__`, `__clang_patchlevel__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__clang_major__+`, `+__clang_minor__+`, `+__clang_patchlevel__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_CLANG BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,20 +13,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#define BOOST_COMP_COMO BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_COMO`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_COMO`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Comeau_C/C%2B%2B Comeau C++] compiler.
|
||||
http://en.wikipedia.org/wiki/Comeau_C/C%2B%2B[Comeau {CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__COMO__`] [__predef_detection__]]
|
||||
| `+__COMO__+` | {predef_detection}
|
||||
|
||||
[[`__COMO_VERSION__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__COMO_VERSION__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#if defined(__COMO__)
|
||||
# if !defined(BOOST_COMP_COMO_DETECTION) && defined(__COMO_VERSION__)
|
||||
|
@ -11,22 +11,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_DEC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_DEC`
|
||||
|
||||
[@http://www.openvms.compaq.com/openvms/brochures/deccplus/ Compaq C/C++] compiler.
|
||||
http://www.openvms.compaq.com/openvms/brochures/deccplus/[Compaq C/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__DECCXX`] [__predef_detection__]]
|
||||
[[`__DECC`] [__predef_detection__]]
|
||||
| `+__DECCXX+` | {predef_detection}
|
||||
| `+__DECC+` | {predef_detection}
|
||||
|
||||
[[`__DECCXX_VER`] [V.R.P]]
|
||||
[[`__DECC_VER`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__DECCXX_VER+` | V.R.P
|
||||
| `+__DECC_VER+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_DEC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -38,7 +39,7 @@ Version number available as major, minor, and patch.
|
||||
# define BOOST_COMP_DEC_DETECTION BOOST_PREDEF_MAKE_10_VVRR0PP00(__DECC_VER)
|
||||
# endif
|
||||
# if !defined(BOOST_COMP_DEC_DETECTION)
|
||||
# define BOOST_COM_DEC_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# define BOOST_COMP_DEC_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_DIAB`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_DIAB`
|
||||
|
||||
[@http://www.windriver.com/products/development_suite/wind_river_compiler/ Diab C/C++] compiler.
|
||||
http://www.windriver.com/products/development_suite/wind_river_compiler/[Diab C/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__DCC__`] [__predef_detection__]]
|
||||
| `+__DCC__+` | {predef_detection}
|
||||
|
||||
[[`__VERSION_NUMBER__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__VERSION_NUMBER__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_DIAB BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_DMC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_DMC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Digital_Mars Digital Mars] compiler.
|
||||
http://en.wikipedia.org/wiki/Digital_Mars[Digital Mars] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__DMC__`] [__predef_detection__]]
|
||||
| `+__DMC__+` | {predef_detection}
|
||||
|
||||
[[`__DMC__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__DMC__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_DMC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_SYSC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_SYSC`
|
||||
|
||||
[@http://www.dignus.com/dcxx/ Dignus Systems/C++] compiler.
|
||||
http://www.dignus.com/dcxx/[Dignus Systems/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__SYSC__`] [__predef_detection__]]
|
||||
| `+__SYSC__+` | {predef_detection}
|
||||
|
||||
[[`__SYSC_VER__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__SYSC_VER__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_SYSC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_EDG`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_EDG`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Edison_Design_Group EDG C++ Frontend] compiler.
|
||||
http://en.wikipedia.org/wiki/Edison_Design_Group[EDG {CPP} Frontend] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__EDG__`] [__predef_detection__]]
|
||||
| `+__EDG__+` | {predef_detection}
|
||||
|
||||
[[`__EDG_VERSION__`] [V.R.0]]
|
||||
]
|
||||
*/
|
||||
| `+__EDG_VERSION__+` | V.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_EDG BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_PATH`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_PATH`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/PathScale EKOpath] compiler.
|
||||
http://en.wikipedia.org/wiki/PathScale[EKOpath] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__PATHCC__`] [__predef_detection__]]
|
||||
| `+__PATHCC__+` | {predef_detection}
|
||||
|
||||
[[`__PATHCC__`, `__PATHCC_MINOR__`, `__PATHCC_PATCHLEVEL__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__PATHCC__+`, `+__PATHCC_MINOR__+`, `+__PATHCC_PATCHLEVEL__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_PATH BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -15,21 +15,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_GNUC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_GNUC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/GNU_Compiler_Collection Gnu GCC C/C++] compiler.
|
||||
http://en.wikipedia.org/wiki/GNU_Compiler_Collection[Gnu GCC C/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch (if available).
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__GNUC__`] [__predef_detection__]]
|
||||
| `+__GNUC__+` | {predef_detection}
|
||||
|
||||
[[`__GNUC__`, `__GNUC_MINOR__`, `__GNUC_PATCHLEVEL__`] [V.R.P]]
|
||||
[[`__GNUC__`, `__GNUC_MINOR__`] [V.R.0]]
|
||||
]
|
||||
*/
|
||||
| `+__GNUC__+`, `+__GNUC_MINOR__+`, `+__GNUC_PATCHLEVEL__+` | V.R.P
|
||||
| `+__GNUC__+`, `+__GNUC_MINOR__+` | V.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_GNUC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,17 +11,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_GCCXML`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_GCCXML`
|
||||
|
||||
[@http://www.gccxml.org/ GCC XML] compiler.
|
||||
http://www.gccxml.org/[GCC XML] compiler.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__GCCXML__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__GCCXML__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_GCCXML BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,22 +11,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_GHS`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_GHS`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Green_Hills_Software Green Hills C/C++] compiler.
|
||||
http://en.wikipedia.org/wiki/Green_Hills_Software[Green Hills C/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__ghs`] [__predef_detection__]]
|
||||
[[`__ghs__`] [__predef_detection__]]
|
||||
| `+__ghs+` | {predef_detection}
|
||||
| `+__ghs__+` | {predef_detection}
|
||||
|
||||
[[`__GHS_VERSION_NUMBER__`] [V.R.P]]
|
||||
[[`__ghs`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__GHS_VERSION_NUMBER__+` | V.R.P
|
||||
| `+__ghs+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_GHS BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_HPACC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_HPACC`
|
||||
|
||||
HP aC++ compiler.
|
||||
HP a{CPP} compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__HP_aCC`] [__predef_detection__]]
|
||||
| `+__HP_aCC+` | {predef_detection}
|
||||
|
||||
[[`__HP_aCC`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__HP_aCC+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_HPACC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_IAR`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_IAR`
|
||||
|
||||
IAR C/C++ compiler.
|
||||
IAR C/{CPP} compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__IAR_SYSTEMS_ICC__`] [__predef_detection__]]
|
||||
| `+__IAR_SYSTEMS_ICC__+` | {predef_detection}
|
||||
|
||||
[[`__VER__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__VER__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_IAR BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,25 +11,26 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_IBM`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_IBM`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/VisualAge IBM XL C/C++] compiler.
|
||||
http://en.wikipedia.org/wiki/VisualAge[IBM XL C/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__IBMCPP__`] [__predef_detection__]]
|
||||
[[`__xlC__`] [__predef_detection__]]
|
||||
[[`__xlc__`] [__predef_detection__]]
|
||||
| `+__IBMCPP__+` | {predef_detection}
|
||||
| `+__xlC__+` | {predef_detection}
|
||||
| `+__xlc__+` | {predef_detection}
|
||||
|
||||
[[`__COMPILER_VER__`] [V.R.P]]
|
||||
[[`__xlC__`] [V.R.P]]
|
||||
[[`__xlc__`] [V.R.P]]
|
||||
[[`__IBMCPP__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__COMPILER_VER__+` | V.R.P
|
||||
| `+__xlC__+` | V.R.P
|
||||
| `+__xlc__+` | V.R.P
|
||||
| `+__IBMCPP__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_IBM BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Rene Rivera 2008-2015
|
||||
Copyright Rene Rivera 2008-2017
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
@ -11,29 +11,37 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_INTEL`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_INTEL`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Intel_C%2B%2B Intel C/C++] compiler.
|
||||
http://en.wikipedia.org/wiki/Intel_C%2B%2B[Intel C/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__INTEL_COMPILER`] [__predef_detection__]]
|
||||
[[`__ICL`] [__predef_detection__]]
|
||||
[[`__ICC`] [__predef_detection__]]
|
||||
[[`__ECC`] [__predef_detection__]]
|
||||
| `+__INTEL_COMPILER+` | {predef_detection}
|
||||
| `+__ICL+` | {predef_detection}
|
||||
| `+__ICC+` | {predef_detection}
|
||||
| `+__ECC+` | {predef_detection}
|
||||
|
||||
[[`__INTEL_COMPILER`] [V.R]]
|
||||
[[`__INTEL_COMPILER` and `__INTEL_COMPILER_UPDATE`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__INTEL_COMPILER+` | V.R
|
||||
| `+__INTEL_COMPILER+` and `+__INTEL_COMPILER_UPDATE+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_INTEL BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || \
|
||||
defined(__ECC)
|
||||
/* tag::reference[]
|
||||
NOTE: Because of an Intel mistake in the release version numbering when
|
||||
`__INTEL_COMPILER` is `9999` it is detected as version 12.1.0.
|
||||
*/ // end::reference[]
|
||||
# if !defined(BOOST_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 9999)
|
||||
# define BOOST_COMP_INTEL_DETECTION BOOST_VERSION_NUMBER(12,1,0)
|
||||
# endif
|
||||
# if !defined(BOOST_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER) && defined(__INTEL_COMPILER_UPDATE)
|
||||
# define BOOST_COMP_INTEL_DETECTION BOOST_VERSION_NUMBER( \
|
||||
BOOST_VERSION_NUMBER_MAJOR(BOOST_PREDEF_MAKE_10_VVRR(__INTEL_COMPILER)), \
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_KCC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_KCC`
|
||||
|
||||
Kai C++ compiler.
|
||||
Kai {CPP} compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__KCC`] [__predef_detection__]]
|
||||
| `+__KCC+` | {predef_detection}
|
||||
|
||||
[[`__KCC_VERSION`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__KCC_VERSION+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_KCC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -15,17 +15,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_LLVM`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_LLVM`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/LLVM LLVM] compiler.
|
||||
http://en.wikipedia.org/wiki/LLVM[LLVM] compiler.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__llvm__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__llvm__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_LLVM BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,17 +11,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_HIGHC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_HIGHC`
|
||||
|
||||
MetaWare High C/C++ compiler.
|
||||
MetaWare High C/{CPP} compiler.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__HIGHC__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__HIGHC__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_HIGHC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,24 +11,25 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_MWERKS`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_MWERKS`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/CodeWarrior Metrowerks CodeWarrior] compiler.
|
||||
http://en.wikipedia.org/wiki/CodeWarrior[Metrowerks CodeWarrior] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__MWERKS__`] [__predef_detection__]]
|
||||
[[`__CWCC__`] [__predef_detection__]]
|
||||
| `+__MWERKS__+` | {predef_detection}
|
||||
| `+__CWCC__+` | {predef_detection}
|
||||
|
||||
[[`__CWCC__`] [V.R.P]]
|
||||
[[`__MWERKS__`] [V.R.P >= 4.2.0]]
|
||||
[[`__MWERKS__`] [9.R.0]]
|
||||
[[`__MWERKS__`] [8.R.0]]
|
||||
]
|
||||
*/
|
||||
| `+__CWCC__+` | V.R.P
|
||||
| `+__MWERKS__+` | V.R.P >= 4.2.0
|
||||
| `+__MWERKS__+` | 9.R.0
|
||||
| `+__MWERKS__+` | 8.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_MWERKS BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,17 +11,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_MRI`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_MRI`
|
||||
|
||||
[@http://www.mentor.com/microtec/ Microtec C/C++] compiler.
|
||||
http://www.mentor.com/microtec/[Microtec C/{CPP}] compiler.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`_MRI`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+_MRI+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_MRI BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,22 +11,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_MPW`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_MPW`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Macintosh_Programmer%27s_Workshop MPW C++] compiler.
|
||||
http://en.wikipedia.org/wiki/Macintosh_Programmer%27s_Workshop[MPW {CPP}] compiler.
|
||||
Version number available as major, and minor.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__MRC__`] [__predef_detection__]]
|
||||
[[`MPW_C`] [__predef_detection__]]
|
||||
[[`MPW_CPLUS`] [__predef_detection__]]
|
||||
| `+__MRC__+` | {predef_detection}
|
||||
| `MPW_C` | {predef_detection}
|
||||
| `MPW_CPLUS` | {predef_detection}
|
||||
|
||||
[[`__MRC__`] [V.R.0]]
|
||||
]
|
||||
*/
|
||||
| `+__MRC__+` | V.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_MPW BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
74
include/boost/predef/compiler/nvcc.h
Normal file
74
include/boost/predef/compiler/nvcc.h
Normal file
@ -0,0 +1,74 @@
|
||||
/*
|
||||
Copyright Benjamin Worpitz 2018
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_NVCC_H
|
||||
#define BOOST_PREDEF_COMPILER_NVCC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_NVCC`
|
||||
|
||||
https://en.wikipedia.org/wiki/NVIDIA_CUDA_Compiler[NVCC] compiler.
|
||||
Version number available as major, minor, and patch beginning with version 7.5.
|
||||
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
| `+__NVCC__+` | {predef_detection}
|
||||
|
||||
| `+__CUDACC_VER_MAJOR__+`, `+__CUDACC_VER_MINOR__+`, `+__CUDACC_VER_BUILD__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_NVCC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__NVCC__)
|
||||
# if !defined(__CUDACC_VER_MAJOR__) || !defined(__CUDACC_VER_MINOR__) || !defined(__CUDACC_VER_BUILD__)
|
||||
# define BOOST_COMP_NVCC_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# else
|
||||
# define BOOST_COMP_NVCC_DETECTION BOOST_VERSION_NUMBER(__CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, __CUDACC_VER_BUILD__)
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef BOOST_COMP_NVCC_DETECTION
|
||||
/*
|
||||
Always define BOOST_COMP_NVCC instead of BOOST_COMP_NVCC_EMULATED
|
||||
The nvcc compilation process is somewhat special as can be read here:
|
||||
https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#cuda-compilation-trajectory
|
||||
The nvcc compiler precompiles the input two times. Once for the device code
|
||||
being compiled by the cicc device compiler and once for the host code
|
||||
compiled by the real host compiler. NVCC uses gcc/clang/msvc/...
|
||||
depending on the host compiler being set on the command line.
|
||||
|
||||
Predef (as a preprocessor only lib) detects the one doing the preprocessing
|
||||
as compiler and expects it to be the one doing the real compilation.
|
||||
This is not true for NVCC which is only doing the preprocessing and which
|
||||
is using another compiler for parts of its work. So for NVCC it should be
|
||||
allowed to set BOOST_COMP_NVCC additionally to the already detected host
|
||||
compiler because both is true: It is gcc/clang/... compiling the code, but it
|
||||
is also NVCC doing the preprocessing and adding some other quirks you may
|
||||
want to detect.
|
||||
|
||||
This behavior is similar to what boost config is doing in `select_compiler_config.hpp`.
|
||||
There the NVCC detection is not handled as a real compiler (part of the
|
||||
#if-#elif) but as additional option before the real compiler.
|
||||
*/
|
||||
# undef BOOST_COMP_NVCC
|
||||
# define BOOST_COMP_NVCC BOOST_COMP_NVCC_DETECTION
|
||||
# define BOOST_COMP_NVCC_AVAILABLE
|
||||
# include <boost/predef/detail/comp_detected.h>
|
||||
#endif
|
||||
|
||||
#define BOOST_COMP_NVCC_NAME "NVCC"
|
||||
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_COMP_NVCC,BOOST_COMP_NVCC_NAME)
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_PALM`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_PALM`
|
||||
|
||||
Palm C/C++ compiler.
|
||||
Palm C/{CPP} compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`_PACC_VER`] [__predef_detection__]]
|
||||
| `+_PACC_VER+` | {predef_detection}
|
||||
|
||||
[[`_PACC_VER`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+_PACC_VER+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_PALM BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,19 +11,20 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_PGI`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_PGI`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/The_Portland_Group Portland Group C/C++] compiler.
|
||||
http://en.wikipedia.org/wiki/The_Portland_Group[Portland Group C/{CPP}] compiler.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__PGI`] [__predef_detection__]]
|
||||
| `+__PGI+` | {predef_detection}
|
||||
|
||||
[[`__PGIC__`, `__PGIC_MINOR__`, `__PGIC_PATCHLEVEL__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__PGIC__+`, `+__PGIC_MINOR__+`, `+__PGIC_PATCHLEVEL__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_PGI BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,22 +11,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_SGI`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_SGI`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/MIPSpro SGI MIPSpro] compiler.
|
||||
http://en.wikipedia.org/wiki/MIPSpro[SGI MIPSpro] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__sgi`] [__predef_detection__]]
|
||||
[[`sgi`] [__predef_detection__]]
|
||||
| `+__sgi+` | {predef_detection}
|
||||
| `sgi` | {predef_detection}
|
||||
|
||||
[[`_SGI_COMPILER_VERSION`] [V.R.P]]
|
||||
[[`_COMPILER_VERSION`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+_SGI_COMPILER_VERSION+` | V.R.P
|
||||
| `+_COMPILER_VERSION+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_SGI BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,24 +11,25 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_SUNPRO`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_SUNPRO`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Oracle_Solaris_Studio Oracle Solaris Studio] compiler.
|
||||
http://en.wikipedia.org/wiki/Oracle_Solaris_Studio[Oracle Solaris Studio] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__SUNPRO_CC`] [__predef_detection__]]
|
||||
[[`__SUNPRO_C`] [__predef_detection__]]
|
||||
| `+__SUNPRO_CC+` | {predef_detection}
|
||||
| `+__SUNPRO_C+` | {predef_detection}
|
||||
|
||||
[[`__SUNPRO_CC`] [V.R.P]]
|
||||
[[`__SUNPRO_C`] [V.R.P]]
|
||||
[[`__SUNPRO_CC`] [VV.RR.P]]
|
||||
[[`__SUNPRO_C`] [VV.RR.P]]
|
||||
]
|
||||
*/
|
||||
| `+__SUNPRO_CC+` | V.R.P
|
||||
| `+__SUNPRO_C+` | V.R.P
|
||||
| `+__SUNPRO_CC+` | VV.RR.P
|
||||
| `+__SUNPRO_C+` | VV.RR.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_SUNPRO BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,17 +11,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_TENDRA`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_TENDRA`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/TenDRA_Compiler TenDRA C/C++] compiler.
|
||||
http://en.wikipedia.org/wiki/TenDRA_Compiler[TenDRA C/{CPP}] compiler.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__TenDRA__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__TenDRA__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_TENDRA BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -15,25 +15,26 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_MSVC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_MSVC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Visual_studio Microsoft Visual C/C++] compiler.
|
||||
http://en.wikipedia.org/wiki/Visual_studio[Microsoft Visual C/{CPP}] compiler.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`_MSC_VER`] [__predef_detection__]]
|
||||
| `+_MSC_VER+` | {predef_detection}
|
||||
|
||||
[[`_MSC_FULL_VER`] [V.R.P]]
|
||||
[[`_MSC_VER`] [V.R.0]]
|
||||
]
|
||||
| `+_MSC_FULL_VER+` | V.R.P
|
||||
| `+_MSC_VER+` | V.R.0
|
||||
|===
|
||||
|
||||
[note Release of Visual Studio after 2015 will no longer be identified
|
||||
NOTE: Release of Visual Studio after 2015 will no longer be identified
|
||||
by Boost Predef as the marketing version number. Instead we use the
|
||||
compiler version number directly, i.e. the _MSC_VER number.]
|
||||
*/
|
||||
compiler version number directly, i.e. the _MSC_VER number.
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_MSVC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_COMP_WATCOM`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_COMP_WATCOM`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Watcom Watcom C++] compiler.
|
||||
http://en.wikipedia.org/wiki/Watcom[Watcom {CPP}] compiler.
|
||||
Version number available as major, and minor.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__WATCOMC__`] [__predef_detection__]]
|
||||
| `+__WATCOMC__+` | {predef_detection}
|
||||
|
||||
[[`__WATCOMC__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__WATCOMC__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_COMP_WATCOM BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -1,26 +0,0 @@
|
||||
/*
|
||||
Copyright Rene Rivera 2013
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_DETAIL_ENDIAN_COMPAT_H
|
||||
#define BOOST_PREDEF_DETAIL_ENDIAN_COMPAT_H
|
||||
|
||||
#include <boost/predef/other/endian.h>
|
||||
|
||||
#if BOOST_ENDIAN_BIG_BYTE
|
||||
# define BOOST_BIG_ENDIAN
|
||||
# define BOOST_BYTE_ORDER 4321
|
||||
#endif
|
||||
#if BOOST_ENDIAN_LITTLE_BYTE
|
||||
# define BOOST_LITTLE_ENDIAN
|
||||
# define BOOST_BYTE_ORDER 1234
|
||||
#endif
|
||||
#if BOOST_ENDIAN_LITTLE_WORD
|
||||
# define BOOST_PDP_ENDIAN
|
||||
# define BOOST_BYTE_ORDER 2134
|
||||
#endif
|
||||
|
||||
#endif
|
@ -16,55 +16,104 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
|
||||
/*`
|
||||
[section Using the `BOOST_HW_SIMD_*` predefs]
|
||||
[include ../doc/hardware_simd.qbk]
|
||||
[endsect]
|
||||
/* tag::reference[]
|
||||
= Using the `BOOST_HW_SIMD_*` predefs
|
||||
|
||||
[/ --------------------------- ]
|
||||
SIMD predefs depend on compiler options. For example, you will have to add the
|
||||
option `-msse3` to clang or gcc to enable SSE3. SIMD predefs are also inclusive.
|
||||
This means that if SSE3 is enabled, then every other extensions with a lower
|
||||
version number will implicitly be enabled and detected. However, some extensions
|
||||
are CPU specific, they may not be detected nor enabled when an upper version is
|
||||
enabled.
|
||||
|
||||
[section `BOOST_HW_SIMD_*`]
|
||||
NOTE: SSE(1) and SSE2 are automatically enabled by default when using x86-64
|
||||
architecture.
|
||||
|
||||
[heading `BOOST_HW_SIMD`]
|
||||
To check if any SIMD extension has been enabled, you can use:
|
||||
|
||||
The SIMD extension detected for a specific architectures.
|
||||
Version number depends on the detected extension.
|
||||
[source]
|
||||
----
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
int main()
|
||||
{
|
||||
#if defined(BOOST_HW_SIMD_AVAILABLE)
|
||||
std::cout << "SIMD detected!" << std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
----
|
||||
|
||||
[[`BOOST_HW_SIMD_X86_AVAILABLE`] [__predef_detection__]]
|
||||
[[`BOOST_HW_SIMD_X86_AMD_AVAILABLE`] [__predef_detection__]]
|
||||
[[`BOOST_HW_SIMD_ARM_AVAILABLE`] [__predef_detection__]]
|
||||
[[`BOOST_HW_SIMD_PPC_AVAILABLE`] [__predef_detection__]]
|
||||
]
|
||||
When writing SIMD specific code, you may want to check if a particular extension
|
||||
has been detected. To do so you have to use the right architecture predef and
|
||||
compare it. Those predef are of the form `BOOST_HW_SIMD_"ARCH"` (where `"ARCH"`
|
||||
is either `ARM`, `PPC`, or `X86`). For example, if you compile code for x86
|
||||
architecture, you will have to use `BOOST_HW_SIMD_X86`. Its value will be the
|
||||
version number of the most recent SIMD extension detected for the architecture.
|
||||
|
||||
[include ../include/boost/predef/hardware/simd/x86.h]
|
||||
[include ../include/boost/predef/hardware/simd/x86_amd.h]
|
||||
[include ../include/boost/predef/hardware/simd/arm.h]
|
||||
[include ../include/boost/predef/hardware/simd/ppc.h]
|
||||
To check if an extension has been enabled:
|
||||
|
||||
[endsect]
|
||||
[source]
|
||||
----
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
[/ --------------------------- ]
|
||||
int main()
|
||||
{
|
||||
#if BOOST_HW_SIMD_X86 >= BOOST_HW_SIMD_X86_SSE3_VERSION
|
||||
std::cout << "This is SSE3!" << std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
----
|
||||
|
||||
[section `BOOST_HW_SIMD_X86_*_VERSION`]
|
||||
[include ../include/boost/predef/hardware/simd/x86/versions.h]
|
||||
[endsect]
|
||||
NOTE: The *_VERSION* defines that map version number to actual real
|
||||
identifiers. This way it is easier to write comparisons without messing up with
|
||||
version numbers.
|
||||
|
||||
[section `BOOST_HW_SIMD_X86_AMD_*_VERSION`]
|
||||
[include ../include/boost/predef/hardware/simd/x86_amd/versions.h]
|
||||
[endsect]
|
||||
To *"strictly"* check the most recent detected extension:
|
||||
|
||||
[section `BOOST_HW_SIMD_ARM_*_VERSION`]
|
||||
[include ../include/boost/predef/hardware/simd/arm/versions.h]
|
||||
[endsect]
|
||||
[source]
|
||||
----
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
[section `BOOST_HW_SIMD_PPC_*_VERSION`]
|
||||
[include ../include/boost/predef/hardware/simd/ppc/versions.h]
|
||||
[endsect]
|
||||
int main()
|
||||
{
|
||||
#if BOOST_HW_SIMD_X86 == BOOST_HW_SIMD_X86_SSE3_VERSION
|
||||
std::cout << "This is SSE3 and this is the most recent enabled extension!"
|
||||
<< std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
----
|
||||
|
||||
*/
|
||||
Because of the version systems of predefs and of the inclusive property of SIMD
|
||||
extensions macros, you can easily check for ranges of supported extensions:
|
||||
|
||||
[source]
|
||||
----
|
||||
#include <boost/predef/hardware/simd.h>
|
||||
#include <iostream>
|
||||
|
||||
int main()
|
||||
{
|
||||
#if BOOST_HW_SIMD_X86 >= BOOST_HW_SIMD_X86_SSE2_VERSION &&\
|
||||
BOOST_HW_SIMD_X86 <= BOOST_HW_SIMD_X86_SSSE3_VERSION
|
||||
std::cout << "This is SSE2, SSE3 and SSSE3!" << std::endl;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
----
|
||||
|
||||
NOTE: Unlike gcc and clang, Visual Studio does not allow you to specify precisely
|
||||
the SSE variants you want to use, the only detections that will take place are
|
||||
SSE, SSE2, AVX and AVX2. For more informations,
|
||||
see [@https://msdn.microsoft.com/en-us/library/b0084kay.aspx here].
|
||||
|
||||
|
||||
*/ // end::reference[]
|
||||
|
||||
// We check if SIMD extension of multiples architectures have been detected,
|
||||
// if yes, then this is an error!
|
||||
|
@ -12,34 +12,38 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/hardware/simd/arm/versions.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_ARM`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_ARM`
|
||||
|
||||
The SIMD extension for ARM (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
The SIMD extension for ARM (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__ARM_NEON__`] [__predef_detection__]]
|
||||
[[`__aarch64__`] [__predef_detection__]]
|
||||
[[`_M_ARM`] [__predef_detection__]]
|
||||
]
|
||||
| `+__ARM_NEON__+` | {predef_detection}
|
||||
| `+__aarch64__+` | {predef_detection}
|
||||
| `+_M_ARM+` | {predef_detection}
|
||||
| `+_M_ARM64+` | {predef_detection}
|
||||
|===
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__ARM_NEON__`] [BOOST_HW_SIMD_ARM_NEON_VERSION]]
|
||||
[[`__aarch64__`] [BOOST_HW_SIMD_ARM_NEON_VERSION]]
|
||||
[[`_M_ARM`] [BOOST_HW_SIMD_ARM_NEON_VERSION]]
|
||||
]
|
||||
| `+__ARM_NEON__+` | BOOST_HW_SIMD_ARM_NEON_VERSION
|
||||
| `+__aarch64__+` | BOOST_HW_SIMD_ARM_NEON_VERSION
|
||||
| `+_M_ARM+` | BOOST_HW_SIMD_ARM_NEON_VERSION
|
||||
| `+_M_ARM64+` | BOOST_HW_SIMD_ARM_NEON_VERSION
|
||||
|===
|
||||
|
||||
*/
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_HW_SIMD_ARM BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#undef BOOST_HW_SIMD_ARM
|
||||
#if !defined(BOOST_HW_SIMD_ARM) && (defined(__ARM_NEON__) || defined(__aarch64__) || defined (_M_ARM))
|
||||
#if !defined(BOOST_HW_SIMD_ARM) && (defined(__ARM_NEON__) || defined(__aarch64__) || defined (_M_ARM) || defined (_M_ARM64))
|
||||
# define BOOST_HW_SIMD_ARM BOOST_HW_SIMD_ARM_NEON_VERSION
|
||||
#endif
|
||||
|
||||
|
@ -11,22 +11,28 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
|
||||
/*`
|
||||
Those defines represent ARM SIMD extensions versions.
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_ARM_*_VERSION`
|
||||
|
||||
[note You *MUST* compare them with the predef `BOOST_HW_SIMD_ARM`.]
|
||||
*/
|
||||
Those defines represent ARM SIMD extensions versions.
|
||||
|
||||
NOTE: You *MUST* compare them with the predef `BOOST_HW_SIMD_ARM`.
|
||||
*/ // end::reference[]
|
||||
|
||||
// ---------------------------------
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_ARM_NEON_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_ARM_NEON_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/ARM_architecture#Advanced_SIMD_.28NEON.29 NEON]
|
||||
ARM extension version number.
|
||||
The https://en.wikipedia.org/wiki/ARM_architecture#Advanced_SIMD_.28NEON.29[NEON]
|
||||
ARM extension version number.
|
||||
|
||||
Version number is: *1.0.0*.
|
||||
*/
|
||||
Version number is: *1.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_ARM_NEON_VERSION BOOST_VERSION_NUMBER(1, 0, 0)
|
||||
|
||||
/* tag::reference[]
|
||||
|
||||
*/ // end::reference[]
|
||||
|
||||
#endif
|
||||
|
@ -12,35 +12,37 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/hardware/simd/ppc/versions.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_PPC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_PPC`
|
||||
|
||||
The SIMD extension for PowerPC (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
The SIMD extension for PowerPC (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__VECTOR4DOUBLE__`] [__predef_detection__]]
|
||||
| `+__VECTOR4DOUBLE__+` | {predef_detection}
|
||||
|
||||
[[`__ALTIVEC__`] [__predef_detection__]]
|
||||
[[`__VEC__`] [__predef_detection__]]
|
||||
| `+__ALTIVEC__+` | {predef_detection}
|
||||
| `+__VEC__+` | {predef_detection}
|
||||
|
||||
[[`__VSX__`] [__predef_detection__]]
|
||||
]
|
||||
| `+__VSX__+` | {predef_detection}
|
||||
|===
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__VECTOR4DOUBLE__`] [BOOST_HW_SIMD_PPC_QPX_VERSION]]
|
||||
| `+__VECTOR4DOUBLE__+` | BOOST_HW_SIMD_PPC_QPX_VERSION
|
||||
|
||||
[[`__ALTIVEC__`] [BOOST_HW_SIMD_PPC_VMX_VERSION]]
|
||||
[[`__VEC__`] [BOOST_HW_SIMD_PPC_VMX_VERSION]]
|
||||
| `+__ALTIVEC__+` | BOOST_HW_SIMD_PPC_VMX_VERSION
|
||||
| `+__VEC__+` | BOOST_HW_SIMD_PPC_VMX_VERSION
|
||||
|
||||
[[`__VSX__`] [BOOST_HW_SIMD_PPC_VSX_VERSION]]
|
||||
]
|
||||
| `+__VSX__+` | BOOST_HW_SIMD_PPC_VSX_VERSION
|
||||
|===
|
||||
|
||||
*/
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_HW_SIMD_PPC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,41 +11,47 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
|
||||
/*`
|
||||
Those defines represent Power PC SIMD extensions versions.
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_PPC_*_VERSION`
|
||||
|
||||
[note You *MUST* compare them with the predef `BOOST_HW_SIMD_PPC`.]
|
||||
*/
|
||||
Those defines represent Power PC SIMD extensions versions.
|
||||
|
||||
NOTE: You *MUST* compare them with the predef `BOOST_HW_SIMD_PPC`.
|
||||
*/ // end::reference[]
|
||||
|
||||
// ---------------------------------
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_PPC_VMX_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_PPC_VMX_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/AltiVec#VMX128 VMX] powerpc extension
|
||||
version number.
|
||||
The https://en.wikipedia.org/wiki/AltiVec#VMX128[VMX] powerpc extension
|
||||
version number.
|
||||
|
||||
Version number is: *1.0.0*.
|
||||
*/
|
||||
Version number is: *1.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_PPC_VMX_VERSION BOOST_VERSION_NUMBER(1, 0, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_PPC_VSX_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_PPC_VSX_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/AltiVec#VSX VSX] powerpc extension version
|
||||
number.
|
||||
The https://en.wikipedia.org/wiki/AltiVec#VSX[VSX] powerpc extension version
|
||||
number.
|
||||
|
||||
Version number is: *1.1.0*.
|
||||
*/
|
||||
Version number is: *1.1.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_PPC_VSX_VERSION BOOST_VERSION_NUMBER(1, 1, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_PPC_QPX_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_PPC_QPX_VERSION`
|
||||
|
||||
The QPX powerpc extension version number.
|
||||
The QPX powerpc extension version number.
|
||||
|
||||
Version number is: *2.0.0*.
|
||||
*/
|
||||
Version number is: *2.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_PPC_QPX_VERSION BOOST_VERSION_NUMBER(2, 0, 0)
|
||||
|
||||
/* tag::reference[]
|
||||
|
||||
*/ // end::reference[]
|
||||
|
||||
#endif
|
||||
|
@ -12,65 +12,67 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/hardware/simd/x86/versions.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86`
|
||||
|
||||
The SIMD extension for x86 (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
The SIMD extension for x86 (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__SSE__`] [__predef_detection__]]
|
||||
[[`_M_X64`] [__predef_detection__]]
|
||||
[[`_M_IX86_FP >= 1`] [__predef_detection__]]
|
||||
| `+__SSE__+` | {predef_detection}
|
||||
| `+_M_X64+` | {predef_detection}
|
||||
| `_M_IX86_FP >= 1` | {predef_detection}
|
||||
|
||||
[[`__SSE2__`] [__predef_detection__]]
|
||||
[[`_M_X64`] [__predef_detection__]]
|
||||
[[`_M_IX86_FP >= 2`] [__predef_detection__]]
|
||||
| `+__SSE2__+` | {predef_detection}
|
||||
| `+_M_X64+` | {predef_detection}
|
||||
| `_M_IX86_FP >= 2` | {predef_detection}
|
||||
|
||||
[[`__SSE3__`] [__predef_detection__]]
|
||||
| `+__SSE3__+` | {predef_detection}
|
||||
|
||||
[[`__SSSE3__`] [__predef_detection__]]
|
||||
| `+__SSSE3__+` | {predef_detection}
|
||||
|
||||
[[`__SSE4_1__`] [__predef_detection__]]
|
||||
| `+__SSE4_1__+` | {predef_detection}
|
||||
|
||||
[[`__SSE4_2__`] [__predef_detection__]]
|
||||
| `+__SSE4_2__+` | {predef_detection}
|
||||
|
||||
[[`__AVX__`] [__predef_detection__]]
|
||||
| `+__AVX__+` | {predef_detection}
|
||||
|
||||
[[`__FMA__`] [__predef_detection__]]
|
||||
| `+__FMA__+` | {predef_detection}
|
||||
|
||||
[[`__AVX2__`] [__predef_detection__]]
|
||||
]
|
||||
| `+__AVX2__+` | {predef_detection}
|
||||
|===
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__SSE__`] [BOOST_HW_SIMD_X86_SSE_VERSION]]
|
||||
[[`_M_X64`] [BOOST_HW_SIMD_X86_SSE_VERSION]]
|
||||
[[`_M_IX86_FP >= 1`] [BOOST_HW_SIMD_X86_SSE_VERSION]]
|
||||
| `+__SSE__+` | BOOST_HW_SIMD_X86_SSE_VERSION
|
||||
| `+_M_X64+` | BOOST_HW_SIMD_X86_SSE_VERSION
|
||||
| `_M_IX86_FP >= 1` | BOOST_HW_SIMD_X86_SSE_VERSION
|
||||
|
||||
[[`__SSE2__`] [BOOST_HW_SIMD_X86_SSE2_VERSION]]
|
||||
[[`_M_X64`] [BOOST_HW_SIMD_X86_SSE2_VERSION]]
|
||||
[[`_M_IX86_FP >= 2`] [BOOST_HW_SIMD_X86_SSE2_VERSION]]
|
||||
| `+__SSE2__+` | BOOST_HW_SIMD_X86_SSE2_VERSION
|
||||
| `+_M_X64+` | BOOST_HW_SIMD_X86_SSE2_VERSION
|
||||
| `_M_IX86_FP >= 2` | BOOST_HW_SIMD_X86_SSE2_VERSION
|
||||
|
||||
[[`__SSE3__`] [BOOST_HW_SIMD_X86_SSE3_VERSION]]
|
||||
| `+__SSE3__+` | BOOST_HW_SIMD_X86_SSE3_VERSION
|
||||
|
||||
[[`__SSSE3__`] [BOOST_HW_SIMD_X86_SSSE3_VERSION]]
|
||||
| `+__SSSE3__+` | BOOST_HW_SIMD_X86_SSSE3_VERSION
|
||||
|
||||
[[`__SSE4_1__`] [BOOST_HW_SIMD_X86_SSE4_1_VERSION]]
|
||||
| `+__SSE4_1__+` | BOOST_HW_SIMD_X86_SSE4_1_VERSION
|
||||
|
||||
[[`__SSE4_2__`] [BOOST_HW_SIMD_X86_SSE4_2_VERSION]]
|
||||
| `+__SSE4_2__+` | BOOST_HW_SIMD_X86_SSE4_2_VERSION
|
||||
|
||||
[[`__AVX__`] [BOOST_HW_SIMD_X86_AVX_VERSION]]
|
||||
| `+__AVX__+` | BOOST_HW_SIMD_X86_AVX_VERSION
|
||||
|
||||
[[`__FMA__`] [BOOST_HW_SIMD_X86_FMA3_VERSION]]
|
||||
| `+__FMA__+` | BOOST_HW_SIMD_X86_FMA3_VERSION
|
||||
|
||||
[[`__AVX2__`] [BOOST_HW_SIMD_X86_AVX2_VERSION]]
|
||||
]
|
||||
| `+__AVX2__+` | BOOST_HW_SIMD_X86_AVX2_VERSION
|
||||
|===
|
||||
|
||||
*/
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_HW_SIMD_X86 BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,119 +11,125 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
|
||||
/*`
|
||||
Those defines represent x86 SIMD extensions versions.
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_*_VERSION`
|
||||
|
||||
[note You *MUST* compare them with the predef `BOOST_HW_SIMD_X86`.]
|
||||
*/
|
||||
Those defines represent x86 SIMD extensions versions.
|
||||
|
||||
NOTE: You *MUST* compare them with the predef `BOOST_HW_SIMD_X86`.
|
||||
*/ // end::reference[]
|
||||
|
||||
// ---------------------------------
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_MMX_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_MMX_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/MMX_(instruction_set) MMX] x86 extension
|
||||
version number.
|
||||
The https://en.wikipedia.org/wiki/MMX_(instruction_set)[MMX] x86 extension
|
||||
version number.
|
||||
|
||||
Version number is: *0.99.0*.
|
||||
*/
|
||||
Version number is: *0.99.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_MMX_VERSION BOOST_VERSION_NUMBER(0, 99, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_SSE_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_SSE_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions SSE] x86 extension
|
||||
version number.
|
||||
The https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions[SSE] x86 extension
|
||||
version number.
|
||||
|
||||
Version number is: *1.0.0*.
|
||||
*/
|
||||
Version number is: *1.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_SSE_VERSION BOOST_VERSION_NUMBER(1, 0, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_SSE2_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_SSE2_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/SSE2 SSE2] x86 extension version number.
|
||||
The https://en.wikipedia.org/wiki/SSE2[SSE2] x86 extension version number.
|
||||
|
||||
Version number is: *2.0.0*.
|
||||
*/
|
||||
Version number is: *2.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_SSE2_VERSION BOOST_VERSION_NUMBER(2, 0, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_SSE3_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_SSE3_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/SSE3 SSE3] x86 extension version number.
|
||||
The https://en.wikipedia.org/wiki/SSE3[SSE3] x86 extension version number.
|
||||
|
||||
Version number is: *3.0.0*.
|
||||
*/
|
||||
Version number is: *3.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_SSE3_VERSION BOOST_VERSION_NUMBER(3, 0, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_SSSE3_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_SSSE3_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/SSSE3 SSSE3] x86 extension version number.
|
||||
The https://en.wikipedia.org/wiki/SSSE3[SSSE3] x86 extension version number.
|
||||
|
||||
Version number is: *3.1.0*.
|
||||
*/
|
||||
Version number is: *3.1.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_SSSE3_VERSION BOOST_VERSION_NUMBER(3, 1, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_SSE4_1_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_SSE4_1_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/SSE4#SSE4.1 SSE4_1] x86 extension version
|
||||
number.
|
||||
The https://en.wikipedia.org/wiki/SSE4#SSE4.1[SSE4_1] x86 extension version
|
||||
number.
|
||||
|
||||
Version number is: *4.1.0*.
|
||||
*/
|
||||
Version number is: *4.1.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_SSE4_1_VERSION BOOST_VERSION_NUMBER(4, 1, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_SSE4_2_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_SSE4_2_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/SSE4##SSE4.2 SSE4_2] x86 extension version
|
||||
number.
|
||||
The https://en.wikipedia.org/wiki/SSE4##SSE4.2[SSE4_2] x86 extension version
|
||||
number.
|
||||
|
||||
Version number is: *4.2.0*.
|
||||
*/
|
||||
Version number is: *4.2.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_SSE4_2_VERSION BOOST_VERSION_NUMBER(4, 2, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_AVX_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_AVX_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/Advanced_Vector_Extensions AVX] x86
|
||||
extension version number.
|
||||
The https://en.wikipedia.org/wiki/Advanced_Vector_Extensions[AVX] x86
|
||||
extension version number.
|
||||
|
||||
Version number is: *5.0.0*.
|
||||
*/
|
||||
Version number is: *5.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_AVX_VERSION BOOST_VERSION_NUMBER(5, 0, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_FMA3_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_FMA3_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/FMA_instruction_set FMA3] x86 extension
|
||||
version number.
|
||||
The https://en.wikipedia.org/wiki/FMA_instruction_set[FMA3] x86 extension
|
||||
version number.
|
||||
|
||||
Version number is: *5.2.0*.
|
||||
*/
|
||||
Version number is: *5.2.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_FMA3_VERSION BOOST_VERSION_NUMBER(5, 2, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_AVX2_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_AVX2_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2 AVX2]
|
||||
x86 extension version number.
|
||||
The https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2[AVX2]
|
||||
x86 extension version number.
|
||||
|
||||
Version number is: *5.3.0*.
|
||||
*/
|
||||
Version number is: *5.3.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_AVX2_VERSION BOOST_VERSION_NUMBER(5, 3, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_MIC_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_MIC_VERSION`
|
||||
|
||||
The [@https://en.wikipedia.org/wiki/Xeon_Phi MIC] (Xeon Phi) x86 extension
|
||||
version number.
|
||||
The https://en.wikipedia.org/wiki/Xeon_Phi[MIC] (Xeon Phi) x86 extension
|
||||
version number.
|
||||
|
||||
Version number is: *9.0.0*.
|
||||
*/
|
||||
Version number is: *9.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_MIC_VERSION BOOST_VERSION_NUMBER(9, 0, 0)
|
||||
|
||||
/* tag::reference[]
|
||||
|
||||
*/ // end::reference[]
|
||||
|
||||
#endif
|
||||
|
@ -12,42 +12,44 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/hardware/simd/x86_amd/versions.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_AMD`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_AMD`
|
||||
|
||||
The SIMD extension for x86 (AMD) (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
The SIMD extension for x86 (AMD) (*if detected*).
|
||||
Version number depends on the most recent detected extension.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__SSE4A__`] [__predef_detection__]]
|
||||
| `+__SSE4A__+` | {predef_detection}
|
||||
|
||||
[[`__FMA4__`] [__predef_detection__]]
|
||||
| `+__FMA4__+` | {predef_detection}
|
||||
|
||||
[[`__XOP__`] [__predef_detection__]]
|
||||
| `+__XOP__+` | {predef_detection}
|
||||
|
||||
[[`BOOST_HW_SIMD_X86`] [__predef_detection__]]
|
||||
]
|
||||
| `BOOST_HW_SIMD_X86` | {predef_detection}
|
||||
|===
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__SSE4A__`] [BOOST_HW_SIMD_X86_SSE4A_VERSION]]
|
||||
| `+__SSE4A__+` | BOOST_HW_SIMD_X86_SSE4A_VERSION
|
||||
|
||||
[[`__FMA4__`] [BOOST_HW_SIMD_X86_FMA4_VERSION]]
|
||||
| `+__FMA4__+` | BOOST_HW_SIMD_X86_FMA4_VERSION
|
||||
|
||||
[[`__XOP__`] [BOOST_HW_SIMD_X86_XOP_VERSION]]
|
||||
| `+__XOP__+` | BOOST_HW_SIMD_X86_XOP_VERSION
|
||||
|
||||
[[`BOOST_HW_SIMD_X86`] [BOOST_HW_SIMD_X86]]
|
||||
]
|
||||
| `BOOST_HW_SIMD_X86` | BOOST_HW_SIMD_X86
|
||||
|===
|
||||
|
||||
[note This predef includes every other x86 SIMD extensions and also has other
|
||||
more specific extensions (FMA4, XOP, SSE4a). You should use this predef
|
||||
instead of `BOOST_HW_SIMD_X86` to test if those specific extensions have
|
||||
been detected.]
|
||||
NOTE: This predef includes every other x86 SIMD extensions and also has other
|
||||
more specific extensions (FMA4, XOP, SSE4a). You should use this predef
|
||||
instead of `BOOST_HW_SIMD_X86` to test if those specific extensions have
|
||||
been detected.
|
||||
|
||||
*/
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_HW_SIMD_X86_AMD BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,41 +11,46 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
|
||||
/*`
|
||||
Those defines represent x86 (AMD specific) SIMD extensions versions.
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_AMD_*_VERSION`
|
||||
|
||||
[note You *MUST* compare them with the predef `BOOST_HW_SIMD_X86_AMD`.]
|
||||
*/
|
||||
Those defines represent x86 (AMD specific) SIMD extensions versions.
|
||||
|
||||
NOTE: You *MUST* compare them with the predef `BOOST_HW_SIMD_X86_AMD`.
|
||||
*/ // end::reference[]
|
||||
|
||||
|
||||
// ---------------------------------
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_AMD_SSE4A_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_AMD_SSE4A_VERSION`
|
||||
|
||||
[@https://en.wikipedia.org/wiki/SSE4##SSE4A SSE4A] x86 extension (AMD specific).
|
||||
https://en.wikipedia.org/wiki/SSE4##SSE4A[SSE4A] x86 extension (AMD specific).
|
||||
|
||||
Version number is: *4.0.0*.
|
||||
*/
|
||||
Version number is: *4.0.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_AMD_SSE4A_VERSION BOOST_VERSION_NUMBER(4, 0, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_AMD_FMA4_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_AMD_FMA4_VERSION`
|
||||
|
||||
[@https://en.wikipedia.org/wiki/FMA_instruction_set#FMA4_instruction_set FMA4] x86 extension (AMD specific).
|
||||
https://en.wikipedia.org/wiki/FMA_instruction_set#FMA4_instruction_set[FMA4] x86 extension (AMD specific).
|
||||
|
||||
Version number is: *5.1.0*.
|
||||
*/
|
||||
Version number is: *5.1.0*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_AMD_FMA4_VERSION BOOST_VERSION_NUMBER(5, 1, 0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_HW_SIMD_X86_AMD_XOP_VERSION`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_HW_SIMD_X86_AMD_XOP_VERSION`
|
||||
|
||||
[@https://en.wikipedia.org/wiki/XOP_instruction_set XOP] x86 extension (AMD specific).
|
||||
https://en.wikipedia.org/wiki/XOP_instruction_set[XOP] x86 extension (AMD specific).
|
||||
|
||||
Version number is: *5.1.1*.
|
||||
*/
|
||||
Version number is: *5.1.1*.
|
||||
*/ // end::reference[]
|
||||
#define BOOST_HW_SIMD_X86_AMD_XOP_VERSION BOOST_VERSION_NUMBER(5, 1, 1)
|
||||
|
||||
/* tag::reference[]
|
||||
|
||||
*/ // end::reference[]
|
||||
|
||||
#endif
|
||||
|
@ -13,5 +13,6 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/language/stdc.h>
|
||||
#include <boost/predef/language/stdcpp.h>
|
||||
#include <boost/predef/language/objc.h>
|
||||
#include <boost/predef/language/cuda.h>
|
||||
|
||||
#endif
|
||||
|
53
include/boost/predef/language/cuda.h
Normal file
53
include/boost/predef/language/cuda.h
Normal file
@ -0,0 +1,53 @@
|
||||
/*
|
||||
Copyright Benjamin Worpitz 2018
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE_1_0.txt or copy at
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_LANGUAGE_CUDA_H
|
||||
#define BOOST_PREDEF_LANGUAGE_CUDA_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/* tag::reference[]
|
||||
= `BOOST_LANG_CUDA`
|
||||
|
||||
https://en.wikipedia.org/wiki/CUDA[CUDA C/{CPP}] language.
|
||||
If available, the version is detected as VV.RR.P.
|
||||
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
| `+__CUDACC__+` | {predef_detection}
|
||||
| `+__CUDA__+` | {predef_detection}
|
||||
|
||||
| `CUDA_VERSION` | VV.RR.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LANG_CUDA BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__CUDACC__) || defined(__CUDA__)
|
||||
# undef BOOST_LANG_CUDA
|
||||
# include <cuda.h>
|
||||
# if defined(CUDA_VERSION)
|
||||
# define BOOST_LANG_CUDA BOOST_PREDEF_MAKE_10_VVRRP(CUDA_VERSION)
|
||||
# else
|
||||
# define BOOST_LANG_CUDA BOOST_VERSION_NUMBER_AVAILABLE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if BOOST_LANG_CUDA
|
||||
# define BOOST_LANG_CUDA_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_LANG_CUDA_NAME "CUDA C/C++"
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LANG_CUDA,BOOST_LANG_CUDA_NAME)
|
@ -11,17 +11,18 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANG_OBJC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LANG_OBJC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Objective-C Objective-C] language.
|
||||
http://en.wikipedia.org/wiki/Objective-C[Objective-C] language.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__OBJC__`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__OBJC__+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LANG_OBJC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,20 +11,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANG_STDC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LANG_STDC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/C_(programming_language) Standard C] language.
|
||||
If available, the year of the standard is detected as YYYY.MM.1 from the Epoc date.
|
||||
http://en.wikipedia.org/wiki/C_(programming_language)[Standard C] language.
|
||||
If available, the year of the standard is detected as YYYY.MM.1 from the Epoch date.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__STDC__`] [__predef_detection__]]
|
||||
| `+__STDC__+` | {predef_detection}
|
||||
|
||||
[[`__STDC_VERSION__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__STDC_VERSION__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LANG_STDC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -11,29 +11,34 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANG_STDCPP`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LANG_STDCPP`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/C%2B%2B Standard C++] language.
|
||||
If available, the year of the standard is detected as YYYY.MM.1 from the Epoc date.
|
||||
Because of the way the C++ standardization process works the
|
||||
http://en.wikipedia.org/wiki/C%2B%2B[Standard {CPP}] language.
|
||||
If available, the year of the standard is detected as YYYY.MM.1 from the Epoch date.
|
||||
Because of the way the {CPP} standardization process works the
|
||||
defined version year will not be the commonly known year of the standard.
|
||||
Specifically the defined versions are:
|
||||
|
||||
[table Detected Version Number vs. C++ Standard Year
|
||||
[[Detected Version Number] [Standard Year] [C++ Standard]]
|
||||
[[27.11.1] [1998] [ISO/IEC 14882:1998]]
|
||||
[[41.12.1] [2011] [ISO/IEC 14882:2011]]
|
||||
]
|
||||
.Detected Version Number vs. {CPP} Standard Year
|
||||
[options="header"]
|
||||
|===
|
||||
| Detected Version Number | Standard Year | {CPP} Standard
|
||||
| 27.11.1 | 1998 | ISO/IEC 14882:1998
|
||||
| 41.3.1 | 2011 | ISO/IEC 14882:2011
|
||||
| 44.2.1 | 2014 | ISO/IEC 14882:2014
|
||||
| 47.3.1 | 2017 | ISO/IEC 14882:2017
|
||||
|===
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__cplusplus`] [__predef_detection__]]
|
||||
| `+__cplusplus+` | {predef_detection}
|
||||
|
||||
[[`__cplusplus`] [YYYY.MM.1]]
|
||||
]
|
||||
*/
|
||||
| `+__cplusplus+` | YYYY.MM.1
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LANG_STDCPP BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -52,20 +57,21 @@ Specifically the defined versions are:
|
||||
|
||||
#define BOOST_LANG_STDCPP_NAME "Standard C++"
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANG_STDCPPCLI`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LANG_STDCPPCLI`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/C%2B%2B/CLI Standard C++/CLI] language.
|
||||
If available, the year of the standard is detected as YYYY.MM.1 from the Epoc date.
|
||||
http://en.wikipedia.org/wiki/C%2B%2B/CLI[Standard {CPP}/CLI] language.
|
||||
If available, the year of the standard is detected as YYYY.MM.1 from the Epoch date.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__cplusplus_cli`] [__predef_detection__]]
|
||||
| `+__cplusplus_cli+` | {predef_detection}
|
||||
|
||||
[[`__cplusplus_cli`] [YYYY.MM.1]]
|
||||
]
|
||||
*/
|
||||
| `+__cplusplus_cli+` | YYYY.MM.1
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LANG_STDCPPCLI BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
@ -84,17 +90,18 @@ If available, the year of the standard is detected as YYYY.MM.1 from the Epoc da
|
||||
|
||||
#define BOOST_LANG_STDCPPCLI_NAME "Standard C++/CLI"
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANG_STDECPP`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LANG_STDECPP`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Embedded_C%2B%2B Standard Embedded C++] language.
|
||||
http://en.wikipedia.org/wiki/Embedded_C%2B%2B[Standard Embedded {CPP}] language.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__embedded_cplusplus`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `+__embedded_cplusplus+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LANG_STDECPP BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -12,6 +12,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <boost/predef/library/c/_prefix.h>
|
||||
|
||||
#include <boost/predef/library/c/cloudabi.h>
|
||||
#include <boost/predef/library/c/gnu.h>
|
||||
#include <boost/predef/library/c/uc.h>
|
||||
#include <boost/predef/library/c/vms.h>
|
||||
|
54
include/boost/predef/library/c/cloudabi.h
Normal file
54
include/boost/predef/library/c/cloudabi.h
Normal file
@ -0,0 +1,54 @@
|
||||
/*
|
||||
* Copyright (C) 2017 James E. King III
|
||||
*
|
||||
* Distributed under the Boost Software License, Version 1.0.
|
||||
* (See accompanying file LICENSE_1_0.txt or copy at
|
||||
* http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_LIBRARY_C_CLOUDABI_H
|
||||
#define BOOST_PREDEF_LIBRARY_C_CLOUDABI_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#include <boost/predef/library/c/_prefix.h>
|
||||
|
||||
#if defined(__CloudABI__)
|
||||
#include <stddef.h>
|
||||
#endif
|
||||
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_C_CLOUDABI`
|
||||
|
||||
https://github.com/NuxiNL/cloudlibc[cloudlibc] - CloudABI's standard C library.
|
||||
Version number available as major, and minor.
|
||||
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
| `+__cloudlibc__+` | {predef_detection}
|
||||
|
||||
| `+__cloudlibc_major__+`, `+__cloudlibc_minor__+` | V.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_C_CLOUDABI BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(__cloudlibc__)
|
||||
# undef BOOST_LIB_C_CLOUDABI
|
||||
# define BOOST_LIB_C_CLOUDABI \
|
||||
BOOST_VERSION_NUMBER(__cloudlibc_major__,__cloudlibc_minor__,0)
|
||||
#endif
|
||||
|
||||
#if BOOST_LIB_C_CLOUDABI
|
||||
# define BOOST_LIB_C_CLOUDABI_AVAILABLE
|
||||
#endif
|
||||
|
||||
#define BOOST_LIB_C_CLOUDABI_NAME "cloudlibc"
|
||||
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIB_C_CLOUDABI,BOOST_LIB_C_CLOUDABI_NAME)
|
@ -19,22 +19,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <cstddef>
|
||||
#endif
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_C_GNU`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_C_GNU`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Glibc GNU glibc] Standard C library.
|
||||
http://en.wikipedia.org/wiki/Glibc[GNU glibc] Standard C library.
|
||||
Version number available as major, and minor.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__GLIBC__`] [__predef_detection__]]
|
||||
[[`__GNU_LIBRARY__`] [__predef_detection__]]
|
||||
| `+__GLIBC__+` | {predef_detection}
|
||||
| `+__GNU_LIBRARY__+` | {predef_detection}
|
||||
|
||||
[[`__GLIBC__`, `__GLIBC_MINOR__`] [V.R.0]]
|
||||
[[`__GNU_LIBRARY__`, `__GNU_LIBRARY_MINOR__`] [V.R.0]]
|
||||
]
|
||||
*/
|
||||
| `+__GLIBC__+`, `+__GLIBC_MINOR__+` | V.R.0
|
||||
| `+__GNU_LIBRARY__+`, `+__GNU_LIBRARY_MINOR__+` | V.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_C_GNU BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,19 +13,20 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_C_UC`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_C_UC`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Uclibc uClibc] Standard C library.
|
||||
http://en.wikipedia.org/wiki/Uclibc[uClibc] Standard C library.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__UCLIBC__`] [__predef_detection__]]
|
||||
| `+__UCLIBC__+` | {predef_detection}
|
||||
|
||||
[[`__UCLIBC_MAJOR__`, `__UCLIBC_MINOR__`, `__UCLIBC_SUBLEVEL__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__UCLIBC_MAJOR__+`, `+__UCLIBC_MINOR__+`, `+__UCLIBC_SUBLEVEL__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_C_UC BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,20 +13,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_C_VMS`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_C_VMS`
|
||||
|
||||
VMS libc Standard C library.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__CRTL_VER`] [__predef_detection__]]
|
||||
| `+__CRTL_VER+` | {predef_detection}
|
||||
|
||||
[[`__CRTL_VER`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__CRTL_VER+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_C_VMS BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,21 +13,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_C_ZOS`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_C_ZOS`
|
||||
|
||||
z/OS libc Standard C library.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__LIBREL__`] [__predef_detection__]]
|
||||
| `+__LIBREL__+` | {predef_detection}
|
||||
|
||||
[[`__LIBREL__`] [V.R.P]]
|
||||
[[`__TARGET_LIB__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__LIBREL__+` | V.R.P
|
||||
| `+__TARGET_LIB__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_C_ZOS BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,25 +13,26 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_STD_CXX`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_STD_CXX`
|
||||
|
||||
[@http://libcxx.llvm.org/ libc++] C++ Standard Library.
|
||||
http://libcxx.llvm.org/[libc++] {CPP} Standard Library.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`_LIBCPP_VERSION`] [__predef_detection__]]
|
||||
| `+_LIBCPP_VERSION+` | {predef_detection}
|
||||
|
||||
[[`_LIBCPP_VERSION`] [V.0.P]]
|
||||
]
|
||||
*/
|
||||
| `+_LIBCPP_VERSION+` | V.0.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_STD_CXX BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
#if defined(_LIBCPP_VERSION)
|
||||
# undef BOOST_LIB_STD_CXX
|
||||
# define BOOST_LIB_STD_CXX BOOST_PREDEF_MAKE_10_VPPP(_LIBCPP_VERSION)
|
||||
# define BOOST_LIB_STD_CXX BOOST_PREDEF_MAKE_10_VVPPP(_LIBCPP_VERSION)
|
||||
#endif
|
||||
|
||||
#if BOOST_LIB_STD_CXX
|
||||
|
@ -13,21 +13,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_STD_DINKUMWARE`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_STD_DINKUMWARE`
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Dinkumware Dinkumware] Standard C++ Library.
|
||||
http://en.wikipedia.org/wiki/Dinkumware[Dinkumware] Standard {CPP} Library.
|
||||
If available version number as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`_YVALS`, `__IBMCPP__`] [__predef_detection__]]
|
||||
[[`_CPPLIB_VER`] [__predef_detection__]]
|
||||
| `+_YVALS+`, `+__IBMCPP__+` | {predef_detection}
|
||||
| `+_CPPLIB_VER+` | {predef_detection}
|
||||
|
||||
[[`_CPPLIB_VER`] [V.R.0]]
|
||||
]
|
||||
*/
|
||||
| `+_CPPLIB_VER+` | V.R.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_STD_DINKUMWARE BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,20 +13,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_STD_COMO`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_STD_COMO`
|
||||
|
||||
[@http://www.comeaucomputing.com/libcomo/ Comeau Computing] Standard C++ Library.
|
||||
http://www.comeaucomputing.com/libcomo/[Comeau Computing] Standard {CPP} Library.
|
||||
Version number available as major.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__LIBCOMO__`] [__predef_detection__]]
|
||||
| `+__LIBCOMO__+` | {predef_detection}
|
||||
|
||||
[[`__LIBCOMO_VERSION__`] [V.0.0]]
|
||||
]
|
||||
*/
|
||||
| `+__LIBCOMO_VERSION__+` | V.0.0
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_STD_COMO BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,18 +13,19 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_STD_MSIPL`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_STD_MSIPL`
|
||||
|
||||
[@http://modena.us/ Modena Software Lib++] Standard C++ Library.
|
||||
http://modena.us/[Modena Software Lib++] Standard {CPP} Library.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`MSIPL_COMPILE_H`] [__predef_detection__]]
|
||||
[[`__MSIPL_COMPILE_H`] [__predef_detection__]]
|
||||
]
|
||||
*/
|
||||
| `MSIPL_COMPILE_H` | {predef_detection}
|
||||
| `+__MSIPL_COMPILE_H+` | {predef_detection}
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_STD_MSIPL BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,22 +13,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_STD_MSL`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_STD_MSL`
|
||||
|
||||
[@http://www.freescale.com/ Metrowerks] Standard C++ Library.
|
||||
http://www.freescale.com/[Metrowerks] Standard {CPP} Library.
|
||||
Version number available as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__MSL_CPP__`] [__predef_detection__]]
|
||||
[[`__MSL__`] [__predef_detection__]]
|
||||
| `+__MSL_CPP__+` | {predef_detection}
|
||||
| `+__MSL__+` | {predef_detection}
|
||||
|
||||
[[`__MSL_CPP__`] [V.R.P]]
|
||||
[[`__MSL__`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__MSL_CPP__+` | V.R.P
|
||||
| `+__MSL__+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_STD_MSL BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,21 +13,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_STD_RW`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_STD_RW`
|
||||
|
||||
[@http://stdcxx.apache.org/ Roguewave] Standard C++ library.
|
||||
http://stdcxx.apache.org/[Roguewave] Standard {CPP} library.
|
||||
If available version number as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__STD_RWCOMPILER_H__`] [__predef_detection__]]
|
||||
[[`_RWSTD_VER`] [__predef_detection__]]
|
||||
| `+__STD_RWCOMPILER_H__+` | {predef_detection}
|
||||
| `+_RWSTD_VER+` | {predef_detection}
|
||||
|
||||
[[`_RWSTD_VER`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+_RWSTD_VER+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_STD_RW BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
@ -13,20 +13,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LIB_STD_SGI`]
|
||||
/* tag::reference[]
|
||||
= `BOOST_LIB_STD_SGI`
|
||||
|
||||
[@http://www.sgi.com/tech/stl/ SGI] Standard C++ library.
|
||||
http://www.sgi.com/tech/stl/[SGI] Standard {CPP} library.
|
||||
If available version number as major, minor, and patch.
|
||||
|
||||
[table
|
||||
[[__predef_symbol__] [__predef_version__]]
|
||||
[options="header"]
|
||||
|===
|
||||
| {predef_symbol} | {predef_version}
|
||||
|
||||
[[`__STL_CONFIG_H`] [__predef_detection__]]
|
||||
| `+__STL_CONFIG_H+` | {predef_detection}
|
||||
|
||||
[[`__SGI_STL`] [V.R.P]]
|
||||
]
|
||||
*/
|
||||
| `+__SGI_STL+` | V.R.P
|
||||
|===
|
||||
*/ // end::reference[]
|
||||
|
||||
#define BOOST_LIB_STD_SGI BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user