diff --git a/CMakeLists.txt b/CMakeLists.txt index 234a10f9a..aee0045ce 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -132,9 +132,18 @@ include_directories(${LLVM_INCLUDE_DIRS}) # Python module if(TRITON_BUILD_PYTHON_MODULE) message(STATUS "Adding Python module") - set(PYTHON_SRC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/python/src) - include_directories("." ${PYTHON_SRC_PATH} ${PYTHON_INCLUDE_DIRS}) - link_directories(${PYTHON_LINK_DIRS}) + if (PYTHON_INCLUDE_DIRS) + set(PYTHON_SRC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/python/src) + include_directories("." ${PYTHON_SRC_PATH} ${PYTHON_INCLUDE_DIRS}) + link_directories(${PYTHON_LINK_DIRS}) + else() + find_package(Python3 REQUIRED COMPONENTS Development) + set(PYTHON_SRC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/python/src) + include_directories("." ${PYTHON_SRC_PATH} ${Python3_INCLUDE_DIRS}) + link_directories(${Python3_LIBRARY_DIRS}) + link_libraries(${Python3_LIBRARIES}) + add_link_options(${Python3_LINK_OPTIONS}) + endif() set(PYTHON_SRC ${PYTHON_SRC_PATH}/main.cc ${PYTHON_SRC_PATH}/triton.cc) endif()