cuda/cuda.spec

147 lines
5.3 KiB
RPMSpec

%define driver_ver 545.23.08
Name: cuda
Version: 12.3.2
Release: 1mamba
Summary: NVIDIA GPU programming toolkit
Group: Development/Tools
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://developer.nvidia.com/cuda-zone
Source: https://developer.download.nvidia.com/compute/cuda/%{version}/local_installers/cuda_%{version}_%{driver_ver}_linux.run
Source1: cuda.sh
Source10: accinj64.pc
Source11: cudart.pc
Source12: cuinj64.pc
Source13: cusparse.pc
Source14: nppial.pc
Source15: nppidei.pc
Source16: nppim.pc
Source17: nppitc.pc
Source18: nvgraph.pc
Source19: nvrtc.pc
Source20: cublas.pc
Source21: cufft.pc
Source22: curand.pc
Source23: nppc.pc
Source24: nppicc.pc
Source25: nppif.pc
Source26: nppist.pc
Source27: npps.pc
Source28: nvidia-ml.pc
Source29: cuda.pc
Source30: cufftw.pc
Source31: cusolver.pc
Source32: nppi.pc
Source33: nppicom.pc
Source34: nppig.pc
Source35: nppisu.pc
Source36: nvToolsExt.pc
Source37: nvjpeg.pc
License: no OSI Approved
## AUTOBUILDREQ-BEGIN
## AUTOBUILDREQ-END
ExclusiveArch: x86_64
%description
NVIDIA GPU programming toolkit.
%debug_package
%global __provides_exclude_from ^%{_libdir}/cuda/.*$
%global __requires_exclude_from ^%{_libdir}/cuda/.*$
%prep
%setup -q -c %{name}-%{version} -T
#-D
#:<< _EOF
# unpack .run file
sh %{SOURCE0} --target "${PWD}" --noexec
rm -r builds/{NVIDIA*.run,bin}
%build
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
install -d -m0755 %{buildroot}%{_libdir}/cuda
cd builds
#mkdir -p %{buildroot}%{_libdir}/cuda/extras
#mv integration nsight_compute nsight_systems EULA.txt %{buildroot}%{_libdir}/cuda
#mv cuda_demo_suite/extras/demo_suite %{buildroot}%{_libdir}/cuda/extras/demo_suite
#mv cuda_sanitizer_api/compute-sanitizer %{buildroot}%{_libdir}/cuda/extras/compute-sanitizer
#rmdir cuda_sanitizer_api
for dir in *; do
[ ! -d "$dir" ] && continue
cp -r $dir/* %{buildroot}%{_libdir}/cuda/
done
# Delete some unnecessary or broken files
rm -r %{buildroot}%{_libdir}/cuda/bin/cuda-uninstaller
rm %{buildroot}%{_libdir}/cuda/include/include
rm %{buildroot}%{_libdir}/cuda/lib64/lib64
rm -r %{buildroot}%{_libdir}/cuda/{bin/nvvp,bin/computeprof,libnvvp,nsight*}
# Install profile and ld configuration files
install -D -m644 %{SOURCE1} %{buildroot}%{_sysconfdir}/profile.d/cuda.sh
install -d -m0755 %{buildroot}%{_sysconfdir}/ld.so.conf.d
cat > %{buildroot}%{_sysconfdir}/ld.so.conf.d/cuda.conf << _END
%{_libdir}/cuda/lib64
%{_libdir}/cuda/nvvm/lib64
%{_libdir}/cuda/extras/CUPTI/lib64
_END
ln -s lib64 %{buildroot}%{_libdir}/cuda/lib
install -D -m0644 %{SOURCE10} %{buildroot}%{_libdir}/pkgconfig/accinj64.pc
install -D -m0644 %{SOURCE11} %{buildroot}%{_libdir}/pkgconfig/cudart.pc
install -D -m0644 %{SOURCE12} %{buildroot}%{_libdir}/pkgconfig/cuinj64.pc
install -D -m0644 %{SOURCE13} %{buildroot}%{_libdir}/pkgconfig/cusparse.pc
install -D -m0644 %{SOURCE14} %{buildroot}%{_libdir}/pkgconfig/nppial.pc
install -D -m0644 %{SOURCE15} %{buildroot}%{_libdir}/pkgconfig/nppidei.pc
install -D -m0644 %{SOURCE16} %{buildroot}%{_libdir}/pkgconfig/nppim.pc
install -D -m0644 %{SOURCE17} %{buildroot}%{_libdir}/pkgconfig/nppitc.pc
install -D -m0644 %{SOURCE18} %{buildroot}%{_libdir}/pkgconfig/nvgraph.pc
install -D -m0644 %{SOURCE19} %{buildroot}%{_libdir}/pkgconfig/nvrtc.pc
install -D -m0644 %{SOURCE20} %{buildroot}%{_libdir}/pkgconfig/cublas.pc
install -D -m0644 %{SOURCE21} %{buildroot}%{_libdir}/pkgconfig/cufft.pc
install -D -m0644 %{SOURCE22} %{buildroot}%{_libdir}/pkgconfig/curand.pc
install -D -m0644 %{SOURCE23} %{buildroot}%{_libdir}/pkgconfig/nppc.pc
install -D -m0644 %{SOURCE24} %{buildroot}%{_libdir}/pkgconfig/nppicc.pc
install -D -m0644 %{SOURCE25} %{buildroot}%{_libdir}/pkgconfig/nppif.pc
install -D -m0644 %{SOURCE26} %{buildroot}%{_libdir}/pkgconfig/nppist.pc
install -D -m0644 %{SOURCE27} %{buildroot}%{_libdir}/pkgconfig/npps.pc
install -D -m0644 %{SOURCE28} %{buildroot}%{_libdir}/pkgconfig/nvidia-ml.pc
install -D -m0644 %{SOURCE29} %{buildroot}%{_libdir}/pkgconfig/cuda.pc
install -D -m0644 %{SOURCE30} %{buildroot}%{_libdir}/pkgconfig/cufftw.pc
install -D -m0644 %{SOURCE31} %{buildroot}%{_libdir}/pkgconfig/cusolver.pc
install -D -m0644 %{SOURCE32} %{buildroot}%{_libdir}/pkgconfig/nppi.pc
install -D -m0644 %{SOURCE33} %{buildroot}%{_libdir}/pkgconfig/nppicom.pc
install -D -m0644 %{SOURCE34} %{buildroot}%{_libdir}/pkgconfig/nppig.pc
install -D -m0644 %{SOURCE35} %{buildroot}%{_libdir}/pkgconfig/nppisu.pc
install -D -m0644 %{SOURCE36} %{buildroot}%{_libdir}/pkgconfig/nvToolsExt.pc
install -D -m0644 %{SOURCE37} %{buildroot}%{_libdir}/pkgconfig/nvjpeg.pc
# Fix Makefile paths to CUDA
for f in $(find %{buildroot}%{_libdir}/cuda -name Makefile); do
sed -i "s|/usr/local/cuda|%{_libdir}/cuda|g" "$f"
done
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files
%defattr(-,root,root)
%{_sysconfdir}/ld.so.conf.d/cuda.conf
%{_sysconfdir}/profile.d/cuda.sh
%dir %{_libdir}/cuda
%{_libdir}/cuda/*
%{_libdir}/pkgconfig/*.pc
%doc builds/EULA.txt
%changelog
* Thu Feb 29 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 12.3.2-1mamba
- package created using the webbuild interface