Skip to content

Commit 53ad6d8

Browse files
ammallyarahulc-gh
authored andcommitted
Patch back from rocm-systems
1 parent 48df79e commit 53ad6d8

18 files changed

Lines changed: 418 additions & 1132 deletions

File tree

CONTRIBUTING.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ If you want to contribute to our documentation, refer to {doc}`Contribute to ROC
55

66
## Issue Discussion ##
77

8-
Please use the [GitHub Issue](https://github.com/ROCm/HIP/issues) tab to notify us of issues.
8+
Please use the [rocm-systems Issues](https://github.com/ROCm/rocm-systems/issues) tab to notify us of issues. In the `rocm-systems` repo, issues
9+
related to HIP should be labeled accordingly to ensure they receive the proper attention.
910

1011
* Use your best judgement for issue creation. If your issue is already listed, upvote the issue and
1112
comment or post to provide additional details, such as how you reproduced this issue.

cmake/FindHIP.cmake

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -304,9 +304,17 @@ elseif("${HIP_COMPILER}" STREQUAL "clang")
304304
endif()
305305

306306
# Set the CMake Flags to use the HIP-Clang Compiler.
307-
set(CMAKE_HIP_CREATE_SHARED_LIBRARY "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
308-
set(CMAKE_HIP_CREATE_SHARED_MODULE "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <LINK_LIBRARIES> -shared" )
309-
set(CMAKE_HIP_LINK_EXECUTABLE "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
307+
if(WIN32)
308+
# On Windows, use CMake's -E env to set HIP_CLANG_PATH instead of a wrapper script
309+
set(CMAKE_HIP_CREATE_SHARED_LIBRARY "\"${CMAKE_COMMAND}\" -E env HIP_CLANG_PATH=${HIP_CLANG_PATH} \"${HIP_HIPCC_EXECUTABLE}\" ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
310+
set(CMAKE_HIP_CREATE_SHARED_MODULE "\"${CMAKE_COMMAND}\" -E env HIP_CLANG_PATH=${HIP_CLANG_PATH} \"${HIP_HIPCC_EXECUTABLE}\" ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <LINK_LIBRARIES> -shared" )
311+
set(CMAKE_HIP_LINK_EXECUTABLE "\"${CMAKE_COMMAND}\" -E env HIP_CLANG_PATH=${HIP_CLANG_PATH} \"${HIP_HIPCC_EXECUTABLE}\" ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
312+
else()
313+
# On Linux, use the hipcc_cmake_linker_helper script
314+
set(CMAKE_HIP_CREATE_SHARED_LIBRARY "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
315+
set(CMAKE_HIP_CREATE_SHARED_MODULE "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <LINK_LIBRARIES> -shared" )
316+
set(CMAKE_HIP_LINK_EXECUTABLE "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
317+
endif()
310318

311319
if("${HIP_RUNTIME}" STREQUAL "rocclr")
312320
if(TARGET host)
@@ -708,7 +716,13 @@ macro(HIP_ADD_EXECUTABLE hip_target)
708716
endif() # HIP_CLANG_INSTALL_DIR Check
709717
endif()
710718

711-
set(CMAKE_HIP_LINK_EXECUTABLE "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
719+
if(WIN32)
720+
# On Windows, use CMake's -E env to set HIP_CLANG_PATH instead of a wrapper script
721+
set(CMAKE_HIP_LINK_EXECUTABLE "\"${CMAKE_COMMAND}\" -E env HIP_CLANG_PATH=${HIP_CLANG_PATH} \"${HIP_HIPCC_EXECUTABLE}\" ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
722+
else()
723+
# On Linux, use the hipcc_cmake_linker_helper script
724+
set(CMAKE_HIP_LINK_EXECUTABLE "${HIP_HIPCC_CMAKE_LINKER_HELPER} ${HIP_CLANG_PATH} ${HIP_CLANG_PARALLEL_BUILD_LINK_OPTIONS} <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
725+
endif()
712726
else()
713727
set(CMAKE_HIP_LINK_EXECUTABLE "${HIP_HIPCC_CMAKE_LINKER_HELPER} <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
714728
endif()

0 commit comments

Comments
 (0)