2
0

SWDEV-269027 - Add HIP Clang repo, branch, and patch level to HIP cmake config

Adding hip-config.cmake variables HIP_CLANG_REPO,
HIP_CLANG_BRANCH, and HIP_CLANG_PATCH_LEVEL. These
are extracted from either hipcc or clang++ --version
output.

Change-Id: I5386b71160d592d95d1867e0b563e91514b1b84b
Este cometimento está contido em:
Aaron En Ye Shi
2021-06-15 22:08:20 +00:00
ascendente b06b1689fc
cometimento abebb6fe21
+15 -4
Ver ficheiro
@@ -104,11 +104,11 @@ if(HIP_COMPILER STREQUAL "clang")
if(NOT HIP_CXX_COMPILER)
set(HIP_CXX_COMPILER ${CMAKE_CXX_COMPILER})
endif()
execute_process(COMMAND ${HIP_CXX_COMPILER} --version
OUTPUT_STRIP_TRAILING_WHITESPACE
OUTPUT_VARIABLE HIP_CXX_COMPILER_VERSION_OUTPUT)
if(HIP_CXX_COMPILER MATCHES ".*hipcc")
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]*([^\n]*)")
if(HIP_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\\+\\+")
@@ -127,6 +127,17 @@ if(HIP_COMPILER STREQUAL "clang")
set(GPU_SUPPORTED_TARGETS "gfx701;gfx801;gfx802;gfx803;gfx900;gfx906;gfx908;gfx90a;gfx1010;gfx1011;gfx1012;gfx1030;gfx1031")
set(GPU_TARGETS "${GPU_DEFAULT_TARGETS}" CACHE STRING "GPU targets to compile for")
set_property(CACHE GPU_TARGETS PROPERTY STRINGS ${GPU_SUPPORTED_TARGETS})
# Capture the repo, branch and patch level details of the HIP CXX Compiler.
# Ex. clang version 13.0.0 (https://github.com/ROCm-Developer-Tools/HIP main 12345 COMMIT_HASH)
# HIP_CLANG_REPO: https://github.com/ROCm-Developer-Tools/HIP
# HIP_CLANG_BRANCH: main
# HIP_CLANG_PATCH_LEVEL: 12345
if(${HIP_CXX_COMPILER_VERSION_OUTPUT} MATCHES "clang version [0-9]+\\.[0-9]+\\.[0-9]+ \\(([^ \n]*) ([^ \n]*) ([^ \n]*)")
set(HIP_CLANG_REPO ${CMAKE_MATCH_1})
set(HIP_CLANG_BRANCH ${CMAKE_MATCH_2})
set(HIP_CLANG_PATCH_LEVEL ${CMAKE_MATCH_3})
endif()
endif()
if(NOT WIN32)