The OpenCL runtime can be found at: https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime
It has a mess of dependencies; I can handle most of them (not that it'll be easy, but at least I know what to do). The 3 troublemakers I'd like to discuss are the ROC forks of:
llvm: https://github.com/RadeonOpenCompute/llvm/ clang: https://github.com/RadeonOpenCompute/clang/ ldd: https://github.com/RadeonOpenCompute/ldd/ Potential approaches include:1) Create new packages for each: sys-devel/radeon-open-compute-llvm, sys-devel/radeon-open-compute-clang, sys-devel/radeon-open-compute-lld 2) Add use flags to existing packages that apply the ROC changes as a patch 3) Add use flags to existing packages that use ROC archives as the SRC_URIs 4) Take the approach justxi did in his overlay which is to bundle these dependencies wherever they're needed; for example, take a look at https://github.com/justxi/rocm/blob/master/media-libs/ROCm-OpenCL-Runtime/ROCm-OpenCL-Runtime-1.7.0-r3.ebuild
Personally, I dislike (4), as it's contrary to the bundling policy that Gentoo tries to follow.
For (2), I'm concerned that generating and maintaining that patch may be really annoying and a lot of work.
For (3), it's not great to have different base archives.Since ROC will eventually upstream all of it's work, (2) is ideal - but I have no idea what the timeline on that upstreaming effort may be, and I can't find anything that gives a hint.
What is the best way forward? And what would be acceptable to the Gentoo LLVM project?
Description: OpenPGP digital signature