diff --git a/.gitignore b/.gitignore index 3ac48e1..243ce07 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,3 @@ /rocm-examples-6.4.0.tar.gz /rocm-examples-6.4.1.tar.gz /rocm-examples-6.4.2.tar.gz -/rocm-examples-7.0.1.tar.gz -/rocm-examples-7.0.2.tar.gz -/rocm-examples-7.1.0.tar.gz diff --git a/rocm-examples.spec b/rocm-examples.spec index 1278ae5..9d669e1 100644 --- a/rocm-examples.spec +++ b/rocm-examples.spec @@ -1,42 +1,8 @@ -# -# Copyright Fedora Project Authors. -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# %global upstreamname rocm-examples -%global rocm_release 7.1 -%global rocm_patch 0 +%global rocm_release 6.4 +%global rocm_patch 2 %global rocm_version %{rocm_release}.%{rocm_patch} -%bcond_with compat -%if %{with compat} -%global pkg_libdir lib -%global pkg_prefix %{_prefix}/lib64/rocm/rocm-%{rocm_release} -%global pkg_suffix -%{rocm_release} -%global pkg_module rocm%{pkg_suffix} -%else -%global pkg_libdir %{_lib} -%global pkg_prefix %{_prefix} -%global pkg_suffix %{nil} -%global pkg_module default -%endif - %global toolchain rocm # hipcc does not support some clang flags @@ -57,12 +23,7 @@ %global _source_payload w7T0.xzdio %global _binary_payload w7T0.xzdio -# some example cmake's do not like :xnack suffix -# reduce the default list -%global gpu_list %rocm_gpu_list_test -%global _gpu_list gfx1100 - -Name: rocm-examples%{pkg_suffix} +Name: rocm-examples Version: %{rocm_version} Release: 2%{?dist} Summary: A collection of examples for the ROCm software stack @@ -78,22 +39,21 @@ Source0: %{url}/archive/rocm-%{version}.tar.gz#/%{upstreamname}-%{version BuildRequires: cmake BuildRequires: gcc-c++ -BuildRequires: hipblas%{pkg_suffix}-devel -BuildRequires: hipcub%{pkg_suffix}-devel -BuildRequires: hipfft%{pkg_suffix}-devel -BuildRequires: hipify%{pkg_suffix} -BuildRequires: hiprand%{pkg_suffix}-devel -BuildRequires: hipsolver%{pkg_suffix}-devel -BuildRequires: rocm-comgr%{pkg_suffix}-devel -BuildRequires: rocm-compilersupport%{pkg_suffix}-macros -BuildRequires: rocm-hip%{pkg_suffix}-devel -BuildRequires: rocm-runtime%{pkg_suffix}-devel -BuildRequires: rocm-rpm-macros%{pkg_suffix} -BuildRequires: rocblas%{pkg_suffix}-devel -BuildRequires: rocfft%{pkg_suffix}-devel -BuildRequires: rocsolver%{pkg_suffix}-devel -BuildRequires: rocsparse%{pkg_suffix}-devel -BuildRequires: rocthrust%{pkg_suffix}-devel +BuildRequires: hipblas-devel +BuildRequires: hipcub-devel +BuildRequires: hipfft-devel +BuildRequires: hipify +BuildRequires: hiprand-devel +BuildRequires: hipsolver-devel +BuildRequires: rocm-comgr-devel +BuildRequires: rocm-hip-devel +BuildRequires: rocm-runtime-devel +BuildRequires: rocm-rpm-macros +BuildRequires: rocblas-devel +BuildRequires: rocfft-devel +BuildRequires: rocsolver-devel +BuildRequires: rocsparse-devel +BuildRequires: rocthrust-devel %if 0%{?suse_version} BuildRequires: benchmark-devel @@ -134,16 +94,14 @@ The examples are structured in several categories: # No External, not going to bundle things outside of this project. # Not having glfw-devel turns off building examples that use External/glad -# -# Need to keep CmdParser -rm -rf External/{glad,KHR} +rm -rf External/ # https://github.com/ROCm/rocm-examples/issues/217 for f in `find . -name 'CMakeLists.txt'`; do - sed -i -e 's@/opt/rocm@%{pkg_prefix}@' $f + sed -i -e 's@opt/rocm@usr@' $f done for f in `find . -name 'Makefile'`; do - sed -i -e 's@/opt/rocm@%{pkg_prefix}@' $f + sed -i -e 's@opt/rocm@usr@' $f done # On SLE 15.6 @@ -156,24 +114,11 @@ sed -i -e 's@add_subdirectory(module_api)@message("no module_api")@' HIP-Basi %endif %endif -# Some custom commands need to use hip_flags -sed -i -e 's@${CMAKE_HIP_COMPILER}@${CMAKE_HIP_COMPILER} -I%{pkg_prefix}/include@' HIP-Basic/llvm_ir_to_executable/CMakeLists.txt - %build - -export ROCM_ROOT=%{pkg_prefix} - %cmake \ - -DCMAKE_C_COMPILER=%rocmllvm_bindir/amdclang \ - -DCMAKE_CXX_COMPILER=%rocmllvm_bindir/amdclang++ \ - -DCMAKE_CXX_FLAGS="-I %{pkg_prefix}/include" \ - -DCMAKE_INSTALL_LIBDIR=%{pkg_libdir} \ - -DCMAKE_INSTALL_PREFIX=%{pkg_prefix} \ - -DCMAKE_HIP_ARCHITECTURES=%{gpu_list} \ - -DCMAKE_HIP_COMPILER=%rocmllvm_bindir/amdclang++ \ - -DCMAKE_HIP_COMPILER_ROCM_ROOT=%{pkg_prefix} \ - -DCMAKE_HIP_FLAGS="-I %{pkg_prefix}/include" \ - -DGPU_TARGETS=%{gpu_list} \ + -DCMAKE_CXX_COMPILER=hipcc \ + -DCMAKE_HIP_ARCHITECTURES=%{rocm_gpu_list_default} \ + -DAMDGPU_TARGETS=%{rocm_gpu_list_default} \ -DCMAKE_BUILD_TYPE=%{build_type} \ -DHIP_PLATFORM=amd @@ -185,24 +130,9 @@ export ROCM_ROOT=%{pkg_prefix} %files %license LICENSE.md %doc README.md -%{pkg_prefix}/bin/* +%{_bindir}/* %changelog -* Wed Dec 24 2025 Tom Rix - 7.1.0-2 -- Add --with compat - -* Fri Oct 31 2025 Tom Rix - 7.1.0-1 -- Update to 7.1.0 - -* Sat Oct 11 2025 Tom Rix - 7.0.2-1 -- Update to 7.0.2 - -* Sun Sep 21 2025 Tom Rix - 7.0.1-1 -- Update to 7.0.1 - -* Thu Aug 28 2025 Tom Rix - 6.4.2-3 -- Add Fedora copyright - * Wed Jul 30 2025 Tom Rix - 6.4.2-2 - Remove -mtls-dialect cflag diff --git a/sources b/sources index f97ee77..2260df9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (rocm-examples-7.1.0.tar.gz) = 905261202d04896a737730f69b383f7d44557d287c90f36144ac8a421ebd104a7d884cce607058e735da80f7ce2a2509eaec0c84d9ca513de6ca18424e049a71 +SHA512 (rocm-examples-6.4.2.tar.gz) = 487cf15961cf29348d249d757e0204b849f3cd6bce0c201a8de4dda6367dbf62e7287df7c6b6fad534382ead738f68b69202f6c62eec5c037916dd952a24e1d2