hip: hints for find_package llvm/clang (#47788)
LLVM can be a transitive link dependency of hip through gl's dependency mesa, which uses it for software rendering. In this case make sure llvm-amdgpu is found with find_package(LLVM) and find_package(Clang) by setting LLVM_ROOT and Clang_ROOT. That makes the patch of find_package's HINTS redundant, so remove that. It did not work anyways, because CMAKE_PREFIX_PATH has higher precedence than HINTS.
This commit is contained in:
		@@ -531,12 +531,6 @@ def patch(self):
 | 
				
			|||||||
                "clr/hipamd/hip-config-amd.cmake",
 | 
					                "clr/hipamd/hip-config-amd.cmake",
 | 
				
			||||||
                string=True,
 | 
					                string=True,
 | 
				
			||||||
            )
 | 
					            )
 | 
				
			||||||
            filter_file(
 | 
					 | 
				
			||||||
                '"${ROCM_PATH}/llvm"',
 | 
					 | 
				
			||||||
                self.spec["llvm-amdgpu"].prefix,
 | 
					 | 
				
			||||||
                "clr/hipamd/src/hiprtc/CMakeLists.txt",
 | 
					 | 
				
			||||||
                string=True,
 | 
					 | 
				
			||||||
            )
 | 
					 | 
				
			||||||
        perl = self.spec["perl"].command
 | 
					        perl = self.spec["perl"].command
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if self.spec.satisfies("@:5.5"):
 | 
					        if self.spec.satisfies("@:5.5"):
 | 
				
			||||||
@@ -561,7 +555,12 @@ def patch(self):
 | 
				
			|||||||
                    filter_file(" -lnuma", f" -L{numactl} -lnuma", "hipBin_amd.h")
 | 
					                    filter_file(" -lnuma", f" -L{numactl} -lnuma", "hipBin_amd.h")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def cmake_args(self):
 | 
					    def cmake_args(self):
 | 
				
			||||||
        args = []
 | 
					        args = [
 | 
				
			||||||
 | 
					            # find_package(Clang) and find_package(LLVM) in clr/hipamd/src/hiprtc/CMakeLists.txt
 | 
				
			||||||
 | 
					            # should find llvm-amdgpu
 | 
				
			||||||
 | 
					            self.define("LLVM_ROOT", self.spec["llvm-amdgpu"].prefix),
 | 
				
			||||||
 | 
					            self.define("Clang_ROOT", self.spec["llvm-amdgpu"].prefix),
 | 
				
			||||||
 | 
					        ]
 | 
				
			||||||
        if self.spec.satisfies("+rocm"):
 | 
					        if self.spec.satisfies("+rocm"):
 | 
				
			||||||
            args.append(self.define("HSA_PATH", self.spec["hsa-rocr-dev"].prefix))
 | 
					            args.append(self.define("HSA_PATH", self.spec["hsa-rocr-dev"].prefix))
 | 
				
			||||||
            args.append(self.define("HIP_COMPILER", "clang"))
 | 
					            args.append(self.define("HIP_COMPILER", "clang"))
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user