Unverified Commit 4c66e7c0 authored by Bernardo Meurer's avatar Bernardo Meurer Committed by GitHub
Browse files

Merge pull request #190852 from Snektron/hip-config-fix

hip: fix hip-config.cmake
parents f77ac810 e3d748a9
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
, rocm-runtime
, rocm-thunk
, rocminfo
, substituteAll
, writeScript
, writeText
}:
@@ -37,6 +38,14 @@ let
      hash = "sha256-QaN666Rku2Tkio2Gm5/3RD8D5JgmCZLe0Yun1fGxa8U=";
    };

    patches = [
      (substituteAll {
        src = ./hip-config-paths.patch;
        inherit llvm;
        rocm_runtime = rocm-runtime;
      })
    ];

    # - fix bash paths
    # - fix path to rocm_agent_enumerator
    # - fix hcc path
@@ -121,6 +130,14 @@ stdenv.mkDerivation rec {
    rocminfo
  ];

  patches = [
    (substituteAll {
      src = ./hipamd-config-paths.patch;
      inherit llvm hip;
      rocm_runtime = rocm-runtime;
    })
  ];

  preConfigure = ''
    export HIP_CLANG_PATH=${clang}/bin
    export DEVICE_LIB_PATH=${rocm-device-libs}/lib
+36 −0
Original line number Diff line number Diff line
diff --git a/hip-lang-config.cmake.in b/hip-lang-config.cmake.in
index 1a72643a..7f35031f 100644
--- a/hip-lang-config.cmake.in
+++ b/hip-lang-config.cmake.in
@@ -72,8 +72,8 @@ get_filename_component(_IMPORT_PREFIX "${_DIR}/../../../" REALPATH)
 
 
 #need _IMPORT_PREFIX to be set #FILE_REORG_BACKWARD_COMPATIBILITY
-file(GLOB HIP_CLANG_INCLUDE_SEARCH_PATHS "${_IMPORT_PREFIX}/../llvm/lib/clang/*/include")
-file(GLOB HIP_CLANG_INCLUDE_SEARCH_PATHS_REORG "${_IMPORT_PREFIX}/llvm/lib/clang/*/include")
+file(GLOB HIP_CLANG_INCLUDE_SEARCH_PATHS "@llvm@/lib/clang/*/include")
+file(GLOB HIP_CLANG_INCLUDE_SEARCH_PATHS_REORG "@llvm@/lib/clang/*/include")
 find_path(HIP_CLANG_INCLUDE_PATH __clang_cuda_math.h
     HINTS ${HIP_CLANG_INCLUDE_SEARCH_PATHS}
           ${HIP_CLANG_INCLUDE_SEARCH_PATHS_REORG}
@@ -88,10 +88,7 @@ endif()
 #if HSA is not under ROCm then provide CMAKE_PREFIX_PATH=<HSA_PATH>
 find_path(HSA_HEADER hsa/hsa.h
   PATHS
-    "${_IMPORT_PREFIX}/../include" #FILE_REORG_BACKWARD_COMPATIBILITY
-    "${_IMPORT_PREFIX}/include"
-    "${ROCM_PATH}/include"
-    /opt/rocm/include
+    "@rocm_runtime@/include"
 )
 
 if (HSA_HEADER-NOTFOUND)
@@ -99,7 +96,7 @@ if (HSA_HEADER-NOTFOUND)
 endif()
 
 get_filename_component(HIP_COMPILER_INSTALL_PATH ${CMAKE_HIP_COMPILER} DIRECTORY)
-file(GLOB HIP_CLANGRT_LIB_SEARCH_PATHS "${HIP_COMPILER_INSTALL_PATH}/../lib/clang/*/lib/*")
+file(GLOB HIP_CLANGRT_LIB_SEARCH_PATHS "@llvm@/lib/clang/*/lib/*")
 find_library(CLANGRT_BUILTINS
     NAMES
       clang_rt.builtins
+47 −0
Original line number Diff line number Diff line
diff --git a/hip-config.cmake.in b/hip-config.cmake.in
index 89d1224e..120b68c6 100755
--- a/hip-config.cmake.in
+++ b/hip-config.cmake.in
@@ -142,7 +142,7 @@ if(HIP_COMPILER STREQUAL "clang")
       file(TO_CMAKE_PATH "${HIP_PATH}/../lc" HIP_CLANG_ROOT)
     endif()
   else()
-    set(HIP_CLANG_ROOT "${ROCM_PATH}/llvm")
+    set(HIP_CLANG_ROOT "@llvm@")
   endif()
   if(NOT HIP_CXX_COMPILER)
     set(HIP_CXX_COMPILER ${CMAKE_CXX_COMPILER})
@@ -206,10 +206,7 @@ if(NOT WIN32)
   #if HSA is not under ROCm then provide CMAKE_PREFIX_PATH=<HSA_PATH>
   find_path(HSA_HEADER hsa/hsa.h
     PATHS
-      "${_IMPORT_PREFIX}/include"
-      #FILE_REORG_BACKWARD_COMPATIBILITY ${_IMPORT_PREFIX}/../include is for Backward compatibility
-      "${_IMPORT_PREFIX}/../include"
-      ${ROCM_PATH}/include
+      "@rocm_runtime@/include"
   )

   if (NOT HSA_HEADER)
@@ -224,8 +221,8 @@ set_target_properties(hip::host PROPERTIES

 if(HIP_RUNTIME MATCHES "rocclr")
   set_target_properties(hip::amdhip64 PROPERTIES
-    INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include;${HSA_HEADER}"
-    INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include;${HSA_HEADER}"
+    INTERFACE_INCLUDE_DIRECTORIES "@hip@/include;${HSA_HEADER}"
+    INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "@hip@/include;${HSA_HEADER}"
   )

   get_target_property(amdhip64_type hip::amdhip64 TYPE)
@@ -233,8 +230,8 @@ if(HIP_RUNTIME MATCHES "rocclr")

   if(NOT WIN32)
     set_target_properties(hip::device PROPERTIES
-      INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
-      INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
+      INTERFACE_INCLUDE_DIRECTORIES "@hip@/include"
+      INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "@hip@/include"
     )
   endif()
 endif()