Commit 7aebdfc4 authored by Mike Urbach's avatar Mike Urbach
Browse files

[mlir] Limit Python dependency to Development.Module when possible.

After CMake 3.18, we are able to limit the scope of the
find_package(Python3 ...) search to just Development.Module. Searching
for Development will fail in manylinux builds, and isn't necessary
since we are not embedding the Python interpreter. For more information, see:
https://pybind11.readthedocs.io/en/stable/compiling.html#findpython-mode

Reviewed By: stellaraccident

Differential Revision: https://reviews.llvm.org/D111383
parent 82cd8b81
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -112,8 +112,17 @@ set(MLIR_BINDINGS_PYTHON_LOCK_VERSION 1 CACHE BOOL

if(MLIR_ENABLE_BINDINGS_PYTHON)
  include(MLIRDetectPythonEnv)
  # After CMake 3.18, we are able to limit the scope of the search to just
  # Development.Module. Searching for Development will fail in manylinux builds,
  # and isn't necessary since we are not embedding the Python interpreter.
  # See https://pybind11.readthedocs.io/en/stable/compiling.html#findpython-mode
  if(${CMAKE_VERSION} VERSION_LESS "3.18.0")
    set(_python_development_component Development)
  else()
    set(_python_development_component Development.Module)
  endif()
  find_package(Python3 ${LLVM_MINIMUM_PYTHON_VERSION}
    COMPONENTS Interpreter Development NumPy REQUIRED)
    COMPONENTS Interpreter ${_python_development_component} NumPy REQUIRED)
  message(STATUS "Found python include dirs: ${Python3_INCLUDE_DIRS}")
  message(STATUS "Found python libraries: ${Python3_LIBRARIES}")
  message(STATUS "Found numpy v${Python3_NumPy_VERSION}: ${Python3_NumPy_INCLUDE_DIRS}")