chiark / gitweb /
Allow to modify Python & octave site dir
[nlopt.git] / CMakeLists.txt
index e6b63c7b8058d274dbe0afefdb51277125eaf6ae..ddcaa060f4242e835cfc42c784fde95e0a7e456d 100644 (file)
@@ -35,7 +35,7 @@ if (WITH_CXX)
   set (NLOPT_SUFFIX _cxx)\r
 endif ()\r
 \r
-if (WITH_CXX OR BUILD_PYTHON)\r
+if (WITH_CXX OR BUILD_PYTHON OR BUILD_GUILE OR BUILD_OCTAVE)\r
   enable_language (CXX)\r
 endif ()\r
 \r
@@ -70,6 +70,8 @@ include (CheckIncludeFiles)
 include (CheckFunctionExists)\r
 include (CheckTypeSize)\r
 include (CheckCCompilerFlag)\r
+include (CheckCXXSymbolExists)\r
+include (CheckCXXCompilerFlag)\r
 \r
 #==============================================================================\r
 # COMPILATION CHECKINGS and CONFIGURATION GENERATION\r
@@ -132,6 +134,16 @@ if (WITH_THREADLOCAL AND NOT DEFINED HAVE_THREAD_LOCAL_STORAGE)
   endforeach()\r
 endif ()\r
 \r
+if (WITH_CXX OR BUILD_PYTHON OR BUILD_GUILE OR BUILD_OCTAVE)\r
+  check_cxx_symbol_exists (_LIBCPP_VERSION string SYSTEM_HAS_LIBCPP)\r
+  if (SYSTEM_HAS_LIBCPP)\r
+    check_cxx_compiler_flag ("-std=c++11" SUPPORTS_STDCXX11)\r
+    if (SUPPORTS_STDCXX11)\r
+      set (CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}")\r
+    endif ()\r
+  endif ()\r
+endif ()\r
+\r
 #==============================================================================\r
 # version\r
 #==============================================================================\r
@@ -249,7 +261,7 @@ if (BUILD_PYTHON)
   find_package (NumPy)\r
 endif ()\r
 \r
-if (PYTHONINTERP_FOUND)\r
+if (NOT DEFINED INSTALL_PYTHON_DIR AND PYTHONINTERP_FOUND)\r
   execute_process ( COMMAND ${PYTHON_EXECUTABLE} -c "from distutils import sysconfig; print(sysconfig.get_python_lib(plat_specific=True, prefix='${CMAKE_INSTALL_PREFIX}'))"\r
                     OUTPUT_VARIABLE _ABS_PYTHON_MODULE_PATH\r
                     OUTPUT_STRIP_TRAILING_WHITESPACE )\r
@@ -257,7 +269,7 @@ if (PYTHONINTERP_FOUND)
   get_filename_component (_ABS_PYTHON_MODULE_PATH ${_ABS_PYTHON_MODULE_PATH} ABSOLUTE)\r
   file (RELATIVE_PATH _REL_PYTHON_MODULE_PATH ${CMAKE_INSTALL_PREFIX} ${_ABS_PYTHON_MODULE_PATH})\r
 \r
-  set (PYTHON_MODULE_PATH ${_REL_PYTHON_MODULE_PATH})\r
+  set (INSTALL_PYTHON_DIR ${_REL_PYTHON_MODULE_PATH})\r
 \r
 endif ()\r
 \r