Check for availability of unique_ptr and make_unique when building CMake
Some code paths may find these useful if available.
This commit is contained in:
parent
00fd64d126
commit
aa50cdac43
@ -32,8 +32,13 @@ function(cm_check_cxx_feature name)
|
|||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
if(CMAKE_CXX_STANDARD)
|
if(CMAKE_CXX_STANDARD)
|
||||||
|
cm_check_cxx_feature(make_unique)
|
||||||
|
if(CMake_HAVE_CXX_MAKE_UNIQUE)
|
||||||
|
set(CMake_HAVE_CXX_UNIQUE_PTR 1)
|
||||||
|
endif()
|
||||||
cm_check_cxx_feature(nullptr)
|
cm_check_cxx_feature(nullptr)
|
||||||
cm_check_cxx_feature(override)
|
cm_check_cxx_feature(override)
|
||||||
|
cm_check_cxx_feature(unique_ptr)
|
||||||
cm_check_cxx_feature(unordered_map)
|
cm_check_cxx_feature(unordered_map)
|
||||||
cm_check_cxx_feature(unordered_set)
|
cm_check_cxx_feature(unordered_set)
|
||||||
endif()
|
endif()
|
||||||
|
6
Source/Checks/cm_cxx_make_unique.cxx
Normal file
6
Source/Checks/cm_cxx_make_unique.cxx
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include <memory>
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
std::unique_ptr<int> u = std::make_unique<int>(0);
|
||||||
|
return *u;
|
||||||
|
}
|
6
Source/Checks/cm_cxx_unique_ptr.cxx
Normal file
6
Source/Checks/cm_cxx_unique_ptr.cxx
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include <memory>
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
std::unique_ptr<int> u(new int(0));
|
||||||
|
return *u;
|
||||||
|
}
|
@ -30,8 +30,10 @@
|
|||||||
#cmakedefine CMAKE_USE_MACH_PARSER
|
#cmakedefine CMAKE_USE_MACH_PARSER
|
||||||
#cmakedefine CMAKE_USE_LIBUV
|
#cmakedefine CMAKE_USE_LIBUV
|
||||||
#cmakedefine CMAKE_ENCODING_UTF8
|
#cmakedefine CMAKE_ENCODING_UTF8
|
||||||
|
#cmakedefine CMake_HAVE_CXX_MAKE_UNIQUE
|
||||||
#cmakedefine CMake_HAVE_CXX_NULLPTR
|
#cmakedefine CMake_HAVE_CXX_NULLPTR
|
||||||
#cmakedefine CMake_HAVE_CXX_OVERRIDE
|
#cmakedefine CMake_HAVE_CXX_OVERRIDE
|
||||||
|
#cmakedefine CMake_HAVE_CXX_UNIQUE_PTR
|
||||||
#cmakedefine CMake_HAVE_CXX_UNORDERED_MAP
|
#cmakedefine CMake_HAVE_CXX_UNORDERED_MAP
|
||||||
#cmakedefine CMake_HAVE_CXX_UNORDERED_SET
|
#cmakedefine CMake_HAVE_CXX_UNORDERED_SET
|
||||||
#define CMAKE_BIN_DIR "/@CMAKE_BIN_DIR@"
|
#define CMAKE_BIN_DIR "/@CMAKE_BIN_DIR@"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user