aboutsummaryrefslogtreecommitdiff
path: root/cmake/modules/FindCXX11.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/modules/FindCXX11.cmake')
-rw-r--r--cmake/modules/FindCXX11.cmake18
1 files changed, 18 insertions, 0 deletions
diff --git a/cmake/modules/FindCXX11.cmake b/cmake/modules/FindCXX11.cmake
new file mode 100644
index 0000000000..c0b9a52d20
--- /dev/null
+++ b/cmake/modules/FindCXX11.cmake
@@ -0,0 +1,18 @@
+include(TestCXXAcceptsFlag)
+
+# try to use compiler flag -std=c++11
+check_cxx_accepts_flag("-std=c++11" CXX_FLAG_CXX11)
+if(CXX_FLAG_CXX11)
+ add_options (CXX ALL_BUILDS "-std=c++11")
+ set(CXX_STD11_FLAGS "-std=c++11")
+else()
+ # try to use compiler flag -std=c++0x for older compilers
+ check_cxx_accepts_flag("-std=c++0x" CXX_FLAG_CXX0X)
+ if(CXX_FLAG_CXX0X)
+ add_options (CXX ALL_BUILDS "-std=c++0x")
+ set(CXX_STD11_FLAGS "-std=c++0x")
+ endif()
+endif()
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(CXX11 DEFAULT_MSG CXX_STD11_FLAGS)