Make OpenCL adapter optional

This commit is contained in:
Eyad Issa 2025-01-06 15:46:35 +01:00
parent bb787aecd0
commit f520dc5c59
2 changed files with 27 additions and 4 deletions

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Mon Jan 6 17:06:15 UTC 2025 - Eyad Issa <eyadlorenzo@gmail.com>
- Build OpenCL adapter only on supported platforms (OpenCL 3.0)
------------------------------------------------------------------- -------------------------------------------------------------------
Sat Jan 4 01:01:14 UTC 2025 - Eyad Issa <eyadlorenzo@gmail.com> Sat Jan 4 01:01:14 UTC 2025 - Eyad Issa <eyadlorenzo@gmail.com>

View File

@ -16,6 +16,11 @@
# #
%if 0%{?suse_version} > 1600
%bcond_without opencl_adapter
%else
%bcond_with opencl_adapter
%endif
Name: unified-runtime Name: unified-runtime
Version: 0.11.2 Version: 0.11.2
Release: 0 Release: 0
@ -27,9 +32,11 @@ Patch1: remove-link.patch
BuildRequires: cmake BuildRequires: cmake
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: ninja BuildRequires: ninja
BuildRequires: ocl-icd-devel
BuildRequires: opencl-headers
BuildRequires: unified-memory-framework-devel BuildRequires: unified-memory-framework-devel
BuildRequires: pkgconfig
%if %{with opencl_adapter}
BuildRequires: pkgconfig(OpenCL)
%endif
%description %description
oneAPI Unified Runtime (UR) provides a unified interface to device oneAPI Unified Runtime (UR) provides a unified interface to device
@ -66,6 +73,7 @@ agnostic runtimes such as DPC++.
This package contains the oneAPI Unified Runtime native CPU adapter. This package contains the oneAPI Unified Runtime native CPU adapter.
%if %{with opencl_adapter}
%package -n libur_adapter_opencl0 %package -n libur_adapter_opencl0
Summary: oneAPI Unified Runtime OpenCL adapter Summary: oneAPI Unified Runtime OpenCL adapter
@ -74,6 +82,7 @@ oneAPI Unified Runtime (UR) provides a unified interface to device
agnostic runtimes such as DPC++. agnostic runtimes such as DPC++.
This package contains the oneAPI Unified Runtime OpenCL adapter. This package contains the oneAPI Unified Runtime OpenCL adapter.
%endif
%prep %prep
%autosetup -p1 %autosetup -p1
@ -84,8 +93,10 @@ This package contains the oneAPI Unified Runtime OpenCL adapter.
-DUR_USE_EXTERNAL_UMF=ON \ -DUR_USE_EXTERNAL_UMF=ON \
-DUR_BUILD_TESTS=OFF \ -DUR_BUILD_TESTS=OFF \
-DUR_BUILD_ADAPTER_NATIVE_CPU=ON \ -DUR_BUILD_ADAPTER_NATIVE_CPU=ON \
%if %{with opencl_adapter}
-DUR_BUILD_ADAPTER_OPENCL=ON \ -DUR_BUILD_ADAPTER_OPENCL=ON \
-DUR_OPENCL_INCLUDE_DIR=%{_includedir} \ -DUR_OPENCL_INCLUDE_DIR=%{_includedir} \
%endif
-DCMAKE_SKIP_RPATH=ON -DCMAKE_SKIP_RPATH=ON
%cmake_build %cmake_build
%cmake_build urinfo %cmake_build urinfo
@ -100,7 +111,10 @@ rm %{buildroot}%{_libdir}/libur_common.a
%ldconfig_scriptlets -n libur_loader0 %ldconfig_scriptlets -n libur_loader0
%ldconfig_scriptlets -n libur_adapter_native_cpu0 %ldconfig_scriptlets -n libur_adapter_native_cpu0
%if %{with opencl_adapter}
%ldconfig_scriptlets -n libur_adapter_opencl0 %ldconfig_scriptlets -n libur_adapter_opencl0
%endif
%files %files
%license LICENSE.TXT %license LICENSE.TXT
@ -117,10 +131,12 @@ rm %{buildroot}%{_libdir}/libur_common.a
%dir %{_prefix}/lib/cmake/ %dir %{_prefix}/lib/cmake/
%{_prefix}/lib/cmake/unified-runtime/ %{_prefix}/lib/cmake/unified-runtime/
%{_libdir}/libur_loader.so %{_libdir}/libur_loader.so
%{_libdir}/libur_adapter_native_cpu.so %{_libdir}/libur_adapter_native_cpu.so
%if %{with opencl_adapter}
%{_libdir}/libur_adapter_opencl.so %{_libdir}/libur_adapter_opencl.so
%endif
%files -n libur_loader0 %files -n libur_loader0
%{_libdir}/libur_loader.so.0 %{_libdir}/libur_loader.so.0
@ -130,8 +146,10 @@ rm %{buildroot}%{_libdir}/libur_common.a
%{_libdir}/libur_adapter_native_cpu.so.0 %{_libdir}/libur_adapter_native_cpu.so.0
%{_libdir}/libur_adapter_native_cpu.so.0.11.2 %{_libdir}/libur_adapter_native_cpu.so.0.11.2
%if %{with opencl_adapter}
%files -n libur_adapter_opencl0 %files -n libur_adapter_opencl0
%{_libdir}/libur_adapter_opencl.so.0 %{_libdir}/libur_adapter_opencl.so.0
%{_libdir}/libur_adapter_opencl.so.0.11.2 %{_libdir}/libur_adapter_opencl.so.0.11.2
%endif
%changelog %changelog