mirror of
https://github.com/boostorg/math.git
synced 2026-01-19 04:22:09 +00:00
Merge pull request #1277 from boostorg/build2
Add C++14 <type_trait> requirement to builds
This commit is contained in:
@@ -22,6 +22,7 @@ project
|
||||
[ check-target-builds ../config//has_gcc_visibility "gcc visibility" : <toolset>gcc:<cxxflags>-fvisibility=hidden : ]
|
||||
[ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ]
|
||||
[ requires cxx14_constexpr cxx14_decltype_auto cxx14_generic_lambdas cxx14_return_type_deduction cxx14_variable_templates ]
|
||||
[ check-target-builds ../config//has_cxx14_type_traits "cxx14_type_traits" : : <build>no ]
|
||||
: usage-requirements
|
||||
<define>BOOST_MATH_TR1_NO_LIB=1
|
||||
;
|
||||
|
||||
@@ -36,6 +36,7 @@ obj has_gmp : has_gmp.cpp :
|
||||
obj is_ci_sanitizer_run : is_ci_sanitizer_run.cpp ;
|
||||
obj is_ci_standalone_run : is_ci_standalone_run.cpp ;
|
||||
obj is_cygwin_run : is_cygwin_run.cpp ;
|
||||
obj has_cxx14_type_traits : has_cxx14_type_traits.cpp ;
|
||||
|
||||
explicit has_long_double_support ;
|
||||
explicit has_mpfr_class ;
|
||||
@@ -52,3 +53,4 @@ explicit has_fftw3 ;
|
||||
explicit is_ci_sanitizer_run ;
|
||||
explicit is_ci_standalone_run ;
|
||||
explicit is_cygwin_run ;
|
||||
explicit has_cxx14_type_traits ;
|
||||
|
||||
14
config/has_cxx14_type_traits.cpp
Normal file
14
config/has_cxx14_type_traits.cpp
Normal file
@@ -0,0 +1,14 @@
|
||||
// Copyright 2025 Matt Borland
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// https://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
#include <type_traits>
|
||||
#include <cstdint>
|
||||
|
||||
using big_int = std::conditional_t<(sizeof(long) > sizeof(std::uint32_t)), long, std::uint32_t>;
|
||||
static_assert(sizeof(big_int) >= sizeof(std::uint32_t), "big_int is too small");
|
||||
|
||||
int main()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
@@ -76,6 +76,7 @@ project
|
||||
<search>$(mpfr_path)/build.vc10/lib/Win32/Debug
|
||||
[ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ]
|
||||
[ requires cxx14_constexpr cxx14_decltype_auto cxx14_generic_lambdas cxx14_return_type_deduction cxx14_variable_templates ]
|
||||
[ check-target-builds ../config//has_cxx14_type_traits "cxx14_type_traits" : : <build>no ]
|
||||
;
|
||||
|
||||
if $(ntl-path)
|
||||
|
||||
Reference in New Issue
Block a user