ldconfig is run during rocm-opencl package installation.
Installing libamdocl.so in /opt/rocm-xxx/lib exposes all ROCm libraries when /opt/rocm/lib is added to ldconfig.
To prevent this, libamdocl.so is now installed in /opt/rocm-xxx/lib/opencl.
ldconfig will use the updated path, limiting exposure to only libamdocl.so library.
Co-authored-by: raramakr <raramakr@amd.com>
Currently rocm-opencl depends on ocl-icd runtime package. libopencl.so is part of ocl-icd-dev/devel package
Added the same to the dependency list of rocm-opencl-dev/devel package
[ROCm/clr commit: 7a2ba7e5db]
Since we don't distribute icd loader, we need to install distro icd loader.
Change-Id: I1ea86bcf7c642a034c53f71130b15de1fa27e31e
[ROCm/clr commit: df9ae754a4]
This reverts commit 6c46d696ae.
Reason for revert: due to windows staging branch using Opencl-icd-loader master
Change-Id: I9cca7564a21de1733665a34da6f0322aa3b886e7
[ROCm/clr commit: f44ca70bb7]
Will replace rocm-ocl-icd with packaging of khronos opencl-icd-loader
Change-Id: I26da58e80fd1426b9908d0b524f93b17ab27626d
[ROCm/clr commit: a4bba6d705]
Package ASAN libraries and License file for ASAN package
Suffix "asan" added to package name
Change-Id: I1ae715d2ebc50d8a1ca6336c25802b989584ce40
[ROCm/clr commit: 8a4bf91145]
While upgrading packaging in SLES/RHEL, the package to be upgraded is installed first, followed by cleanup of the older one
During upgrade 10-rocm-opencl.conf and icd file is getting removed as part of clean up, since the file name and path is same in different package versions.
Limit the removal of opencl conf file to uninstall/removal of package and not during upgrade.
Used unique name for icd file
Change-Id: Ib34a78ce53e6b7d95adb70ccfd56474a297b64ca
[ROCm/clr commit: 3d350393d8]
cl_icd.h includes cl_egl.h, but cl_egl.h is excluded from install. It
was reported by the community that including cl_icd.h would error due to
the missing cl_egl.h file.
I'm assuming that cl_egl.h was excluded because EGL isn't important for
ROCm. Since cl_icd.h has some important typedefs, it makes sense just
to include cl_egl.h, which seems to be a common practice in open source
projects.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I506257c2dc51512ec8e11b1e5dadbe6e48ad785b
[ROCm/clr commit: e9dd848149]
This patch adds an option (BUILD_ICD) to toggle the ICD loader build
with rocm-opencl. This isn't useful for official ROCm use, but distros
or users may want build rocm-opencl with their own OCL ICD loader.
The default option is BUILD_ICD=ON.
If this option is set to OFF, an OpenCL OCD loader must be installed
prior to attempting to build rocm-opencl.
E.g. distros already provide ocl icd loader packages:
sudo yum install ocd-icd-devel
sudo apt-get install ocl-icd-opencl-dev
sudo zypper install ocd-icd-devel
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I6006593eceed543cd829e8949ec2256482815673
[ROCm/clr commit: d1782940f3]
Use GNUInstallDirs variables to determine the location of BINDIR,
LIBDIR, DOCDIR, and SYSCONFDIR.
Note that CMAKE_INSTALL_LIBDIR is overriden, since the default for RHEL
is lib64, but ROCm packaging wants it to be lib always. Distros or users
can easily override this.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: Ifb38263dce80d80c5ebb4eacd8e49c76bb013a44
[ROCm/clr commit: b8c124acb5]
Package installed in /opt/rocm
Warpper header files and soft link to libraries for backward compatibilty
Change-Id: Ib1edb27713dfa589369f0a03c59d3ac1b0dc8400
[ROCm/clr commit: c110ac233f]
During RPM upgrade, lib/libOpenCL.so* files/symlinks from the previous
installed version are not removed.
This change will remove those symlinks as part of the RPM remove
or upgrade operation.
Signed-off-by: Saravanan Solaiyappan <saravanan.solaiyappan@amd.com>
Change-Id: Ia943407052ec24911756042a5f9839a605522443
[ROCm/clr commit: 56dde03fbb]
During upgrade lib/libOpenCL.so* files/symlinks are not
removed.
This change will remove those symlinks as part of the upgrade
package activity.
Signed-off-by: Saravanan Solaiyappan <saravanan.solaiyappan@amd.com>
Change-Id: Ia12e89e857b358101f93a6044fe090aa7acafbe0
[ROCm/clr commit: c741a808ae]
CPACK_PACKAGING_INSTALL_PREFIX is defined in the wrong location.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: Id8ce6beb1d18878c9132cab335cb372a53cc0ee8
[ROCm/clr commit: 9c1f2da1a2]
Current packaging structure using custom command fail to work for
generating debug symbols.Hence changing the packaging to more
conventional way of using single CMakeLists.txt and split packages
using components like binary, dev and icd
Change-Id: I7fcf5f8afc3602f77576f2a13aa4916acb10888b
[ROCm/clr commit: 8fa82f6e64]
These packages contains only the ICD loader (libopencl.so). This allows
legacy opencl (PAL) to use these packages instead of duplicating these
packages in both builds.
This also resolves a licensing issue where OCL ICD is licensed as
Apache, while opencl is MIT. Having a separate package avoid license
confusion.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I3dd29239841da7f5dc767419a9bc35d9046e9936
[ROCm/clr commit: cb1e7cd48d]
To fix SWDEV-306293, x86_64-rocm-opencl.conf was renamed to
10-rocm-opencl.conf. This was not changes in the clean up, only in the
creation, so the patch causes a regression by not cleaning up the new
filename.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I4aa456955f6f7c2d52a3560e5e792537f95add17
[ROCm/clr commit: e885ae9591]
renaming rocm-opencl ldconfig file with "10-" prefix to prioritize
over system icd loader.
Change-Id: I0a54de7a0bc0e256d6470eae743ec712d1e42a36
Change-Id: I4af1d0e3e27f40f8b03b798cae43cfd4ba4a1880
[ROCm/clr commit: 3f1e227182]
The license file needs to be installed.
RPM also requires the LICENSE field to be set.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I8bcec77e51b88f3f6a6fa5799d6e38db1d1ab566
[ROCm/clr commit: 5416bcb7e8]
As part of the stack unification some of the application using
opencl seem to depend on libopencl.so provided from thirdparty
providers. For libopencl.so from thirdparty provider to find
libamdocl.so ldconfig path to {opencl install path}/lib is required
Change-Id: I8e12e463209a44177ee433644c75ef0781f1da2f
[ROCm/clr commit: b4b83e274e]
OpenCl applications are expected to work with publicly available
libopencl.so that is capable of finding vendor specific library
libamdocl64.so using the ICD loader entry.
x86_64-rocm-opencl.conf should provide ldconfig entry for
libamdocl64.so and libamdocl64.so shall use RUNPATH for finding
dependencies like hsa runtime.
Change-Id: Icf1267c7a04c1545eae0a7236bf8b7581ffa11ef
[ROCm/clr commit: 4790350f63]
Specify for packaging that clinfo is a program. This will set its
default permissions to include OWNER_EXECUTE, GROUP_EXECUTE and
WORLD_EXECUTE.
Change-Id: I986f6db73efa9a3f8ab5bedfb829adccad0759aa
[ROCm/clr commit: 31e688d8f0]
Don't use hardcoded install destinations. CMake will decide where things
should be installed based on platform.
Change-Id: Ifcf956181d3efb32d4ce6191a89c1ea225d0e8cc
[ROCm/clr commit: d53c19cfa5]
This change is tied to the ROCclr cmake rework. ROCclr will now be built
as part of OpenCL itself.
All the dependencies on comgr and rocr have been moved into ROCclr
itself. This allows OpenCL to pull in all the required compiler/runtime
dependencies by simply linking against ROCclr. Note that ROCclr needs to
be configured from OpenCL cmake command line. If not, we will default to
LC + ROCr support.
Change-Id: I5271302d073aef8cfa617828d218c856711bf9ba
[ROCm/clr commit: 1c16690617]
This reverts commit d09b6e30fc.
Reason for revert: need to update other projects (linuxpro & marnier)
Change-Id: Ib02194d052170e487cd56480eb0d9226895aa580
[ROCm/clr commit: 0762c948b6]
- amdocl64.icd is renamed to amdocl64_<ROCM_PATCH_VERSION>.icd
- This will enable support for multiple icd for different versions of
ROCm
Signed-off-by: Pruthvi Madugundu <pruthvi.madugundu@amd.com>
Change-Id: I8031b19f8579507ffb6727dedcd2e3fbb4e45de8
[ROCm/clr commit: b88a313eff]