From 551856ed320dcab6bc2f9b985783ad32506d79ab Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Mon, 14 Dec 2020 12:29:34 +0100 Subject: Revert "Fix several issues with handling of numpy in CMake." This reverts commit 5d570c875eda8fb9aa3635f7f4edac0dc1eaedc8. Buildbots are still borken, need more time to investigate. --- CMakeLists.txt | 15 +++++++------ build_files/cmake/macros.cmake | 40 ----------------------------------- extern/audaspace/blender_config.cmake | 2 +- extern/mantaflow/CMakeLists.txt | 7 +++--- 4 files changed, 13 insertions(+), 51 deletions(-) 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 -- cgit v1.2.3