mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-10-21 15:51:44 +02:00
Compare commits
101 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
44c0f705c9 | ||
![]() |
ddb884e9cd | ||
![]() |
c593c32b87 | ||
![]() |
d812fa5edc | ||
![]() |
e9e06a546c | ||
![]() |
1021aeea6f | ||
![]() |
2c0040cef6 | ||
![]() |
f33c7dfdbe | ||
![]() |
d372a71786 | ||
![]() |
2987022c10 | ||
![]() |
34f531e26e | ||
![]() |
91006555f1 | ||
![]() |
cd7c5bcfec | ||
![]() |
add68ff9e6 | ||
![]() |
ede530de0a | ||
![]() |
62de80fa72 | ||
![]() |
f2b3f52d44 | ||
![]() |
035bfeb39e | ||
![]() |
04292fe63d | ||
![]() |
573ebca3d2 | ||
![]() |
37fcaa1264 | ||
![]() |
a55c73d90e | ||
![]() |
b2f056c8b6 | ||
![]() |
e7f7b51005 | ||
![]() |
8c602e8579 | ||
![]() |
0cc87c0a15 | ||
![]() |
9d4ff7fe10 | ||
![]() |
2486aad254 | ||
![]() |
1fb1dad6bc | ||
![]() |
2d65f66b0e | ||
![]() |
4bc88d7f6f | ||
![]() |
35638ead37 | ||
![]() |
f09713e838 | ||
![]() |
6507243913 | ||
![]() |
f2ffcf0b08 | ||
![]() |
df1d126f61 | ||
![]() |
211c50c755 | ||
![]() |
8bd1b7877c | ||
![]() |
d6b2de9243 | ||
![]() |
818d87c9cb | ||
![]() |
327f3d1ad0 | ||
![]() |
ac062e28cb | ||
![]() |
34f8fd65bb | ||
![]() |
706fde4d56 | ||
![]() |
2dd3dbc85f | ||
![]() |
1edfba0cd2 | ||
![]() |
bc2c446e97 | ||
![]() |
ec8895155c | ||
![]() |
8824c626b4 | ||
![]() |
960656648b | ||
![]() |
dcabd641b5 | ||
![]() |
cfb543401a | ||
![]() |
db4fcf9109 | ||
![]() |
0726c3d930 | ||
![]() |
6c78b521b4 | ||
![]() |
f6d4704605 | ||
![]() |
7c3ef8e7c5 | ||
![]() |
8fac2a5ca9 | ||
![]() |
7e56a08074 | ||
![]() |
d679ba57a0 | ||
![]() |
2603c2a591 | ||
![]() |
535bf33681 | ||
![]() |
b051192ed6 | ||
![]() |
fb64ea0b68 | ||
![]() |
0b9a597360 | ||
![]() |
d5cef62cb9 | ||
![]() |
0b2c6d9d1a | ||
![]() |
cef8a6fdfa | ||
![]() |
cd5ba5057e | ||
![]() |
5eabf7189a | ||
![]() |
12be5d06e3 | ||
![]() |
25c3947a91 | ||
![]() |
d13d933eea | ||
![]() |
33ff3a45b8 | ||
![]() |
05de839b44 | ||
![]() |
d59e1d7716 | ||
![]() |
d5c837b612 | ||
![]() |
3b405fcab3 | ||
![]() |
68acf21a8e | ||
![]() |
05f654fd64 | ||
![]() |
07c5b00c4a | ||
![]() |
7bcb6aad05 | ||
![]() |
6f0683bb46 | ||
![]() |
8b87e62835 | ||
![]() |
63511f29db | ||
![]() |
ff707d8fb5 | ||
![]() |
2c832ff91a | ||
![]() |
e596b6fe35 | ||
![]() |
34e411436b | ||
![]() |
b4d800e6e4 | ||
![]() |
b350a00f6b | ||
![]() |
79db041e8e | ||
![]() |
cd885d282a | ||
![]() |
066d509a68 | ||
![]() |
59f2da6a3b | ||
![]() |
bae76b7cf6 | ||
![]() |
f543d94521 | ||
![]() |
9ff1b5e939 | ||
![]() |
1f663d121e | ||
![]() |
49bdd40eab | ||
![]() |
683b6e42c6 |
6
.github/depends/zlib.sh
vendored
6
.github/depends/zlib.sh
vendored
@@ -27,9 +27,9 @@ while getopts "b:t:p:" c; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
mkdir $prefix || exit 1
|
mkdir $prefix || exit 1
|
||||||
wget https://zlib.net/zlib-1.2.11.tar.gz || exit 1
|
wget https://zlib.net/zlib-1.3.1.tar.gz || exit 1
|
||||||
tar -xf zlib-1.2.11.tar.gz || exit 1
|
tar -xf zlib-1.3.1.tar.gz || exit 1
|
||||||
cd zlib-1.2.11
|
cd zlib-1.3.1
|
||||||
|
|
||||||
build()
|
build()
|
||||||
{
|
{
|
||||||
|
1
.github/workflows/coverage.yml
vendored
1
.github/workflows/coverage.yml
vendored
@@ -56,6 +56,7 @@ jobs:
|
|||||||
-D MSGPACK_BUILD_TESTS=ON \
|
-D MSGPACK_BUILD_TESTS=ON \
|
||||||
-D CMAKE_BUILD_TYPE=Debug \
|
-D CMAKE_BUILD_TYPE=Debug \
|
||||||
-D MSGPACK_GEN_COVERAGE=ON \
|
-D MSGPACK_GEN_COVERAGE=ON \
|
||||||
|
-D MSGPACK_USE_STD_VARIANT_ADAPTOR=ON \
|
||||||
-D CMAKE_PREFIX_PATH="$HOME/zlib-prefix/64;$HOME/boost-prefix/64" \
|
-D CMAKE_PREFIX_PATH="$HOME/zlib-prefix/64;$HOME/boost-prefix/64" \
|
||||||
-B build \
|
-B build \
|
||||||
-S . || exit 1
|
-S . || exit 1
|
||||||
|
13
.github/workflows/gha.yml
vendored
13
.github/workflows/gha.yml
vendored
@@ -25,7 +25,7 @@ jobs:
|
|||||||
uses: actions/cache@v2
|
uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
path: ~/boost-prefix/
|
path: ~/boost-prefix/
|
||||||
key: ${{ runner.os }}-boost-1-76-0-2021-08-09
|
key: ${{ runner.os }}-boost-1-76-0-2022-08-09
|
||||||
|
|
||||||
- name: Build boost
|
- name: Build boost
|
||||||
if: steps.cache-boost.outputs.cache-hit != 'true'
|
if: steps.cache-boost.outputs.cache-hit != 'true'
|
||||||
@@ -36,7 +36,7 @@ jobs:
|
|||||||
uses: actions/cache@v2
|
uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
path: ~/zlib-prefix/
|
path: ~/zlib-prefix/
|
||||||
key: ${{ runner.os }}-zlib-1-2-11-2021-08-09
|
key: ${{ runner.os }}-zlib-1-2-13-2022-11-02
|
||||||
|
|
||||||
- name: Build zlib
|
- name: Build zlib
|
||||||
if: steps.cache-zlib.outputs.cache-hit != 'true'
|
if: steps.cache-zlib.outputs.cache-hit != 'true'
|
||||||
@@ -111,7 +111,7 @@ jobs:
|
|||||||
uses: actions/cache@v2
|
uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
path: ~/zlib-prefix/
|
path: ~/zlib-prefix/
|
||||||
key: ${{ runner.os }}-zlib-1-2-11-2021-08-09
|
key: ${{ runner.os }}-zlib-1-2-13-2022-11-02
|
||||||
|
|
||||||
- name: Build zlib
|
- name: Build zlib
|
||||||
if: steps.cache-zlib.outputs.cache-hit != 'true'
|
if: steps.cache-zlib.outputs.cache-hit != 'true'
|
||||||
@@ -145,10 +145,12 @@ jobs:
|
|||||||
3)
|
3)
|
||||||
export CXX="g++-10"
|
export CXX="g++-10"
|
||||||
export MSGPACK_CXX_VERSION="MSGPACK_CXX17=ON"
|
export MSGPACK_CXX_VERSION="MSGPACK_CXX17=ON"
|
||||||
|
export MSGPACK_USE_STD_VARIANT_ADAPTOR="MSGPACK_USE_STD_VARIANT_ADAPTOR=ON"
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
export CXX="clang++-10"
|
export CXX="clang++-10"
|
||||||
export MSGPACK_CXX_VERSION="MSGPACK_CXX20=ON"
|
export MSGPACK_CXX_VERSION="MSGPACK_CXX20=ON"
|
||||||
|
export NO_BOOST="-DMSGPACK_NO_BOOST"
|
||||||
;;
|
;;
|
||||||
5)
|
5)
|
||||||
export CXX="g++-10"
|
export CXX="g++-10"
|
||||||
@@ -183,7 +185,7 @@ jobs:
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
# build and test
|
# build and test
|
||||||
CMAKE_CXX_COMPILER="$CXX" CXXFLAGS="-Werror -g ${SANITIZE}" ci/build_cmake.sh || exit 1
|
CMAKE_CXX_COMPILER="$CXX" CXXFLAGS="-Werror -g ${SANITIZE} ${NO_BOOST}" ci/build_cmake.sh || exit 1
|
||||||
cat Files.cmake| grep ".*\.[h|hpp]" | perl -pe 's/ //g' | sort > tmp1 && find include -name "*.h" -o -name "*.hpp" | sort > tmp2 && diff tmp1 tmp2
|
cat Files.cmake| grep ".*\.[h|hpp]" | perl -pe 's/ //g' | sort > tmp1 && find include -name "*.h" -o -name "*.hpp" | sort > tmp2 && diff tmp1 tmp2
|
||||||
|
|
||||||
windows:
|
windows:
|
||||||
@@ -194,6 +196,7 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
# MSVC2019 only supports /std:c++14, /std:c++17 and /std:c++latest
|
# MSVC2019 only supports /std:c++14, /std:c++17 and /std:c++latest
|
||||||
cxx: [14, 17, 20]
|
cxx: [14, 17, 20]
|
||||||
|
pp_flag: ["/Zc:preprocessor-", "/Zc:preprocessor"]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
@@ -224,7 +227,7 @@ jobs:
|
|||||||
-D CMAKE_TOOLCHAIN_FILE="C:/vcpkg/scripts/buildsystems/vcpkg.cmake" `
|
-D CMAKE_TOOLCHAIN_FILE="C:/vcpkg/scripts/buildsystems/vcpkg.cmake" `
|
||||||
-D MSGPACK_BUILD_TESTS=ON `
|
-D MSGPACK_BUILD_TESTS=ON `
|
||||||
-D $CPPVER `
|
-D $CPPVER `
|
||||||
-D CMAKE_CXX_FLAGS="/D_VARIADIC_MAX=10 /EHsc /D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING /D_SILENCE_CXX17_ALLOCATOR_VOID_DEPRECATION_WARNING /D_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING /W3 /WX" `
|
-D CMAKE_CXX_FLAGS="${{ matrix.pp_flag }} /D_VARIADIC_MAX=10 /EHsc /D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING /D_SILENCE_CXX17_ALLOCATOR_VOID_DEPRECATION_WARNING /D_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING /W3 /WX" `
|
||||||
-B build `
|
-B build `
|
||||||
-S .
|
-S .
|
||||||
if ($LastExitCode -ne 0) { exit $LastExitCode }
|
if ($LastExitCode -ne 0) { exit $LastExitCode }
|
||||||
|
5
.gitignore
vendored
5
.gitignore
vendored
@@ -49,3 +49,8 @@ Makefile
|
|||||||
/test/streaming_c
|
/test/streaming_c
|
||||||
/test/version
|
/test/version
|
||||||
/test/zone
|
/test/zone
|
||||||
|
|
||||||
|
build
|
||||||
|
*-build
|
||||||
|
.cache
|
||||||
|
compile_commands.json
|
||||||
|
42
CHANGELOG.md
42
CHANGELOG.md
@@ -1,3 +1,45 @@
|
|||||||
|
# 2024-04-02 version 6.1.1
|
||||||
|
* Fix compilation error when std::variant has the same types (#1112)
|
||||||
|
* Improve CI (#1090, #1110)
|
||||||
|
* Fix to avoid common function name's (has_as::check) ambiguity/conflict with other libraries' macros (#1085)
|
||||||
|
|
||||||
|
# 2023-07-08 version 6.1.0
|
||||||
|
* Remove dependency on boost in chrono.hpp (#1076)
|
||||||
|
* Add support for std::variant behavior (#1075)
|
||||||
|
* Fix msgpack::type::variant behavior to respect MessagePack format (#1071)
|
||||||
|
* Add rebind allocators (#1065)
|
||||||
|
|
||||||
|
# 2023-03-02 version 6.0.0
|
||||||
|
## << breaking changes >>
|
||||||
|
* Change CMake package name of C++ library to msgpack-cxx (#1054)
|
||||||
|
Unified all C++ package, library, cmake, tarball name become msgpack-cxx.
|
||||||
|
|
||||||
|
# 2023-01-10 version 5.0.0 for C++
|
||||||
|
* Fix config for new MSVC preprocessor (#1040)
|
||||||
|
## << breaking changes >>
|
||||||
|
* Change CMake package name of C++ library to msgpackc-cxx (#1045, #1048)
|
||||||
|
|
||||||
|
# 2022-11-02 version 4.1.3 for C++
|
||||||
|
* Fix compile error that direct inclusion of chrono with `MSGPACK_NO_BOOST` (#1038))
|
||||||
|
|
||||||
|
# 2022-09-07 version 4.1.2 for C++
|
||||||
|
* Fix noexcept on zone (#1030)
|
||||||
|
* Improve cmake support (#1028, #1032)
|
||||||
|
* Improve CI (#1023)
|
||||||
|
* Improve supporting platform (#1021)
|
||||||
|
* Refine double/float packing (#1018)
|
||||||
|
* Refine include files dependency (#1011)
|
||||||
|
|
||||||
|
# 2022-03-09 version 4.1.1 for C++
|
||||||
|
* Remove chrono support on `MSGPACK_NO_BOOST` to fix compile error.
|
||||||
|
* Improve build system (#1003)
|
||||||
|
|
||||||
|
# 2022-02-12 version 4.1.0 for C++
|
||||||
|
* Add experimental support for no boost dependency (#1001)
|
||||||
|
* For cmake, add `-DMSGPACK_USE_BOOST=OFF`. For C++ compiler add `-DMSGPACK_NO_BOOST`.
|
||||||
|
* Improve BIN console output (#995)
|
||||||
|
* Fix include notation (#991)
|
||||||
|
|
||||||
# 2021-10-23 version 4.0.3 for C++
|
# 2021-10-23 version 4.0.3 for C++
|
||||||
* Remove Enabler2 template parameter from object adaptor (#987)
|
* Remove Enabler2 template parameter from object adaptor (#987)
|
||||||
* Add MSGPACK_BUILD_DOCS cmake option (#983, #984)
|
* Add MSGPACK_BUILD_DOCS cmake option (#983, #984)
|
||||||
|
105
CMakeLists.txt
105
CMakeLists.txt
@@ -2,7 +2,9 @@ CMAKE_MINIMUM_REQUIRED (VERSION 3.1 FATAL_ERROR)
|
|||||||
|
|
||||||
CMAKE_POLICY (SET CMP0054 NEW)
|
CMAKE_POLICY (SET CMP0054 NEW)
|
||||||
|
|
||||||
PROJECT (msgpack LANGUAGES CXX)
|
PROJECT (msgpack-cxx LANGUAGES CXX)
|
||||||
|
|
||||||
|
ADD_LIBRARY (msgpack-cxx INTERFACE)
|
||||||
|
|
||||||
FILE (READ ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/version_master.hpp contents)
|
FILE (READ ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/version_master.hpp contents)
|
||||||
STRING (REGEX MATCH "#define MSGPACK_VERSION_MAJOR *([0-9a-zA-Z_]*)" NULL_OUT ${contents})
|
STRING (REGEX MATCH "#define MSGPACK_VERSION_MAJOR *([0-9a-zA-Z_]*)" NULL_OUT ${contents})
|
||||||
@@ -21,15 +23,17 @@ OPTION (MSGPACK_CXX14 "Using c++14 compiler" OFF)
|
|||||||
OPTION (MSGPACK_CXX17 "Using c++17 compiler" OFF)
|
OPTION (MSGPACK_CXX17 "Using c++17 compiler" OFF)
|
||||||
OPTION (MSGPACK_CXX20 "Using c++20 compiler" OFF)
|
OPTION (MSGPACK_CXX20 "Using c++20 compiler" OFF)
|
||||||
|
|
||||||
OPTION (MSGPACK_32BIT "32bit compile" OFF)
|
OPTION (MSGPACK_32BIT "32bit compile" OFF)
|
||||||
OPTION (MSGPACK_USE_X3_PARSE "Use Boost X3 parse" OFF)
|
OPTION (MSGPACK_USE_BOOST "Use Boost libraried" ON)
|
||||||
OPTION (MSGPACK_BUILD_TESTS "Build tests" OFF)
|
OPTION (MSGPACK_USE_X3_PARSE "Use Boost X3 parse" OFF)
|
||||||
OPTION (MSGPACK_BUILD_DOCS "Build Doxygen documentation" ON)
|
OPTION (MSGPACK_BUILD_TESTS "Build tests" OFF)
|
||||||
OPTION (MSGPACK_FUZZ_REGRESSION "Enable regression testing" OFF)
|
OPTION (MSGPACK_BUILD_DOCS "Build Doxygen documentation" ON)
|
||||||
OPTION (MSGPACK_BUILD_EXAMPLES "Build msgpack examples" OFF)
|
OPTION (MSGPACK_FUZZ_REGRESSION "Enable regression testing" OFF)
|
||||||
OPTION (MSGPACK_GEN_COVERAGE "Generate coverage report" OFF)
|
OPTION (MSGPACK_BUILD_EXAMPLES "Build msgpack examples" OFF)
|
||||||
OPTION (MSGPACK_USE_STATIC_BOOST "Statically link with boost libraries" OFF)
|
OPTION (MSGPACK_GEN_COVERAGE "Generate coverage report" OFF)
|
||||||
OPTION (MSGPACK_CHAR_SIGN "Char sign to use (signed or unsigned)")
|
OPTION (MSGPACK_USE_STATIC_BOOST "Statically link with boost libraries" OFF)
|
||||||
|
OPTION (MSGPACK_CHAR_SIGN "Char sign to use (signed or unsigned)")
|
||||||
|
OPTION (MSGPACK_USE_STD_VARIANT_ADAPTOR "Enable the adaptor for std::variant" OFF)
|
||||||
|
|
||||||
SET (CMAKE_CXX_STANDARD_REQUIRED ON)
|
SET (CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
@@ -54,33 +58,43 @@ ENDIF ()
|
|||||||
|
|
||||||
IF (MSGPACK_32BIT)
|
IF (MSGPACK_32BIT)
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
SET (CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}")
|
TARGET_COMPILE_OPTIONS(msgpack-cxx INTERFACE -m32)
|
||||||
SET (CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}")
|
TARGET_LINK_OPTIONS(msgpack-cxx INTERFACE -m32)
|
||||||
ELSEIF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
|
ELSEIF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
|
||||||
SET (CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}")
|
TARGET_COMPILE_OPTIONS(msgpack-cxx INTERFACE -m32)
|
||||||
SET (CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}")
|
TARGET_LINK_OPTIONS(msgpack-cxx INTERFACE -m32)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
SET (Boost_USE_MULTITHREADED ON)
|
IF (MSGPACK_USE_BOOST)
|
||||||
|
SET (Boost_USE_MULTITHREADED ON)
|
||||||
|
|
||||||
IF (MSGPACK_USE_STATIC_BOOST)
|
IF (MSGPACK_USE_STATIC_BOOST)
|
||||||
MESSAGE (STATUS "Staticly linking with Boost")
|
MESSAGE (STATUS "Staticly linking with Boost")
|
||||||
SET (Boost_USE_STATIC_LIBS TRUE)
|
SET (Boost_USE_STATIC_LIBS TRUE)
|
||||||
|
ELSE ()
|
||||||
|
MESSAGE (STATUS "Dynamically linking with Boost")
|
||||||
|
SET (Boost_USE_STATIC_LIBS FALSE)
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
|
FIND_PACKAGE (Boost REQUIRED)
|
||||||
ELSE ()
|
ELSE ()
|
||||||
MESSAGE (STATUS "Dynamically linking with Boost")
|
TARGET_COMPILE_DEFINITIONS(msgpack-cxx INTERFACE MSGPACK_NO_BOOST)
|
||||||
SET (Boost_USE_STATIC_LIBS FALSE)
|
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
IF (MSGPACK_CHAR_SIGN)
|
IF (MSGPACK_CHAR_SIGN)
|
||||||
SET (CMAKE_CXX_FLAGS "-f${MSGPACK_CHAR_SIGN}-char ${CMAKE_CXX_FLAGS}")
|
TARGET_COMPILE_OPTIONS(msgpack-cxx INTERFACE -f${MSGPACK_CHAR_SIGN}-char)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
IF (MSGPACK_DEFAULT_API_VERSION)
|
IF (MSGPACK_DEFAULT_API_VERSION)
|
||||||
SET (CMAKE_CXX_FLAGS "-DMSGPACK_DEFAULT_API_VERSION=${MSGPACK_DEFAULT_API_VERSION} ${CMAKE_CXX_FLAGS}")
|
TARGET_COMPILE_DEFINITIONS(msgpack-cxx INTERFACE MSGPACK_DEFAULT_API_VERSION=${MSGPACK_DEFAULT_API_VERSION})
|
||||||
ELSE ()
|
ELSE ()
|
||||||
SET (MSGPACK_DEFAULT_API_VERSION 3)
|
SET (MSGPACK_DEFAULT_API_VERSION 3)
|
||||||
SET (CMAKE_CXX_FLAGS "-DMSGPACK_DEFAULT_API_VERSION=3 ${CMAKE_CXX_FLAGS}")
|
TARGET_COMPILE_DEFINITIONS(msgpack-cxx INTERFACE MSGPACK_DEFAULT_API_VERSION=3)
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
|
IF (MSGPACK_USE_STD_VARIANT_ADAPTOR)
|
||||||
|
TARGET_COMPILE_DEFINITIONS(msgpack-cxx INTERFACE MSGPACK_USE_STD_VARIANT_ADAPTOR)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
@@ -100,20 +114,19 @@ int main(int argc, char * argv[])
|
|||||||
ENDIF ()
|
ENDIF ()
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
FIND_PACKAGE (Boost REQUIRED)
|
|
||||||
|
|
||||||
INCLUDE (Files.cmake)
|
INCLUDE (Files.cmake)
|
||||||
|
|
||||||
ADD_LIBRARY (msgpackc-cxx INTERFACE)
|
TARGET_INCLUDE_DIRECTORIES (msgpack-cxx
|
||||||
|
|
||||||
TARGET_INCLUDE_DIRECTORIES (msgpackc-cxx
|
|
||||||
INTERFACE
|
INTERFACE
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include>
|
||||||
$<INSTALL_INTERFACE:include>
|
$<INSTALL_INTERFACE:include>
|
||||||
)
|
)
|
||||||
|
|
||||||
TARGET_LINK_LIBRARIES (msgpackc-cxx INTERFACE Boost::boost)
|
IF (MSGPACK_USE_BOOST)
|
||||||
|
TARGET_LINK_LIBRARIES (msgpack-cxx INTERFACE Boost::boost)
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
IF (MSGPACK_GEN_COVERAGE)
|
IF (MSGPACK_GEN_COVERAGE)
|
||||||
IF (NOT MSGPACK_BUILD_TESTS)
|
IF (NOT MSGPACK_BUILD_TESTS)
|
||||||
@@ -126,11 +139,13 @@ IF (MSGPACK_GEN_COVERAGE)
|
|||||||
|
|
||||||
INCLUDE (CodeCoverage)
|
INCLUDE (CodeCoverage)
|
||||||
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COVERAGE_FLAGS}")
|
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COVERAGE_FLAGS}")
|
||||||
|
|
||||||
SETUP_TARGET_FOR_COVERAGE(coverage make coverage test)
|
SETUP_TARGET_FOR_COVERAGE(coverage make coverage test)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
IF (MSGPACK_BUILD_TESTS)
|
IF (MSGPACK_BUILD_TESTS)
|
||||||
|
IF (NOT MSGPACK_USE_BOOST)
|
||||||
|
MESSAGE(FATAL_ERROR "Test requires -DMSGPACK_USE_BOOST=ON")
|
||||||
|
ENDIF ()
|
||||||
ENABLE_TESTING ()
|
ENABLE_TESTING ()
|
||||||
# MEMORYCHECK_COMMAND_OPTIONS needs to place prior to CTEST_MEMORYCHECK_COMMAND
|
# MEMORYCHECK_COMMAND_OPTIONS needs to place prior to CTEST_MEMORYCHECK_COMMAND
|
||||||
SET (MEMORYCHECK_COMMAND_OPTIONS "--leak-check=full --show-leak-kinds=definite,possible --error-exitcode=1")
|
SET (MEMORYCHECK_COMMAND_OPTIONS "--leak-check=full --show-leak-kinds=definite,possible --error-exitcode=1")
|
||||||
@@ -146,7 +161,7 @@ IF (MSGPACK_FUZZ_REGRESSION)
|
|||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
IF ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "sparc")
|
IF ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "sparc")
|
||||||
SET (CMAKE_CXX_FLAGS "-DMSGPACK_ZONE_ALIGN=8 ${CMAKE_CXX_FLAGS}")
|
TARGET_COMPILE_DEFINITIONS(msgpack-cxx INTERFACE MSGPACK_ZONE_ALIGN=8)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
IF (MSGPACK_BUILD_EXAMPLES)
|
IF (MSGPACK_BUILD_EXAMPLES)
|
||||||
@@ -180,10 +195,12 @@ IF (MSGPACK_BUILD_DOCS)
|
|||||||
ENDIF ()
|
ENDIF ()
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
|
include (GNUInstallDirs)
|
||||||
|
|
||||||
# Install library.
|
# Install library.
|
||||||
INSTALL (TARGETS msgpackc-cxx
|
INSTALL (TARGETS msgpack-cxx
|
||||||
EXPORT msgpackc-cxx-targets
|
EXPORT msgpack-cxx-targets
|
||||||
COMPONENT msgpackc-cxx
|
COMPONENT msgpack-cxx
|
||||||
# This provides include directory in exported target
|
# This provides include directory in exported target
|
||||||
# relative to prefix in single directory we've put everything in.
|
# relative to prefix in single directory we've put everything in.
|
||||||
INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
|
INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
|
||||||
@@ -192,7 +209,7 @@ INSTALL (TARGETS msgpackc-cxx
|
|||||||
# Install headers from source tree.
|
# Install headers from source tree.
|
||||||
INSTALL (DIRECTORY include/
|
INSTALL (DIRECTORY include/
|
||||||
DESTINATION include
|
DESTINATION include
|
||||||
COMPONENT msgpackc-cxx
|
COMPONENT msgpack-cxx
|
||||||
)
|
)
|
||||||
|
|
||||||
INCLUDE (CMakePackageConfigHelpers)
|
INCLUDE (CMakePackageConfigHelpers)
|
||||||
@@ -200,18 +217,18 @@ INCLUDE (CMakePackageConfigHelpers)
|
|||||||
IF (NOT (CMAKE_VERSION VERSION_LESS 3.14))
|
IF (NOT (CMAKE_VERSION VERSION_LESS 3.14))
|
||||||
SET (extra_version_file_args ARCH_INDEPENDENT)
|
SET (extra_version_file_args ARCH_INDEPENDENT)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
SET (cmake_config_path "lib/cmake/msgpackc-cxx")
|
SET (cmake_config_path "${CMAKE_INSTALL_LIBDIR}/cmake/msgpack-cxx")
|
||||||
|
|
||||||
# Configure the main package file from source tree.
|
# Configure the main package file from source tree.
|
||||||
CONFIGURE_PACKAGE_CONFIG_FILE (
|
CONFIGURE_PACKAGE_CONFIG_FILE (
|
||||||
msgpack-config.cmake.in
|
msgpack-cxx-config.cmake.in
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/msgpack-config.cmake"
|
"${CMAKE_CURRENT_BINARY_DIR}/msgpack-cxx-config.cmake"
|
||||||
INSTALL_DESTINATION "${cmake_config_path}"
|
INSTALL_DESTINATION "${cmake_config_path}"
|
||||||
)
|
)
|
||||||
|
|
||||||
# Write package version file.
|
# Write package version file.
|
||||||
WRITE_BASIC_PACKAGE_VERSION_FILE (
|
WRITE_BASIC_PACKAGE_VERSION_FILE (
|
||||||
msgpack-config-version.cmake
|
msgpack-cxx-config-version.cmake
|
||||||
VERSION ${VERSION}
|
VERSION ${VERSION}
|
||||||
COMPATIBILITY SameMajorVersion
|
COMPATIBILITY SameMajorVersion
|
||||||
${extra_version_file_args}
|
${extra_version_file_args}
|
||||||
@@ -219,16 +236,16 @@ WRITE_BASIC_PACKAGE_VERSION_FILE (
|
|||||||
|
|
||||||
# Install the generated package version file and the main package file.
|
# Install the generated package version file and the main package file.
|
||||||
INSTALL (FILES
|
INSTALL (FILES
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/msgpack-config.cmake"
|
"${CMAKE_CURRENT_BINARY_DIR}/msgpack-cxx-config.cmake"
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/msgpack-config-version.cmake"
|
"${CMAKE_CURRENT_BINARY_DIR}/msgpack-cxx-config-version.cmake"
|
||||||
DESTINATION "${cmake_config_path}"
|
DESTINATION "${cmake_config_path}"
|
||||||
COMPONENT msgpackc-cxx
|
COMPONENT msgpack-cxx
|
||||||
)
|
)
|
||||||
|
|
||||||
# This installs package in install tree for using installed targets.
|
# This installs package in install tree for using installed targets.
|
||||||
INSTALL (
|
INSTALL (
|
||||||
EXPORT msgpackc-cxx-targets
|
EXPORT msgpack-cxx-targets
|
||||||
FILE msgpackc-cxx-targets.cmake
|
FILE msgpack-cxx-targets.cmake
|
||||||
DESTINATION "${cmake_config_path}"
|
DESTINATION "${cmake_config_path}"
|
||||||
COMPONENT msgpackc-cxx
|
COMPONENT msgpack-cxx
|
||||||
)
|
)
|
||||||
|
414
Files.cmake
414
Files.cmake
@@ -1,4 +1,4 @@
|
|||||||
SET (msgpackc_HEADERS
|
SET (msgpack-cxx_HEADERS
|
||||||
include/msgpack.hpp
|
include/msgpack.hpp
|
||||||
include/msgpack/adaptor/adaptor_base.hpp
|
include/msgpack/adaptor/adaptor_base.hpp
|
||||||
include/msgpack/adaptor/adaptor_base_decl.hpp
|
include/msgpack/adaptor/adaptor_base_decl.hpp
|
||||||
@@ -33,6 +33,7 @@ SET (msgpackc_HEADERS
|
|||||||
include/msgpack/adaptor/cpp17/carray_byte.hpp
|
include/msgpack/adaptor/cpp17/carray_byte.hpp
|
||||||
include/msgpack/adaptor/cpp17/optional.hpp
|
include/msgpack/adaptor/cpp17/optional.hpp
|
||||||
include/msgpack/adaptor/cpp17/string_view.hpp
|
include/msgpack/adaptor/cpp17/string_view.hpp
|
||||||
|
include/msgpack/adaptor/cpp17/variant.hpp
|
||||||
include/msgpack/adaptor/cpp17/vector_byte.hpp
|
include/msgpack/adaptor/cpp17/vector_byte.hpp
|
||||||
include/msgpack/adaptor/cpp20/span.hpp
|
include/msgpack/adaptor/cpp20/span.hpp
|
||||||
include/msgpack/adaptor/define.hpp
|
include/msgpack/adaptor/define.hpp
|
||||||
@@ -68,6 +69,7 @@ SET (msgpackc_HEADERS
|
|||||||
include/msgpack/adaptor/vector_char.hpp
|
include/msgpack/adaptor/vector_char.hpp
|
||||||
include/msgpack/adaptor/vector_unsigned_char.hpp
|
include/msgpack/adaptor/vector_unsigned_char.hpp
|
||||||
include/msgpack/adaptor/wstring.hpp
|
include/msgpack/adaptor/wstring.hpp
|
||||||
|
include/msgpack/assert.hpp
|
||||||
include/msgpack/cpp_config.hpp
|
include/msgpack/cpp_config.hpp
|
||||||
include/msgpack/cpp_config_decl.hpp
|
include/msgpack/cpp_config_decl.hpp
|
||||||
include/msgpack/cpp_version.hpp
|
include/msgpack/cpp_version.hpp
|
||||||
@@ -91,6 +93,415 @@ SET (msgpackc_HEADERS
|
|||||||
include/msgpack/parse.hpp
|
include/msgpack/parse.hpp
|
||||||
include/msgpack/parse_decl.hpp
|
include/msgpack/parse_decl.hpp
|
||||||
include/msgpack/parse_return.hpp
|
include/msgpack/parse_return.hpp
|
||||||
|
include/msgpack/predef.h
|
||||||
|
include/msgpack/predef/architecture.h
|
||||||
|
include/msgpack/predef/architecture/alpha.h
|
||||||
|
include/msgpack/predef/architecture/arm.h
|
||||||
|
include/msgpack/predef/architecture/blackfin.h
|
||||||
|
include/msgpack/predef/architecture/convex.h
|
||||||
|
include/msgpack/predef/architecture/ia64.h
|
||||||
|
include/msgpack/predef/architecture/m68k.h
|
||||||
|
include/msgpack/predef/architecture/mips.h
|
||||||
|
include/msgpack/predef/architecture/parisc.h
|
||||||
|
include/msgpack/predef/architecture/ppc.h
|
||||||
|
include/msgpack/predef/architecture/ptx.h
|
||||||
|
include/msgpack/predef/architecture/pyramid.h
|
||||||
|
include/msgpack/predef/architecture/rs6k.h
|
||||||
|
include/msgpack/predef/architecture/sparc.h
|
||||||
|
include/msgpack/predef/architecture/superh.h
|
||||||
|
include/msgpack/predef/architecture/sys370.h
|
||||||
|
include/msgpack/predef/architecture/sys390.h
|
||||||
|
include/msgpack/predef/architecture/x86.h
|
||||||
|
include/msgpack/predef/architecture/x86/32.h
|
||||||
|
include/msgpack/predef/architecture/x86/64.h
|
||||||
|
include/msgpack/predef/architecture/z.h
|
||||||
|
include/msgpack/predef/compiler.h
|
||||||
|
include/msgpack/predef/compiler/borland.h
|
||||||
|
include/msgpack/predef/compiler/clang.h
|
||||||
|
include/msgpack/predef/compiler/comeau.h
|
||||||
|
include/msgpack/predef/compiler/compaq.h
|
||||||
|
include/msgpack/predef/compiler/diab.h
|
||||||
|
include/msgpack/predef/compiler/digitalmars.h
|
||||||
|
include/msgpack/predef/compiler/dignus.h
|
||||||
|
include/msgpack/predef/compiler/edg.h
|
||||||
|
include/msgpack/predef/compiler/ekopath.h
|
||||||
|
include/msgpack/predef/compiler/gcc.h
|
||||||
|
include/msgpack/predef/compiler/gcc_xml.h
|
||||||
|
include/msgpack/predef/compiler/greenhills.h
|
||||||
|
include/msgpack/predef/compiler/hp_acc.h
|
||||||
|
include/msgpack/predef/compiler/iar.h
|
||||||
|
include/msgpack/predef/compiler/ibm.h
|
||||||
|
include/msgpack/predef/compiler/intel.h
|
||||||
|
include/msgpack/predef/compiler/kai.h
|
||||||
|
include/msgpack/predef/compiler/llvm.h
|
||||||
|
include/msgpack/predef/compiler/metaware.h
|
||||||
|
include/msgpack/predef/compiler/metrowerks.h
|
||||||
|
include/msgpack/predef/compiler/microtec.h
|
||||||
|
include/msgpack/predef/compiler/mpw.h
|
||||||
|
include/msgpack/predef/compiler/nvcc.h
|
||||||
|
include/msgpack/predef/compiler/palm.h
|
||||||
|
include/msgpack/predef/compiler/pgi.h
|
||||||
|
include/msgpack/predef/compiler/sgi_mipspro.h
|
||||||
|
include/msgpack/predef/compiler/sunpro.h
|
||||||
|
include/msgpack/predef/compiler/tendra.h
|
||||||
|
include/msgpack/predef/compiler/visualc.h
|
||||||
|
include/msgpack/predef/compiler/watcom.h
|
||||||
|
include/msgpack/predef/detail/_cassert.h
|
||||||
|
include/msgpack/predef/detail/_exception.h
|
||||||
|
include/msgpack/predef/detail/comp_detected.h
|
||||||
|
include/msgpack/predef/detail/endian_compat.h
|
||||||
|
include/msgpack/predef/detail/os_detected.h
|
||||||
|
include/msgpack/predef/detail/platform_detected.h
|
||||||
|
include/msgpack/predef/detail/test.h
|
||||||
|
include/msgpack/predef/detail/test_def.h
|
||||||
|
include/msgpack/predef/hardware.h
|
||||||
|
include/msgpack/predef/hardware/simd.h
|
||||||
|
include/msgpack/predef/hardware/simd/arm.h
|
||||||
|
include/msgpack/predef/hardware/simd/arm/versions.h
|
||||||
|
include/msgpack/predef/hardware/simd/ppc.h
|
||||||
|
include/msgpack/predef/hardware/simd/ppc/versions.h
|
||||||
|
include/msgpack/predef/hardware/simd/x86.h
|
||||||
|
include/msgpack/predef/hardware/simd/x86/versions.h
|
||||||
|
include/msgpack/predef/hardware/simd/x86_amd.h
|
||||||
|
include/msgpack/predef/hardware/simd/x86_amd/versions.h
|
||||||
|
include/msgpack/predef/language.h
|
||||||
|
include/msgpack/predef/language/cuda.h
|
||||||
|
include/msgpack/predef/language/objc.h
|
||||||
|
include/msgpack/predef/language/stdc.h
|
||||||
|
include/msgpack/predef/language/stdcpp.h
|
||||||
|
include/msgpack/predef/library.h
|
||||||
|
include/msgpack/predef/library/c.h
|
||||||
|
include/msgpack/predef/library/c/_prefix.h
|
||||||
|
include/msgpack/predef/library/c/cloudabi.h
|
||||||
|
include/msgpack/predef/library/c/gnu.h
|
||||||
|
include/msgpack/predef/library/c/uc.h
|
||||||
|
include/msgpack/predef/library/c/vms.h
|
||||||
|
include/msgpack/predef/library/c/zos.h
|
||||||
|
include/msgpack/predef/library/std.h
|
||||||
|
include/msgpack/predef/library/std/_prefix.h
|
||||||
|
include/msgpack/predef/library/std/cxx.h
|
||||||
|
include/msgpack/predef/library/std/dinkumware.h
|
||||||
|
include/msgpack/predef/library/std/libcomo.h
|
||||||
|
include/msgpack/predef/library/std/modena.h
|
||||||
|
include/msgpack/predef/library/std/msl.h
|
||||||
|
include/msgpack/predef/library/std/roguewave.h
|
||||||
|
include/msgpack/predef/library/std/sgi.h
|
||||||
|
include/msgpack/predef/library/std/stdcpp3.h
|
||||||
|
include/msgpack/predef/library/std/stlport.h
|
||||||
|
include/msgpack/predef/library/std/vacpp.h
|
||||||
|
include/msgpack/predef/make.h
|
||||||
|
include/msgpack/predef/os.h
|
||||||
|
include/msgpack/predef/os/aix.h
|
||||||
|
include/msgpack/predef/os/amigaos.h
|
||||||
|
include/msgpack/predef/os/android.h
|
||||||
|
include/msgpack/predef/os/beos.h
|
||||||
|
include/msgpack/predef/os/bsd.h
|
||||||
|
include/msgpack/predef/os/bsd/bsdi.h
|
||||||
|
include/msgpack/predef/os/bsd/dragonfly.h
|
||||||
|
include/msgpack/predef/os/bsd/free.h
|
||||||
|
include/msgpack/predef/os/bsd/net.h
|
||||||
|
include/msgpack/predef/os/bsd/open.h
|
||||||
|
include/msgpack/predef/os/cygwin.h
|
||||||
|
include/msgpack/predef/os/haiku.h
|
||||||
|
include/msgpack/predef/os/hpux.h
|
||||||
|
include/msgpack/predef/os/ios.h
|
||||||
|
include/msgpack/predef/os/irix.h
|
||||||
|
include/msgpack/predef/os/linux.h
|
||||||
|
include/msgpack/predef/os/macos.h
|
||||||
|
include/msgpack/predef/os/os400.h
|
||||||
|
include/msgpack/predef/os/qnxnto.h
|
||||||
|
include/msgpack/predef/os/solaris.h
|
||||||
|
include/msgpack/predef/os/unix.h
|
||||||
|
include/msgpack/predef/os/vms.h
|
||||||
|
include/msgpack/predef/os/windows.h
|
||||||
|
include/msgpack/predef/other.h
|
||||||
|
include/msgpack/predef/other/endian.h
|
||||||
|
include/msgpack/predef/other/workaround.h
|
||||||
|
include/msgpack/predef/platform.h
|
||||||
|
include/msgpack/predef/platform/cloudabi.h
|
||||||
|
include/msgpack/predef/platform/ios.h
|
||||||
|
include/msgpack/predef/platform/mingw.h
|
||||||
|
include/msgpack/predef/platform/mingw32.h
|
||||||
|
include/msgpack/predef/platform/mingw64.h
|
||||||
|
include/msgpack/predef/platform/windows_desktop.h
|
||||||
|
include/msgpack/predef/platform/windows_phone.h
|
||||||
|
include/msgpack/predef/platform/windows_runtime.h
|
||||||
|
include/msgpack/predef/platform/windows_server.h
|
||||||
|
include/msgpack/predef/platform/windows_store.h
|
||||||
|
include/msgpack/predef/platform/windows_system.h
|
||||||
|
include/msgpack/predef/platform/windows_uwp.h
|
||||||
|
include/msgpack/predef/version.h
|
||||||
|
include/msgpack/predef/version_number.h
|
||||||
|
include/msgpack/preprocessor.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/add.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/dec.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/detail/div_base.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/div.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/inc.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/mod.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/mul.hpp
|
||||||
|
include/msgpack/preprocessor/arithmetic/sub.hpp
|
||||||
|
include/msgpack/preprocessor/array.hpp
|
||||||
|
include/msgpack/preprocessor/array/data.hpp
|
||||||
|
include/msgpack/preprocessor/array/detail/get_data.hpp
|
||||||
|
include/msgpack/preprocessor/array/elem.hpp
|
||||||
|
include/msgpack/preprocessor/array/enum.hpp
|
||||||
|
include/msgpack/preprocessor/array/insert.hpp
|
||||||
|
include/msgpack/preprocessor/array/pop_back.hpp
|
||||||
|
include/msgpack/preprocessor/array/pop_front.hpp
|
||||||
|
include/msgpack/preprocessor/array/push_back.hpp
|
||||||
|
include/msgpack/preprocessor/array/push_front.hpp
|
||||||
|
include/msgpack/preprocessor/array/remove.hpp
|
||||||
|
include/msgpack/preprocessor/array/replace.hpp
|
||||||
|
include/msgpack/preprocessor/array/reverse.hpp
|
||||||
|
include/msgpack/preprocessor/array/size.hpp
|
||||||
|
include/msgpack/preprocessor/array/to_list.hpp
|
||||||
|
include/msgpack/preprocessor/array/to_seq.hpp
|
||||||
|
include/msgpack/preprocessor/array/to_tuple.hpp
|
||||||
|
include/msgpack/preprocessor/assert_msg.hpp
|
||||||
|
include/msgpack/preprocessor/cat.hpp
|
||||||
|
include/msgpack/preprocessor/comma.hpp
|
||||||
|
include/msgpack/preprocessor/comma_if.hpp
|
||||||
|
include/msgpack/preprocessor/comparison.hpp
|
||||||
|
include/msgpack/preprocessor/comparison/equal.hpp
|
||||||
|
include/msgpack/preprocessor/comparison/greater.hpp
|
||||||
|
include/msgpack/preprocessor/comparison/greater_equal.hpp
|
||||||
|
include/msgpack/preprocessor/comparison/less.hpp
|
||||||
|
include/msgpack/preprocessor/comparison/less_equal.hpp
|
||||||
|
include/msgpack/preprocessor/comparison/not_equal.hpp
|
||||||
|
include/msgpack/preprocessor/config/config.hpp
|
||||||
|
include/msgpack/preprocessor/config/limits.hpp
|
||||||
|
include/msgpack/preprocessor/control.hpp
|
||||||
|
include/msgpack/preprocessor/control/deduce_d.hpp
|
||||||
|
include/msgpack/preprocessor/control/detail/dmc/while.hpp
|
||||||
|
include/msgpack/preprocessor/control/detail/edg/while.hpp
|
||||||
|
include/msgpack/preprocessor/control/detail/msvc/while.hpp
|
||||||
|
include/msgpack/preprocessor/control/detail/while.hpp
|
||||||
|
include/msgpack/preprocessor/control/expr_if.hpp
|
||||||
|
include/msgpack/preprocessor/control/expr_iif.hpp
|
||||||
|
include/msgpack/preprocessor/control/if.hpp
|
||||||
|
include/msgpack/preprocessor/control/iif.hpp
|
||||||
|
include/msgpack/preprocessor/control/while.hpp
|
||||||
|
include/msgpack/preprocessor/debug.hpp
|
||||||
|
include/msgpack/preprocessor/debug/assert.hpp
|
||||||
|
include/msgpack/preprocessor/debug/error.hpp
|
||||||
|
include/msgpack/preprocessor/debug/line.hpp
|
||||||
|
include/msgpack/preprocessor/dec.hpp
|
||||||
|
include/msgpack/preprocessor/detail/auto_rec.hpp
|
||||||
|
include/msgpack/preprocessor/detail/check.hpp
|
||||||
|
include/msgpack/preprocessor/detail/dmc/auto_rec.hpp
|
||||||
|
include/msgpack/preprocessor/detail/is_binary.hpp
|
||||||
|
include/msgpack/preprocessor/detail/is_nullary.hpp
|
||||||
|
include/msgpack/preprocessor/detail/is_unary.hpp
|
||||||
|
include/msgpack/preprocessor/detail/null.hpp
|
||||||
|
include/msgpack/preprocessor/detail/split.hpp
|
||||||
|
include/msgpack/preprocessor/empty.hpp
|
||||||
|
include/msgpack/preprocessor/enum.hpp
|
||||||
|
include/msgpack/preprocessor/enum_params.hpp
|
||||||
|
include/msgpack/preprocessor/enum_params_with_a_default.hpp
|
||||||
|
include/msgpack/preprocessor/enum_params_with_defaults.hpp
|
||||||
|
include/msgpack/preprocessor/enum_shifted.hpp
|
||||||
|
include/msgpack/preprocessor/enum_shifted_params.hpp
|
||||||
|
include/msgpack/preprocessor/expand.hpp
|
||||||
|
include/msgpack/preprocessor/expr_if.hpp
|
||||||
|
include/msgpack/preprocessor/facilities.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/apply.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/detail/is_empty.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/empty.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/expand.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/identity.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/intercept.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/is_1.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/is_empty.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/is_empty_or_1.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/is_empty_variadic.hpp
|
||||||
|
include/msgpack/preprocessor/facilities/overload.hpp
|
||||||
|
include/msgpack/preprocessor/for.hpp
|
||||||
|
include/msgpack/preprocessor/identity.hpp
|
||||||
|
include/msgpack/preprocessor/if.hpp
|
||||||
|
include/msgpack/preprocessor/inc.hpp
|
||||||
|
include/msgpack/preprocessor/iterate.hpp
|
||||||
|
include/msgpack/preprocessor/iteration.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/lower1.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/lower2.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/lower3.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/lower4.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/lower5.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/upper1.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/upper2.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/upper3.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/upper4.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/bounds/upper5.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/finish.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/forward1.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/forward2.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/forward3.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/forward4.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/forward5.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/reverse1.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/reverse2.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/reverse3.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/reverse4.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/iter/reverse5.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/local.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/rlocal.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/self.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/detail/start.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/iterate.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/local.hpp
|
||||||
|
include/msgpack/preprocessor/iteration/self.hpp
|
||||||
|
include/msgpack/preprocessor/library.hpp
|
||||||
|
include/msgpack/preprocessor/limits.hpp
|
||||||
|
include/msgpack/preprocessor/list.hpp
|
||||||
|
include/msgpack/preprocessor/list/adt.hpp
|
||||||
|
include/msgpack/preprocessor/list/append.hpp
|
||||||
|
include/msgpack/preprocessor/list/at.hpp
|
||||||
|
include/msgpack/preprocessor/list/cat.hpp
|
||||||
|
include/msgpack/preprocessor/list/detail/dmc/fold_left.hpp
|
||||||
|
include/msgpack/preprocessor/list/detail/edg/fold_left.hpp
|
||||||
|
include/msgpack/preprocessor/list/detail/edg/fold_right.hpp
|
||||||
|
include/msgpack/preprocessor/list/detail/fold_left.hpp
|
||||||
|
include/msgpack/preprocessor/list/detail/fold_right.hpp
|
||||||
|
include/msgpack/preprocessor/list/enum.hpp
|
||||||
|
include/msgpack/preprocessor/list/filter.hpp
|
||||||
|
include/msgpack/preprocessor/list/first_n.hpp
|
||||||
|
include/msgpack/preprocessor/list/fold_left.hpp
|
||||||
|
include/msgpack/preprocessor/list/fold_right.hpp
|
||||||
|
include/msgpack/preprocessor/list/for_each.hpp
|
||||||
|
include/msgpack/preprocessor/list/for_each_i.hpp
|
||||||
|
include/msgpack/preprocessor/list/for_each_product.hpp
|
||||||
|
include/msgpack/preprocessor/list/rest_n.hpp
|
||||||
|
include/msgpack/preprocessor/list/reverse.hpp
|
||||||
|
include/msgpack/preprocessor/list/size.hpp
|
||||||
|
include/msgpack/preprocessor/list/to_array.hpp
|
||||||
|
include/msgpack/preprocessor/list/to_seq.hpp
|
||||||
|
include/msgpack/preprocessor/list/to_tuple.hpp
|
||||||
|
include/msgpack/preprocessor/list/transform.hpp
|
||||||
|
include/msgpack/preprocessor/logical.hpp
|
||||||
|
include/msgpack/preprocessor/logical/and.hpp
|
||||||
|
include/msgpack/preprocessor/logical/bitand.hpp
|
||||||
|
include/msgpack/preprocessor/logical/bitnor.hpp
|
||||||
|
include/msgpack/preprocessor/logical/bitor.hpp
|
||||||
|
include/msgpack/preprocessor/logical/bitxor.hpp
|
||||||
|
include/msgpack/preprocessor/logical/bool.hpp
|
||||||
|
include/msgpack/preprocessor/logical/compl.hpp
|
||||||
|
include/msgpack/preprocessor/logical/nor.hpp
|
||||||
|
include/msgpack/preprocessor/logical/not.hpp
|
||||||
|
include/msgpack/preprocessor/logical/or.hpp
|
||||||
|
include/msgpack/preprocessor/logical/xor.hpp
|
||||||
|
include/msgpack/preprocessor/max.hpp
|
||||||
|
include/msgpack/preprocessor/min.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation/comma.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation/comma_if.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation/detail/is_begin_parens.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation/is_begin_parens.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation/paren.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation/paren_if.hpp
|
||||||
|
include/msgpack/preprocessor/punctuation/remove_parens.hpp
|
||||||
|
include/msgpack/preprocessor/repeat.hpp
|
||||||
|
include/msgpack/preprocessor/repeat_2nd.hpp
|
||||||
|
include/msgpack/preprocessor/repeat_3rd.hpp
|
||||||
|
include/msgpack/preprocessor/repeat_from_to.hpp
|
||||||
|
include/msgpack/preprocessor/repeat_from_to_2nd.hpp
|
||||||
|
include/msgpack/preprocessor/repeat_from_to_3rd.hpp
|
||||||
|
include/msgpack/preprocessor/repetition.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/deduce_r.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/deduce_z.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/detail/dmc/for.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/detail/edg/for.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/detail/for.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/detail/msvc/for.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_binary_params.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_params.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_params_with_a_default.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_params_with_defaults.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_shifted.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_shifted_binary_params.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_shifted_params.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_trailing.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_trailing_binary_params.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/enum_trailing_params.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/for.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/repeat.hpp
|
||||||
|
include/msgpack/preprocessor/repetition/repeat_from_to.hpp
|
||||||
|
include/msgpack/preprocessor/selection.hpp
|
||||||
|
include/msgpack/preprocessor/selection/max.hpp
|
||||||
|
include/msgpack/preprocessor/selection/min.hpp
|
||||||
|
include/msgpack/preprocessor/seq.hpp
|
||||||
|
include/msgpack/preprocessor/seq/cat.hpp
|
||||||
|
include/msgpack/preprocessor/seq/detail/binary_transform.hpp
|
||||||
|
include/msgpack/preprocessor/seq/detail/is_empty.hpp
|
||||||
|
include/msgpack/preprocessor/seq/detail/split.hpp
|
||||||
|
include/msgpack/preprocessor/seq/detail/to_list_msvc.hpp
|
||||||
|
include/msgpack/preprocessor/seq/elem.hpp
|
||||||
|
include/msgpack/preprocessor/seq/enum.hpp
|
||||||
|
include/msgpack/preprocessor/seq/filter.hpp
|
||||||
|
include/msgpack/preprocessor/seq/first_n.hpp
|
||||||
|
include/msgpack/preprocessor/seq/fold_left.hpp
|
||||||
|
include/msgpack/preprocessor/seq/fold_right.hpp
|
||||||
|
include/msgpack/preprocessor/seq/for_each.hpp
|
||||||
|
include/msgpack/preprocessor/seq/for_each_i.hpp
|
||||||
|
include/msgpack/preprocessor/seq/for_each_product.hpp
|
||||||
|
include/msgpack/preprocessor/seq/insert.hpp
|
||||||
|
include/msgpack/preprocessor/seq/pop_back.hpp
|
||||||
|
include/msgpack/preprocessor/seq/pop_front.hpp
|
||||||
|
include/msgpack/preprocessor/seq/push_back.hpp
|
||||||
|
include/msgpack/preprocessor/seq/push_front.hpp
|
||||||
|
include/msgpack/preprocessor/seq/remove.hpp
|
||||||
|
include/msgpack/preprocessor/seq/replace.hpp
|
||||||
|
include/msgpack/preprocessor/seq/rest_n.hpp
|
||||||
|
include/msgpack/preprocessor/seq/reverse.hpp
|
||||||
|
include/msgpack/preprocessor/seq/seq.hpp
|
||||||
|
include/msgpack/preprocessor/seq/size.hpp
|
||||||
|
include/msgpack/preprocessor/seq/subseq.hpp
|
||||||
|
include/msgpack/preprocessor/seq/to_array.hpp
|
||||||
|
include/msgpack/preprocessor/seq/to_list.hpp
|
||||||
|
include/msgpack/preprocessor/seq/to_tuple.hpp
|
||||||
|
include/msgpack/preprocessor/seq/transform.hpp
|
||||||
|
include/msgpack/preprocessor/seq/variadic_seq_to_seq.hpp
|
||||||
|
include/msgpack/preprocessor/slot.hpp
|
||||||
|
include/msgpack/preprocessor/slot/counter.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/counter.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/def.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/shared.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/slot1.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/slot2.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/slot3.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/slot4.hpp
|
||||||
|
include/msgpack/preprocessor/slot/detail/slot5.hpp
|
||||||
|
include/msgpack/preprocessor/slot/slot.hpp
|
||||||
|
include/msgpack/preprocessor/stringize.hpp
|
||||||
|
include/msgpack/preprocessor/tuple.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/detail/is_single_return.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/eat.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/elem.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/enum.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/insert.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/pop_back.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/pop_front.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/push_back.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/push_front.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/rem.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/remove.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/replace.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/reverse.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/size.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/to_array.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/to_list.hpp
|
||||||
|
include/msgpack/preprocessor/tuple/to_seq.hpp
|
||||||
|
include/msgpack/preprocessor/variadic.hpp
|
||||||
|
include/msgpack/preprocessor/variadic/detail/is_single_return.hpp
|
||||||
|
include/msgpack/preprocessor/variadic/elem.hpp
|
||||||
|
include/msgpack/preprocessor/variadic/size.hpp
|
||||||
|
include/msgpack/preprocessor/variadic/to_array.hpp
|
||||||
|
include/msgpack/preprocessor/variadic/to_list.hpp
|
||||||
|
include/msgpack/preprocessor/variadic/to_seq.hpp
|
||||||
|
include/msgpack/preprocessor/variadic/to_tuple.hpp
|
||||||
|
include/msgpack/preprocessor/while.hpp
|
||||||
|
include/msgpack/preprocessor/wstringize.hpp
|
||||||
include/msgpack/sbuffer.hpp
|
include/msgpack/sbuffer.hpp
|
||||||
include/msgpack/sbuffer_decl.hpp
|
include/msgpack/sbuffer_decl.hpp
|
||||||
include/msgpack/sysdep.hpp
|
include/msgpack/sysdep.hpp
|
||||||
@@ -132,6 +543,7 @@ SET (msgpackc_HEADERS
|
|||||||
include/msgpack/v1/adaptor/cpp17/carray_byte.hpp
|
include/msgpack/v1/adaptor/cpp17/carray_byte.hpp
|
||||||
include/msgpack/v1/adaptor/cpp17/optional.hpp
|
include/msgpack/v1/adaptor/cpp17/optional.hpp
|
||||||
include/msgpack/v1/adaptor/cpp17/string_view.hpp
|
include/msgpack/v1/adaptor/cpp17/string_view.hpp
|
||||||
|
include/msgpack/v1/adaptor/cpp17/variant.hpp
|
||||||
include/msgpack/v1/adaptor/cpp17/vector_byte.hpp
|
include/msgpack/v1/adaptor/cpp17/vector_byte.hpp
|
||||||
include/msgpack/v1/adaptor/cpp20/span.hpp
|
include/msgpack/v1/adaptor/cpp20/span.hpp
|
||||||
include/msgpack/v1/adaptor/define.hpp
|
include/msgpack/v1/adaptor/define.hpp
|
||||||
|
21
README.md
21
README.md
@@ -1,7 +1,7 @@
|
|||||||
`msgpack` for C++
|
`msgpack` for C++
|
||||||
===================
|
===================
|
||||||
|
|
||||||
Version 4.0.3 [](https://github.com/msgpack/msgpack-c/actions) [](https://ci.appveyor.com/project/redboltz/msgpack-c/branch/cpp_master)
|
Version 6.1.1 [](https://github.com/msgpack/msgpack-c/actions) [](https://ci.appveyor.com/project/redboltz/msgpack-c/branch/cpp_master)
|
||||||
[](https://codecov.io/gh/msgpack/msgpack-c/branch/cpp_master)
|
[](https://codecov.io/gh/msgpack/msgpack-c/branch/cpp_master)
|
||||||
|
|
||||||
It's like JSON but smaller and faster.
|
It's like JSON but smaller and faster.
|
||||||
@@ -71,6 +71,23 @@ C++ version of msgpack-c itself is a header-only library and depends only on
|
|||||||
boost headers. Tests depend on boost unit test framework and are linked with
|
boost headers. Tests depend on boost unit test framework and are linked with
|
||||||
it, so if you want to build them, you need to have this dependency installed.
|
it, so if you want to build them, you need to have this dependency installed.
|
||||||
|
|
||||||
|
Experimental support for removing boost dependency
|
||||||
|
|
||||||
|
For cmake:
|
||||||
|
|
||||||
|
```
|
||||||
|
cmake -DMSGPACK_USE_BOOST=OFF ..
|
||||||
|
```
|
||||||
|
|
||||||
|
NOTE: `-DMSGPACK_BUILD_TESTS=ON` doesn't work with `-DMSGPACK_USE_BOOST=OFF`.
|
||||||
|
|
||||||
|
For C++ compiler
|
||||||
|
|
||||||
|
```
|
||||||
|
clang++ -DMSGPACK_NO_BOOST your_code.cpp
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
Usage
|
Usage
|
||||||
-----
|
-----
|
||||||
|
|
||||||
@@ -81,7 +98,7 @@ Usage
|
|||||||
# ...
|
# ...
|
||||||
find_package(msgpack REQUIRED)
|
find_package(msgpack REQUIRED)
|
||||||
# ...
|
# ...
|
||||||
target_link_libraries(your_target_name <PRIVATE/PUBLIC/INTERFACE> msgpackc-cxx)
|
target_link_libraries(your_target_name <PRIVATE/PUBLIC/INTERFACE> msgpack-cxx)
|
||||||
# ...
|
# ...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
16
appveyor.yml
16
appveyor.yml
@@ -1,4 +1,4 @@
|
|||||||
version: 4.0.3.{build}
|
version: 6.1.1.{build}
|
||||||
|
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
@@ -23,10 +23,10 @@ environment:
|
|||||||
boost_subdir: lib32-msvc-14.0
|
boost_subdir: lib32-msvc-14.0
|
||||||
build_script:
|
build_script:
|
||||||
- ps: |
|
- ps: |
|
||||||
appveyor DownloadFile http://zlib.net/zlib-1.2.11.tar.gz -FileName zlib-1.2.11.tar.gz
|
appveyor DownloadFile http://zlib.net/zlib-1.3.1.tar.gz -FileName zlib-1.3.1.tar.gz
|
||||||
7z x zlib-1.2.11.tar.gz 2> $null
|
7z x zlib-1.3.1.tar.gz 2> $null
|
||||||
7z x zlib-1.2.11.tar 2> $null
|
7z x zlib-1.3.1.tar 2> $null
|
||||||
cd zlib-1.2.11
|
cd zlib-1.3.1
|
||||||
|
|
||||||
md build
|
md build
|
||||||
md prefix
|
md prefix
|
||||||
@@ -34,7 +34,7 @@ build_script:
|
|||||||
|
|
||||||
cmake `
|
cmake `
|
||||||
-G $env:msvc `
|
-G $env:msvc `
|
||||||
-D CMAKE_INSTALL_PREFIX="$env:APPVEYOR_BUILD_FOLDER\zlib-1.2.11\prefix" `
|
-D CMAKE_INSTALL_PREFIX="$env:APPVEYOR_BUILD_FOLDER\zlib-1.3.1\prefix" `
|
||||||
..
|
..
|
||||||
if ($LastExitCode -ne 0) { exit $LastExitCode }
|
if ($LastExitCode -ne 0) { exit $LastExitCode }
|
||||||
|
|
||||||
@@ -52,7 +52,7 @@ build_script:
|
|||||||
-D MSGPACK_BUILD_EXAMPLES=ON `
|
-D MSGPACK_BUILD_EXAMPLES=ON `
|
||||||
-D MSGPACK_BUILD_TESTS=ON `
|
-D MSGPACK_BUILD_TESTS=ON `
|
||||||
-D CMAKE_EXE_LINKER_FLAGS=/LIBPATH:"$env:boost_prefix\$env:boost_subdir" `
|
-D CMAKE_EXE_LINKER_FLAGS=/LIBPATH:"$env:boost_prefix\$env:boost_subdir" `
|
||||||
-D CMAKE_PREFIX_PATH="$env:boost_prefix;$env:APPVEYOR_BUILD_FOLDER\zlib-1.2.11\prefix" `
|
-D CMAKE_PREFIX_PATH="$env:boost_prefix;$env:APPVEYOR_BUILD_FOLDER\zlib-1.3.1\prefix" `
|
||||||
-D CMAKE_INSTALL_PREFIX="$env:APPVEYOR_BUILD_FOLDER\prefix" `
|
-D CMAKE_INSTALL_PREFIX="$env:APPVEYOR_BUILD_FOLDER\prefix" `
|
||||||
-D CMAKE_CXX_FLAGS="/D_VARIADIC_MAX=10 /EHsc /DBOOST_ALL_DYN_LINK" `
|
-D CMAKE_CXX_FLAGS="/D_VARIADIC_MAX=10 /EHsc /DBOOST_ALL_DYN_LINK" `
|
||||||
..
|
..
|
||||||
@@ -62,5 +62,5 @@ build_script:
|
|||||||
if ($LastExitCode -ne 0) { exit $LastExitCode }
|
if ($LastExitCode -ne 0) { exit $LastExitCode }
|
||||||
|
|
||||||
test_script:
|
test_script:
|
||||||
- set PATH=%PATH%;%APPVEYOR_BUILD_FOLDER%\zlib-1.2.11\build\Release;%APPVEYOR_BUILD_FOLDER%\build\release;%boost_prefix%\%boost_subdir%
|
- set PATH=%PATH%;%APPVEYOR_BUILD_FOLDER%\zlib-1.3.1\build\Release;%APPVEYOR_BUILD_FOLDER%\build\release;%boost_prefix%\%boost_subdir%
|
||||||
- ctest -VV -C Release
|
- ctest -VV -C Release
|
||||||
|
@@ -21,6 +21,7 @@ cmake \
|
|||||||
-D MSGPACK_CHAR_SIGN=${CHAR_SIGN} \
|
-D MSGPACK_CHAR_SIGN=${CHAR_SIGN} \
|
||||||
-D MSGPACK_DEFAULT_API_VERSION=${API_VERSION} \
|
-D MSGPACK_DEFAULT_API_VERSION=${API_VERSION} \
|
||||||
-D MSGPACK_USE_X3_PARSE=${X3_PARSE} \
|
-D MSGPACK_USE_X3_PARSE=${X3_PARSE} \
|
||||||
|
-D MSGPACK_USE_STD_VARIANT_ADAPTOR=${STD_VARIANT_ADAPTOR} \
|
||||||
-D CMAKE_CXX_FLAGS="${CXXFLAGS} ${ARCH_FLAG}" \
|
-D CMAKE_CXX_FLAGS="${CXXFLAGS} ${ARCH_FLAG}" \
|
||||||
-D CMAKE_INSTALL_PREFIX=$prefix_dir \
|
-D CMAKE_INSTALL_PREFIX=$prefix_dir \
|
||||||
-B $build_dir \
|
-B $build_dir \
|
||||||
|
@@ -13,14 +13,13 @@
|
|||||||
#include "msgpack/versioning.hpp"
|
#include "msgpack/versioning.hpp"
|
||||||
#include "msgpack/cpp_config.hpp"
|
#include "msgpack/cpp_config.hpp"
|
||||||
#include "msgpack/zone_decl.hpp"
|
#include "msgpack/zone_decl.hpp"
|
||||||
|
#include "msgpack/assert.hpp"
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <cstdlib>
|
#include <cstdlib>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#include <boost/assert.hpp>
|
|
||||||
|
|
||||||
<% GENERATION_LIMIT = 15 %>
|
<% GENERATION_LIMIT = 15 %>
|
||||||
namespace msgpack {
|
namespace msgpack {
|
||||||
|
|
||||||
@@ -139,7 +138,7 @@ class zone {
|
|||||||
finalizer_array m_finalizer_array;
|
finalizer_array m_finalizer_array;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
zone(size_t chunk_size = MSGPACK_ZONE_CHUNK_SIZE) /* throw() */;
|
zone(size_t chunk_size = MSGPACK_ZONE_CHUNK_SIZE);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
void* allocate_align(size_t size, size_t align = MSGPACK_ZONE_ALIGN);
|
void* allocate_align(size_t size, size_t align = MSGPACK_ZONE_ALIGN);
|
||||||
@@ -195,13 +194,13 @@ private:
|
|||||||
zone& operator=(const zone&);
|
zone& operator=(const zone&);
|
||||||
};
|
};
|
||||||
|
|
||||||
inline zone::zone(size_t chunk_size) /* throw() */ :m_chunk_size(chunk_size), m_chunk_list(m_chunk_size)
|
inline zone::zone(size_t chunk_size):m_chunk_size(chunk_size), m_chunk_list(m_chunk_size)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
inline char* zone::get_aligned(char* ptr, size_t align)
|
inline char* zone::get_aligned(char* ptr, size_t align)
|
||||||
{
|
{
|
||||||
BOOST_ASSERT(align != 0 && (align & (align - 1)) == 0); // align must be 2^n (n >= 0)
|
MSGPACK_ASSERT(align != 0 && (align & (align - 1)) == 0); // align must be 2^n (n >= 0)
|
||||||
return
|
return
|
||||||
reinterpret_cast<char*>(
|
reinterpret_cast<char*>(
|
||||||
reinterpret_cast<uintptr_t>(ptr + (align - 1)) & ~static_cast<uintptr_t>(align - 1)
|
reinterpret_cast<uintptr_t>(ptr + (align - 1)) & ~static_cast<uintptr_t>(align - 1)
|
||||||
|
@@ -1,4 +1,9 @@
|
|||||||
ADD_SUBDIRECTORY (cpp03)
|
ADD_SUBDIRECTORY (cpp03)
|
||||||
ADD_SUBDIRECTORY (cpp11)
|
ADD_SUBDIRECTORY (cpp11)
|
||||||
ADD_SUBDIRECTORY (boost)
|
|
||||||
ADD_SUBDIRECTORY (x3)
|
IF (MSGPACK_USE_BOOST)
|
||||||
|
ADD_SUBDIRECTORY (boost)
|
||||||
|
IF (MSGPACK_USE_X3_PARSE)
|
||||||
|
ADD_SUBDIRECTORY (x3)
|
||||||
|
ENDIF ()
|
||||||
|
ENDIF ()
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
FIND_PACKAGE (Boost REQUIRED COMPONENTS system)
|
FIND_PACKAGE (Boost REQUIRED)
|
||||||
FIND_PACKAGE (Threads REQUIRED)
|
FIND_PACKAGE (Threads REQUIRED)
|
||||||
FIND_PACKAGE (ZLIB REQUIRED)
|
FIND_PACKAGE (ZLIB REQUIRED)
|
||||||
|
|
||||||
@@ -21,8 +21,7 @@ FOREACH (source_file ${exec_PROGRAMS})
|
|||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
||||||
msgpackc-cxx
|
msgpack-cxx
|
||||||
Boost::system
|
|
||||||
Threads::Threads
|
Threads::Threads
|
||||||
)
|
)
|
||||||
IF (ZLIB_FOUND)
|
IF (ZLIB_FOUND)
|
||||||
|
@@ -26,12 +26,15 @@ IF (NOT MSVC)
|
|||||||
)
|
)
|
||||||
ENDIF ()
|
ENDIF ()
|
||||||
|
|
||||||
if (Boost_TIMER_LIBRARY)
|
|
||||||
LIST (APPEND with_boost_lib_PROGRAMS
|
IF (MSGPACK_USE_BOOST)
|
||||||
speed_test.cpp
|
IF (Boost_TIMER_LIBRARY)
|
||||||
speed_test_nested_array.cpp
|
LIST (APPEND with_boost_lib_PROGRAMS
|
||||||
)
|
speed_test.cpp
|
||||||
endif()
|
speed_test_nested_array.cpp
|
||||||
|
)
|
||||||
|
ENDIF ()
|
||||||
|
ENDIF ()
|
||||||
|
|
||||||
FOREACH (source_file ${exec_PROGRAMS})
|
FOREACH (source_file ${exec_PROGRAMS})
|
||||||
GET_FILENAME_COMPONENT (source_file_we ${source_file} NAME_WE)
|
GET_FILENAME_COMPONENT (source_file_we ${source_file} NAME_WE)
|
||||||
@@ -40,7 +43,7 @@ FOREACH (source_file ${exec_PROGRAMS})
|
|||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
||||||
msgpackc-cxx
|
msgpack-cxx
|
||||||
)
|
)
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
SET_PROPERTY (TARGET ${source_file_we} APPEND_STRING PROPERTY COMPILE_FLAGS " -Wall -Wextra")
|
SET_PROPERTY (TARGET ${source_file_we} APPEND_STRING PROPERTY COMPILE_FLAGS " -Wall -Wextra")
|
||||||
@@ -61,7 +64,7 @@ FOREACH (source_file ${with_pthread_PROGRAMS})
|
|||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
||||||
msgpackc-cxx
|
msgpack-cxx
|
||||||
Threads::Threads
|
Threads::Threads
|
||||||
)
|
)
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
@@ -83,7 +86,7 @@ FOREACH (source_file ${with_boost_lib_PROGRAMS})
|
|||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
||||||
msgpackc-cxx
|
msgpack-cxx
|
||||||
Boost::timer
|
Boost::timer
|
||||||
)
|
)
|
||||||
IF (NOT MSVC AND NOT APPLE)
|
IF (NOT MSVC AND NOT APPLE)
|
||||||
|
@@ -17,7 +17,7 @@ IF (MSGPACK_CXX11 OR MSGPACK_CXX14 OR MSGPACK_CXX17)
|
|||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
||||||
msgpackc-cxx
|
msgpack-cxx
|
||||||
)
|
)
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
SET_PROPERTY (TARGET ${source_file_we} APPEND_STRING PROPERTY COMPILE_FLAGS " -Wall -Wextra")
|
SET_PROPERTY (TARGET ${source_file_we} APPEND_STRING PROPERTY COMPILE_FLAGS " -Wall -Wextra")
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
IF (MSGPACK_USE_X3_PARSE AND MSGPACK_DEFAULT_API_VERSION VERSION_GREATER 1)
|
IF (MSGPACK_USE_X3_PARSE AND MSGPACK_DEFAULT_API_VERSION VERSION_GREATER 1)
|
||||||
FIND_PACKAGE (Boost REQUIRED COMPONENTS context system)
|
FIND_PACKAGE (Boost REQUIRED COMPONENTS context)
|
||||||
FIND_PACKAGE (Threads REQUIRED)
|
FIND_PACKAGE (Threads REQUIRED)
|
||||||
|
|
||||||
LIST (APPEND exec_PROGRAMS
|
LIST (APPEND exec_PROGRAMS
|
||||||
@@ -15,7 +15,7 @@ IF (MSGPACK_USE_X3_PARSE AND MSGPACK_DEFAULT_API_VERSION VERSION_GREATER 1)
|
|||||||
${source_file_we}
|
${source_file_we}
|
||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE msgpackc-cxx)
|
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE msgpack-cxx)
|
||||||
|
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
SET_PROPERTY (TARGET ${source_file_we} APPEND_STRING PROPERTY COMPILE_FLAGS " -Wall -Wextra")
|
SET_PROPERTY (TARGET ${source_file_we} APPEND_STRING PROPERTY COMPILE_FLAGS " -Wall -Wextra")
|
||||||
@@ -40,9 +40,8 @@ IF (MSGPACK_USE_X3_PARSE AND MSGPACK_DEFAULT_API_VERSION VERSION_GREATER 1)
|
|||||||
${source_file}
|
${source_file}
|
||||||
)
|
)
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
TARGET_LINK_LIBRARIES (${source_file_we} PRIVATE
|
||||||
msgpackc-cxx
|
msgpack-cxx
|
||||||
Boost::context
|
Boost::context
|
||||||
Boost::system
|
|
||||||
Threads::Threads
|
Threads::Threads
|
||||||
)
|
)
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
FIND_PACKAGE (Threads REQUIRED)
|
FIND_PACKAGE (Threads REQUIRED)
|
||||||
FIND_PACKAGE (Boost REQUIRED COMPONENTS system filesystem unit_test_framework)
|
FIND_PACKAGE (Boost REQUIRED COMPONENTS filesystem unit_test_framework)
|
||||||
|
|
||||||
LIST (APPEND check_PROGRAMS
|
LIST (APPEND check_PROGRAMS
|
||||||
regression_runner.cpp
|
regression_runner.cpp
|
||||||
@@ -16,10 +16,9 @@ FOREACH (source_file ${check_PROGRAMS})
|
|||||||
$<IF:$<BOOL:${MSGPACK_USE_STATIC_BOOST}>,,BOOST_TEST_DYN_LINK>)
|
$<IF:$<BOOL:${MSGPACK_USE_STATIC_BOOST}>,,BOOST_TEST_DYN_LINK>)
|
||||||
|
|
||||||
TARGET_LINK_LIBRARIES (${source_file_we}
|
TARGET_LINK_LIBRARIES (${source_file_we}
|
||||||
msgpackc-cxx
|
msgpack-cxx
|
||||||
Threads::Threads
|
Threads::Threads
|
||||||
Boost::filesystem
|
Boost::filesystem
|
||||||
Boost::system
|
|
||||||
Boost::unit_test_framework
|
Boost::unit_test_framework
|
||||||
)
|
)
|
||||||
|
|
||||||
|
16
include/msgpack/adaptor/cpp17/variant.hpp
Normal file
16
include/msgpack/adaptor/cpp17/variant.hpp
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// MessagePack for C++ static resolution routine
|
||||||
|
//
|
||||||
|
// Copyright (C) 2023 Uy Ha
|
||||||
|
//
|
||||||
|
// 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 MSGPACK_TYPE_CPP17_VARIANT_HPP
|
||||||
|
#define MSGPACK_TYPE_CPP17_VARIANT_HPP
|
||||||
|
|
||||||
|
#include "msgpack/v1/adaptor/cpp17/variant.hpp"
|
||||||
|
|
||||||
|
#endif // MSGPACK_TYPE_CPP17_VARIANT_HPP
|
@@ -10,6 +10,64 @@
|
|||||||
#ifndef MSGPACK_DEFINE_DECL_HPP
|
#ifndef MSGPACK_DEFINE_DECL_HPP
|
||||||
#define MSGPACK_DEFINE_DECL_HPP
|
#define MSGPACK_DEFINE_DECL_HPP
|
||||||
|
|
||||||
|
#if defined(MSGPACK_NO_BOOST)
|
||||||
|
|
||||||
|
// MSGPACK_PP_VARIADICS is defined in msgpack/preprocessor/config/config.hpp
|
||||||
|
// http://www.boost.org/libs/preprocessor/doc/ref/variadics.html
|
||||||
|
// However, supporting compiler detection is not complete. msgpack-c requires
|
||||||
|
// variadic macro arguments support. So MSGPACK_PP_VARIADICS is defined here explicitly.
|
||||||
|
#if !defined(MSGPACK_PP_VARIADICS)
|
||||||
|
#define MSGPACK_PP_VARIADICS
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/preprocessor.hpp>
|
||||||
|
|
||||||
|
#define MSGPACK_BASE_ARRAY(base) (*const_cast<base *>(static_cast<base const*>(this)))
|
||||||
|
#define MSGPACK_NVP(name, value) (name) (value)
|
||||||
|
|
||||||
|
#define MSGPACK_DEFINE_MAP_EACH_PROC(r, data, elem) \
|
||||||
|
MSGPACK_PP_IF( \
|
||||||
|
MSGPACK_PP_IS_BEGIN_PARENS(elem), \
|
||||||
|
elem, \
|
||||||
|
(MSGPACK_PP_STRINGIZE(elem))(elem) \
|
||||||
|
)
|
||||||
|
|
||||||
|
#define MSGPACK_DEFINE_MAP_IMPL(...) \
|
||||||
|
MSGPACK_PP_SEQ_TO_TUPLE( \
|
||||||
|
MSGPACK_PP_SEQ_FOR_EACH( \
|
||||||
|
MSGPACK_DEFINE_MAP_EACH_PROC, \
|
||||||
|
0, \
|
||||||
|
MSGPACK_PP_VARIADIC_TO_SEQ(__VA_ARGS__) \
|
||||||
|
) \
|
||||||
|
)
|
||||||
|
|
||||||
|
#define MSGPACK_DEFINE_MAP(...) \
|
||||||
|
template <typename Packer> \
|
||||||
|
void msgpack_pack(Packer& msgpack_pk) const \
|
||||||
|
{ \
|
||||||
|
msgpack::type::make_define_map \
|
||||||
|
MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \
|
||||||
|
.msgpack_pack(msgpack_pk); \
|
||||||
|
} \
|
||||||
|
void msgpack_unpack(msgpack::object const& msgpack_o) \
|
||||||
|
{ \
|
||||||
|
msgpack::type::make_define_map \
|
||||||
|
MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \
|
||||||
|
.msgpack_unpack(msgpack_o); \
|
||||||
|
}\
|
||||||
|
template <typename MSGPACK_OBJECT> \
|
||||||
|
void msgpack_object(MSGPACK_OBJECT* msgpack_o, msgpack::zone& msgpack_z) const \
|
||||||
|
{ \
|
||||||
|
msgpack::type::make_define_map \
|
||||||
|
MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \
|
||||||
|
.msgpack_object(msgpack_o, msgpack_z); \
|
||||||
|
}
|
||||||
|
|
||||||
|
#define MSGPACK_BASE_MAP(base) \
|
||||||
|
(MSGPACK_PP_STRINGIZE(base))(*const_cast<base *>(static_cast<base const*>(this)))
|
||||||
|
|
||||||
|
#else // defined(MSGPACK_NO_BOOST)
|
||||||
|
|
||||||
// BOOST_PP_VARIADICS is defined in boost/preprocessor/config/config.hpp
|
// BOOST_PP_VARIADICS is defined in boost/preprocessor/config/config.hpp
|
||||||
// http://www.boost.org/libs/preprocessor/doc/ref/variadics.html
|
// http://www.boost.org/libs/preprocessor/doc/ref/variadics.html
|
||||||
// However, supporting compiler detection is not complete. msgpack-c requires
|
// However, supporting compiler detection is not complete. msgpack-c requires
|
||||||
@@ -20,27 +78,6 @@
|
|||||||
|
|
||||||
#include <boost/preprocessor.hpp>
|
#include <boost/preprocessor.hpp>
|
||||||
|
|
||||||
#include "msgpack/versioning.hpp"
|
|
||||||
|
|
||||||
// for MSGPACK_ADD_ENUM
|
|
||||||
#include "msgpack/adaptor/int.hpp"
|
|
||||||
|
|
||||||
#define MSGPACK_DEFINE_ARRAY(...) \
|
|
||||||
template <typename Packer> \
|
|
||||||
void msgpack_pack(Packer& msgpack_pk) const \
|
|
||||||
{ \
|
|
||||||
msgpack::type::make_define_array(__VA_ARGS__).msgpack_pack(msgpack_pk); \
|
|
||||||
} \
|
|
||||||
void msgpack_unpack(msgpack::object const& msgpack_o) \
|
|
||||||
{ \
|
|
||||||
msgpack::type::make_define_array(__VA_ARGS__).msgpack_unpack(msgpack_o); \
|
|
||||||
}\
|
|
||||||
template <typename MSGPACK_OBJECT> \
|
|
||||||
void msgpack_object(MSGPACK_OBJECT* msgpack_o, msgpack::zone& msgpack_z) const \
|
|
||||||
{ \
|
|
||||||
msgpack::type::make_define_array(__VA_ARGS__).msgpack_object(msgpack_o, msgpack_z); \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define MSGPACK_BASE_ARRAY(base) (*const_cast<base *>(static_cast<base const*>(this)))
|
#define MSGPACK_BASE_ARRAY(base) (*const_cast<base *>(static_cast<base const*>(this)))
|
||||||
#define MSGPACK_NVP(name, value) (name) (value)
|
#define MSGPACK_NVP(name, value) (name) (value)
|
||||||
|
|
||||||
@@ -85,6 +122,29 @@
|
|||||||
#define MSGPACK_BASE_MAP(base) \
|
#define MSGPACK_BASE_MAP(base) \
|
||||||
(BOOST_PP_STRINGIZE(base))(*const_cast<base *>(static_cast<base const*>(this)))
|
(BOOST_PP_STRINGIZE(base))(*const_cast<base *>(static_cast<base const*>(this)))
|
||||||
|
|
||||||
|
#endif // defined(MSGPACK_NO_BOOST)
|
||||||
|
|
||||||
|
#include "msgpack/versioning.hpp"
|
||||||
|
|
||||||
|
// for MSGPACK_ADD_ENUM
|
||||||
|
#include "msgpack/adaptor/int.hpp"
|
||||||
|
|
||||||
|
#define MSGPACK_DEFINE_ARRAY(...) \
|
||||||
|
template <typename Packer> \
|
||||||
|
void msgpack_pack(Packer& msgpack_pk) const \
|
||||||
|
{ \
|
||||||
|
msgpack::type::make_define_array(__VA_ARGS__).msgpack_pack(msgpack_pk); \
|
||||||
|
} \
|
||||||
|
void msgpack_unpack(msgpack::object const& msgpack_o) \
|
||||||
|
{ \
|
||||||
|
msgpack::type::make_define_array(__VA_ARGS__).msgpack_unpack(msgpack_o); \
|
||||||
|
}\
|
||||||
|
template <typename MSGPACK_OBJECT> \
|
||||||
|
void msgpack_object(MSGPACK_OBJECT* msgpack_o, msgpack::zone& msgpack_z) const \
|
||||||
|
{ \
|
||||||
|
msgpack::type::make_define_array(__VA_ARGS__).msgpack_object(msgpack_o, msgpack_z); \
|
||||||
|
}
|
||||||
|
|
||||||
// MSGPACK_ADD_ENUM must be used in the global namespace.
|
// MSGPACK_ADD_ENUM must be used in the global namespace.
|
||||||
#define MSGPACK_ADD_ENUM(enum_name) \
|
#define MSGPACK_ADD_ENUM(enum_name) \
|
||||||
namespace msgpack { \
|
namespace msgpack { \
|
||||||
|
@@ -12,6 +12,7 @@
|
|||||||
|
|
||||||
#include "msgpack/versioning.hpp"
|
#include "msgpack/versioning.hpp"
|
||||||
#include "msgpack/adaptor/adaptor_base.hpp"
|
#include "msgpack/adaptor/adaptor_base.hpp"
|
||||||
|
#include "msgpack/object.hpp"
|
||||||
#include "msgpack/adaptor/check_container_size.hpp"
|
#include "msgpack/adaptor/check_container_size.hpp"
|
||||||
|
|
||||||
#if defined(_LIBCPP_VERSION) || (_MSC_VER >= 1700)
|
#if defined(_LIBCPP_VERSION) || (_MSC_VER >= 1700)
|
||||||
|
@@ -12,6 +12,7 @@
|
|||||||
|
|
||||||
#include "msgpack/versioning.hpp"
|
#include "msgpack/versioning.hpp"
|
||||||
#include "msgpack/adaptor/adaptor_base.hpp"
|
#include "msgpack/adaptor/adaptor_base.hpp"
|
||||||
|
#include "msgpack/object.hpp"
|
||||||
#include "msgpack/adaptor/check_container_size.hpp"
|
#include "msgpack/adaptor/check_container_size.hpp"
|
||||||
|
|
||||||
#if defined(_LIBCPP_VERSION) || (_MSC_VER >= 1700)
|
#if defined(_LIBCPP_VERSION) || (_MSC_VER >= 1700)
|
||||||
|
26
include/msgpack/assert.hpp
Normal file
26
include/msgpack/assert.hpp
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
//
|
||||||
|
// MessagePack for C++ static resolution routine
|
||||||
|
//
|
||||||
|
// Copyright (C) 2022 KONDO Takatoshi
|
||||||
|
//
|
||||||
|
// 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 MSGPACK_ASSERT_HPP
|
||||||
|
#define MSGPACK_ASSERT_HPP
|
||||||
|
|
||||||
|
#if defined(MSGPACK_NO_BOOST)
|
||||||
|
|
||||||
|
#include <cassert>
|
||||||
|
#define MSGPACK_ASSERT assert
|
||||||
|
|
||||||
|
#else // defined(MSGPACK_NO_BOOST)
|
||||||
|
|
||||||
|
#include <boost/assert.hpp>
|
||||||
|
#define MSGPACK_ASSERT BOOST_ASSERT
|
||||||
|
|
||||||
|
#endif // defined(MSGPACK_NO_BOOST)
|
||||||
|
|
||||||
|
#endif // MSGPACK_ASSERT_HPP
|
@@ -11,8 +11,8 @@
|
|||||||
#ifndef MSGPACK_ITERATOR_HPP
|
#ifndef MSGPACK_ITERATOR_HPP
|
||||||
#define MSGPACK_ITERATOR_HPP
|
#define MSGPACK_ITERATOR_HPP
|
||||||
|
|
||||||
#include <msgpack/iterator_decl.hpp>
|
#include "msgpack/iterator_decl.hpp"
|
||||||
|
|
||||||
#include <msgpack/v1/iterator.hpp>
|
#include "msgpack/v1/iterator.hpp"
|
||||||
|
|
||||||
#endif // MSGPACK_ITERATOR_HPP
|
#endif // MSGPACK_ITERATOR_HPP
|
||||||
|
@@ -11,8 +11,8 @@
|
|||||||
#ifndef MSGPACK_ITERATOR_DECL_HPP
|
#ifndef MSGPACK_ITERATOR_DECL_HPP
|
||||||
#define MSGPACK_ITERATOR_DECL_HPP
|
#define MSGPACK_ITERATOR_DECL_HPP
|
||||||
|
|
||||||
#include <msgpack/v1/iterator_decl.hpp>
|
#include "msgpack/v1/iterator_decl.hpp"
|
||||||
#include <msgpack/v2/iterator_decl.hpp>
|
#include "msgpack/v2/iterator_decl.hpp"
|
||||||
#include <msgpack/v3/iterator_decl.hpp>
|
#include "msgpack/v3/iterator_decl.hpp"
|
||||||
|
|
||||||
#endif // MSGPACK_ITERATOR_DECL_HPP
|
#endif // MSGPACK_ITERATOR_DECL_HPP
|
||||||
|
24
include/msgpack/predef.h
Normal file
24
include/msgpack/predef.h
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_PREDEF_H) || defined(MSGPACK_PREDEF_INTERNAL_GENERATE_TESTS)
|
||||||
|
#ifndef MSGPACK_PREDEF_H
|
||||||
|
#define MSGPACK_PREDEF_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/language.h>
|
||||||
|
#include <msgpack/predef/architecture.h>
|
||||||
|
#include <msgpack/predef/compiler.h>
|
||||||
|
#include <msgpack/predef/library.h>
|
||||||
|
#include <msgpack/predef/os.h>
|
||||||
|
#include <msgpack/predef/other.h>
|
||||||
|
#include <msgpack/predef/platform.h>
|
||||||
|
#include <msgpack/predef/hardware.h>
|
||||||
|
|
||||||
|
#include <msgpack/predef/version.h>
|
||||||
|
|
||||||
|
#endif
|
33
include/msgpack/predef/architecture.h
Normal file
33
include/msgpack/predef/architecture.h
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_PREDEF_ARCHITECTURE_H) || defined(MSGPACK_PREDEF_INTERNAL_GENERATE_TESTS)
|
||||||
|
#ifndef MSGPACK_PREDEF_ARCHITECTURE_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/architecture/alpha.h>
|
||||||
|
#include <msgpack/predef/architecture/arm.h>
|
||||||
|
#include <msgpack/predef/architecture/blackfin.h>
|
||||||
|
#include <msgpack/predef/architecture/convex.h>
|
||||||
|
#include <msgpack/predef/architecture/ia64.h>
|
||||||
|
#include <msgpack/predef/architecture/m68k.h>
|
||||||
|
#include <msgpack/predef/architecture/mips.h>
|
||||||
|
#include <msgpack/predef/architecture/parisc.h>
|
||||||
|
#include <msgpack/predef/architecture/ppc.h>
|
||||||
|
#include <msgpack/predef/architecture/ptx.h>
|
||||||
|
#include <msgpack/predef/architecture/pyramid.h>
|
||||||
|
#include <msgpack/predef/architecture/rs6k.h>
|
||||||
|
#include <msgpack/predef/architecture/sparc.h>
|
||||||
|
#include <msgpack/predef/architecture/superh.h>
|
||||||
|
#include <msgpack/predef/architecture/sys370.h>
|
||||||
|
#include <msgpack/predef/architecture/sys390.h>
|
||||||
|
#include <msgpack/predef/architecture/x86.h>
|
||||||
|
#include <msgpack/predef/architecture/z.h>
|
||||||
|
/*#include <msgpack/predef/architecture/.h>*/
|
||||||
|
|
||||||
|
#endif
|
59
include/msgpack/predef/architecture/alpha.h
Normal file
59
include/msgpack/predef/architecture/alpha.h
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_ALPHA_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_ALPHA_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_ALPHA`]
|
||||||
|
|
||||||
|
[@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__]]
|
||||||
|
|
||||||
|
[[`__alpha_ev4__`] [4.0.0]]
|
||||||
|
[[`__alpha_ev5__`] [5.0.0]]
|
||||||
|
[[`__alpha_ev6__`] [6.0.0]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_ALPHA MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__alpha__) || defined(__alpha) || \
|
||||||
|
defined(_M_ALPHA)
|
||||||
|
# undef MSGPACK_ARCH_ALPHA
|
||||||
|
# if !defined(MSGPACK_ARCH_ALPHA) && defined(__alpha_ev4__)
|
||||||
|
# define MSGPACK_ARCH_ALPHA MSGPACK_VERSION_NUMBER(4,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ALPHA) && defined(__alpha_ev5__)
|
||||||
|
# define MSGPACK_ARCH_ALPHA MSGPACK_VERSION_NUMBER(5,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ALPHA) && defined(__alpha_ev6__)
|
||||||
|
# define MSGPACK_ARCH_ALPHA MSGPACK_VERSION_NUMBER(6,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ALPHA)
|
||||||
|
# define MSGPACK_ARCH_ALPHA MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_ALPHA
|
||||||
|
# define MSGPACK_ARCH_ALPHA_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_ALPHA_NAME "DEC Alpha"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_ALPHA,MSGPACK_ARCH_ALPHA_NAME)
|
80
include/msgpack/predef/architecture/arm.h
Normal file
80
include/msgpack/predef/architecture/arm.h
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
Copyright Franz Detro 2014
|
||||||
|
Copyright (c) Microsoft Corporation 2014
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_ARM_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_ARM_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_ARM`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/ARM_architecture ARM] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__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__]]
|
||||||
|
[[`_M_ARM64`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__arm64`] [8.0.0]]
|
||||||
|
[[`__TARGET_ARCH_ARM`] [V.0.0]]
|
||||||
|
[[`__TARGET_ARCH_THUMB`] [V.0.0]]
|
||||||
|
[[`__ARM_ARCH`] [V.0.0]]
|
||||||
|
[[`_M_ARM`] [V.0.0]]
|
||||||
|
[[`_M_ARM64`] [8.0.0]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__arm__) || defined(__arm64) || defined(__thumb__) || \
|
||||||
|
defined(__TARGET_ARCH_ARM) || defined(__TARGET_ARCH_THUMB) || \
|
||||||
|
defined(__ARM_ARCH) || \
|
||||||
|
defined(_M_ARM) || defined(_M_ARM64)
|
||||||
|
# undef MSGPACK_ARCH_ARM
|
||||||
|
# if !defined(MSGPACK_ARCH_ARM) && defined(__arm64)
|
||||||
|
# define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER(8,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ARM) && defined(__TARGET_ARCH_ARM)
|
||||||
|
# define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER(__TARGET_ARCH_ARM,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ARM) && defined(__TARGET_ARCH_THUMB)
|
||||||
|
# define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER(__TARGET_ARCH_THUMB,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ARM) && defined(__ARM_ARCH)
|
||||||
|
# define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER(__ARM_ARCH,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ARM) && defined(_M_ARM64)
|
||||||
|
# define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER(8,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ARM) && defined(_M_ARM)
|
||||||
|
# define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER(_M_ARM,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_ARM)
|
||||||
|
# define MSGPACK_ARCH_ARM MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_ARM
|
||||||
|
# define MSGPACK_ARCH_ARM_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_ARM_NAME "ARM"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_ARM,MSGPACK_ARCH_ARM_NAME)
|
46
include/msgpack/predef/architecture/blackfin.h
Normal file
46
include/msgpack/predef/architecture/blackfin.h
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2013-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_BLACKFIN_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_BLACKFIN_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_BLACKFIN`]
|
||||||
|
|
||||||
|
Blackfin Processors from Analog Devices.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__bfin__`] [__predef_detection__]]
|
||||||
|
[[`__BFIN__`] [__predef_detection__]]
|
||||||
|
[[`bfin`] [__predef_detection__]]
|
||||||
|
[[`BFIN`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_BLACKFIN MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__bfin__) || defined(__BFIN__) || \
|
||||||
|
defined(bfin) || defined(BFIN)
|
||||||
|
# undef MSGPACK_ARCH_BLACKFIN
|
||||||
|
# define MSGPACK_ARCH_BLACKFIN MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_BLACKFIN
|
||||||
|
# define MSGPACK_ARCH_BLACKFIN_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_BLACKFIN_NAME "Blackfin"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_BLACKFIN,MSGPACK_ARCH_BLACKFIN_NAME)
|
65
include/msgpack/predef/architecture/convex.h
Normal file
65
include/msgpack/predef/architecture/convex.h
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_CONVEX_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_CONVEX_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_CONVEX`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Convex_Computer Convex Computer] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_CONVEX MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__convex__)
|
||||||
|
# undef MSGPACK_ARCH_CONVEX
|
||||||
|
# if !defined(MSGPACK_ARCH_CONVEX) && defined(__convex_c1__)
|
||||||
|
# define MSGPACK_ARCH_CONVEX MSGPACK_VERSION_NUMBER(1,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_CONVEX) && defined(__convex_c2__)
|
||||||
|
# define MSGPACK_ARCH_CONVEX MSGPACK_VERSION_NUMBER(2,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_CONVEX) && defined(__convex_c32__)
|
||||||
|
# define MSGPACK_ARCH_CONVEX MSGPACK_VERSION_NUMBER(3,2,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_CONVEX) && defined(__convex_c34__)
|
||||||
|
# define MSGPACK_ARCH_CONVEX MSGPACK_VERSION_NUMBER(3,4,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_CONVEX) && defined(__convex_c38__)
|
||||||
|
# define MSGPACK_ARCH_CONVEX MSGPACK_VERSION_NUMBER(3,8,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_CONVEX)
|
||||||
|
# define MSGPACK_ARCH_CONVEX MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_CONVEX
|
||||||
|
# define MSGPACK_ARCH_CONVEX_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_CONVEX_NAME "Convex Computer"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_CONVEX,MSGPACK_ARCH_CONVEX_NAME)
|
49
include/msgpack/predef/architecture/ia64.h
Normal file
49
include/msgpack/predef/architecture/ia64.h
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_IA64_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_IA64_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_IA64`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Ia64 Intel Itanium 64] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__ia64__`] [__predef_detection__]]
|
||||||
|
[[`_IA64`] [__predef_detection__]]
|
||||||
|
[[`__IA64__`] [__predef_detection__]]
|
||||||
|
[[`__ia64`] [__predef_detection__]]
|
||||||
|
[[`_M_IA64`] [__predef_detection__]]
|
||||||
|
[[`__itanium__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_IA64 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__ia64__) || defined(_IA64) || \
|
||||||
|
defined(__IA64__) || defined(__ia64) || \
|
||||||
|
defined(_M_IA64) || defined(__itanium__)
|
||||||
|
# undef MSGPACK_ARCH_IA64
|
||||||
|
# define MSGPACK_ARCH_IA64 MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_IA64
|
||||||
|
# define MSGPACK_ARCH_IA64_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_IA64_NAME "Intel Itanium 64"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_IA64,MSGPACK_ARCH_IA64_NAME)
|
82
include/msgpack/predef/architecture/m68k.h
Normal file
82
include/msgpack/predef/architecture/m68k.h
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_M68K_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_M68K_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_M68K`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/M68k Motorola 68k] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__m68k__) || defined(M68000)
|
||||||
|
# undef MSGPACK_ARCH_M68K
|
||||||
|
# if !defined(MSGPACK_ARCH_M68K) && (defined(__mc68060__) || defined(mc68060) || defined(__mc68060))
|
||||||
|
# define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER(6,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_M68K) && (defined(__mc68040__) || defined(mc68040) || defined(__mc68040))
|
||||||
|
# define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER(4,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_M68K) && (defined(__mc68030__) || defined(mc68030) || defined(__mc68030))
|
||||||
|
# define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER(3,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_M68K) && (defined(__mc68020__) || defined(mc68020) || defined(__mc68020))
|
||||||
|
# define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER(2,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_M68K) && (defined(__mc68010__) || defined(mc68010) || defined(__mc68010))
|
||||||
|
# define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER(1,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_M68K) && (defined(__mc68000__) || defined(mc68000) || defined(__mc68000))
|
||||||
|
# define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_M68K)
|
||||||
|
# define MSGPACK_ARCH_M68K MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_M68K
|
||||||
|
# define MSGPACK_ARCH_M68K_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_M68K_NAME "Motorola 68k"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_M68K,MSGPACK_ARCH_M68K_NAME)
|
73
include/msgpack/predef/architecture/mips.h
Normal file
73
include/msgpack/predef/architecture/mips.h
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_MIPS_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_MIPS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_MIPS`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/MIPS_architecture MIPS] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_MIPS MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__mips__) || defined(__mips) || \
|
||||||
|
defined(__MIPS__)
|
||||||
|
# undef MSGPACK_ARCH_MIPS
|
||||||
|
# if !defined(MSGPACK_ARCH_MIPS) && (defined(__mips))
|
||||||
|
# define MSGPACK_ARCH_MIPS MSGPACK_VERSION_NUMBER(__mips,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_MIPS) && (defined(_MIPS_ISA_MIPS1) || defined(_R3000))
|
||||||
|
# define MSGPACK_ARCH_MIPS MSGPACK_VERSION_NUMBER(1,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_MIPS) && (defined(_MIPS_ISA_MIPS2) || defined(__MIPS_ISA2__) || defined(_R4000))
|
||||||
|
# define MSGPACK_ARCH_MIPS MSGPACK_VERSION_NUMBER(2,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_MIPS) && (defined(_MIPS_ISA_MIPS3) || defined(__MIPS_ISA3__))
|
||||||
|
# define MSGPACK_ARCH_MIPS MSGPACK_VERSION_NUMBER(3,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_MIPS) && (defined(_MIPS_ISA_MIPS4) || defined(__MIPS_ISA4__))
|
||||||
|
# define MSGPACK_ARCH_MIPS MSGPACK_VERSION_NUMBER(4,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_MIPS)
|
||||||
|
# define MSGPACK_ARCH_MIPS MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_MIPS
|
||||||
|
# define MSGPACK_ARCH_MIPS_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_MIPS_NAME "MIPS"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_MIPS,MSGPACK_ARCH_MIPS_NAME)
|
64
include/msgpack/predef/architecture/parisc.h
Normal file
64
include/msgpack/predef/architecture/parisc.h
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_PARISC_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_PARISC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_PARISC`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/PA-RISC_family HP/PA RISC] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PARISC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__hppa__) || defined(__hppa) || defined(__HPPA__)
|
||||||
|
# undef MSGPACK_ARCH_PARISC
|
||||||
|
# if !defined(MSGPACK_ARCH_PARISC) && (defined(_PA_RISC1_0))
|
||||||
|
# define MSGPACK_ARCH_PARISC MSGPACK_VERSION_NUMBER(1,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_PARISC) && (defined(_PA_RISC1_1) || defined(__HPPA11__) || defined(__PA7100__))
|
||||||
|
# define MSGPACK_ARCH_PARISC MSGPACK_VERSION_NUMBER(1,1,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_PARISC) && (defined(_PA_RISC2_0) || defined(__RISC2_0__) || defined(__HPPA20__) || defined(__PA8000__))
|
||||||
|
# define MSGPACK_ARCH_PARISC MSGPACK_VERSION_NUMBER(2,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_PARISC)
|
||||||
|
# define MSGPACK_ARCH_PARISC MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_PARISC
|
||||||
|
# define MSGPACK_ARCH_PARISC_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PARISC_NAME "HP/PA RISC"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_PARISC,MSGPACK_ARCH_PARISC_NAME)
|
72
include/msgpack/predef/architecture/ppc.h
Normal file
72
include/msgpack/predef/architecture/ppc.h
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_PPC_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_PPC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_PPC`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/PowerPC PowerPC] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__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__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PPC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__powerpc) || defined(__powerpc__) || \
|
||||||
|
defined(__POWERPC__) || defined(__ppc__) || \
|
||||||
|
defined(_M_PPC) || defined(_ARCH_PPC) || \
|
||||||
|
defined(__PPCGECKO__) || defined(__PPCBROADWAY__) || \
|
||||||
|
defined(_XENON)
|
||||||
|
# undef MSGPACK_ARCH_PPC
|
||||||
|
# if !defined (MSGPACK_ARCH_PPC) && (defined(__ppc601__) || defined(_ARCH_601))
|
||||||
|
# define MSGPACK_ARCH_PPC MSGPACK_VERSION_NUMBER(6,1,0)
|
||||||
|
# endif
|
||||||
|
# if !defined (MSGPACK_ARCH_PPC) && (defined(__ppc603__) || defined(_ARCH_603))
|
||||||
|
# define MSGPACK_ARCH_PPC MSGPACK_VERSION_NUMBER(6,3,0)
|
||||||
|
# endif
|
||||||
|
# if !defined (MSGPACK_ARCH_PPC) && (defined(__ppc604__) || defined(__ppc604__))
|
||||||
|
# define MSGPACK_ARCH_PPC MSGPACK_VERSION_NUMBER(6,4,0)
|
||||||
|
# endif
|
||||||
|
# if !defined (MSGPACK_ARCH_PPC)
|
||||||
|
# define MSGPACK_ARCH_PPC MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_PPC
|
||||||
|
# define MSGPACK_ARCH_PPC_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PPC_NAME "PowerPC"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_PPC,MSGPACK_ARCH_PPC_NAME)
|
44
include/msgpack/predef/architecture/ptx.h
Normal file
44
include/msgpack/predef/architecture/ptx.h
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
/*
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_PTX_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_PTX_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_PTX`]
|
||||||
|
|
||||||
|
[@https://en.wikipedia.org/wiki/Parallel_Thread_Execution PTX] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__CUDA_ARCH__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__CUDA_ARCH__`] [V.R.0]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PTX MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__CUDA_ARCH__)
|
||||||
|
# undef MSGPACK_ARCH_PTX
|
||||||
|
# define MSGPACK_ARCH_PTX MSGPACK_PREDEF_MAKE_10_VR0(__CUDA_ARCH__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_PTX
|
||||||
|
# define MSGPACK_ARCH_PTX_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PTX_NAME "PTX"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_PTX,MSGPACK_ARCH_PTX_NAME)
|
42
include/msgpack/predef/architecture/pyramid.h
Normal file
42
include/msgpack/predef/architecture/pyramid.h
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_PYRAMID_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_PYRAMID_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_PYRAMID`]
|
||||||
|
|
||||||
|
Pyramid 9810 architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`pyr`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PYRAMID MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(pyr)
|
||||||
|
# undef MSGPACK_ARCH_PYRAMID
|
||||||
|
# define MSGPACK_ARCH_PYRAMID MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_PYRAMID
|
||||||
|
# define MSGPACK_ARCH_PYRAMID_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PYRAMID_NAME "Pyramid 9810"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_PYRAMID,MSGPACK_ARCH_PYRAMID_NAME)
|
56
include/msgpack/predef/architecture/rs6k.h
Normal file
56
include/msgpack/predef/architecture/rs6k.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_RS6K_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_RS6K_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_RS6000`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/RS/6000 RS/6000] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__THW_RS6000`] [__predef_detection__]]
|
||||||
|
[[`_IBMR2`] [__predef_detection__]]
|
||||||
|
[[`_POWER`] [__predef_detection__]]
|
||||||
|
[[`_ARCH_PWR`] [__predef_detection__]]
|
||||||
|
[[`_ARCH_PWR2`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_RS6000 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__THW_RS6000) || defined(_IBMR2) || \
|
||||||
|
defined(_POWER) || defined(_ARCH_PWR) || \
|
||||||
|
defined(_ARCH_PWR2)
|
||||||
|
# undef MSGPACK_ARCH_RS6000
|
||||||
|
# define MSGPACK_ARCH_RS6000 MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_RS6000
|
||||||
|
# define MSGPACK_ARCH_RS6000_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_RS6000_NAME "RS/6000"
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PWR MSGPACK_ARCH_RS6000
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_PWR
|
||||||
|
# define MSGPACK_ARCH_PWR_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_PWR_NAME MSGPACK_ARCH_RS6000_NAME
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_RS6000,MSGPACK_ARCH_RS6000_NAME)
|
54
include/msgpack/predef/architecture/sparc.h
Normal file
54
include/msgpack/predef/architecture/sparc.h
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_SPARC_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_SPARC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_SPARC`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/SPARC SPARC] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__sparc__`] [__predef_detection__]]
|
||||||
|
[[`__sparc`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__sparcv9`] [9.0.0]]
|
||||||
|
[[`__sparcv8`] [8.0.0]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SPARC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__sparc__) || defined(__sparc)
|
||||||
|
# undef MSGPACK_ARCH_SPARC
|
||||||
|
# if !defined(MSGPACK_ARCH_SPARC) && defined(__sparcv9)
|
||||||
|
# define MSGPACK_ARCH_SPARC MSGPACK_VERSION_NUMBER(9,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_SPARC) && defined(__sparcv8)
|
||||||
|
# define MSGPACK_ARCH_SPARC MSGPACK_VERSION_NUMBER(8,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_SPARC)
|
||||||
|
# define MSGPACK_ARCH_SPARC MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_SPARC
|
||||||
|
# define MSGPACK_ARCH_SPARC_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SPARC_NAME "SPARC"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_SPARC,MSGPACK_ARCH_SPARC_NAME)
|
67
include/msgpack/predef/architecture/superh.h
Normal file
67
include/msgpack/predef/architecture/superh.h
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_SUPERH_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_SUPERH_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_SH`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/SuperH SuperH] architecture:
|
||||||
|
If available versions \[1-5\] are specifically detected.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SH MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__sh__)
|
||||||
|
# undef MSGPACK_ARCH_SH
|
||||||
|
# if !defined(MSGPACK_ARCH_SH) && (defined(__SH5__))
|
||||||
|
# define MSGPACK_ARCH_SH MSGPACK_VERSION_NUMBER(5,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_SH) && (defined(__SH4__))
|
||||||
|
# define MSGPACK_ARCH_SH MSGPACK_VERSION_NUMBER(4,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_SH) && (defined(__sh3__) || defined(__SH3__))
|
||||||
|
# define MSGPACK_ARCH_SH MSGPACK_VERSION_NUMBER(3,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_SH) && (defined(__sh2__))
|
||||||
|
# define MSGPACK_ARCH_SH MSGPACK_VERSION_NUMBER(2,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_SH) && (defined(__sh1__))
|
||||||
|
# define MSGPACK_ARCH_SH MSGPACK_VERSION_NUMBER(1,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_SH)
|
||||||
|
# define MSGPACK_ARCH_SH MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_SH
|
||||||
|
# define MSGPACK_ARCH_SH_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SH_NAME "SuperH"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_SH,MSGPACK_ARCH_SH_NAME)
|
43
include/msgpack/predef/architecture/sys370.h
Normal file
43
include/msgpack/predef/architecture/sys370.h
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_SYS370_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_SYS370_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_SYS370`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/System/370 System/370] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__370__`] [__predef_detection__]]
|
||||||
|
[[`__THW_370__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SYS370 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__370__) || defined(__THW_370__)
|
||||||
|
# undef MSGPACK_ARCH_SYS370
|
||||||
|
# define MSGPACK_ARCH_SYS370 MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_SYS370
|
||||||
|
# define MSGPACK_ARCH_SYS370_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SYS370_NAME "System/370"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_SYS370,MSGPACK_ARCH_SYS370_NAME)
|
43
include/msgpack/predef/architecture/sys390.h
Normal file
43
include/msgpack/predef/architecture/sys390.h
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_SYS390_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_SYS390_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_SYS390`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/System/390 System/390] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__s390__`] [__predef_detection__]]
|
||||||
|
[[`__s390x__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SYS390 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__s390__) || defined(__s390x__)
|
||||||
|
# undef MSGPACK_ARCH_SYS390
|
||||||
|
# define MSGPACK_ARCH_SYS390 MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_SYS390
|
||||||
|
# define MSGPACK_ARCH_SYS390_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_SYS390_NAME "System/390"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_SYS390,MSGPACK_ARCH_SYS390_NAME)
|
38
include/msgpack/predef/architecture/x86.h
Normal file
38
include/msgpack/predef/architecture/x86.h
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <msgpack/predef/architecture/x86/32.h>
|
||||||
|
#include <msgpack/predef/architecture/x86/64.h>
|
||||||
|
|
||||||
|
#ifndef MSGPACK_PREDEF_ARCHITECTURE_X86_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_X86_H
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_X86`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/X86 Intel x86] architecture. This is
|
||||||
|
a category to indicate that either `MSGPACK_ARCH_X86_32` or
|
||||||
|
`MSGPACK_ARCH_X86_64` is detected.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_X86 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_X86_32 || MSGPACK_ARCH_X86_64
|
||||||
|
# undef MSGPACK_ARCH_X86
|
||||||
|
# define MSGPACK_ARCH_X86 MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_X86
|
||||||
|
# define MSGPACK_ARCH_X86_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_X86_NAME "Intel x86"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_X86,MSGPACK_ARCH_X86_NAME)
|
87
include/msgpack/predef/architecture/x86/32.h
Normal file
87
include/msgpack/predef/architecture/x86/32.h
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_X86_32_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_X86_32_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_X86_32`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/X86 Intel x86] architecture:
|
||||||
|
If available versions \[3-6\] are specifically detected.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__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__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_X86_32 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(i386) || defined(__i386__) || \
|
||||||
|
defined(__i486__) || defined(__i586__) || \
|
||||||
|
defined(__i686__) || defined(__i386) || \
|
||||||
|
defined(_M_IX86) || defined(_X86_) || \
|
||||||
|
defined(__THW_INTEL__) || defined(__I86__) || \
|
||||||
|
defined(__INTEL__)
|
||||||
|
# undef MSGPACK_ARCH_X86_32
|
||||||
|
# if !defined(MSGPACK_ARCH_X86_32) && defined(__I86__)
|
||||||
|
# define MSGPACK_ARCH_X86_32 MSGPACK_VERSION_NUMBER(__I86__,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_X86_32) && defined(_M_IX86)
|
||||||
|
# define MSGPACK_ARCH_X86_32 MSGPACK_PREDEF_MAKE_10_VV00(_M_IX86)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_X86_32) && defined(__i686__)
|
||||||
|
# define MSGPACK_ARCH_X86_32 MSGPACK_VERSION_NUMBER(6,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_X86_32) && defined(__i586__)
|
||||||
|
# define MSGPACK_ARCH_X86_32 MSGPACK_VERSION_NUMBER(5,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_X86_32) && defined(__i486__)
|
||||||
|
# define MSGPACK_ARCH_X86_32 MSGPACK_VERSION_NUMBER(4,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_X86_32) && defined(__i386__)
|
||||||
|
# define MSGPACK_ARCH_X86_32 MSGPACK_VERSION_NUMBER(3,0,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_ARCH_X86_32)
|
||||||
|
# define MSGPACK_ARCH_X86_32 MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_X86_32
|
||||||
|
# define MSGPACK_ARCH_X86_32_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_X86_32_NAME "Intel x86-32"
|
||||||
|
|
||||||
|
#include <msgpack/predef/architecture/x86.h>
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_X86_32,MSGPACK_ARCH_X86_32_NAME)
|
50
include/msgpack/predef/architecture/x86/64.h
Normal file
50
include/msgpack/predef/architecture/x86/64.h
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_X86_64_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_X86_64_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_X86_64`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Ia64 Intel IA-64] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__x86_64`] [__predef_detection__]]
|
||||||
|
[[`__x86_64__`] [__predef_detection__]]
|
||||||
|
[[`__amd64__`] [__predef_detection__]]
|
||||||
|
[[`__amd64`] [__predef_detection__]]
|
||||||
|
[[`_M_X64`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_X86_64 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__x86_64) || defined(__x86_64__) || \
|
||||||
|
defined(__amd64__) || defined(__amd64) || \
|
||||||
|
defined(_M_X64)
|
||||||
|
# undef MSGPACK_ARCH_X86_64
|
||||||
|
# define MSGPACK_ARCH_X86_64 MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_X86_64
|
||||||
|
# define MSGPACK_ARCH_X86_64_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_X86_64_NAME "Intel x86-64"
|
||||||
|
|
||||||
|
#include <msgpack/predef/architecture/x86.h>
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_X86_64,MSGPACK_ARCH_X86_64_NAME)
|
42
include/msgpack/predef/architecture/z.h
Normal file
42
include/msgpack/predef/architecture/z.h
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_ARCHITECTURE_Z_H
|
||||||
|
#define MSGPACK_PREDEF_ARCHITECTURE_Z_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_ARCH_Z`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Z/Architecture z/Architecture] architecture.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__SYSC_ZARCH__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_Z MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__SYSC_ZARCH__)
|
||||||
|
# undef MSGPACK_ARCH_Z
|
||||||
|
# define MSGPACK_ARCH_Z MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_ARCH_Z
|
||||||
|
# define MSGPACK_ARCH_Z_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_ARCH_Z_NAME "z/Architecture"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_ARCH_Z,MSGPACK_ARCH_Z_NAME)
|
44
include/msgpack/predef/compiler.h
Normal file
44
include/msgpack/predef/compiler.h
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_PREDEF_COMPILER_H) || defined(MSGPACK_PREDEF_INTERNAL_GENERATE_TESTS)
|
||||||
|
#ifndef MSGPACK_PREDEF_COMPILER_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/compiler/borland.h>
|
||||||
|
#include <msgpack/predef/compiler/clang.h>
|
||||||
|
#include <msgpack/predef/compiler/comeau.h>
|
||||||
|
#include <msgpack/predef/compiler/compaq.h>
|
||||||
|
#include <msgpack/predef/compiler/diab.h>
|
||||||
|
#include <msgpack/predef/compiler/digitalmars.h>
|
||||||
|
#include <msgpack/predef/compiler/dignus.h>
|
||||||
|
#include <msgpack/predef/compiler/edg.h>
|
||||||
|
#include <msgpack/predef/compiler/ekopath.h>
|
||||||
|
#include <msgpack/predef/compiler/gcc_xml.h>
|
||||||
|
#include <msgpack/predef/compiler/gcc.h>
|
||||||
|
#include <msgpack/predef/compiler/greenhills.h>
|
||||||
|
#include <msgpack/predef/compiler/hp_acc.h>
|
||||||
|
#include <msgpack/predef/compiler/iar.h>
|
||||||
|
#include <msgpack/predef/compiler/ibm.h>
|
||||||
|
#include <msgpack/predef/compiler/intel.h>
|
||||||
|
#include <msgpack/predef/compiler/kai.h>
|
||||||
|
#include <msgpack/predef/compiler/llvm.h>
|
||||||
|
#include <msgpack/predef/compiler/metaware.h>
|
||||||
|
#include <msgpack/predef/compiler/metrowerks.h>
|
||||||
|
#include <msgpack/predef/compiler/microtec.h>
|
||||||
|
#include <msgpack/predef/compiler/mpw.h>
|
||||||
|
#include <msgpack/predef/compiler/nvcc.h>
|
||||||
|
#include <msgpack/predef/compiler/palm.h>
|
||||||
|
#include <msgpack/predef/compiler/pgi.h>
|
||||||
|
#include <msgpack/predef/compiler/sgi_mipspro.h>
|
||||||
|
#include <msgpack/predef/compiler/sunpro.h>
|
||||||
|
#include <msgpack/predef/compiler/tendra.h>
|
||||||
|
#include <msgpack/predef/compiler/visualc.h>
|
||||||
|
#include <msgpack/predef/compiler/watcom.h>
|
||||||
|
|
||||||
|
#endif
|
63
include/msgpack/predef/compiler/borland.h
Normal file
63
include/msgpack/predef/compiler/borland.h
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_BORLAND_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_BORLAND_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_BORLAND`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/C_plus_plus_builder Borland C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__BORLANDC__`] [__predef_detection__]]
|
||||||
|
[[`__CODEGEARC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__BORLANDC__`] [V.R.P]]
|
||||||
|
[[`__CODEGEARC__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_BORLAND MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__BORLANDC__) || defined(__CODEGEARC__)
|
||||||
|
# if !defined(MSGPACK_COMP_BORLAND_DETECTION) && (defined(__CODEGEARC__))
|
||||||
|
# define MSGPACK_COMP_BORLAND_DETECTION MSGPACK_PREDEF_MAKE_0X_VVRP(__CODEGEARC__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_BORLAND_DETECTION)
|
||||||
|
# define MSGPACK_COMP_BORLAND_DETECTION MSGPACK_PREDEF_MAKE_0X_VVRP(__BORLANDC__)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_BORLAND_DETECTION
|
||||||
|
# define MSGPACK_COMP_BORLAND_AVAILABLE
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_BORLAND_EMULATED MSGPACK_COMP_BORLAND_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_BORLAND
|
||||||
|
# define MSGPACK_COMP_BORLAND MSGPACK_COMP_BORLAND_DETECTION
|
||||||
|
# endif
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_BORLAND_NAME "Borland C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_BORLAND,MSGPACK_COMP_BORLAND_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_BORLAND_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_BORLAND_EMULATED,MSGPACK_COMP_BORLAND_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/clang.h
Normal file
56
include/msgpack/predef/compiler/clang.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_CLANG_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_CLANG_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_CLANG`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Clang Clang] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__clang__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__clang_major__`, `__clang_minor__`, `__clang_patchlevel__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_CLANG MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__clang__)
|
||||||
|
# define MSGPACK_COMP_CLANG_DETECTION MSGPACK_VERSION_NUMBER(__clang_major__,__clang_minor__,__clang_patchlevel__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_CLANG_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_CLANG_EMULATED MSGPACK_COMP_CLANG_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_CLANG
|
||||||
|
# define MSGPACK_COMP_CLANG MSGPACK_COMP_CLANG_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_CLANG_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_CLANG_NAME "Clang"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_CLANG,MSGPACK_COMP_CLANG_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_CLANG_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_CLANG_EMULATED,MSGPACK_COMP_CLANG_NAME)
|
||||||
|
#endif
|
61
include/msgpack/predef/compiler/comeau.h
Normal file
61
include/msgpack/predef/compiler/comeau.h
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_COMEAU_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_COMEAU_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_COMO MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_COMO`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Comeau_C/C%2B%2B Comeau C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__COMO__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__COMO_VERSION__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined(__COMO__)
|
||||||
|
# if !defined(MSGPACK_COMP_COMO_DETECTION) && defined(__COMO_VERSION__)
|
||||||
|
# define MSGPACK_COMP_COMO_DETECTION MSGPACK_PREDEF_MAKE_0X_VRP(__COMO_VERSION__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_COMO_DETECTION)
|
||||||
|
# define MSGPACK_COMP_COMO_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_COMO_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_COMO_EMULATED MSGPACK_COMP_COMO_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_COMO
|
||||||
|
# define MSGPACK_COMP_COMO MSGPACK_COMP_COMO_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_COMO_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_COMO_NAME "Comeau C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_COMO,MSGPACK_COMP_COMO_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_COMO_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_COMO_EMULATED,MSGPACK_COMP_COMO_NAME)
|
||||||
|
#endif
|
66
include/msgpack/predef/compiler/compaq.h
Normal file
66
include/msgpack/predef/compiler/compaq.h
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_COMPAQ_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_COMPAQ_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_DEC`]
|
||||||
|
|
||||||
|
[@http://www.openvms.compaq.com/openvms/brochures/deccplus/ Compaq C/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__DECCXX`] [__predef_detection__]]
|
||||||
|
[[`__DECC`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__DECCXX_VER`] [V.R.P]]
|
||||||
|
[[`__DECC_VER`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_DEC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__DECC) || defined(__DECCXX)
|
||||||
|
# if !defined(MSGPACK_COMP_DEC_DETECTION) && defined(__DECCXX_VER)
|
||||||
|
# define MSGPACK_COMP_DEC_DETECTION MSGPACK_PREDEF_MAKE_10_VVRR0PP00(__DECCXX_VER)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_DEC_DETECTION) && defined(__DECC_VER)
|
||||||
|
# define MSGPACK_COMP_DEC_DETECTION MSGPACK_PREDEF_MAKE_10_VVRR0PP00(__DECC_VER)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_DEC_DETECTION)
|
||||||
|
# define MSGPACK_COM_DEC_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_DEC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_DEC_EMULATED MSGPACK_COMP_DEC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_DEC
|
||||||
|
# define MSGPACK_COMP_DEC MSGPACK_COMP_DEC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_DEC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_DEC_NAME "Compaq C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_DEC,MSGPACK_COMP_DEC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_DEC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_DEC_EMULATED,MSGPACK_COMP_DEC_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/diab.h
Normal file
56
include/msgpack/predef/compiler/diab.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_DIAB_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_DIAB_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_DIAB`]
|
||||||
|
|
||||||
|
[@http://www.windriver.com/products/development_suite/wind_river_compiler/ Diab C/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__DCC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__VERSION_NUMBER__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_DIAB MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__DCC__)
|
||||||
|
# define MSGPACK_COMP_DIAB_DETECTION MSGPACK_PREDEF_MAKE_10_VRPP(__VERSION_NUMBER__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_DIAB_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_DIAB_EMULATED MSGPACK_COMP_DIAB_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_DIAB
|
||||||
|
# define MSGPACK_COMP_DIAB MSGPACK_COMP_DIAB_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_DIAB_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_DIAB_NAME "Diab C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_DIAB,MSGPACK_COMP_DIAB_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_DIAB_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_DIAB_EMULATED,MSGPACK_COMP_DIAB_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/digitalmars.h
Normal file
56
include/msgpack/predef/compiler/digitalmars.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_DIGITALMARS_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_DIGITALMARS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_DMC`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Digital_Mars Digital Mars] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__DMC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__DMC__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_DMC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__DMC__)
|
||||||
|
# define MSGPACK_COMP_DMC_DETECTION MSGPACK_PREDEF_MAKE_0X_VRP(__DMC__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_DMC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_DMC_EMULATED MSGPACK_COMP_DMC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_DMC
|
||||||
|
# define MSGPACK_COMP_DMC MSGPACK_COMP_DMC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_DMC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_DMC_NAME "Digital Mars"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_DMC,MSGPACK_COMP_DMC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_DMC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_DMC_EMULATED,MSGPACK_COMP_DMC_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/dignus.h
Normal file
56
include/msgpack/predef/compiler/dignus.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_DIGNUS_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_DIGNUS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_SYSC`]
|
||||||
|
|
||||||
|
[@http://www.dignus.com/dcxx/ Dignus Systems/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__SYSC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__SYSC_VER__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_SYSC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__SYSC__)
|
||||||
|
# define MSGPACK_COMP_SYSC_DETECTION MSGPACK_PREDEF_MAKE_10_VRRPP(__SYSC_VER__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_SYSC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_SYSC_EMULATED MSGPACK_COMP_SYSC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_SYSC
|
||||||
|
# define MSGPACK_COMP_SYSC MSGPACK_COMP_SYSC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_SYSC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_SYSC_NAME "Dignus Systems/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_SYSC,MSGPACK_COMP_SYSC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_SYSC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_SYSC_EMULATED,MSGPACK_COMP_SYSC_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/edg.h
Normal file
56
include/msgpack/predef/compiler/edg.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_EDG_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_EDG_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_EDG`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Edison_Design_Group EDG C++ Frontend] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__EDG__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__EDG_VERSION__`] [V.R.0]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_EDG MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__EDG__)
|
||||||
|
# define MSGPACK_COMP_EDG_DETECTION MSGPACK_PREDEF_MAKE_10_VRR(__EDG_VERSION__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_EDG_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_EDG_EMULATED MSGPACK_COMP_EDG_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_EDG
|
||||||
|
# define MSGPACK_COMP_EDG MSGPACK_COMP_EDG_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_EDG_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_EDG_NAME "EDG C++ Frontend"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_EDG,MSGPACK_COMP_EDG_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_EDG_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_EDG_EMULATED,MSGPACK_COMP_EDG_NAME)
|
||||||
|
#endif
|
57
include/msgpack/predef/compiler/ekopath.h
Normal file
57
include/msgpack/predef/compiler/ekopath.h
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_EKOPATH_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_EKOPATH_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_PATH`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/PathScale EKOpath] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__PATHCC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__PATHCC__`, `__PATHCC_MINOR__`, `__PATHCC_PATCHLEVEL__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_PATH MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__PATHCC__)
|
||||||
|
# define MSGPACK_COMP_PATH_DETECTION \
|
||||||
|
MSGPACK_VERSION_NUMBER(__PATHCC__,__PATHCC_MINOR__,__PATHCC_PATCHLEVEL__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_PATH_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_PATH_EMULATED MSGPACK_COMP_PATH_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_PATH
|
||||||
|
# define MSGPACK_COMP_PATH MSGPACK_COMP_PATH_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_PATH_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_PATH_NAME "EKOpath"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_PATH,MSGPACK_COMP_PATH_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_PATH_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_PATH_EMULATED,MSGPACK_COMP_PATH_NAME)
|
||||||
|
#endif
|
68
include/msgpack/predef/compiler/gcc.h
Normal file
68
include/msgpack/predef/compiler/gcc.h
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_GCC_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_GCC_H
|
||||||
|
|
||||||
|
/* Other compilers that emulate this one need to be detected first. */
|
||||||
|
|
||||||
|
#include <msgpack/predef/compiler/clang.h>
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_GNUC`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/GNU_Compiler_Collection Gnu GCC C/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch (if available).
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__GNUC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__GNUC__`, `__GNUC_MINOR__`, `__GNUC_PATCHLEVEL__`] [V.R.P]]
|
||||||
|
[[`__GNUC__`, `__GNUC_MINOR__`] [V.R.0]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_GNUC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
# if !defined(MSGPACK_COMP_GNUC_DETECTION) && defined(__GNUC_PATCHLEVEL__)
|
||||||
|
# define MSGPACK_COMP_GNUC_DETECTION \
|
||||||
|
MSGPACK_VERSION_NUMBER(__GNUC__,__GNUC_MINOR__,__GNUC_PATCHLEVEL__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_GNUC_DETECTION)
|
||||||
|
# define MSGPACK_COMP_GNUC_DETECTION \
|
||||||
|
MSGPACK_VERSION_NUMBER(__GNUC__,__GNUC_MINOR__,0)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_GNUC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_GNUC_EMULATED MSGPACK_COMP_GNUC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_GNUC
|
||||||
|
# define MSGPACK_COMP_GNUC MSGPACK_COMP_GNUC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_GNUC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_GNUC_NAME "Gnu GCC C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_GNUC,MSGPACK_COMP_GNUC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_GNUC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_GNUC_EMULATED,MSGPACK_COMP_GNUC_NAME)
|
||||||
|
#endif
|
53
include/msgpack/predef/compiler/gcc_xml.h
Normal file
53
include/msgpack/predef/compiler/gcc_xml.h
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_GCC_XML_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_GCC_XML_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_GCCXML`]
|
||||||
|
|
||||||
|
[@http://www.gccxml.org/ GCC XML] compiler.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__GCCXML__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_GCCXML MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__GCCXML__)
|
||||||
|
# define MSGPACK_COMP_GCCXML_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_GCCXML_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_GCCXML_EMULATED MSGPACK_COMP_GCCXML_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_GCCXML
|
||||||
|
# define MSGPACK_COMP_GCCXML MSGPACK_COMP_GCCXML_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_GCCXML_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_GCCXML_NAME "GCC XML"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_GCCXML,MSGPACK_COMP_GCCXML_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_GCCXML_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_GCCXML_EMULATED,MSGPACK_COMP_GCCXML_NAME)
|
||||||
|
#endif
|
66
include/msgpack/predef/compiler/greenhills.h
Normal file
66
include/msgpack/predef/compiler/greenhills.h
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_GREENHILLS_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_GREENHILLS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_GHS`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Green_Hills_Software Green Hills C/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__ghs`] [__predef_detection__]]
|
||||||
|
[[`__ghs__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__GHS_VERSION_NUMBER__`] [V.R.P]]
|
||||||
|
[[`__ghs`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_GHS MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__ghs) || defined(__ghs__)
|
||||||
|
# if !defined(MSGPACK_COMP_GHS_DETECTION) && defined(__GHS_VERSION_NUMBER__)
|
||||||
|
# define MSGPACK_COMP_GHS_DETECTION MSGPACK_PREDEF_MAKE_10_VRP(__GHS_VERSION_NUMBER__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_GHS_DETECTION) && defined(__ghs)
|
||||||
|
# define MSGPACK_COMP_GHS_DETECTION MSGPACK_PREDEF_MAKE_10_VRP(__ghs)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_GHS_DETECTION)
|
||||||
|
# define MSGPACK_COMP_GHS_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_GHS_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_GHS_EMULATED MSGPACK_COMP_GHS_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_GHS
|
||||||
|
# define MSGPACK_COMP_GHS MSGPACK_COMP_GHS_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_GHS_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_GHS_NAME "Green Hills C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_GHS,MSGPACK_COMP_GHS_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_GHS_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_GHS_EMULATED,MSGPACK_COMP_GHS_NAME)
|
||||||
|
#endif
|
61
include/msgpack/predef/compiler/hp_acc.h
Normal file
61
include/msgpack/predef/compiler/hp_acc.h
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_HP_ACC_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_HP_ACC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_HPACC`]
|
||||||
|
|
||||||
|
HP aC++ compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__HP_aCC`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__HP_aCC`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_HPACC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__HP_aCC)
|
||||||
|
# if !defined(MSGPACK_COMP_HPACC_DETECTION) && (__HP_aCC > 1)
|
||||||
|
# define MSGPACK_COMP_HPACC_DETECTION MSGPACK_PREDEF_MAKE_10_VVRRPP(__HP_aCC)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_HPACC_DETECTION)
|
||||||
|
# define MSGPACK_COMP_HPACC_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_HPACC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_HPACC_EMULATED MSGPACK_COMP_HPACC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_HPACC
|
||||||
|
# define MSGPACK_COMP_HPACC MSGPACK_COMP_HPACC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_HPACC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_HPACC_NAME "HP aC++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_HPACC,MSGPACK_COMP_HPACC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_HPACC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_HPACC_EMULATED,MSGPACK_COMP_HPACC_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/iar.h
Normal file
56
include/msgpack/predef/compiler/iar.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_IAR_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_IAR_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_IAR`]
|
||||||
|
|
||||||
|
IAR C/C++ compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__IAR_SYSTEMS_ICC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__VER__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_IAR MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__IAR_SYSTEMS_ICC__)
|
||||||
|
# define MSGPACK_COMP_IAR_DETECTION MSGPACK_PREDEF_MAKE_10_VVRR(__VER__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_IAR_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_IAR_EMULATED MSGPACK_COMP_IAR_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_IAR
|
||||||
|
# define MSGPACK_COMP_IAR MSGPACK_COMP_IAR_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_IAR_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_IAR_NAME "IAR C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_IAR,MSGPACK_COMP_IAR_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_IAR_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_IAR_EMULATED,MSGPACK_COMP_IAR_NAME)
|
||||||
|
#endif
|
72
include/msgpack/predef/compiler/ibm.h
Normal file
72
include/msgpack/predef/compiler/ibm.h
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_IBM_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_IBM_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_IBM`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/VisualAge IBM XL C/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_IBM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__IBMCPP__) || defined(__xlC__) || defined(__xlc__)
|
||||||
|
# if !defined(MSGPACK_COMP_IBM_DETECTION) && defined(__COMPILER_VER__)
|
||||||
|
# define MSGPACK_COMP_IBM_DETECTION MSGPACK_PREDEF_MAKE_0X_VRRPPPP(__COMPILER_VER__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_IBM_DETECTION) && defined(__xlC__)
|
||||||
|
# define MSGPACK_COMP_IBM_DETECTION MSGPACK_PREDEF_MAKE_0X_VVRR(__xlC__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_IBM_DETECTION) && defined(__xlc__)
|
||||||
|
# define MSGPACK_COMP_IBM_DETECTION MSGPACK_PREDEF_MAKE_0X_VVRR(__xlc__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_IBM_DETECTION)
|
||||||
|
# define MSGPACK_COMP_IBM_DETECTION MSGPACK_PREDEF_MAKE_10_VRP(__IBMCPP__)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_IBM_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_IBM_EMULATED MSGPACK_COMP_IBM_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_IBM
|
||||||
|
# define MSGPACK_COMP_IBM MSGPACK_COMP_IBM_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_IBM_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_IBM_NAME "IBM XL C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_IBM,MSGPACK_COMP_IBM_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_IBM_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_IBM_EMULATED,MSGPACK_COMP_IBM_NAME)
|
||||||
|
#endif
|
79
include/msgpack/predef/compiler/intel.h
Normal file
79
include/msgpack/predef/compiler/intel.h
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
/*
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef MSGPACK_PREDEF_COMPILER_INTEL_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_INTEL_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_INTEL`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Intel_C%2B%2B Intel C/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_INTEL MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || \
|
||||||
|
defined(__ECC)
|
||||||
|
/*`
|
||||||
|
[note Because of an Intel mistake in the release version numbering when
|
||||||
|
`__INTEL_COMPILER` is `9999` it is detected as version 12.1.0.]
|
||||||
|
*/
|
||||||
|
# if !defined(MSGPACK_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 9999)
|
||||||
|
# define MSGPACK_COMP_INTEL_DETECTION MSGPACK_VERSION_NUMBER(12,1,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER) && defined(__INTEL_COMPILER_UPDATE)
|
||||||
|
# define MSGPACK_COMP_INTEL_DETECTION MSGPACK_VERSION_NUMBER( \
|
||||||
|
MSGPACK_VERSION_NUMBER_MAJOR(MSGPACK_PREDEF_MAKE_10_VVRR(__INTEL_COMPILER)), \
|
||||||
|
MSGPACK_VERSION_NUMBER_MINOR(MSGPACK_PREDEF_MAKE_10_VVRR(__INTEL_COMPILER)), \
|
||||||
|
__INTEL_COMPILER_UPDATE)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER)
|
||||||
|
# define MSGPACK_COMP_INTEL_DETECTION MSGPACK_PREDEF_MAKE_10_VVRR(__INTEL_COMPILER)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_INTEL_DETECTION)
|
||||||
|
# define MSGPACK_COMP_INTEL_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_INTEL_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_INTEL_EMULATED MSGPACK_COMP_INTEL_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_INTEL
|
||||||
|
# define MSGPACK_COMP_INTEL MSGPACK_COMP_INTEL_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_INTEL_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_INTEL_NAME "Intel C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_INTEL,MSGPACK_COMP_INTEL_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_INTEL_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_INTEL_EMULATED,MSGPACK_COMP_INTEL_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/kai.h
Normal file
56
include/msgpack/predef/compiler/kai.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_KAI_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_KAI_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_KCC`]
|
||||||
|
|
||||||
|
Kai C++ compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__KCC`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__KCC_VERSION`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_KCC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__KCC)
|
||||||
|
# define MSGPACK_COMP_KCC_DETECTION MSGPACK_PREDEF_MAKE_0X_VRPP(__KCC_VERSION)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_KCC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_KCC_EMULATED MSGPACK_COMP_KCC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_KCC
|
||||||
|
# define MSGPACK_COMP_KCC MSGPACK_COMP_KCC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_KCC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_KCC_NAME "Kai C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_KCC,MSGPACK_COMP_KCC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_KCC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_KCC_EMULATED,MSGPACK_COMP_KCC_NAME)
|
||||||
|
#endif
|
57
include/msgpack/predef/compiler/llvm.h
Normal file
57
include/msgpack/predef/compiler/llvm.h
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_LLVM_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_LLVM_H
|
||||||
|
|
||||||
|
/* Other compilers that emulate this one need to be detected first. */
|
||||||
|
|
||||||
|
#include <msgpack/predef/compiler/clang.h>
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_LLVM`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/LLVM LLVM] compiler.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__llvm__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_LLVM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__llvm__)
|
||||||
|
# define MSGPACK_COMP_LLVM_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_LLVM_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_LLVM_EMULATED MSGPACK_COMP_LLVM_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_LLVM
|
||||||
|
# define MSGPACK_COMP_LLVM MSGPACK_COMP_LLVM_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_LLVM_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_LLVM_NAME "LLVM"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_LLVM,MSGPACK_COMP_LLVM_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_LLVM_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_LLVM_EMULATED,MSGPACK_COMP_LLVM_NAME)
|
||||||
|
#endif
|
53
include/msgpack/predef/compiler/metaware.h
Normal file
53
include/msgpack/predef/compiler/metaware.h
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_METAWARE_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_METAWARE_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_HIGHC`]
|
||||||
|
|
||||||
|
MetaWare High C/C++ compiler.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__HIGHC__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_HIGHC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__HIGHC__)
|
||||||
|
# define MSGPACK_COMP_HIGHC_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_HIGHC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_HIGHC_EMULATED MSGPACK_COMP_HIGHC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_HIGHC
|
||||||
|
# define MSGPACK_COMP_HIGHC MSGPACK_COMP_HIGHC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_HIGHC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_HIGHC_NAME "MetaWare High C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_HIGHC,MSGPACK_COMP_HIGHC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_HIGHC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_HIGHC_EMULATED,MSGPACK_COMP_HIGHC_NAME)
|
||||||
|
#endif
|
77
include/msgpack/predef/compiler/metrowerks.h
Normal file
77
include/msgpack/predef/compiler/metrowerks.h
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_METROWERKS_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_METROWERKS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_MWERKS`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/CodeWarrior Metrowerks CodeWarrior] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MWERKS MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__MWERKS__) || defined(__CWCC__)
|
||||||
|
# if !defined(MSGPACK_COMP_MWERKS_DETECTION) && defined(__CWCC__)
|
||||||
|
# define MSGPACK_COMP_MWERKS_DETECTION MSGPACK_PREDEF_MAKE_0X_VRPP(__CWCC__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_MWERKS_DETECTION) && (__MWERKS__ >= 0x4200)
|
||||||
|
# define MSGPACK_COMP_MWERKS_DETECTION MSGPACK_PREDEF_MAKE_0X_VRPP(__MWERKS__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_MWERKS_DETECTION) && (__MWERKS__ >= 0x3204) // note the "skip": 04->9.3
|
||||||
|
# define MSGPACK_COMP_MWERKS_DETECTION MSGPACK_VERSION_NUMBER(9,(__MWERKS__)%100-1,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_MWERKS_DETECTION) && (__MWERKS__ >= 0x3200)
|
||||||
|
# define MSGPACK_COMP_MWERKS_DETECTION MSGPACK_VERSION_NUMBER(9,(__MWERKS__)%100,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_MWERKS_DETECTION) && (__MWERKS__ >= 0x3000)
|
||||||
|
# define MSGPACK_COMP_MWERKS_DETECTION MSGPACK_VERSION_NUMBER(8,(__MWERKS__)%100,0)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_MWERKS_DETECTION)
|
||||||
|
# define MSGPACK_COMP_MWERKS_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MWERKS_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_MWERKS_EMULATED MSGPACK_COMP_MWERKS_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_MWERKS
|
||||||
|
# define MSGPACK_COMP_MWERKS MSGPACK_COMP_MWERKS_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_MWERKS_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MWERKS_NAME "Metrowerks CodeWarrior"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MWERKS,MSGPACK_COMP_MWERKS_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MWERKS_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MWERKS_EMULATED,MSGPACK_COMP_MWERKS_NAME)
|
||||||
|
#endif
|
53
include/msgpack/predef/compiler/microtec.h
Normal file
53
include/msgpack/predef/compiler/microtec.h
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_MICROTEC_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_MICROTEC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_MRI`]
|
||||||
|
|
||||||
|
[@http://www.mentor.com/microtec/ Microtec C/C++] compiler.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`_MRI`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MRI MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(_MRI)
|
||||||
|
# define MSGPACK_COMP_MRI_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MRI_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_MRI_EMULATED MSGPACK_COMP_MRI_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_MRI
|
||||||
|
# define MSGPACK_COMP_MRI MSGPACK_COMP_MRI_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_MRI_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MRI_NAME "Microtec C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MRI,MSGPACK_COMP_MRI_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MRI_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MRI_EMULATED,MSGPACK_COMP_MRI_NAME)
|
||||||
|
#endif
|
63
include/msgpack/predef/compiler/mpw.h
Normal file
63
include/msgpack/predef/compiler/mpw.h
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_MPW_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_MPW_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_MPW`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Macintosh_Programmer%27s_Workshop MPW C++] compiler.
|
||||||
|
Version number available as major, and minor.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__MRC__`] [__predef_detection__]]
|
||||||
|
[[`MPW_C`] [__predef_detection__]]
|
||||||
|
[[`MPW_CPLUS`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__MRC__`] [V.R.0]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MPW MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__MRC__) || defined(MPW_C) || defined(MPW_CPLUS)
|
||||||
|
# if !defined(MSGPACK_COMP_MPW_DETECTION) && defined(__MRC__)
|
||||||
|
# define MSGPACK_COMP_MPW_DETECTION MSGPACK_PREDEF_MAKE_0X_VVRR(__MRC__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_MPW_DETECTION)
|
||||||
|
# define MSGPACK_COMP_MPW_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MPW_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_MPW_EMULATED MSGPACK_COMP_MPW_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_MPW
|
||||||
|
# define MSGPACK_COMP_MPW MSGPACK_COMP_MPW_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_MPW_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MPW_NAME "MPW C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MPW,MSGPACK_COMP_MPW_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MPW_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MPW_EMULATED,MSGPACK_COMP_MPW_NAME)
|
||||||
|
#endif
|
60
include/msgpack/predef/compiler/nvcc.h
Normal file
60
include/msgpack/predef/compiler/nvcc.h
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
/*
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_NVCC_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_NVCC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_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.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__NVCC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__CUDACC_VER_MAJOR__`, `__CUDACC_VER_MINOR__`, `__CUDACC_VER_BUILD__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_NVCC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__NVCC__)
|
||||||
|
# if !defined(__CUDACC_VER_MAJOR__) || !defined(__CUDACC_VER_MINOR__) || !defined(__CUDACC_VER_BUILD__)
|
||||||
|
# define MSGPACK_COMP_NVCC_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# else
|
||||||
|
# define MSGPACK_COMP_NVCC_DETECTION MSGPACK_VERSION_NUMBER(__CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, __CUDACC_VER_BUILD__)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_NVCC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_NVCC_EMULATED MSGPACK_COMP_NVCC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_NVCC
|
||||||
|
# define MSGPACK_COMP_NVCC MSGPACK_COMP_NVCC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_NVCC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_NVCC_NAME "NVCC"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_NVCC,MSGPACK_COMP_NVCC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_NVCC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_NVCC_EMULATED,MSGPACK_COMP_NVCC_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/palm.h
Normal file
56
include/msgpack/predef/compiler/palm.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_PALM_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_PALM_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_PALM`]
|
||||||
|
|
||||||
|
Palm C/C++ compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`_PACC_VER`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`_PACC_VER`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_PALM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(_PACC_VER)
|
||||||
|
# define MSGPACK_COMP_PALM_DETECTION MSGPACK_PREDEF_MAKE_0X_VRRPP000(_PACC_VER)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_PALM_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_PALM_EMULATED MSGPACK_COMP_PALM_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_PALM
|
||||||
|
# define MSGPACK_COMP_PALM MSGPACK_COMP_PALM_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_PALM_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_PALM_NAME "Palm C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_PALM,MSGPACK_COMP_PALM_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_PALM_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_PALM_EMULATED,MSGPACK_COMP_PALM_NAME)
|
||||||
|
#endif
|
60
include/msgpack/predef/compiler/pgi.h
Normal file
60
include/msgpack/predef/compiler/pgi.h
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_PGI_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_PGI_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_PGI`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/The_Portland_Group Portland Group C/C++] compiler.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__PGI`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__PGIC__`, `__PGIC_MINOR__`, `__PGIC_PATCHLEVEL__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_PGI MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__PGI)
|
||||||
|
# if !defined(MSGPACK_COMP_PGI_DETECTION) && (defined(__PGIC__) && defined(__PGIC_MINOR__) && defined(__PGIC_PATCHLEVEL__))
|
||||||
|
# define MSGPACK_COMP_PGI_DETECTION MSGPACK_VERSION_NUMBER(__PGIC__,__PGIC_MINOR__,__PGIC_PATCHLEVEL__)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_PGI_DETECTION)
|
||||||
|
# define MSGPACK_COMP_PGI_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_PGI_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_PGI_EMULATED MSGPACK_COMP_PGI_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_PGI
|
||||||
|
# define MSGPACK_COMP_PGI MSGPACK_COMP_PGI_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_PGI_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_PGI_NAME "Portland Group C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_PGI,MSGPACK_COMP_PGI_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_PGI_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_PGI_EMULATED,MSGPACK_COMP_PGI_NAME)
|
||||||
|
#endif
|
66
include/msgpack/predef/compiler/sgi_mipspro.h
Normal file
66
include/msgpack/predef/compiler/sgi_mipspro.h
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_SGI_MIPSPRO_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_SGI_MIPSPRO_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_SGI`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/MIPSpro SGI MIPSpro] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__sgi`] [__predef_detection__]]
|
||||||
|
[[`sgi`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`_SGI_COMPILER_VERSION`] [V.R.P]]
|
||||||
|
[[`_COMPILER_VERSION`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_SGI MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__sgi) || defined(sgi)
|
||||||
|
# if !defined(MSGPACK_COMP_SGI_DETECTION) && defined(_SGI_COMPILER_VERSION)
|
||||||
|
# define MSGPACK_COMP_SGI_DETECTION MSGPACK_PREDEF_MAKE_10_VRP(_SGI_COMPILER_VERSION)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_SGI_DETECTION) && defined(_COMPILER_VERSION)
|
||||||
|
# define MSGPACK_COMP_SGI_DETECTION MSGPACK_PREDEF_MAKE_10_VRP(_COMPILER_VERSION)
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_SGI_DETECTION)
|
||||||
|
# define MSGPACK_COMP_SGI_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_SGI_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_SGI_EMULATED MSGPACK_COMP_SGI_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_SGI
|
||||||
|
# define MSGPACK_COMP_SGI MSGPACK_COMP_SGI_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_SGI_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_SGI_NAME "SGI MIPSpro"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_SGI,MSGPACK_COMP_SGI_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_SGI_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_SGI_EMULATED,MSGPACK_COMP_SGI_NAME)
|
||||||
|
#endif
|
76
include/msgpack/predef/compiler/sunpro.h
Normal file
76
include/msgpack/predef/compiler/sunpro.h
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_SUNPRO_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_SUNPRO_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_SUNPRO`]
|
||||||
|
|
||||||
|
[@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__]]
|
||||||
|
|
||||||
|
[[`__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]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_SUNPRO MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__SUNPRO_CC) || defined(__SUNPRO_C)
|
||||||
|
# if !defined(MSGPACK_COMP_SUNPRO_DETECTION) && defined(__SUNPRO_CC)
|
||||||
|
# if (__SUNPRO_CC < 0x5100)
|
||||||
|
# define MSGPACK_COMP_SUNPRO_DETECTION MSGPACK_PREDEF_MAKE_0X_VRP(__SUNPRO_CC)
|
||||||
|
# else
|
||||||
|
# define MSGPACK_COMP_SUNPRO_DETECTION MSGPACK_PREDEF_MAKE_0X_VVRRP(__SUNPRO_CC)
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_SUNPRO_DETECTION) && defined(__SUNPRO_C)
|
||||||
|
# if (__SUNPRO_C < 0x5100)
|
||||||
|
# define MSGPACK_COMP_SUNPRO_DETECTION MSGPACK_PREDEF_MAKE_0X_VRP(__SUNPRO_C)
|
||||||
|
# else
|
||||||
|
# define MSGPACK_COMP_SUNPRO_DETECTION MSGPACK_PREDEF_MAKE_0X_VVRRP(__SUNPRO_C)
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
# if !defined(MSGPACK_COMP_SUNPRO_DETECTION)
|
||||||
|
# define MSGPACK_COMP_SUNPRO_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_SUNPRO_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_SUNPRO_EMULATED MSGPACK_COMP_SUNPRO_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_SUNPRO
|
||||||
|
# define MSGPACK_COMP_SUNPRO MSGPACK_COMP_SUNPRO_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_SUNPRO_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_SUNPRO_NAME "Oracle Solaris Studio"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_SUNPRO,MSGPACK_COMP_SUNPRO_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_SUNPRO_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_SUNPRO_EMULATED,MSGPACK_COMP_SUNPRO_NAME)
|
||||||
|
#endif
|
53
include/msgpack/predef/compiler/tendra.h
Normal file
53
include/msgpack/predef/compiler/tendra.h
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_TENDRA_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_TENDRA_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_TENDRA`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/TenDRA_Compiler TenDRA C/C++] compiler.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__TenDRA__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_TENDRA MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__TenDRA__)
|
||||||
|
# define MSGPACK_COMP_TENDRA_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_TENDRA_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_TENDRA_EMULATED MSGPACK_COMP_TENDRA_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_TENDRA
|
||||||
|
# define MSGPACK_COMP_TENDRA MSGPACK_COMP_TENDRA_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_TENDRA_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_TENDRA_NAME "TenDRA C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_TENDRA,MSGPACK_COMP_TENDRA_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_TENDRA_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_TENDRA_EMULATED,MSGPACK_COMP_TENDRA_NAME)
|
||||||
|
#endif
|
105
include/msgpack/predef/compiler/visualc.h
Normal file
105
include/msgpack/predef/compiler/visualc.h
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_VISUALC_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_VISUALC_H
|
||||||
|
|
||||||
|
/* Other compilers that emulate this one need to be detected first. */
|
||||||
|
|
||||||
|
#include <msgpack/predef/compiler/clang.h>
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_MSVC`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Visual_studio Microsoft Visual C/C++] compiler.
|
||||||
|
Version number available as major, minor, and patch.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`_MSC_VER`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`_MSC_FULL_VER`] [V.R.P]]
|
||||||
|
[[`_MSC_VER`] [V.R.0]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[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.]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MSVC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(_MSC_VER)
|
||||||
|
# if !defined (_MSC_FULL_VER)
|
||||||
|
# define MSGPACK_COMP_MSVC_BUILD 0
|
||||||
|
# else
|
||||||
|
/* how many digits does the build number have? */
|
||||||
|
# if _MSC_FULL_VER / 10000 == _MSC_VER
|
||||||
|
/* four digits */
|
||||||
|
# define MSGPACK_COMP_MSVC_BUILD (_MSC_FULL_VER % 10000)
|
||||||
|
# elif _MSC_FULL_VER / 100000 == _MSC_VER
|
||||||
|
/* five digits */
|
||||||
|
# define MSGPACK_COMP_MSVC_BUILD (_MSC_FULL_VER % 100000)
|
||||||
|
# else
|
||||||
|
# error "Cannot determine build number from _MSC_FULL_VER"
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
/*
|
||||||
|
VS2014 was skipped in the release sequence for MS. Which
|
||||||
|
means that the compiler and VS product versions are no longer
|
||||||
|
in sync. Hence we need to use different formulas for
|
||||||
|
mapping from MSC version to VS product version.
|
||||||
|
|
||||||
|
VS2017 is a total nightmare when it comes to version numbers.
|
||||||
|
Hence to avoid arguments relating to that both present and
|
||||||
|
future.. Any version after VS2015 will use solely the compiler
|
||||||
|
version, i.e. cl.exe, as the version number here.
|
||||||
|
*/
|
||||||
|
# if (_MSC_VER > 1900)
|
||||||
|
# define MSGPACK_COMP_MSVC_DETECTION MSGPACK_VERSION_NUMBER(\
|
||||||
|
_MSC_VER/100,\
|
||||||
|
_MSC_VER%100,\
|
||||||
|
MSGPACK_COMP_MSVC_BUILD)
|
||||||
|
# elif (_MSC_VER >= 1900)
|
||||||
|
# define MSGPACK_COMP_MSVC_DETECTION MSGPACK_VERSION_NUMBER(\
|
||||||
|
_MSC_VER/100-5,\
|
||||||
|
_MSC_VER%100,\
|
||||||
|
MSGPACK_COMP_MSVC_BUILD)
|
||||||
|
# else
|
||||||
|
# define MSGPACK_COMP_MSVC_DETECTION MSGPACK_VERSION_NUMBER(\
|
||||||
|
_MSC_VER/100-6,\
|
||||||
|
_MSC_VER%100,\
|
||||||
|
MSGPACK_COMP_MSVC_BUILD)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MSVC_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_MSVC_EMULATED MSGPACK_COMP_MSVC_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_MSVC
|
||||||
|
# define MSGPACK_COMP_MSVC MSGPACK_COMP_MSVC_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_MSVC_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_MSVC_NAME "Microsoft Visual C/C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MSVC,MSGPACK_COMP_MSVC_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_MSVC_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_MSVC_EMULATED,MSGPACK_COMP_MSVC_NAME)
|
||||||
|
#endif
|
56
include/msgpack/predef/compiler/watcom.h
Normal file
56
include/msgpack/predef/compiler/watcom.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2008-2015
|
||||||
|
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 MSGPACK_PREDEF_COMPILER_WATCOM_H
|
||||||
|
#define MSGPACK_PREDEF_COMPILER_WATCOM_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_COMP_WATCOM`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Watcom Watcom C++] compiler.
|
||||||
|
Version number available as major, and minor.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__WATCOMC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__WATCOMC__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_WATCOM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__WATCOMC__)
|
||||||
|
# define MSGPACK_COMP_WATCOM_DETECTION MSGPACK_PREDEF_MAKE_10_VVRR(__WATCOMC__)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_WATCOM_DETECTION
|
||||||
|
# if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
|
||||||
|
# define MSGPACK_COMP_WATCOM_EMULATED MSGPACK_COMP_WATCOM_DETECTION
|
||||||
|
# else
|
||||||
|
# undef MSGPACK_COMP_WATCOM
|
||||||
|
# define MSGPACK_COMP_WATCOM MSGPACK_COMP_WATCOM_DETECTION
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_COMP_WATCOM_AVAILABLE
|
||||||
|
# include <msgpack/predef/detail/comp_detected.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_COMP_WATCOM_NAME "Watcom C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_WATCOM,MSGPACK_COMP_WATCOM_NAME)
|
||||||
|
|
||||||
|
#ifdef MSGPACK_COMP_WATCOM_EMULATED
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_WATCOM_EMULATED,MSGPACK_COMP_WATCOM_NAME)
|
||||||
|
#endif
|
17
include/msgpack/predef/detail/_cassert.h
Normal file
17
include/msgpack/predef/detail/_cassert.h
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2012
|
||||||
|
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 MSGPACK_PREDEF_DETAIL__CASSERT_H
|
||||||
|
#define MSGPACK_PREDEF_DETAIL__CASSERT_H
|
||||||
|
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#include <cassert>
|
||||||
|
#else
|
||||||
|
#include <assert.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
15
include/msgpack/predef/detail/_exception.h
Normal file
15
include/msgpack/predef/detail/_exception.h
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2012
|
||||||
|
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 MSGPACK_PREDEF_DETAIL__EXCEPTION_H
|
||||||
|
#define MSGPACK_PREDEF_DETAIL__EXCEPTION_H
|
||||||
|
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#include <exception>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
10
include/msgpack/predef/detail/comp_detected.h
Normal file
10
include/msgpack/predef/detail/comp_detected.h
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2014
|
||||||
|
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 MSGPACK_PREDEF_DETAIL_COMP_DETECTED
|
||||||
|
#define MSGPACK_PREDEF_DETAIL_COMP_DETECTED 1
|
||||||
|
#endif
|
26
include/msgpack/predef/detail/endian_compat.h
Normal file
26
include/msgpack/predef/detail/endian_compat.h
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
/*
|
||||||
|
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 MSGPACK_PREDEF_DETAIL_ENDIAN_COMPAT_H
|
||||||
|
#define MSGPACK_PREDEF_DETAIL_ENDIAN_COMPAT_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/other/endian.h>
|
||||||
|
|
||||||
|
#if MSGPACK_ENDIAN_BIG_BYTE
|
||||||
|
# define MSGPACK_BIG_ENDIAN
|
||||||
|
# define MSGPACK_BYTE_ORDER 4321
|
||||||
|
#endif
|
||||||
|
#if MSGPACK_ENDIAN_LITTLE_BYTE
|
||||||
|
# define MSGPACK_LITTLE_ENDIAN
|
||||||
|
# define MSGPACK_BYTE_ORDER 1234
|
||||||
|
#endif
|
||||||
|
#if MSGPACK_ENDIAN_LITTLE_WORD
|
||||||
|
# define MSGPACK_PDP_ENDIAN
|
||||||
|
# define MSGPACK_BYTE_ORDER 2134
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
10
include/msgpack/predef/detail/os_detected.h
Normal file
10
include/msgpack/predef/detail/os_detected.h
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
/*
|
||||||
|
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 MSGPACK_PREDEF_DETAIL_OS_DETECTED
|
||||||
|
#define MSGPACK_PREDEF_DETAIL_OS_DETECTED 1
|
||||||
|
#endif
|
10
include/msgpack/predef/detail/platform_detected.h
Normal file
10
include/msgpack/predef/detail/platform_detected.h
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2014
|
||||||
|
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 MSGPACK_PREDEF_DETAIL_PLAT_DETECTED
|
||||||
|
#define MSGPACK_PREDEF_DETAIL_PLAT_DETECTED 1
|
||||||
|
#endif
|
17
include/msgpack/predef/detail/test.h
Normal file
17
include/msgpack/predef/detail/test.h
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2012
|
||||||
|
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 MSGPACK_PREDEF_DETAIL_TEST_H
|
||||||
|
#define MSGPACK_PREDEF_DETAIL_TEST_H
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_PREDEF_INTERNAL_GENERATE_TESTS)
|
||||||
|
|
||||||
|
#define MSGPACK_PREDEF_DECLARE_TEST(x,s)
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
71
include/msgpack/predef/detail/test_def.h
Normal file
71
include/msgpack/predef/detail/test_def.h
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
#include <msgpack/predef.h>
|
||||||
|
|
||||||
|
#define MSGPACK_PREDEF_INTERNAL_GENERATE_TESTS
|
||||||
|
|
||||||
|
void * add_predef_entry(const char * name, const char * description, unsigned value)
|
||||||
|
#undef MSGPACK_PREDEF_DECLARE_TEST
|
||||||
|
#define MSGPACK_PREDEF_DECLARE_TEST(x,s) void predef_entry_##x() { add_predef_entry(#x, s, x) }
|
||||||
|
#include <msgpack/predef.h>
|
||||||
|
|
||||||
|
#undef MSGPACK_PREDEF_DECLARE_TEST
|
||||||
|
#define MSGPACK_PREDEF_DECLARE_TEST(x,s) predef_entry_##x()
|
||||||
|
void create_predef_entries()
|
||||||
|
{
|
||||||
|
#include <msgpack/predef.h>
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#include <cstring>
|
||||||
|
#include <cstdio>
|
||||||
|
#include <cstdlib>
|
||||||
|
using namespace std
|
||||||
|
#else
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef struct predef_info
|
||||||
|
{
|
||||||
|
const char * name
|
||||||
|
const char * description
|
||||||
|
unsigned value
|
||||||
|
} predef_info
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
using namespace std
|
||||||
|
#endif
|
||||||
|
|
||||||
|
unsigned generated_predef_info_count = 0
|
||||||
|
predef_info* generated_predef_info = 0
|
||||||
|
void * add_predef_entry(const char * name, const char * description, unsigned value)
|
||||||
|
{
|
||||||
|
if (0 == generated_predef_info_count)
|
||||||
|
{
|
||||||
|
generated_predef_info_count = 1
|
||||||
|
generated_predef_info = (predef_info*)malloc(sizeof(predef_info))
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
generated_predef_info_count += 1
|
||||||
|
generated_predef_info = (predef_info*)realloc(generated_predef_info,
|
||||||
|
generated_predef_info_count*sizeof(predef_info))
|
||||||
|
}
|
||||||
|
generated_predef_info[generated_predef_info_count-1].name = name
|
||||||
|
generated_predef_info[generated_predef_info_count-1].description = description
|
||||||
|
generated_predef_info[generated_predef_info_count-1].value = value
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
int predef_info_compare(const void * a, const void * b)
|
||||||
|
{
|
||||||
|
const predef_info * i = (const predef_info *)a
|
||||||
|
const predef_info * j = (const predef_info *)b
|
||||||
|
return strcmp(i->name,j->name)
|
||||||
|
}
|
16
include/msgpack/predef/hardware.h
Normal file
16
include/msgpack/predef/hardware.h
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_PREDEF_HARDWARE_H) || defined(MSGPACK_PREDEF_INTERNAL_GENERATE_TESTS)
|
||||||
|
#ifndef MSGPACK_PREDEF_HARDWARE_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/hardware/simd.h>
|
||||||
|
|
||||||
|
#endif
|
119
include/msgpack/predef/hardware/simd.h
Normal file
119
include/msgpack/predef/hardware/simd.h
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <msgpack/predef/hardware/simd/x86.h>
|
||||||
|
#include <msgpack/predef/hardware/simd/x86_amd.h>
|
||||||
|
#include <msgpack/predef/hardware/simd/arm.h>
|
||||||
|
#include <msgpack/predef/hardware/simd/ppc.h>
|
||||||
|
|
||||||
|
#ifndef MSGPACK_PREDEF_HARDWARE_SIMD_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[section Using the `MSGPACK_HW_SIMD_*` predefs]
|
||||||
|
[include ../doc/hardware_simd.qbk]
|
||||||
|
[endsect]
|
||||||
|
|
||||||
|
[/ --------------------------- ]
|
||||||
|
|
||||||
|
[section `MSGPACK_HW_SIMD_*`]
|
||||||
|
|
||||||
|
[heading `MSGPACK_HW_SIMD`]
|
||||||
|
|
||||||
|
The SIMD extension detected for a specific architectures.
|
||||||
|
Version number depends on the detected extension.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`MSGPACK_HW_SIMD_X86_AVAILABLE`] [__predef_detection__]]
|
||||||
|
[[`MSGPACK_HW_SIMD_X86_AMD_AVAILABLE`] [__predef_detection__]]
|
||||||
|
[[`MSGPACK_HW_SIMD_ARM_AVAILABLE`] [__predef_detection__]]
|
||||||
|
[[`MSGPACK_HW_SIMD_PPC_AVAILABLE`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/x86.h]
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/x86_amd.h]
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/arm.h]
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/ppc.h]
|
||||||
|
|
||||||
|
[endsect]
|
||||||
|
|
||||||
|
[/ --------------------------- ]
|
||||||
|
|
||||||
|
[section `MSGPACK_HW_SIMD_X86_*_VERSION`]
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/x86/versions.h]
|
||||||
|
[endsect]
|
||||||
|
|
||||||
|
[section `MSGPACK_HW_SIMD_X86_AMD_*_VERSION`]
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/x86_amd/versions.h]
|
||||||
|
[endsect]
|
||||||
|
|
||||||
|
[section `MSGPACK_HW_SIMD_ARM_*_VERSION`]
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/arm/versions.h]
|
||||||
|
[endsect]
|
||||||
|
|
||||||
|
[section `MSGPACK_HW_SIMD_PPC_*_VERSION`]
|
||||||
|
[include ../include/msgpack/predef/hardware/simd/ppc/versions.h]
|
||||||
|
[endsect]
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
// We check if SIMD extension of multiples architectures have been detected,
|
||||||
|
// if yes, then this is an error!
|
||||||
|
//
|
||||||
|
// NOTE: _X86_AMD implies _X86, so there is no need to check for it here!
|
||||||
|
//
|
||||||
|
#if defined(MSGPACK_HW_SIMD_ARM_AVAILABLE) && defined(MSGPACK_HW_SIMD_PPC_AVAILABLE) ||\
|
||||||
|
defined(MSGPACK_HW_SIMD_ARM_AVAILABLE) && defined(MSGPACK_HW_SIMD_X86_AVAILABLE) ||\
|
||||||
|
defined(MSGPACK_HW_SIMD_PPC_AVAILABLE) && defined(MSGPACK_HW_SIMD_X86_AVAILABLE)
|
||||||
|
# error "Multiple SIMD architectures detected, this cannot happen!"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MSGPACK_HW_SIMD_X86_AVAILABLE) && defined(MSGPACK_HW_SIMD_X86_AMD_AVAILABLE)
|
||||||
|
// If both standard _X86 and _X86_AMD are available,
|
||||||
|
// then take the biggest version of the two!
|
||||||
|
# if MSGPACK_HW_SIMD_X86 >= MSGPACK_HW_SIMD_X86_AMD
|
||||||
|
# define MSGPACK_HW_SIMD MSGPACK_HW_SIMD_X86
|
||||||
|
# else
|
||||||
|
# define MSGPACK_HW_SIMD MSGPACK_HW_SIMD_X86_AMD
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_HW_SIMD)
|
||||||
|
// At this point, only one of these two is defined
|
||||||
|
# if defined(MSGPACK_HW_SIMD_X86_AVAILABLE)
|
||||||
|
# define MSGPACK_HW_SIMD MSGPACK_HW_SIMD_X86
|
||||||
|
# endif
|
||||||
|
# if defined(MSGPACK_HW_SIMD_X86_AMD_AVAILABLE)
|
||||||
|
# define MSGPACK_HW_SIMD MSGPACK_HW_SIMD_X86_AMD
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MSGPACK_HW_SIMD_ARM_AVAILABLE)
|
||||||
|
# define MSGPACK_HW_SIMD MSGPACK_HW_SIMD_ARM
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MSGPACK_HW_SIMD_PPC_AVAILABLE)
|
||||||
|
# define MSGPACK_HW_SIMD MSGPACK_HW_SIMD_PPC
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MSGPACK_HW_SIMD)
|
||||||
|
# define MSGPACK_HW_SIMD_AVAILABLE
|
||||||
|
#else
|
||||||
|
# define MSGPACK_HW_SIMD MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_NAME "Hardware SIMD"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_HW_SIMD, MSGPACK_HW_SIMD_NAME)
|
59
include/msgpack/predef/hardware/simd/arm.h
Normal file
59
include/msgpack/predef/hardware/simd/arm.h
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_ARM_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_ARM_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/hardware/simd/arm/versions.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_ARM`]
|
||||||
|
|
||||||
|
The SIMD extension for ARM (*if detected*).
|
||||||
|
Version number depends on the most recent detected extension.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__ARM_NEON__`] [__predef_detection__]]
|
||||||
|
[[`__aarch64__`] [__predef_detection__]]
|
||||||
|
[[`_M_ARM`] [__predef_detection__]]
|
||||||
|
[[`_M_ARM64`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__ARM_NEON__`] [MSGPACK_HW_SIMD_ARM_NEON_VERSION]]
|
||||||
|
[[`__aarch64__`] [MSGPACK_HW_SIMD_ARM_NEON_VERSION]]
|
||||||
|
[[`_M_ARM`] [MSGPACK_HW_SIMD_ARM_NEON_VERSION]]
|
||||||
|
[[`_M_ARM64`] [MSGPACK_HW_SIMD_ARM_NEON_VERSION]]
|
||||||
|
]
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_ARM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#undef MSGPACK_HW_SIMD_ARM
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_ARM) && (defined(__ARM_NEON__) || defined(__aarch64__) || defined (_M_ARM) || defined (_M_ARM64))
|
||||||
|
# define MSGPACK_HW_SIMD_ARM MSGPACK_HW_SIMD_ARM_NEON_VERSION
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_ARM)
|
||||||
|
# define MSGPACK_HW_SIMD_ARM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
#else
|
||||||
|
# define MSGPACK_HW_SIMD_ARM_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_ARM_NAME "ARM SIMD"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_HW_SIMD_ARM, MSGPACK_HW_SIMD_ARM_NAME)
|
32
include/msgpack/predef/hardware/simd/arm/versions.h
Normal file
32
include/msgpack/predef/hardware/simd/arm/versions.h
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_ARM_VERSIONS_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_ARM_VERSIONS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
Those defines represent ARM SIMD extensions versions.
|
||||||
|
|
||||||
|
[note You *MUST* compare them with the predef `MSGPACK_HW_SIMD_ARM`.]
|
||||||
|
*/
|
||||||
|
|
||||||
|
// ---------------------------------
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_ARM_NEON_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/ARM_architecture#Advanced_SIMD_.28NEON.29 NEON]
|
||||||
|
ARM extension version number.
|
||||||
|
|
||||||
|
Version number is: *1.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_ARM_NEON_VERSION MSGPACK_VERSION_NUMBER(1, 0, 0)
|
||||||
|
|
||||||
|
#endif
|
69
include/msgpack/predef/hardware/simd/ppc.h
Normal file
69
include/msgpack/predef/hardware/simd/ppc.h
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_PPC_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_PPC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/hardware/simd/ppc/versions.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_PPC`]
|
||||||
|
|
||||||
|
The SIMD extension for PowerPC (*if detected*).
|
||||||
|
Version number depends on the most recent detected extension.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__VECTOR4DOUBLE__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__ALTIVEC__`] [__predef_detection__]]
|
||||||
|
[[`__VEC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__VSX__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__VECTOR4DOUBLE__`] [MSGPACK_HW_SIMD_PPC_QPX_VERSION]]
|
||||||
|
|
||||||
|
[[`__ALTIVEC__`] [MSGPACK_HW_SIMD_PPC_VMX_VERSION]]
|
||||||
|
[[`__VEC__`] [MSGPACK_HW_SIMD_PPC_VMX_VERSION]]
|
||||||
|
|
||||||
|
[[`__VSX__`] [MSGPACK_HW_SIMD_PPC_VSX_VERSION]]
|
||||||
|
]
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_PPC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#undef MSGPACK_HW_SIMD_PPC
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_PPC) && defined(__VECTOR4DOUBLE__)
|
||||||
|
# define MSGPACK_HW_SIMD_PPC MSGPACK_HW_SIMD_PPC_QPX_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_PPC) && defined(__VSX__)
|
||||||
|
# define MSGPACK_HW_SIMD_PPC MSGPACK_HW_SIMD_PPC_VSX_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_PPC) && (defined(__ALTIVEC__) || defined(__VEC__))
|
||||||
|
# define MSGPACK_HW_SIMD_PPC MSGPACK_HW_SIMD_PPC_VMX_VERSION
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_PPC)
|
||||||
|
# define MSGPACK_HW_SIMD_PPC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
#else
|
||||||
|
# define MSGPACK_HW_SIMD_PPC_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_PPC_NAME "PPC SIMD"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_HW_SIMD_PPC, MSGPACK_HW_SIMD_PPC_NAME)
|
51
include/msgpack/predef/hardware/simd/ppc/versions.h
Normal file
51
include/msgpack/predef/hardware/simd/ppc/versions.h
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_PPC_VERSIONS_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_PPC_VERSIONS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
Those defines represent Power PC SIMD extensions versions.
|
||||||
|
|
||||||
|
[note You *MUST* compare them with the predef `MSGPACK_HW_SIMD_PPC`.]
|
||||||
|
*/
|
||||||
|
|
||||||
|
// ---------------------------------
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_PPC_VMX_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/AltiVec#VMX128 VMX] powerpc extension
|
||||||
|
version number.
|
||||||
|
|
||||||
|
Version number is: *1.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_PPC_VMX_VERSION MSGPACK_VERSION_NUMBER(1, 0, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_PPC_VSX_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/AltiVec#VSX VSX] powerpc extension version
|
||||||
|
number.
|
||||||
|
|
||||||
|
Version number is: *1.1.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_PPC_VSX_VERSION MSGPACK_VERSION_NUMBER(1, 1, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_PPC_QPX_VERSION`]
|
||||||
|
|
||||||
|
The QPX powerpc extension version number.
|
||||||
|
|
||||||
|
Version number is: *2.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_PPC_QPX_VERSION MSGPACK_VERSION_NUMBER(2, 0, 0)
|
||||||
|
|
||||||
|
#endif
|
123
include/msgpack/predef/hardware/simd/x86.h
Normal file
123
include/msgpack/predef/hardware/simd/x86.h
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_X86_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_X86_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/hardware/simd/x86/versions.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86`]
|
||||||
|
|
||||||
|
The SIMD extension for x86 (*if detected*).
|
||||||
|
Version number depends on the most recent detected extension.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__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__]]
|
||||||
|
|
||||||
|
[[`__SSE3__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__SSSE3__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__SSE4_1__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__SSE4_2__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__AVX__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__FMA__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__AVX2__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__SSE__`] [MSGPACK_HW_SIMD_X86_SSE_VERSION]]
|
||||||
|
[[`_M_X64`] [MSGPACK_HW_SIMD_X86_SSE_VERSION]]
|
||||||
|
[[`_M_IX86_FP >= 1`] [MSGPACK_HW_SIMD_X86_SSE_VERSION]]
|
||||||
|
|
||||||
|
[[`__SSE2__`] [MSGPACK_HW_SIMD_X86_SSE2_VERSION]]
|
||||||
|
[[`_M_X64`] [MSGPACK_HW_SIMD_X86_SSE2_VERSION]]
|
||||||
|
[[`_M_IX86_FP >= 2`] [MSGPACK_HW_SIMD_X86_SSE2_VERSION]]
|
||||||
|
|
||||||
|
[[`__SSE3__`] [MSGPACK_HW_SIMD_X86_SSE3_VERSION]]
|
||||||
|
|
||||||
|
[[`__SSSE3__`] [MSGPACK_HW_SIMD_X86_SSSE3_VERSION]]
|
||||||
|
|
||||||
|
[[`__SSE4_1__`] [MSGPACK_HW_SIMD_X86_SSE4_1_VERSION]]
|
||||||
|
|
||||||
|
[[`__SSE4_2__`] [MSGPACK_HW_SIMD_X86_SSE4_2_VERSION]]
|
||||||
|
|
||||||
|
[[`__AVX__`] [MSGPACK_HW_SIMD_X86_AVX_VERSION]]
|
||||||
|
|
||||||
|
[[`__FMA__`] [MSGPACK_HW_SIMD_X86_FMA3_VERSION]]
|
||||||
|
|
||||||
|
[[`__AVX2__`] [MSGPACK_HW_SIMD_X86_AVX2_VERSION]]
|
||||||
|
]
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_X86 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#undef MSGPACK_HW_SIMD_X86
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__MIC__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_MIC_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__AVX2__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_AVX2_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__AVX__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_AVX_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__FMA__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_FMA_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__SSE4_2__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_SSE4_2_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__SSE4_1__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_SSE4_1_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__SSSE3__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_SSSE3_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__SSE3__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_SSE3_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && (defined(__SSE2__) || defined(_M_X64) || (defined(_M_IX86_FP) && _M_IX86_FP >= 2))
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_SSE2_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && (defined(__SSE__) || defined(_M_X64) || (defined(_M_IX86_FP) && _M_IX86_FP >= 1))
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_SSE_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86) && defined(__MMX__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_HW_SIMD_X86_MMX_VERSION
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86)
|
||||||
|
# define MSGPACK_HW_SIMD_X86 MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
#else
|
||||||
|
# define MSGPACK_HW_SIMD_X86_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_X86_NAME "x86 SIMD"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_HW_SIMD_X86, MSGPACK_HW_SIMD_X86_NAME)
|
129
include/msgpack/predef/hardware/simd/x86/versions.h
Normal file
129
include/msgpack/predef/hardware/simd/x86/versions.h
Normal file
@@ -0,0 +1,129 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_X86_VERSIONS_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_X86_VERSIONS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
Those defines represent x86 SIMD extensions versions.
|
||||||
|
|
||||||
|
[note You *MUST* compare them with the predef `MSGPACK_HW_SIMD_X86`.]
|
||||||
|
*/
|
||||||
|
|
||||||
|
// ---------------------------------
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_MMX_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/MMX_(instruction_set) MMX] x86 extension
|
||||||
|
version number.
|
||||||
|
|
||||||
|
Version number is: *0.99.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_MMX_VERSION MSGPACK_VERSION_NUMBER(0, 99, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_SSE_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions SSE] x86 extension
|
||||||
|
version number.
|
||||||
|
|
||||||
|
Version number is: *1.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_SSE_VERSION MSGPACK_VERSION_NUMBER(1, 0, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_SSE2_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/SSE2 SSE2] x86 extension version number.
|
||||||
|
|
||||||
|
Version number is: *2.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_SSE2_VERSION MSGPACK_VERSION_NUMBER(2, 0, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_SSE3_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/SSE3 SSE3] x86 extension version number.
|
||||||
|
|
||||||
|
Version number is: *3.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_SSE3_VERSION MSGPACK_VERSION_NUMBER(3, 0, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_SSSE3_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/SSSE3 SSSE3] x86 extension version number.
|
||||||
|
|
||||||
|
Version number is: *3.1.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_SSSE3_VERSION MSGPACK_VERSION_NUMBER(3, 1, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_SSE4_1_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/SSE4#SSE4.1 SSE4_1] x86 extension version
|
||||||
|
number.
|
||||||
|
|
||||||
|
Version number is: *4.1.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_SSE4_1_VERSION MSGPACK_VERSION_NUMBER(4, 1, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_SSE4_2_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/SSE4##SSE4.2 SSE4_2] x86 extension version
|
||||||
|
number.
|
||||||
|
|
||||||
|
Version number is: *4.2.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_SSE4_2_VERSION MSGPACK_VERSION_NUMBER(4, 2, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_AVX_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/Advanced_Vector_Extensions AVX] x86
|
||||||
|
extension version number.
|
||||||
|
|
||||||
|
Version number is: *5.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_AVX_VERSION MSGPACK_VERSION_NUMBER(5, 0, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_FMA3_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/FMA_instruction_set FMA3] x86 extension
|
||||||
|
version number.
|
||||||
|
|
||||||
|
Version number is: *5.2.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_FMA3_VERSION MSGPACK_VERSION_NUMBER(5, 2, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_AVX2_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2 AVX2]
|
||||||
|
x86 extension version number.
|
||||||
|
|
||||||
|
Version number is: *5.3.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_AVX2_VERSION MSGPACK_VERSION_NUMBER(5, 3, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_MIC_VERSION`]
|
||||||
|
|
||||||
|
The [@https://en.wikipedia.org/wiki/Xeon_Phi MIC] (Xeon Phi) x86 extension
|
||||||
|
version number.
|
||||||
|
|
||||||
|
Version number is: *9.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_MIC_VERSION MSGPACK_VERSION_NUMBER(9, 0, 0)
|
||||||
|
|
||||||
|
#endif
|
87
include/msgpack/predef/hardware/simd/x86_amd.h
Normal file
87
include/msgpack/predef/hardware/simd/x86_amd.h
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_X86_AMD_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_X86_AMD_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/hardware/simd/x86_amd/versions.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_AMD`]
|
||||||
|
|
||||||
|
The SIMD extension for x86 (AMD) (*if detected*).
|
||||||
|
Version number depends on the most recent detected extension.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__SSE4A__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__FMA4__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__XOP__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`MSGPACK_HW_SIMD_X86`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__SSE4A__`] [MSGPACK_HW_SIMD_X86_SSE4A_VERSION]]
|
||||||
|
|
||||||
|
[[`__FMA4__`] [MSGPACK_HW_SIMD_X86_FMA4_VERSION]]
|
||||||
|
|
||||||
|
[[`__XOP__`] [MSGPACK_HW_SIMD_X86_XOP_VERSION]]
|
||||||
|
|
||||||
|
[[`MSGPACK_HW_SIMD_X86`] [MSGPACK_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 `MSGPACK_HW_SIMD_X86` to test if those specific extensions have
|
||||||
|
been detected.]
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_X86_AMD MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
// AMD CPUs also use x86 architecture. We first try to detect if any AMD
|
||||||
|
// specific extension are detected, if yes, then try to detect more recent x86
|
||||||
|
// common extensions.
|
||||||
|
|
||||||
|
#undef MSGPACK_HW_SIMD_X86_AMD
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86_AMD) && defined(__XOP__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86_AMD MSGPACK_HW_SIMD_X86_AMD_XOP_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86_AMD) && defined(__FMA4__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86_AMD MSGPACK_HW_SIMD_X86_AMD_FMA4_VERSION
|
||||||
|
#endif
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86_AMD) && defined(__SSE4A__)
|
||||||
|
# define MSGPACK_HW_SIMD_X86_AMD MSGPACK_HW_SIMD_X86_AMD_SSE4A_VERSION
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_HW_SIMD_X86_AMD)
|
||||||
|
# define MSGPACK_HW_SIMD_X86_AMD MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
#else
|
||||||
|
// At this point, we know that we have an AMD CPU, we do need to check for
|
||||||
|
// other x86 extensions to determine the final version number.
|
||||||
|
# include <msgpack/predef/hardware/simd/x86.h>
|
||||||
|
# if MSGPACK_HW_SIMD_X86 > MSGPACK_HW_SIMD_X86_AMD
|
||||||
|
# undef MSGPACK_HW_SIMD_X86_AMD
|
||||||
|
# define MSGPACK_HW_SIMD_X86_AMD MSGPACK_HW_SIMD_X86
|
||||||
|
# endif
|
||||||
|
# define MSGPACK_HW_SIMD_X86_AMD_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_HW_SIMD_X86_AMD_NAME "x86 (AMD) SIMD"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_HW_SIMD_X86_AMD, MSGPACK_HW_SIMD_X86_AMD_NAME)
|
51
include/msgpack/predef/hardware/simd/x86_amd/versions.h
Normal file
51
include/msgpack/predef/hardware/simd/x86_amd/versions.h
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
/*
|
||||||
|
Copyright Charly Chevalier 2015
|
||||||
|
Copyright Joel Falcou 2015
|
||||||
|
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 MSGPACK_PREDEF_HARDWARE_SIMD_X86_AMD_VERSIONS_H
|
||||||
|
#define MSGPACK_PREDEF_HARDWARE_SIMD_X86_AMD_VERSIONS_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
Those defines represent x86 (AMD specific) SIMD extensions versions.
|
||||||
|
|
||||||
|
[note You *MUST* compare them with the predef `MSGPACK_HW_SIMD_X86_AMD`.]
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
// ---------------------------------
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_AMD_SSE4A_VERSION`]
|
||||||
|
|
||||||
|
[@https://en.wikipedia.org/wiki/SSE4##SSE4A SSE4A] x86 extension (AMD specific).
|
||||||
|
|
||||||
|
Version number is: *4.0.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_AMD_SSE4A_VERSION MSGPACK_VERSION_NUMBER(4, 0, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_AMD_FMA4_VERSION`]
|
||||||
|
|
||||||
|
[@https://en.wikipedia.org/wiki/FMA_instruction_set#FMA4_instruction_set FMA4] x86 extension (AMD specific).
|
||||||
|
|
||||||
|
Version number is: *5.1.0*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_AMD_FMA4_VERSION MSGPACK_VERSION_NUMBER(5, 1, 0)
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_HW_SIMD_X86_AMD_XOP_VERSION`]
|
||||||
|
|
||||||
|
[@https://en.wikipedia.org/wiki/XOP_instruction_set XOP] x86 extension (AMD specific).
|
||||||
|
|
||||||
|
Version number is: *5.1.1*.
|
||||||
|
*/
|
||||||
|
#define MSGPACK_HW_SIMD_X86_AMD_XOP_VERSION MSGPACK_VERSION_NUMBER(5, 1, 1)
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
18
include/msgpack/predef/language.h
Normal file
18
include/msgpack/predef/language.h
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2015
|
||||||
|
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)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if !defined(MSGPACK_PREDEF_LANGUAGE_H) || defined(MSGPACK_PREDEF_INTERNAL_GENERATE_TESTS)
|
||||||
|
#ifndef MSGPACK_PREDEF_LANGUAGE_H
|
||||||
|
#define MSGPACK_PREDEF_LANGUAGE_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/language/stdc.h>
|
||||||
|
#include <msgpack/predef/language/stdcpp.h>
|
||||||
|
#include <msgpack/predef/language/objc.h>
|
||||||
|
#include <msgpack/predef/language/cuda.h>
|
||||||
|
|
||||||
|
#endif
|
52
include/msgpack/predef/language/cuda.h
Normal file
52
include/msgpack/predef/language/cuda.h
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
/*
|
||||||
|
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 MSGPACK_PREDEF_LANGUAGE_CUDA_H
|
||||||
|
#define MSGPACK_PREDEF_LANGUAGE_CUDA_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_LANG_CUDA`]
|
||||||
|
|
||||||
|
[@https://en.wikipedia.org/wiki/CUDA CUDA C/C++] language.
|
||||||
|
If available, the version is detected as VV.RR.P.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__CUDACC__`] [__predef_detection__]]
|
||||||
|
[[`__CUDA__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`CUDA_VERSION`] [VV.RR.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_CUDA MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__CUDACC__) || defined(__CUDA__)
|
||||||
|
# undef MSGPACK_LANG_CUDA
|
||||||
|
# include <cuda.h>
|
||||||
|
# if defined(CUDA_VERSION)
|
||||||
|
# define MSGPACK_LANG_CUDA MSGPACK_PREDEF_MAKE_10_VVRRP(CUDA_VERSION)
|
||||||
|
# else
|
||||||
|
# define MSGPACK_LANG_CUDA MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_LANG_CUDA
|
||||||
|
# define MSGPACK_LANG_CUDA_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_CUDA_NAME "CUDA C/C++"
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_LANG_CUDA,MSGPACK_LANG_CUDA_NAME)
|
42
include/msgpack/predef/language/objc.h
Normal file
42
include/msgpack/predef/language/objc.h
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2015
|
||||||
|
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 MSGPACK_PREDEF_LANGUAGE_OBJC_H
|
||||||
|
#define MSGPACK_PREDEF_LANGUAGE_OBJC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_LANG_OBJC`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Objective-C Objective-C] language.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__OBJC__`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_OBJC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__OBJC__)
|
||||||
|
# undef MSGPACK_LANG_OBJC
|
||||||
|
# define MSGPACK_LANG_OBJC MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_LANG_OBJC
|
||||||
|
# define MSGPACK_LANG_OBJC_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_OBJC_NAME "Objective-C"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_LANG_OBJC,MSGPACK_LANG_OBJC_NAME)
|
53
include/msgpack/predef/language/stdc.h
Normal file
53
include/msgpack/predef/language/stdc.h
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2015
|
||||||
|
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 MSGPACK_PREDEF_LANGUAGE_STDC_H
|
||||||
|
#define MSGPACK_PREDEF_LANGUAGE_STDC_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_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.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__STDC__`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__STDC_VERSION__`] [V.R.P]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDC MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__STDC__)
|
||||||
|
# undef MSGPACK_LANG_STDC
|
||||||
|
# if defined(__STDC_VERSION__)
|
||||||
|
# if (__STDC_VERSION__ > 100)
|
||||||
|
# define MSGPACK_LANG_STDC MSGPACK_PREDEF_MAKE_YYYYMM(__STDC_VERSION__)
|
||||||
|
# else
|
||||||
|
# define MSGPACK_LANG_STDC MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
# else
|
||||||
|
# define MSGPACK_LANG_STDC MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_LANG_STDC
|
||||||
|
# define MSGPACK_LANG_STDC_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDC_NAME "Standard C"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_LANG_STDC,MSGPACK_LANG_STDC_NAME)
|
121
include/msgpack/predef/language/stdcpp.h
Normal file
121
include/msgpack/predef/language/stdcpp.h
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
/*
|
||||||
|
Copyright Rene Rivera 2011-2015
|
||||||
|
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 MSGPACK_PREDEF_LANGUAGE_STDCPP_H
|
||||||
|
#define MSGPACK_PREDEF_LANGUAGE_STDCPP_H
|
||||||
|
|
||||||
|
#include <msgpack/predef/version_number.h>
|
||||||
|
#include <msgpack/predef/make.h>
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_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
|
||||||
|
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]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__cplusplus`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__cplusplus`] [YYYY.MM.1]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDCPP MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
# undef MSGPACK_LANG_STDCPP
|
||||||
|
# if (__cplusplus > 100)
|
||||||
|
# define MSGPACK_LANG_STDCPP MSGPACK_PREDEF_MAKE_YYYYMM(__cplusplus)
|
||||||
|
# else
|
||||||
|
# define MSGPACK_LANG_STDCPP MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_LANG_STDCPP
|
||||||
|
# define MSGPACK_LANG_STDCPP_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDCPP_NAME "Standard C++"
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_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.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__cplusplus_cli`] [__predef_detection__]]
|
||||||
|
|
||||||
|
[[`__cplusplus_cli`] [YYYY.MM.1]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDCPPCLI MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__cplusplus_cli)
|
||||||
|
# undef MSGPACK_LANG_STDCPPCLI
|
||||||
|
# if (__cplusplus_cli > 100)
|
||||||
|
# define MSGPACK_LANG_STDCPPCLI MSGPACK_PREDEF_MAKE_YYYYMM(__cplusplus_cli)
|
||||||
|
# else
|
||||||
|
# define MSGPACK_LANG_STDCPPCLI MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_LANG_STDCPPCLI
|
||||||
|
# define MSGPACK_LANG_STDCPPCLI_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDCPPCLI_NAME "Standard C++/CLI"
|
||||||
|
|
||||||
|
/*`
|
||||||
|
[heading `MSGPACK_LANG_STDECPP`]
|
||||||
|
|
||||||
|
[@http://en.wikipedia.org/wiki/Embedded_C%2B%2B Standard Embedded C++] language.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[__predef_symbol__] [__predef_version__]]
|
||||||
|
|
||||||
|
[[`__embedded_cplusplus`] [__predef_detection__]]
|
||||||
|
]
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDECPP MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
|
||||||
|
|
||||||
|
#if defined(__embedded_cplusplus)
|
||||||
|
# undef MSGPACK_LANG_STDECPP
|
||||||
|
# define MSGPACK_LANG_STDECPP MSGPACK_VERSION_NUMBER_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if MSGPACK_LANG_STDECPP
|
||||||
|
# define MSGPACK_LANG_STDECPP_AVAILABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define MSGPACK_LANG_STDECPP_NAME "Standard Embedded C++"
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_LANG_STDCPP,MSGPACK_LANG_STDCPP_NAME)
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_LANG_STDCPPCLI,MSGPACK_LANG_STDCPPCLI_NAME)
|
||||||
|
|
||||||
|
#include <msgpack/predef/detail/test.h>
|
||||||
|
MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_LANG_STDECPP,MSGPACK_LANG_STDECPP_NAME)
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user