Skip to content

Commit

Permalink
Remove virtualenv build from dependencies (ROCm#2699)
Browse files Browse the repository at this point in the history
* Remove virtualenv build from dependencies

* Rename ROCM_BUILD_DOCS to BUILD_DOCS
  • Loading branch information
matyas-streamhpc authored Dec 18, 2023
1 parent eeb96eb commit 3e1a87a
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 57 deletions.
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ cmake_minimum_required(VERSION 3.18.0)

project(ROCm VERSION 5.7.1 LANGUAGES NONE)

option(ROCM_BUILD_DOCS "Build ROCm documentation" ON)
option(BUILD_DOCS "Build ROCm documentation" ON)

include(GNUInstallDirs)

Expand All @@ -35,6 +35,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules")
include(Dependencies)

# Build docs
if(ROCM_BUILD_DOCS)
if(BUILD_DOCS)
add_subdirectory(docs)
endif()
56 changes: 1 addition & 55 deletions cmake/Modules/Dependencies.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@

include(FetchContent)

if(ROCM_BUILD_DOCS)
if(BUILD_DOCS)
find_package(ROCM 0.11.0 CONFIG QUIET PATHS "${ROCM_PATH}") # First version with Sphinx doc gen improvement
if(NOT ROCM_FOUND)
message(STATUS "ROCm CMake not found. Fetching...")
Expand All @@ -44,58 +44,4 @@ if(ROCM_BUILD_DOCS)
else()
find_package(ROCM 0.11.0 CONFIG REQUIRED PATHS "${ROCM_PATH}")
endif()

if(Python_FIND_VIRTUALENV STREQUAL "ONLY" AND NOT DEFINED ENV{VIRTUAL_ENV})
if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/.venv")
message(STATUS "Python virtualenv use requested but not found. Fetching...")
find_program(BOOTSTRAP_PYTHON_EXE python3 REQUIRED)
execute_process(
COMMAND "${BOOTSTRAP_PYTHON_EXE}" -m pip install --user virtualenv
OUTPUT_QUIET
COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND "${BOOTSTRAP_PYTHON_EXE}" -m virtualenv "${CMAKE_CURRENT_BINARY_DIR}/.venv"
OUTPUT_QUIET
COMMAND_ERROR_IS_FATAL ANY
)
endif()
set(ENV{VIRTUAL_ENV} "${CMAKE_CURRENT_BINARY_DIR}/.venv")

if(WIN32)
set(ENV{PATH} "${CMAKE_CURRENT_BINARY_DIR}/.venv/Scripts;$ENV{PATH}")
else()
set(ENV{PATH} "${CMAKE_CURRENT_BINARY_DIR}/.venv/bin:$ENV{PATH}")
endif()

find_package(Python REQUIRED)

# TODO: shortcircuit if installed
execute_process(
COMMAND "${Python_EXECUTABLE}" -m pip install pip-tools
OUTPUT_QUIET
COMMAND_ERROR_IS_FATAL ANY
)

list(APPEND CMAKE_CONFIGURE_DEPENDS "${PROJECT_SOURCE_DIR}/docs/sphinx/requirements.in")
file(MAKE_DIRECTORY "$ENV{VIRTUAL_ENV}/usr/share/${PROJECT_NAME}")
if("${PROJECT_SOURCE_DIR}/docs/sphinx/requirements.in" IS_NEWER_THAN "$ENV{VIRTUAL_ENV}/usr/share/${PROJECT_NAME}/requirements.txt")
execute_process(
COMMAND "${Python_EXECUTABLE}" -m piptools compile
"${PROJECT_SOURCE_DIR}/docs/sphinx/requirements.in"
--output-file
"$ENV{VIRTUAL_ENV}/usr/share/${PROJECT_NAME}/requirements.txt"
OUTPUT_QUIET
ERROR_QUIET
COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND "${Python_EXECUTABLE}" -m piptools sync
"$ENV{VIRTUAL_ENV}/usr/share/${PROJECT_NAME}/requirements.txt"
OUTPUT_QUIET
ERROR_QUIET
COMMAND_ERROR_IS_FATAL ANY
)
endif()
endif()
endif()

0 comments on commit 3e1a87a

Please sign in to comment.