[Bf-blender-cvs] [551856ed320] master: Revert "Fix several issues with handling of numpy in CMake."

Bastien Montagne noreply at git.blender.org
Mon Dec 14 12:30:02 CET 2020


Commit: 551856ed320dcab6bc2f9b985783ad32506d79ab
Author: Bastien Montagne
Date:   Mon Dec 14 12:29:34 2020 +0100
Branches: master
https://developer.blender.org/rB551856ed320dcab6bc2f9b985783ad32506d79ab

Revert "Fix several issues with handling of numpy in CMake."

This reverts commit 5d570c875eda8fb9aa3635f7f4edac0dc1eaedc8.

Buildbots are still borken, need more time to investigate.

===================================================================

M	CMakeLists.txt
M	build_files/cmake/macros.cmake
M	extern/audaspace/blender_config.cmake
M	extern/mantaflow/CMakeLists.txt

===================================================================

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 71186a58281..0d7cf4e325c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -349,16 +349,14 @@ endif()
 option(WITH_PYTHON_INSTALL       "Copy system python into the blender install folder" ON)
 if(WIN32 OR APPLE)
   # Windows and macOS have this bundled with Python libraries.
-elseif(WITH_PYTHON_INSTALL OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE) OR WITH_MOD_FLUID)
-  option(WITH_PYTHON_NUMPY "Include NumPy in Blender (used by Audaspace and Mantaflow)"  ON)
-
+elseif(WITH_PYTHON_INSTALL OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
   set(PYTHON_NUMPY_PATH            "" CACHE PATH "Path to python site-packages or dist-packages containing 'numpy' module")
   mark_as_advanced(PYTHON_NUMPY_PATH)
-  set(PYTHON_NUMPY_INCLUDE_DIRS    "" CACHE PATH "Path to the include directory of the NumPy module")
+  set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
   mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
 endif()
 if(WITH_PYTHON_INSTALL)
-  option(WITH_PYTHON_INSTALL_NUMPY "Copy system NumPy into the blender install folder"  ON)
+  option(WITH_PYTHON_INSTALL_NUMPY "Copy system numpy into the blender install folder"  ON)
 
   if(UNIX AND NOT APPLE)
     option(WITH_PYTHON_INSTALL_REQUESTS "Copy system requests into the blender install folder" ON)
@@ -1623,9 +1621,12 @@ if(WITH_PYTHON)
 
   if(WIN32 OR APPLE)
     # Windows and macOS have this bundled with Python libraries.
-  elseif((WITH_PYTHON_INSTALL AND WITH_PYTHON_INSTALL_NUMPY) OR WITH_PYTHON_NUMPY)
+  elseif((WITH_PYTHON_INSTALL AND WITH_PYTHON_INSTALL_NUMPY) OR (WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE))
     if(("${PYTHON_NUMPY_PATH}" STREQUAL "") OR (${PYTHON_NUMPY_PATH} MATCHES NOTFOUND))
-      find_python_package(numpy "core/include")
+      find_python_package(numpy)
+      unset(PYTHON_NUMPY_INCLUDE_DIRS CACHE)
+      set(PYTHON_NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_PATH}/numpy/core/include CACHE PATH "Path to the include directory of the numpy module")
+      mark_as_advanced(PYTHON_NUMPY_INCLUDE_DIRS)
     endif()
   endif()
 
diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake
index aeedcf30c31..202b44f611c 100644
--- a/build_files/cmake/macros.cmake
+++ b/build_files/cmake/macros.cmake
@@ -1139,7 +1139,6 @@ endfunction()
 
 function(find_python_package
   package
-  relative_include_dir
   )
 
   string(TOUPPER ${package} _upper_package)
@@ -1171,10 +1170,7 @@ function(find_python_package
         dist-packages
         vendor-packages
        NO_DEFAULT_PATH
-       DOC
-         "Path to python site-packages or dist-packages containing '${package}' module"
     )
