1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2024-11-12 21:09:01 +00:00
Sprout/sprout/config/auto_config.hpp
2015-01-10 19:13:57 +09:00

154 lines
5.3 KiB
C++

/*=============================================================================
Copyright (c) 2011-2015 Bolero MURAKAMI
https://github.com/bolero-MURAKAMI/Sprout
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 SPROUT_CONFIG_AUTO_CONFIG_HPP
#define SPROUT_CONFIG_AUTO_CONFIG_HPP
#include <sprout/config/compiler.hpp>
#include <sprout/config/stdlib.hpp>
//
// SPROUT_CONFIG_DISABLE_CONSTEXPR
//
#ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR
# ifdef SPROUT_NO_CXX11_CONSTEXPR
# define SPROUT_CONFIG_DISABLE_CONSTEXPR
# endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR
#endif // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR
//
// SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
//
#ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
# ifdef SPROUT_NO_CXX14_CONSTEXPR
# define SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
# endif // #ifdef SPROUT_NO_CXX14_CONSTEXPR
#endif // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR
//
// SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS
//
#ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS
# ifdef SPROUT_NO_CXX11_DEFAULTED_FUNCTIONS
# define SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS
# endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR
#endif // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS
//
// SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS
//
#ifndef SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS
# ifdef SPROUT_NO_CXX11_DELETED_FUNCTIONS
# define SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS
# endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR
#endif // #ifndef SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS
//
// SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS
//
#ifndef SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS
# ifdef SPROUT_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
# define SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS
# endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR
#endif // #ifndef SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS
//
// SPROUT_CONFIG_DISABLE_NOEXCEPT
//
#ifndef SPROUT_CONFIG_DISABLE_NOEXCEPT
# ifdef SPROUT_NO_CXX11_NOEXCEPT
# define SPROUT_CONFIG_DISABLE_NOEXCEPT
# endif // #ifdef SPROUT_NO_CXX11_NOEXCEPT
#endif // #ifndef SPROUT_CONFIG_DISABLE_NOEXCEPT
//
// SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES
//
#ifndef SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES
# ifdef SPROUT_NO_CXX11_TEMPLATE_ALIASES
# define SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES
# endif // #ifdef SPROUT_NO_CXX11_TEMPLATE_ALIASES
#endif // #ifndef SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES
//
// SPROUT_USE_USER_DEFINED_LITERALS
//
#ifndef SPROUT_USE_USER_DEFINED_LITERALS
# ifdef SPROUT_NO_CXX11_USER_DEFINED_LITERALS
# define SPROUT_CONFIG_DISABLE_USER_DEFINED_LITERALS
# endif // #ifdef SPROUT_NO_CXX11_USER_DEFINED_LITERALS
#endif // #ifndef SPROUT_USE_USER_DEFINED_LITERALS
//
// SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS
//
#ifndef SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS
# ifdef SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS
# define SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS
# endif // #ifdef SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS
#endif // #ifndef SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS
//
// SPROUT_CONFIG_DISABLE_UNICODE_LITERALS
//
#ifndef SPROUT_CONFIG_DISABLE_UNICODE_LITERALS
# ifdef SPROUT_NO_CXX11_UNICODE_LITERALS
# define SPROUT_CONFIG_DISABLE_UNICODE_LITERALS
# endif // #ifdef SPROUT_NO_CXX11_UNICODE_LITERALS
#endif // #ifndef SPROUT_CONFIG_DISABLE_UNICODE_LITERALS
//
// SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES
//
#ifndef SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES
# ifdef SPROUT_NO_CXX14_VARIABLE_TEMPLATES
# define SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES
# endif // #ifdef SPROUT_NO_CXX14_VARIABLE_TEMPLATES
#endif // #ifndef SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES
//
// SPROUT_CONFIG_USE_SSCRISK_CEL
//
//
// SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION
//
#ifndef SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION
# ifndef SPROUT_HAS_CONSTEXPR_CMATH_FUNCTION
# define SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION
# endif // #ifdef SPROUT_HAS_CONSTEXPR_CMATH_FUNCTION
#endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION
//
// SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION
//
#ifndef SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION
# ifndef SPROUT_HAS_CONSTEXPR_COPYSIGN_FUNCTION
# define SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION
# endif // #ifdef SPROUT_HAS_CONSTEXPR_COPYSIGN_FUNCTION
#endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION
//
// SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION
//
#ifndef SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION
# ifndef SPROUT_HAS_CONSTEXPR_BIT_OPERATION
# define SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION
# endif // #ifdef SPROUT_HAS_CONSTEXPR_BIT_OPERATION
#endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION
//
// SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION
// SPROUT_CONFIG_SUPPORT_TEMPORARY_CONTAINER_ITERATION
//
#ifndef SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION
# define SPROUT_CONFIG_SUPPORT_TEMPORARY_CONTAINER_ITERATION
#endif // #ifndef SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION
#include <sprout/config/suffix.hpp>
#endif // #ifndef SPROUT_CONFIG_AUTO_CONFIG_HPP