rocclr: fix build (no OpenCL library is required)

rocclr builds fail since CMake was upgraded to 3.18. This version
introduces the REQUIRED option of find_library. However rocclr only
needs OpenCL headers. This change makes finding an OpenCL library
optional again.
This commit is contained in:
Daniël de Kok 2020-08-07 16:49:18 +02:00
parent e879d83e38
commit 49ef0fd51a

View File

@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake rocm-cmake ];
buildInputs = [ clang rocm-comgr rocm-runtime rocm-thunk clang ];
buildInputs = [ clang rocm-comgr rocm-runtime rocm-thunk ];
propagatedBuildInputs = [ libelf libglvnd libX11 ];
@ -34,7 +34,8 @@ stdenv.mkDerivation rec {
--replace 'set(ROCCLR_EXPORTS_FILE "''${CMAKE_CURRENT_BINARY_DIR}/amdrocclr_staticTargets.cmake")' \
'set(ROCCLR_EXPORTS_FILE "''${CMAKE_INSTALL_LIBDIR}/cmake/amdrocclr_staticTargets.cmake")' \
--replace 'set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ''${CMAKE_CURRENT_BINARY_DIR}/lib)' \
'set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ''${CMAKE_INSTALL_LIBDIR})'
'set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ''${CMAKE_INSTALL_LIBDIR})' \
--replace 'find_library( OpenCL REQUIRED' 'find_library( OpenCL'
substituteInPlace device/comgrctx.cpp \
--replace "libamd_comgr.so" "${rocm-comgr}/lib/libamd_comgr.so"
'';