Sophie

Sophie

distrib > Mageia > 9 > i586 > by-pkgid > a24ba2e566391a132891298bbf277def > files > 1

nvidia-cuda-toolkit-samples-bins-12.1.1-1.mga9.nonfree.src.rpm

%define		__jar_repack %nil
%define		driver_ver 525.60.13
%define		cuda_major 12.1

%define		_enable_debug_packages %{nil}
%define		debug_package %{nil}

# limit number of parallel cuda process building
%global _smp_ncpus_max 2

Summary:	NVIDIA CUDA Toolkit samples binaries
Name:		nvidia-cuda-toolkit-samples-bins
Version:	12.1.1
Release:	%mkrel 1
License:	Freeware
Group:		Development/Other
Url:		https://www.nvidia.com/cuda/
# to rework, to allow driver 470.xx to be used too.
#Requires:	nvidia-current-cuda >= %%{driver_ver}
Requires:	nvidia-cuda-toolkit >= %{cuda_major}
Requires:	openmpi
BuildRequires:	nvidia-cuda-toolkit-samples >= %{cuda_major}
BuildRequires:	nvidia-cuda-toolkit >= %{cuda_major}
BuildRequires:	nvidia-cuda-toolkit-devel >= %{cuda_major}
BuildRequires:	clang
BuildRequires:	freeimage-devel
BuildRequires:	glfw-devel
BuildRequires:	glslang
BuildRequires:	glut-devel
BuildRequires:	libgomp-devel
BuildRequires:	mesaegl-devel
BuildRequires:	mesaglesv2-devel
BuildRequires:	openmpi-devel
BuildRequires:	vulkan-devel
BuildRequires:	vulkan-headers
BuildRequires:	x11-server-devel
ExclusiveArch:	x86_64

%global __requires_exclude libcuda.so.1|devel\\(libcuda\\)|devel\\(libcuda\\(64bit\\)\\)|python\\(abi\\)
%global __provides_exclude libcairo.so.2

# Avoid exposing dependecies of bundled libQt libraries and other stuff coming from nvvp and nsight
%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^libQt5|^libboost_.*\\.so|^libcrypto|^libicudata|^libicuuc|^libicui18n|^libssl\\.so|^libprotobuf|^libqgif|^libqico|^libqjpeg|libqsvg|libqtga|libqtiff|libqwbmp|libqxcb|^libspawner|^libstdc++|^libudev|^libunixfile|osgi\\(org.apache.*\\)|osgi\\(org.antlr.*\\)|osgi\\(org.mozilla.*\\)|osgi\\(org.w3c.*\\)|osgi\\(org.eclipse.*\\)|osgi\\(com.ibm.*\\)|osgi\\(javaewah\\)|osgi\\(javax.*\\)|osgi\\(com.sat4.*\\)|osgi\\(com.lowagie.*\\)|osgi\\(com.sun.el\\)|osgi\\(com.jcraft.*\\)
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^libQt5|^libboost_.*\\.so|^libcrypto|^libicudata|^libicuuc|^libicui18n|^libssl\\.so|^libprotobuf|^libqgif|^libqico|^libqjpeg|libqsvg|libqtga|libqtiff|libqwbmp|libqxcb|^libspawner|^libstdc++|^libudev|^libunixfile|osgi\\(org.apache.*\\)|osgi\\(org.antlr.*\\)|osgi\\(org.mozilla.*\\)|osgi\\(org.w3c.*\\)|osgi\\(org.eclipse.*\\)|osgi\\(com.ibm.*\\)|osgi\\(javaewah\\)|osgi\\(javax.*\\)|osgi\\(com.sat4.*\\)|osgi\\(com.lowagie.*\\)|osgi\\(com.sun.el\\)|osgi\\(com.jcraft.*\\)|libcuhook\\.so

%description
NVIDIA® CUDA™ is a general purpose parallel computing architecture
that leverages the parallel compute engine in NVIDIA graphics
processing units (GPUs) to solve many complex computational problems
in a fraction of the time required on a CPU. It includes the CUDA
Instruction Set Architecture (ISA) and the parallel compute engine in
the GPU. To program to the CUDA™ architecture, developers can, today,
use C++, one of the most widely used high-level programming languages,
which can then be run at great performance on a CUDA™ enabled
processor. Support for other languages, like FORTRAN, Python or Java,
is available from third parties.

This package contains the binaries of the numerous CUDA code samples
(formerly CUDA SDK).

%prep
%setup -T -c %{name}-%{version}

%build
cp -pr %{_datadir}/nvidia-cuda-toolkit/samples .
cd samples
#
# Temporarily remove offending programs not compiling with gcc-12.2 or clang-14. To be fixed!
pushd Samples/0_Introduction
 rm -rf simpleAWBarrier
popd
pushd  Samples/3_CUDA_Features
 rm -rf tf32TensorCoreGemm globalToShmemAsyncCopy dmmaTensorCoreGemm bf16TensorCoreGemm
popd

