From 9ecff383b2e6e08e2be36aa72fae5d4c08bc45ad Mon Sep 17 00:00:00 2001 From: Jun Liu Date: Thu, 12 Sep 2024 10:45:56 -0700 Subject: [PATCH] Update cmakefile for python alternative path --- CMakeLists.txt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bf42b6aa15..bbd4cbc0cf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,18 +26,22 @@ set(version 1.1.0) project(composable_kernel VERSION ${version} LANGUAGES CXX HIP) include(CTest) +# Usage: for customized Python location cmake -DCK_USE_ALTERNATIVE_PYTHON="/opt/Python-3.8.13/bin/python3.8" +# CK Codegen requires dataclass which is added in Python 3.7 +# Python version 3.8 is required for general good practice as it is default for Ubuntu 20.04 if(NOT CK_USE_ALTERNATIVE_PYTHON) - find_package(Python3 3.6 COMPONENTS Interpreter REQUIRED) + find_package(Python3 3.8 COMPONENTS Interpreter REQUIRED) else() message("Using alternative python version") set(EXTRA_PYTHON_PATH) + # this is overly restrictive, we may need to be more flexible on the following string(REPLACE "/bin/python3.8" "" EXTRA_PYTHON_PATH "${CK_USE_ALTERNATIVE_PYTHON}") message("alternative python path is: ${EXTRA_PYTHON_PATH}") - find_package(Python3 3.6 COMPONENTS Interpreter REQUIRED) add_definitions(-DPython3_EXECUTABLE="${CK_USE_ALTERNATIVE_PYTHON}") set(Python3_EXECUTABLE "${CK_USE_ALTERNATIVE_PYTHON}") set(PYTHON_EXECUTABLE "${CK_USE_ALTERNATIVE_PYTHON}") set(ENV{LD_LIBRARY_PATH} "${EXTRA_PYTHON_PATH}/lib:$ENV{LD_LIBRARY_PATH}") + find_package(Python3 3.8 COMPONENTS Interpreter REQUIRED) endif() list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")