[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41477] trunk/blender/build_files/cmake/ Modules/FindPythonLibsUnix.cmake: cmake could ignore defines for python lib /include passed from the command line if both weren't defined.

Campbell Barton ideasman42 at gmail.com
Wed Nov 2 22:35:01 CET 2011


Revision: 41477
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41477
Author:   campbellbarton
Date:     2011-11-02 21:35:00 +0000 (Wed, 02 Nov 2011)
Log Message:
-----------
cmake could ignore defines for python lib/include passed from the command line if both weren't defined.

Modified Paths:
--------------
    trunk/blender/build_files/cmake/Modules/FindPythonLibsUnix.cmake

Modified: trunk/blender/build_files/cmake/Modules/FindPythonLibsUnix.cmake
===================================================================
--- trunk/blender/build_files/cmake/Modules/FindPythonLibsUnix.cmake	2011-11-02 20:56:52 UTC (rev 41476)
+++ trunk/blender/build_files/cmake/Modules/FindPythonLibsUnix.cmake	2011-11-02 21:35:00 UTC (rev 41477)
@@ -44,8 +44,19 @@
 MARK_AS_ADVANCED(PYTHON_LINKFLAGS)
 
 
+# if the user passes these defines as args, we dont want to overwrite
+SET(_IS_INC_DEF OFF)
+SET(_IS_LIB_DEF OFF)
+IF(DEFINED PYTHON_INCLUDE_DIR)
+  SET(_IS_INC_DEF ON)
+ENDIF()
+IF(DEFINED PYTHON_LIBRARY)
+  SET(_IS_LIB_DEF ON)
+ENDIF()
+
+
 # only search for the dirs if we havn't already
-IF((NOT DEFINED PYTHON_INCLUDE_DIR) OR (NOT DEFINED PYTHON_LIBRARY))
+IF((NOT _IS_INC_DEF) OR (NOT _IS_LIB_DEF))
 
   SET(_python_ABI_FLAGS
     "m;mu;u; "    # release
@@ -66,30 +77,38 @@
     #ENDIF()
     STRING(REPLACE " " "" _CURRENT_ABI_FLAGS ${_CURRENT_ABI_FLAGS})
 
-    FIND_PATH(PYTHON_INCLUDE_DIR
-      NAMES
-        Python.h
-      HINTS
-        ${_python_SEARCH_DIRS}
-      PATH_SUFFIXES
-        include/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
-    )
+    IF(NOT DEFINED PYTHON_INCLUDE_DIR)
+      FIND_PATH(PYTHON_INCLUDE_DIR
+        NAMES
+          Python.h
+        HINTS
+          ${_python_SEARCH_DIRS}
+        PATH_SUFFIXES
+          include/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
+      )
+    ENDIF()
 
-    FIND_LIBRARY(PYTHON_LIBRARY
-      NAMES
-        "python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}"
-      HINTS
-        ${_python_SEARCH_DIRS}
-      PATH_SUFFIXES
-        lib64 lib
-    )
+    IF(NOT DEFINED PYTHON_LIBRARY)
+      FIND_LIBRARY(PYTHON_LIBRARY
+        NAMES
+          "python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}"
+        HINTS
+          ${_python_SEARCH_DIRS}
+        PATH_SUFFIXES
+          lib64 lib
+      )
+    ENDIF()
 
     IF(PYTHON_LIBRARY AND PYTHON_INCLUDE_DIR)
       break()
     ELSE()
       # ensure we dont find values from 2 different ABI versions
-      UNSET(PYTHON_INCLUDE_DIR CACHE)
-      UNSET(PYTHON_LIBRARY CACHE)
+      IF(NOT _IS_INC_DEF)
+        UNSET(PYTHON_INCLUDE_DIR CACHE)
+      ENDIF()
+      IF(NOT _IS_LIB_DEF)
+        UNSET(PYTHON_LIBRARY CACHE)
+      ENDIF()
     ENDIF()
   ENDFOREACH()
 
@@ -100,6 +119,9 @@
   UNSET(_python_SEARCH_DIRS)
 ENDIF()
 
+UNSET(_IS_INC_DEF)
+UNSET(_IS_LIB_DEF)
+
 # handle the QUIETLY and REQUIRED arguments and SET PYTHONLIBSUNIX_FOUND to TRUE IF 
 # all listed variables are TRUE
 INCLUDE(FindPackageHandleStandardArgs)




More information about the Bf-blender-cvs mailing list