Sprout/sprout/config/auto_config.hpp
2016-02-25 18:48:28 +09:00

154 lines
5.9 KiB
C++

/*=============================================================================
Copyright (c) 2011-2016 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
# if defined(SPROUT_NO_CXX11_CONSTEXPR) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX14_CONSTEXPR) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_DEFAULTED_FUNCTIONS) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_DELETED_FUNCTIONS) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_NOEXCEPT) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_TEMPLATE_ALIASES) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_USER_DEFINED_LITERALS) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX11_UNICODE_LITERALS) && !defined(SPROUT_CONFIG_FORCE_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
# if defined(SPROUT_NO_CXX14_VARIABLE_TEMPLATES) && !defined(SPROUT_CONFIG_FORCE_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