After updating to the latest stable mesa version (18.2.4), I no longer have mesa's OpenCL libraries displayed in eselect opencl's list. A quick look at the ebuild shows that the respective code path in multilib_src_install() has been removed as part of switching to meson as build system.
Cc'ing Jan. I thought this was as intended since we now depend on dev-libs/ocl-icd.
This is intentional. mesa's libOpenCL.so.1 is not capable of loading other ICD providers from /etc/OpenCL/vendors. media-libs/mesa should pull in dev-libs/ocl-icd to provide libOpenCL.so.1 and act as ICD loader for other OCL ICD drivers. mesa should no longer be visible in "eselect opencl list", instead ocl-icd should be listed. clinfo should still display: > Platform Name Clover > Platform Vendor Mesa > Platform Version OpenCL 1.1 Mesa 18.2.4 if mesa was built with +opencl
Okay, sorry for the confusion. My bad.
well, I think the bug in itself is valid. Updated to mesa 18.2.4 opencl flags are set, mesa happily updates, and then wine fails because of missing opencl. eselect opencl list: eselect opencl list Available OpenCL implementations: [1] mesa * [2] ocl-icd so some cleanup is not happening?
Oh, I bet we need to call eselect opencl to ensure we're set to the right implementation.
*** Bug 671112 has been marked as a duplicate of this bug. ***
(In reply to Matt Turner from comment #5) > Oh, I bet we need to call eselect opencl to ensure we're set to the right > implementation. Jan: I assume we cannot just readd eselect opencl set --use-old ${PN}. Do we need to query output of eselect opencl and if it's 'mesa' reset to ocl-icd?
(In reply to Matt Turner from comment #7) > (In reply to Matt Turner from comment #5) > > Oh, I bet we need to call eselect opencl to ensure we're set to the right > > implementation. > > Jan: I assume we cannot just readd eselect opencl set --use-old ${PN}. Do we > need to query output of eselect opencl and if it's 'mesa' reset to ocl-icd? hm, does > sudo eselect opencl set --use-old help? my hope is that eselect figures out that mesa implementation is missing and switches to the next one.
This was caused by the opencl icd switch, which I think is long enough ago to not bother worrying about upgrading from.