All the comments made so far have been considered. Regarding the
possibility of automating the process, I think I would rather not
bother... It feels hacky indeed, it would likely have to persist in
loader ebuilds until eselect-opencl has been removed, and it would
either require an eclass or have to be implemented independently in each
of the loader packages (not that I expect to have more than two any time
soon - but still, that's one copy of the same hack too many) - and all
of this to address a configuration that isn't even the Gentoo default.
Besides, letting the users know that something's changing in how we
handle OpenCL will IMHO not hurt even if they in the end do not have to
change anything by hand.

* * *

Title: Potential file collisions during OpenCL upgrade
Author: Marek Szuba <mare...@gentoo.org>
Posted: 2020-05-01
Revision: 1
News-Item-Format: 2.0
Display-If-Installed: app-eselect/eselect-opencl

OpenCL support in Gentoo is now being migrated to having all
implementations operate through an ICD loader (dev-libs/ocl-icd or
dev-libs/opencl-icd-loader) installed directly into /usr rather than
using eselect-opencl to switch between implementations, with updated
loader ebuilds having just been released to the public. Unfortunately
although the upgrade process will automatically uninstall
app-eselect/eselect-opencl, it will not remove the symbolic links to
libOpenCL.so created by this tool in library directories because those
links are not owned by the package in question.

For everyone using the default Gentoo configuration of collision
protection (FEATURES='-collision-protect protect-owned'), this should
cause no trouble because this configuration allows the overwriting of
orphaned files. Obviously, systems with collision protection completely
disabled (not recommended but technically possible) will not be affected
either. However, if your system is configured for full collision
protection (FEATURES=collision-protect), it will be necessary to
manually remove those links

    rm -i /usr/lib{,64}/libOpenCL.so*

before running the upgrade.


-- 
MS

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to