Find rocm-cmake before specifying targets
MODIFY
CMakeLists.txt
CMakeLists.txt
@@ -32,8 +32,15 @@ endif()
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE CACHE BOOL "Add paths to linker search and installed rpath")
-# Get dependencies
-include(cmake/Dependencies.cmake)
+# rocm-cmake contains common cmake code for rocm projects to help
+# setup and install
+find_package( ROCM CONFIG )
+include( ROCMSetupVersion )
+include( ROCMCreatePackage )
+include( ROCMInstallTargets )
+include( ROCMPackageConfigHelpers )
+include( ROCMInstallSymlinks )
+include( ROCMCheckTargetIds OPTIONAL )
# Detect compiler support for target ID
# This section is deprecated. Please use rocm_check_target_ids for future use.
@@ -98,6 +105,9 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror")
endif()
+# Get dependencies
+include(cmake/Dependencies.cmake)
+
# Setup VERSION
rocm_setup_version(VERSION "2.10.9")

MODIFY
cmake/Dependencies.cmake
cmake/Dependencies.cmake
@@ -60,39 +60,3 @@ if(BUILD_TEST)
)
find_package(GTest REQUIRED)
endif()
-
-# Find or download/install rocm-cmake project
-find_package(ROCM QUIET CONFIG PATHS /opt/rocm)
-if(NOT ROCM_FOUND)
- set(rocm_cmake_tag "master" CACHE STRING "rocm-cmake tag to download")
- file(
- DOWNLOAD https://github.com/RadeonOpenCompute/rocm-cmake/archive/${rocm_cmake_tag}.zip
- ${CMAKE_CURRENT_BINARY_DIR}/rocm-cmake-${rocm_cmake_tag}.zip
- STATUS rocm_cmake_download_status LOG rocm_cmake_download_log
- )
- list(GET rocm_cmake_download_status 0 rocm_cmake_download_error_code)
- if(rocm_cmake_download_error_code)
- message(FATAL_ERROR "Error: downloading "
- "https://github.com/RadeonOpenCompute/rocm-cmake/archive/${rocm_cmake_tag}.zip failed "
- "error_code: ${rocm_cmake_download_error_code} "
- "log: ${rocm_cmake_download_log} "
- )
- endif()
-
- execute_process(
- COMMAND ${CMAKE_COMMAND} -E tar xzf ${CMAKE_CURRENT_BINARY_DIR}/rocm-cmake-${rocm_cmake_tag}.zip
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- RESULT_VARIABLE rocm_cmake_unpack_error_code
- )
- if(rocm_cmake_unpack_error_code)
- message(FATAL_ERROR "Error: unpacking ${CMAKE_CURRENT_BINARY_DIR}/rocm-cmake-${rocm_cmake_tag}.zip failed")
- endif()
- find_package(ROCM REQUIRED CONFIG PATHS ${CMAKE_CURRENT_BINARY_DIR}/rocm-cmake-${rocm_cmake_tag})
-endif()
-
-include(ROCMSetupVersion)
-include(ROCMCreatePackage)
-include(ROCMInstallTargets)
-include(ROCMPackageConfigHelpers)
-include(ROCMInstallSymlinks)
-include(ROCMCheckTargetIds OPTIONAL)

Find rocm-cmake before specifying targets (#171)