<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="markdown-here-wrapper" data-md-url="Thunderbird"
style="">
<p style="margin: 0px 0px 1.2em ! important;">Greetings,</p>
<p style="margin: 0px 0px 1.2em ! important;">I’m currently
working on a beignet SlackBuild for SBo and I have some trouble
in sorting out how to best manage the package installation.<br>
For the ones who don’t know, <a href="https://01.org/beignet">beignet</a>
is Intel’s own OpenCL implementation for its graphics and CPU
hardware. To properly make use of any OpenCL implementation, one
needs:</p>
<ul style="margin: 1.2em 0px;padding-left: 2em;">
<li style="margin: 0.5em 0px;">an OpenCL ICD loader (<code style="font-size: 0.85em; font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;">libOpenCL.so</code>),
the entry library that other software links-to or dynamically
loads at runtime</li>
<li style="margin: 0.5em 0px;">at least one ICD vendor file(s),
to make the relevant OpenCL implementation installed available
to other software through the loader</li>
</ul>
<p style="margin: 0px 0px 1.2em ! important;">For systems running
solely on Intel CPU/GPU hardware with no other discrete GPU
components (namely, Nvidia/AMD), the installation of the beignet
package would bring:</p>
<ul style="margin: 1.2em 0px;padding-left: 2em;">
<li style="margin: 0.5em 0px;">the Intel OpenCL implementation +
ICD vendor files</li>
<li style="margin: 0.5em 0px;">OpenCL headers</li>
</ul>
<p style="margin: 0px 0px 1.2em ! important;">The system would
still lack the entry point library / ICD loader, but this could
be managed by means of the <a
href="https://forge.imag.fr/projects/ocl-icd/">ocl-icd</a>
package (in the making alongside beignet).<br>
If one has at least another discrete OpenCL-enabled GPU
installed on his system (read, an Nvidia and/or an AMD card),
then the scenario becomes a little more complicated:</p>
<ul style="margin: 1.2em 0px;padding-left: 2em;">
<li style="margin: 0.5em 0px;">the OpenCL loader is probably
provided by the Nvidia/AMD driver</li>
<li style="margin: 0.5em 0px;">the OpenCL headers, if any, could
be already installed by the Nvidia/AMD driver package or,
hypothetically, provided by a vendor agnostic package (like
the <a
href="https://slackbuilds.org/repository/14.2/development/opencl-headers/">opencl-headers
package already on SBo</a>)</li>
</ul>
<p style="margin: 0px 0px 1.2em ! important;">All these different
requirements/scenario would mean, to me, that the beignet
package should:</p>
<ul style="margin: 1.2em 0px;padding-left: 2em;">
<li style="margin: 0.5em 0px;">build with/without OpenCL headers</li>
<li style="margin: 0.5em 0px;">only suggest the use of the
ocl-icd package, as the ICD loader could already be available
on the system</li>
</ul>
<p style="margin: 0px 0px 1.2em ! important;">I would really
appreciate if anyone could give me insights or thoughts about
this case, especially if I missed something.<br>
Thanks</p>
<div
title="MDH:PHA+R3JlZXRpbmdzLDwvcD48cD48YnI+PC9wPjxwPkknbSBjdXJyZW50bHkgd29ya2luZyBvbiBhIGJlaWduZXQgU2xhY2tCdWlsZCBmb3IgU0JvIGFuZCBJIGhhdmUgc29tZSB0cm91YmxlIGluIHNv
cnRpbmcgb3V0IGhvdyB0byBiZXN0IG1hbmFnZSB0aGUgcGFja2FnZSBpbnN0YWxsYXRpb24uPC9w
PjxwPkZvciB0aGUgb25lcyB3aG8gZG9uJ3Qga25vdywgW2JlaWduZXRdKGh0dHBzOi8vMDEub3Jn
L2JlaWduZXQpIGlzIEludGVsJ3Mgb3duIE9wZW5DTCBpbXBsZW1lbnRhdGlvbiBmb3IgaXRzIGdy
YXBoaWNzIGFuZCBDUFUgaGFyZHdhcmUuIFRvIHByb3Blcmx5IG1ha2UgdXNlIG9mIGFueSBPcGVu
Q0wgaW1wbGVtZW50YXRpb24sIG9uZSBuZWVkczo8YnI+PC9wPjxwPiZuYnNwOy0gYW4gT3BlbkNM
IElDRCBsb2FkZXIgKGBsaWJPcGVuQ0wuc29gKSwgdGhlIGVudHJ5IGxpYnJhcnkgdGhhdCBvdGhl
ciBzb2Z0d2FyZSBsaW5rcy10byBvciBkeW5hbWljYWxseSBsb2FkcyBhdCBydW50aW1lPGJyPjwv
cD48cD4mbmJzcDstIGF0IGxlYXN0IG9uZSBJQ0QgdmVuZG9yIGZpbGUocyksIHRvIG1ha2UgdGhl
IHJlbGV2YW50IE9wZW5DTCBpbXBsZW1lbnRhdGlvbiBpbnN0YWxsZWQgYXZhaWxhYmxlIHRvIG90
aGVyIHNvZnR3YXJlIHRocm91Z2ggdGhlIGxvYWRlcjwvcD48cD48YnI+PC9wPjxwPkZvciBzeXN0
ZW1zIHJ1bm5pbmcgc29sZWx5IG9uIEludGVsIENQVS9HUFUgaGFyZHdhcmUgd2l0aCBubyBvdGhl
ciBkaXNjcmV0ZSBHUFUgY29tcG9uZW50cyAobmFtZWx5LCBOdmlkaWEvQU1EKSwgdGhlIGluc3Rh
bGxhdGlvbiBvZiB0aGUgYmVpZ25ldCBwYWNrYWdlIHdvdWxkIGJyaW5nOjwvcD48cD4mbmJzcDst
IHRoZSBJbnRlbCBPcGVuQ0wgaW1wbGVtZW50YXRpb24gKyBJQ0QgdmVuZG9yIGZpbGVzPC9wPjxw
PiZuYnNwOy0gT3BlbkNMIGhlYWRlcnM8L3A+PHA+PGJyPjwvcD48cD5UaGUgc3lzdGVtIHdvdWxk
IHN0aWxsIGxhY2sgdGhlIGVudHJ5IHBvaW50IGxpYnJhcnkgLyBJQ0QgbG9hZGVyLCBidXQgdGhp
cyBjb3VsZCBiZSBtYW5hZ2VkIGJ5IG1lYW5zIG9mIHRoZSZuYnNwOyBbb2NsLWljZF0oaHR0cHM6
Ly9mb3JnZS5pbWFnLmZyL3Byb2plY3RzL29jbC1pY2QvKSBwYWNrYWdlIChpbiB0aGUgbWFraW5n
IGFsb25nc2lkZSBiZWlnbmV0KS48L3A+PHA+SWYgb25lIGhhcyBhdCBsZWFzdCBhbm90aGVyIGRp
c2NyZXRlIE9wZW5DTC1lbmFibGVkIEdQVSBpbnN0YWxsZWQgb24gaGlzIHN5c3RlbSAocmVhZCwg
YW4gTnZpZGlhIGFuZC9vciBhbiBBTUQgY2FyZCksIHRoZW4gdGhlIHNjZW5hcmlvIGJlY29tZXMg
YSBsaXR0bGUgbW9yZSBjb21wbGljYXRlZDo8L3A+PHA+Jm5ic3A7LSB0aGUgT3BlbkNMIGxvYWRl
ciBpcyBwcm9iYWJseSBwcm92aWRlZCBieSB0aGUgTnZpZGlhL0FNRCBkcml2ZXI8YnI+PC9wPjxw
PiZuYnNwOy0gdGhlIE9wZW5DTCBoZWFkZXJzLCBpZiBhbnksIGNvdWxkIGJlIGFscmVhZHkgaW5z
dGFsbGVkIGJ5IHRoZSBOdmlkaWEvQU1EIGRyaXZlciBwYWNrYWdlIG9yLCBoeXBvdGhldGljYWxs
eSwgcHJvdmlkZWQgYnkgYSB2ZW5kb3IgYWdub3N0aWMgcGFja2FnZSAobGlrZSB0aGUgW29wZW5j
bC1oZWFkZXJzIHBhY2thZ2UgYWxyZWFkeSBvbiBTQm9dKGh0dHBzOi8vc2xhY2tidWlsZHMub3Jn
L3JlcG9zaXRvcnkvMTQuMi9kZXZlbG9wbWVudC9vcGVuY2wtaGVhZGVycy8pKTxicj48L3A+PHA+
PGJyPjwvcD48cD5BbGwgdGhlc2UgZGlmZmVyZW50IHJlcXVpcmVtZW50cy9zY2VuYXJpbyB3b3Vs
ZCBtZWFuLCB0byBtZSwgdGhhdCB0aGUgYmVpZ25ldCBwYWNrYWdlIHNob3VsZDo8L3A+PHA+Jm5i
c3A7LSBidWlsZCB3aXRoL3dpdGhvdXQgT3BlbkNMIGhlYWRlcnM8L3A+PHA+Jm5ic3A7LSBvbmx5
IHN1Z2dlc3QgdGhlIHVzZSBvZiB0aGUgb2NsLWljZCBwYWNrYWdlLCBhcyB0aGUgSUNEIGxvYWRl
ciBjb3VsZCBhbHJlYWR5IGJlIGF2YWlsYWJsZSBvbiB0aGUgc3lzdGVtPC9wPjxwPjxicj48L3A+
PHA+SSB3b3VsZCByZWFsbHkgYXBwcmVjaWF0ZSBpZiBhbnlvbmUgY291bGQgZ2l2ZSBtZSBpbnNp
Z2h0cyBvciB0aG91Z2h0cyBhYm91dCB0aGlzIGNhc2UsIGVzcGVjaWFsbHkgaWYgSSBtaXNzZWQg
c29tZXRoaW5nLjxicj48L3A+PHA+VGhhbmtzPGJyPjwvcD48cD48YnI+PC9wPjxwPjxicj48L3A+"
style="height:0;width:0;max-height:0;max-width:0;overflow:hidden;font-size:0em;padding:0;margin:0;"></div>
</div>
<div class="moz-signature markdown-here-signature">-- <br>
<pre>Alan Alberghini
SBo clone: <a href="https://github.com/414n/slackbuilds.org">GitHub</a>
</pre>
</div>
</body>
</html>