| | |
| |
|
| | |
| | |
| | |
| | |
| | function(PNNXProbeForPyTorchInstall) |
| | if(Torch_ROOT) |
| | message(STATUS "Using cached Torch root = ${Torch_ROOT}") |
| | elseif(Torch_INSTALL_DIR) |
| | message(STATUS "Using cached Torch install dir = ${Torch_INSTALL_DIR}") |
| | set(Torch_DIR "${Torch_INSTALL_DIR}/share/cmake/Torch" CACHE STRING "Torch dir" FORCE) |
| | else() |
| | |
| | find_package (Python3) |
| | message(STATUS "Checking for PyTorch using ${Python3_EXECUTABLE} ...") |
| | execute_process( |
| | COMMAND "${Python3_EXECUTABLE}" |
| | -c "import os;import torch;print(torch.utils.cmake_prefix_path, end='')" |
| | WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} |
| | RESULT_VARIABLE PYTORCH_STATUS |
| | OUTPUT_VARIABLE PYTORCH_PACKAGE_DIR) |
| | if(NOT PYTORCH_STATUS EQUAL "0") |
| | message(STATUS "Unable to 'import torch' with ${Python3_EXECUTABLE} (fallback to explicit config)") |
| | return() |
| | endif() |
| | message(STATUS "Found PyTorch installation at ${PYTORCH_PACKAGE_DIR}") |
| |
|
| | set(Torch_ROOT "${PYTORCH_PACKAGE_DIR}" CACHE STRING |
| | "Torch configure directory" FORCE) |
| | endif() |
| | endfunction() |
| |
|