Update to the REGEX in hip-config.cmake

- Matching the output "hipcc --version" for Installed directory
  to get the llvm compiler path, wasnt done properly.
- Adding fallback for HIP_CLANG_ROOT on ROCM_PATH if defined in env
- Changed the mode of get_filename_component to DIRECTORY

Signed-off-by: Pruthvi Madugundu <pruthvi.madugundu@amd.com>
Change-Id: Ia38e234f34cabb5b419906c7094b327083292b0e


[ROCm/hip commit: ff3cbd1778]
This commit is contained in:
Pruthvi Madugundu
2020-09-24 11:07:32 -07:00
committato da Pruthvi Madugundu
parent e23c2e2065
commit b786f545bf
+15 -13
Vedi File
@@ -54,7 +54,18 @@ set_and_check( hip_BIN_INSTALL_DIR "@PACKAGE_BIN_INSTALL_DIR@" )
set_and_check(hip_HIPCC_EXECUTABLE "${hip_BIN_INSTALL_DIR}/hipcc")
set_and_check(hip_HIPCONFIG_EXECUTABLE "${hip_BIN_INSTALL_DIR}/hipconfig")
# set a default path for ROCM_PATH
if(NOT DEFINED ROCM_PATH)
set(ROCM_PATH /opt/rocm)
endif()
#If HIP isnot installed under ROCm, need this to find HSA assuming HSA is under ROCm
if(DEFINED ENV{ROCM_PATH})
set(ROCM_PATH "$ENV{ROCM_PATH}")
endif()
if(HIP_COMPILER STREQUAL "clang")
set(HIP_CLANG_ROOT "${ROCM_PATH}/llvm")
if(NOT HIP_CXX_COMPILER)
set(HIP_CXX_COMPILER ${CMAKE_CXX_COMPILER})
endif()
@@ -62,16 +73,12 @@ if(HIP_COMPILER STREQUAL "clang")
execute_process(COMMAND ${HIP_CXX_COMPILER} --version
OUTPUT_STRIP_TRAILING_WHITESPACE
OUTPUT_VARIABLE HIP_CLANG_CXX_COMPILER_VERSION_OUTPUT)
if(HIP_CLANG_CXX_COMPILER_VERSION_OUTPUT MATCHES "InstalledDir:[\t\r\n][\t\r\n]*([^\t\r\n])")
set(HIP_CLANG_ROOT ${CMAKE_MATCH_1})
else()
set(HIP_CLANG_ROOT /opt/rocm/llvm)
if(HIP_CLANG_CXX_COMPILER_VERSION_OUTPUT MATCHES "InstalledDir:[ \t]*([^\n]*)")
get_filename_component(HIP_CLANG_ROOT "${CMAKE_MATCH_1}" DIRECTORY)
endif()
elseif (HIP_CXX_COMPILER MATCHES ".*clang\\+\\+")
get_filename_component(HIP_CLANG_ROOT "${HIP_CXX_COMPILER}" PATH)
get_filename_component(HIP_CLANG_ROOT "${HIP_CLANG_ROOT}" PATH)
else()
set(HIP_CLANG_ROOT /opt/rocm/llvm)
get_filename_component(HIP_CLANG_ROOT "${HIP_CXX_COMPILER}" DIRECTORY)
get_filename_component(HIP_CLANG_ROOT "${HIP_CLANG_ROOT}" DIRECTORY)
endif()
file(GLOB HIP_CLANG_INCLUDE_SEARCH_PATHS ${HIP_CLANG_ROOT}/lib/clang/*/include)
find_path(HIP_CLANG_INCLUDE_PATH stddef.h
@@ -89,11 +96,6 @@ find_dependency(amd_comgr)
include( "${CMAKE_CURRENT_LIST_DIR}/hip-targets.cmake" )
#If HIP isnot installed under ROCm, need this to find HSA assuming HSA is under ROCm
if( DEFINED ENV{ROCM_PATH} )
set(ROCM_PATH "$ENV{ROCM_PATH}")
endif()
#Using find_dependecy to locate the dependency for the packagaes
#This makes the cmake generated file xxxx-targets to supply the linker libraries
# without worrying other transitive dependencies