-    mark_as_advanced(PYTHON_${_upper_package}_PATH)
 
     if(NOT EXISTS "${PYTHON_${_upper_package}_PATH}")
       message(WARNING
@@ -1192,42 +1188,6 @@ function(find_python_package
       set(WITH_PYTHON_INSTALL_${_upper_package} OFF PARENT_SCOPE)
     else()
       message(STATUS "${package} found at '${PYTHON_${_upper_package}_PATH}'")
-      
-      if(NOT "${relative_include_dir}" STREQUAL "")
-        unset(PYTHON_${_upper_package}_INCLUDE_DIRS CACHE)
-        find_path(PYTHON_${_upper_package}_INCLUDE_DIRS
-          NAMES
-            "${package}/${relative_include_dir}"
-          HINTS
-            "${PYTHON_LIBPATH}/"
-            "${PYTHON_LIBPATH}/python${PYTHON_VERSION}/"
-            "${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/"
-          PATH_SUFFIXES
-            "site-packages/"
-            "dist-packages/"
-            "vendor-packages/"
-          NO_DEFAULT_PATH
-          DOC
-            "Path to python site-packages or dist-packages containing '${package}' module header files"
-        )
-        mark_as_advanced(PYTHON_${_upper_package}_INCLUDE_DIRS)
-
-        if(NOT EXISTS "${PYTHON_${_upper_package}_INCLUDE_DIRS}")
-          message(WARNING
-            "Python package '${package}' include dir path could not be found in:\n"
-            "'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${package}/${relative_include_dir}', "
-            "'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/site-packages/${package}/${relative_include_dir}', "
-            "'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/dist-packages/${package}/${relative_include_dir}', "
-            "'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/dist-packages/${package}/${relative_include_dir}', "
-            "'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${package}/${relative_include_dir}', "
-            "'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${package}/${relative_include_dir}', "
-            "\n"
-            "The 'WITH_PYTHON_${_upper_package}' option will be disabled.\n"
-            "The build will be usable, only add-ons that depend on this package won't be functional."
-          )
-          set(WITH_PYTHON_${_upper_package} OFF PARENT_SCOPE)
-        endif()
-      endif()
     endif()
   endif()
 endfunction()
diff --git a/extern/audaspace/blender_config.cmake b/extern/audaspace/blender_config.cmake
index 12810e2b044..1f8f85b9868 100644
--- a/extern/audaspace/blender_config.cmake
+++ b/extern/audaspace/blender_config.cmake
@@ -24,6 +24,6 @@ set(JACK_FOUND ${WITH_JACK})
 set(LIBSNDFILE_FOUND ${WITH_CODEC_SNDFILE})
 set(OPENAL_FOUND ${WITH_OPENAL})
 set(PYTHONLIBS_FOUND TRUE)
-set(NUMPY_FOUND ${WITH_PYTHON_NUMPY})
+set(NUMPY_FOUND TRUE)
 set(NUMPY_INCLUDE_DIRS ${PYTHON_NUMPY_INCLUDE_DIRS})
 set(SDL_FOUND ${WITH_SDL})
diff --git a/extern/mantaflow/CMakeLists.txt b/extern/mantaflow/CMakeLists.txt
index ccf272650e3..ee155ee8636 100644
--- a/extern/mantaflow/CMakeLists.txt
+++ b/extern/mantaflow/CMakeLists.txt
@@ -85,7 +85,7 @@ if(WIN32)
   add_definitions(-D_USE_MATH_DEFINES)
 endif()
 
-if(WITH_MANTA_NUMPY AND WITH_PYTHON_NUMPY)
+if(WITH_MANTA_NUMPY AND WITH_PYTHON_INSTALL_NUMPY)
   add_definitions(-DNUMPY=1)
 endif()
 
@@ -109,7 +109,7 @@ set(INC_SYS
   ${ZLIB_INCLUDE_DIRS}
 )
 
-if(WITH_MANTA_NUMPY AND WITH_PYTHON_NUMPY)
+if(WITH_MANTA_NUMPY AND WITH_PYTHON_INSTALL_NUMPY)
   list(APPEND INC_SYS
     ${PYTHON_NUMPY_INCLUDE_DIRS}
   )
@@ -255,7 +255,8 @@ if(WITH_MANTA_DEPENDENCIES)
     ${MANTA_DEP}/cnpy/cnpy.h
   )
 endif()
-if(WITH_MANTA_NUMPY AND WITH_PYTHON_NUMPY)
+
+if(WITH_MANTA_NUMPY AND WITH_PYTHON_INSTALL_NUMPY)
   list(APPEND SRC
     ${MANTA_PP}/plugin/numpyconvert.cpp
     ${MANTA_PP}/plugin/tfplugins.cpp



More information about the Bf-blender-cvs mailing list