[Bug 283128] devel/spirv-llvm-translator: add libLLVMSPIRVLib.so.${MAJOR} symlink for llvm >= 18 ?
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 04 Dec 2024 16:16:09 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=283128 Bug ID: 283128 Summary: devel/spirv-llvm-translator: add libLLVMSPIRVLib.so.${MAJOR} symlink for llvm >= 18 ? Product: Ports & Packages Version: Latest Hardware: Any OS: Any Status: New Severity: Affects Some People Priority: --- Component: Individual Port(s) Assignee: jbeich@FreeBSD.org Reporter: dim@FreeBSD.org Assignee: jbeich@FreeBSD.org Flags: maintainer-feedback?(jbeich@FreeBSD.org) During the exp-run for bug 283013 ("update LLVM_DEFAULT to 18") it turned out that lang/clover fails to build, with an error similar to: [133amd64-default-foo-job-09] Extracting spirv-llvm-translator-llvm18-18.1.6: .......... done ===> clover-24.1.7 depends on shared library: libLLVMSPIRVLib.so.18 - not found *** Error code 1 This is because after llvm 18, the .so filename has become libLLVMSPIRVLib.so.18.1, libLLVMSPIRVLib.so.19.1, and so on. The Makefile for devel/spirv-llvm-translator takes this into account by doing: SOVERSION= ${${FLAVOR:S/llvm//}<18:?${DISTVERSION:R:R}:${DISTVERSION:R}} which is nice, but it is rather annoying that all consumers will have to be updated similarly too. I found the following consumers, which directly refer to the .so filename: devel/intel-graphics-compiler/Makefile: libLLVMSPIRVLib.so.${FLAVOR:S/llvm//}:devel/spirv-llvm-translator@${FLAVOR} devel/ispc/Makefile: libLLVMSPIRVLib.so.${LLVM_VERSION}:devel/spirv-llvm-translator@llvm${LLVM_VERSION} devel/opencl-clang/Makefile: libLLVMSPIRVLib.so.${FLAVOR:S/llvm//}:devel/spirv-llvm-translator@${FLAVOR} graphics/mesa-devel/Makefile: OPENCL_LIB_DEPENDS= libLLVMSPIRVLib.so.${OPENCL_SOVERSION}:devel/spirv-llvm-translator@${LLVM_PORT:T} lang/clover/Makefile: libLLVMSPIRVLib.so.${LLVM_VERSION}:devel/spirv-llvm-translator@${LLVM_PORT:T} \ If it is not too much trouble, should the devel/spirv-llvm-translator add a compat symlink libLLVMSPIRVLib.so.18, libLLVMSPIRVLib.so.19 etc, to make it easier on consumers? Note that the devel/llvm18 and higher ports do something slightly different: libLLVM-18.so@ -> libLLVM.so.18.1 libLLVM.so@ -> libLLVM.so.18.1 libLLVM.so.18.1* and: libLLVM-19.so@ -> libLLVM.so.19.1 libLLVM.so@ -> libLLVM.so.19.1 libLLVM.so.19.1* -- You are receiving this mail because: You are the assignee for the bug.