This is the first step to remove rocm-ocl-icd.
We don't build amd icd after this commit.
We still need to remove header files usage in future steps.
Change-Id: Ic4ac5476180f9ef2ce87b62891c08b28d6c9bfd2
This reverts commit 5f68a4531a.
Reason for revert: due to windows staging branch using Opencl-icd-loader master
Change-Id: I9cca7564a21de1733665a34da6f0322aa3b886e7
Using backward compatibility paths will provide #warning message be default.
Compile time option added to enable/disable the #error message.
Updated the backward compatibility message
Change-Id: I3bab00df26145991b32176d2d76977c2e953bf5f
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
The workaround for file-reorg in opencl is not required with changes in build script.
Similar workaround code in atmi is causing installation error in spack atmi and fixed by build scripts changes and removing the workaround
Depends-On: I2c79675ec05e1e7de2baa0a21033939f0eadac3d
Change-Id: I9b5640a7b284f1df6b3127938c51da24ce60b69e
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
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
Package installed in /opt/rocm
Warpper header files and soft link to libraries for backward compatibilty
Change-Id: Ib1edb27713dfa589369f0a03c59d3ac1b0dc8400
CPACK_PACKAGING_INSTALL_PREFIX is defined in the wrong location.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: Id8ce6beb1d18878c9132cab335cb372a53cc0ee8
RUNPATH was not changed to correct ROCM_RPATH
Packaged proper binaries after RUNPATH correction
Signed-off-by: Ashutosh Mishra <Ashutosh.Mishra@amd.com>
Change-Id: I97443cc0d6cb1ecf7352e3c83ae0fe38a8f339bf
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_DEP_ROCMCORE is not passed to the packaging cmake files, so
rocm-core is never added to the dependency list, even if it's set.
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I57ec415b5e2b816f8bc226a66643ca0a808e9a35
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
Fix FEAT-39125
Add EMU_ENV option. If it is ON, the building is for
emulation environment, thus some logics can be adjusted
to match emulation environment. If it is OFF, the
building is for regular environment.
Currently only ocltst will use the option. But it can
be used for other modules.
Change-Id: I54e1bc1309e82794b41fca2ae1f01f004138dced
This patch also includes additional cleanup logic to the installation
rules. The OpenCL ICD already defines its own installation rules, no
need to duplicate them.
Change-Id: Id1c386307a83b82e21f6fa132e41957d9b348fd3
git is invoked to populate OPENCL_VERSION_GITDATE, but the value is no
where to be used in the project.
Change-Id: Iceae650e6260c2ccd749f582034fc09205b4af7a
Don't use hardcoded install destinations. CMake will decide where things
should be installed based on platform.
Change-Id: Ifcf956181d3efb32d4ce6191a89c1ea225d0e8cc
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
This reverts commit 932c83fe8f.
Reason for revert: need to update other projects (linuxpro & marnier)
Change-Id: Ib02194d052170e487cd56480eb0d9226895aa580
COMGR_DYN_DLL is used by rocclr to load COMGR as dynamic library.
Need to remove this flag while linking COMGR as static lib by
ROCclr.
Default option is set to link COMGR as dynamic library
Change-Id: I5631a8c1d896bd4d7e5ecf5ef5fa4f631cd2244d
- 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
Tests are now excluded from the main build, however ocltst can still be built by running `cmake --build . --target ocltst`.
Test modules can be run by invoking the test_${module_name} target, for example `cmake --build . --target test_oclruntime`.
Change-Id: I6f40d3bd318e821e4fbf35ccfa395dc7036673cb
Fix compile error.
Before this change, there is compile error in my build computer. The cause is that /opt/rocm/include has an older version of CL header files.
When compiling, we should use header files from this opencl source code folders first.
This fix changes the order of include directories. Search the header files inside this opencl source code folders first.
Change-Id: I3420a634ed9e1b38b8e5201a0a39a36d61f97986
Use standard cmake option handling, and switch to standard ON/OFF for
boolean. Try to maintain compatability with the "yes" check that build
scripts are now using.
Change-Id: Ia932e93f818c0897a87bfc49b070e36c7be7dd74
94b20323 broke this. This is still mostly a commit order hack until
the ROCclr change is submitted.
Change-Id: I43762963dbc66f1dc83916d2f0e9c90e4fcbf7c1
Move libOpenCL.so from rocm-opencl-dev package to rocm-opencl.
Having the libOpenCL.so alone and that too just a symlink pointing
to a file in another package is not the right way.
Adding a symlink for libOpenCL... to rocm/lib will make package
deployment easier.
Change-Id: Icc98d2280253c8a485ef906e97fc75129ad6d064
Update the packaging code to be CMake 3.5 compatible for CI. Create two
packages rocm-opencl and rocm-opencl-dev on Ubuntu and CentOS. Add
proper versioning into naming.
Change-Id: I116081b7f6f7efa4be43ab3a66e4d3bff0589298