CMake assumes we're bundling on x86, but for GNU compatible compilers,
we should rely on the compiler target to set the build arch.
For non-gnu compilers, just fall back to assuming x86 (no change).
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: Iee9794e6f7c3973c781ddaf740ded77f34712c4f
OCL2.2 requires SPIR-V and runtime doesn't support it.
Make sure PAL backend doesn't report any SPIR-V support.
Change-Id: I8d179069674205b54f7d20d149bcb675bee5cdb0
This module will be used to add any specific compiler options to ROCclr
and it's clients.
Currently it only adds a workaround to remove the MSVC flag /GR, which
is added by default CMake <3.20. This resolves the conflict of PAL
adding /GR-.
Change-Id: If83adb271bcec86812a6e9de940da3920fc75393
CMake always searches system paths for specified files before resorting
to the hints we give it. We should not be using elf and GL headers
from /usr/include.
Change-Id: I2172ce3da9cc101ced63e22d95ecc031b94f0a67
All KMD/asic_reg/UGL headers are located under the drivers folder. No
need for the AMD_UGL_PATH variable as it essentially is
${AMD_DRIVERS_PATH}/ugl.
Change-Id: I070d737d50f2096493b3e75ef9b9e824cb19d048
This change refactors the current ROCclr cmake build to accomodate a
more modular approach. This allows easier support for multiple compiler
and/or multiple runtime backends.
Currently supported compilers:
HSAIL - enabled by ROCCLR_ENABLE_HSAIL (defaults to OFF)
LC - enabled by ROCCLR_ENABLE_LC (defaults to ON)
Currently supported runtimes:
HSA - enabled by ROCCLR_ENABLE_HSA (defaults to ON)
PAL - enabled by ROCCLR_ENABLE_PAL (defaults to OFF)
Any configuration is supported as long as at least one compiler and one
runtime is enabled.
Since ROCclr clients can configure it differently, one cannot reuse the
same ROCclr build artifacts between different clients. To assure this,
this patch assumes that ROCclr will be built as part of the clients
project.
Change-Id: Id4a5c43634296802b8ae87d1ad5984968391ccaf
HIP or any ROCm component above HIP may not be calling
hsa-runtime directly. OpenCl and HIP are the two components
calling ROCclr and to bring in the transitive dependency of
thunk,ROCR,amd_comgr it is better to have the dependency
chain set correctly in the ROCclr cmake target. With this
change OpenCl or HIP should not be setting ROCR dependency
directly.
This helps to link OpenCl(libamdocl.so) link statically with
comgr,hsa,thunk.
Change-Id: I0d538b7abc6a0ce700ec3332b97fc144db5fc5ff
Currently the opencl build hardcodes the path and directly includes
amdvdi_staticTargets.cmake. The proper way to find this is through
find_package, so start exporting the expected format.
Change-Id: Ic960a2dd467d57867cb96ab831dbd85bca336535
SWDEV-102733 - [OCL-LC-ROCm] Cmake build Write CMakeLists.txt to enable building with and without the DK environment
- Update from git.
Affected files ...
... //depot/stg/opencl/drivers/opencl/CMakeLists.txt#12 edit
... //depot/stg/opencl/drivers/opencl/cmake/modules/bc2h.cmake#1 add
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/CMakeLists.txt#7 edit
SWDEV-102733 - [OCL-LC-ROCm] Cmake build Write CMakeLists.txt to enable building with and without the DK environment
- Add FindROCR.cmake, and use find_package() to locate the ROCR
Affected files ...
... //depot/stg/opencl/drivers/opencl/cmake/modules/FindROCR.cmake#2 edit
SWDEV-102733 - [OCL-LC-ROCm] Cmake build Write CMakeLists.txt to enable building with and without the DK environment
- Add FindROCR.cmake, and use find_package() to locate the ROCR
Affected files ...
... //depot/stg/opencl/drivers/opencl/CMakeLists.txt#8 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/CMakeLists.txt#5 edit
... //depot/stg/opencl/drivers/opencl/cmake/modules/FindROCR.cmake#1 add
... //depot/stg/opencl/drivers/opencl/runtime/CMakeLists.txt#3 edit