#
#define compiler clang++
%define compiler g++
export NVCC_PREPEND_FLAGS="-allow-unsupported-compiler -Wno-deprecated-gpu-targets -ccbin %compiler"
export HOST_COMPILER=%compiler
%make_build CCFLAGS="-O2" HOST_COMPILER="%compiler"

%install
install -d -m 755 %{buildroot}%{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64/linux/release/
cp -pr samples/bin/x86_64/linux/release/* %{buildroot}%{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64/linux/release/
# remove duplicate files already included in nvidia-cuda-toolkit-samples package
(cd %{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64
 files=$(find . -type f -print)
 for i in $files; do
   if [ -f %{buildroot}%{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64/$i ]; then
     rm -f %{buildroot}%{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64/$i
   fi
 done
)

%files
%dir %{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64
%dir %{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64/linux
%dir %{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64/linux/release
%attr(755,root,root) %{_datadir}/nvidia-cuda-toolkit/samples/bin/x86_64/linux/release/*


%changelog
* Fri Apr 28 2023 ghibo <ghibo> 12.1.1-1.mga9
+ Revision: 1955245
- Update to release 12.1.1

* Sat Mar 04 2023 ghibo <ghibo> 12.1.0-2.mga9.nonfree
+ Revision: 1947628
- remove duplicate files already included in nvidia-cuda-toolkit-samples package

* Fri Mar 03 2023 ghibo <ghibo> 12.1.0-1.mga9.nonfree
+ Revision: 1946852
- Update to release 12.1.0

* Tue Feb 21 2023 ghibo <ghibo> 12.0.1-1.mga9.nonfree
+ Revision: 1944533
- Update to release 12.0.1

* Sat Dec 10 2022 ghibo <ghibo> 12.0.0-1.mga9.nonfree
+ Revision: 1920182
- Update to release 12.0.0

* Wed Nov 23 2022 ghibo <ghibo> 11.8.0-3.mga9.nonfree
+ Revision: 1910501
- Sync with nvidia-cuda-toolkit-11.8.0-3.mga9

* Tue Oct 04 2022 ghibo <ghibo> 11.8.0-2.mga9.nonfree
+ Revision: 1894837
- Don't remove volumeRender sample anymore as cuda_profiler_api.h is back
- fix path for volumeRender sample
- Temporarily remove offending samples volumeRender
- Rebuild against CUDA 11.8

* Sat Aug 20 2022 ghibo <ghibo> 11.7.1-1.mga9.nonfree
+ Revision: 1878924
- temporary remove offending programs not compiling with gcc-12 o clang-14
- Update to release 11.7.1.
- Don't force Requires to nvidia-current-cuda (thus allowing usage with nvidia470 drivers).
+ umeabot <umeabot>
- Mageia 9 Mass Rebuild

* Thu Nov 25 2021 ghibo <ghibo> 11.5.1-1.mga9.nonfree
+ Revision: 1759169
- Update to release 11.5.1
- Update to release 11.5.0

* Tue Sep 28 2021 ghibo <ghibo> 11.4.2-1.mga9.nonfree
+ Revision: 1746796
- Update to release 11.4.2

* Sun Jan 31 2021 ghibo <ghibo> 11.2.0-3.mga8.nonfree
+ Revision: 1674250
- Add openmpi to Requires

* Sat Jan 02 2021 ghibo <ghibo> 11.2.0-2.mga8.nonfree
+ Revision: 1668239
- Re-enable cudaNvSci sample, fixed upstream

* Fri Jan 01 2021 ghibo <ghibo> 11.2.0-1.mga8.nonfree
+ Revision: 1668009
- Update to release 11.2.0

* Tue Jun 30 2020 ghibo <ghibo> 10.2.89-1.mga8.nonfree
+ Revision: 1600558
- Lower compatibility level to gnu++03
- Update to release 10.2.89

* Sun May 10 2020 ghibo <ghibo> 10.1.243-2.mga8.nonfree
+ Revision: 1582812
- Fix building with g++ 10.x
- Update to release 10.1.243
+ umeabot <umeabot>
- Mageia 8 Mass Rebuild

* Sun May 19 2019 ghibo <ghibo> 10.1.168-1.mga7.nonfree
+ Revision: 1398526
- Update to release 10.1.168

* Thu Mar 21 2019 ghibo <ghibo> 10.1.105-4.mga7.nonfree
+ Revision: 1379441
- Remove explicit nvidia in Requires (seems no longer working after
  nvidia-current upgrade).
- Rebuilt.

* Wed Mar 20 2019 ghibo <ghibo> 10.1.105-3.mga7.nonfree
+ Revision: 1379188
- Add lib egl dependencies in BuildRequires

* Wed Mar 20 2019 ghibo <ghibo> 10.1.105-2.mga7.nonfree
+ Revision: 1379157
- Add missed libgomp-devel

* Tue Mar 19 2019 ghibo <ghibo> 10.1.105-1.mga7.nonfree
+ Revision: 1379013
- Use %%make_build
- Limit number of parallel cuda process during building
- imported package nvidia-cuda-toolkit-samples-bins


* Fri Mar 15 2019 ghibo <ghibo> 10.1.105-1.mga7
- Initial release.