diff --git a/CMake/FindNumpy.cmake b/CMake/FindNumpy.cmake new file mode 100644 index 0000000000..acf70ebad9 --- /dev/null +++ b/CMake/FindNumpy.cmake @@ -0,0 +1,32 @@ +# Variables set by this script +# NUMPY_FOUND +# NUMPY_INCLUDE_DIR + +find_package(PackageHandleStandardArgs) + +# numpy dir defined, own numpy deployed in python runtime +if(DEFINED Numpy_DIR AND EXISTS ${Numpy_DIR}) + if(EXISTS ${Numpy_DIR}/core/include) + set(NUMPY_INCLUDE_DIR ${Numpy_DIR}/core/include) + MESSAGE("NUMPY: " ${NUMPY_INCLUDE_DIR}) + endif() +else() #numpy dir not defined + execute_process ( + COMMAND ${PYTHON_EXECUTABLE} -c "import os; os.environ['DISTUTILS_USE_SDK']='1'; import numpy.distutils; print numpy.distutils.misc_util.get_numpy_include_dirs()[0]" + OUTPUT_VARIABLE output + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + + if(DEFINED output AND EXISTS ${output} ) + set (NUMPY_INCLUDE_DIR ${output}) + endif() +endif() + +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Numpy DEFAULT_MSG NUMPY_INCLUDE_DIR) + +MESSAGE("found: " ${NUMPY_FOUND}) + +MARK_AS_ADVANCED ( + NUMPY_INCLUDE_DIR +) + diff --git a/CMake/PackageDepends/MITK_Numpy_Config.cmake b/CMake/PackageDepends/MITK_Numpy_Config.cmake index f2243e1c04..f48be0e8c0 100644 --- a/CMake/PackageDepends/MITK_Numpy_Config.cmake +++ b/CMake/PackageDepends/MITK_Numpy_Config.cmake @@ -1,4 +1,5 @@ -if(NOT MITK_USE_SYSTEM_PYTHON) - set(Numpy_INCLUDE_DIR ${Numpy_DIR}/core/include) - list(APPEND ALL_INCLUDE_DIRECTORIES ${Numpy_INCLUDE_DIR}) +if(MITK_USE_Python) + find_package(Numpy REQUIRED) + MESSAGE("NUMPY2: " ${NUMPY_INCLUDE_DIR}) + list(APPEND ALL_INCLUDE_DIRECTORIES ${NUMPY_INCLUDE_DIR}) endif()