File rocm-rpm-macros.spec of Package rocm-rpm-macros

Name:           rocm-rpm-macros
Version:        6.2.2
%if 0%{?is_opensuse} || 0%{?rhel} && 0%{?rhel} < 10
Release:    1%{?dist}
%else
Release:        %autorelease
%endif
Summary:        ROCm RPM macros
License:        GPL-2.0-or-later

URL:            https://github.com/trixirt/rocm-rpm-macros
Source0:        macros.rocm
Source1:        GPL
# Modules
Source2:        default
Source3:        gfx8
Source4:        gfx9
Source5:        gfx10
Source6:        gfx11
Source7:        gfx906
Source8:        gfx908
Source9:        gfx90a
Source10:       gfx942
Source11:       gfx1031
Source12:       gfx1036
Source13:       gfx1100
Source14:       gfx1101
Source15:       gfx1102
Source16:       gfx1103
Source17:       default.rhel

%global gpu_list gfx8 gfx9 gfx10 gfx11 gfx90a gfx942 gfx1100 gfx1103

# Just some files
%global debug_package %{nil}

%if 0%{?is_opensuse}
Requires:       Modules
%else
Requires:       environment-modules
%endif
ExclusiveArch:  x86_64
%description
This package contains ROCm RPM macros for building ROCm packages.

# To use, run
# $> source /etc/profile.d/modules.sh
%package modules
Summary: ROCm enviroment modules
%if 0%{?is_opensuse}
Requires:       Modules
%else
Requires: environment(modules)
Requires: cmake-filesystem
%endif

%description modules
This package contains ROCm environment modules for switching
between different GPU families.

%prep
%setup -cT
install -pm 644 %{SOURCE0} .
install -pm 644 %{SOURCE1} .
mkdir modules
install -pm 644 %{SOURCE2} modules
install -pm 644 %{SOURCE3} modules
install -pm 644 %{SOURCE4} modules
install -pm 644 %{SOURCE5} modules
install -pm 644 %{SOURCE6} modules
install -pm 644 %{SOURCE7} modules
install -pm 644 %{SOURCE8} modules
install -pm 644 %{SOURCE9} modules
install -pm 644 %{SOURCE10} modules
install -pm 644 %{SOURCE11} modules
install -pm 644 %{SOURCE12} modules
install -pm 644 %{SOURCE13} modules
install -pm 644 %{SOURCE14} modules
install -pm 644 %{SOURCE15} modules
install -pm 644 %{SOURCE16} modules

%install
mkdir -p %{buildroot}%{_rpmmacrodir}/
install -Dpm 644 %{SOURCE0} %{buildroot}%{_rpmmacrodir}/
%if 0%{?is_opensuse}
mkdir -p %{buildroot}%{_datadir}/modules/rocm/
cp -p modules/* %{buildroot}%{_datadir}/modules/rocm/
%else
mkdir -p %{buildroot}%{_datadir}/modulefiles/rocm/
cp -p modules/* %{buildroot}%{_datadir}/modulefiles/rocm/
%endif
# Make directories users of modules will install to
for gpu in %{gpu_list}
do
    mkdir -p %{buildroot}%{_libdir}/rocm/$gpu/lib/cmake
    mkdir -p %{buildroot}%{_libdir}/rocm/$gpu/bin
done

%files
%license GPL
%{_rpmmacrodir}/macros.rocm

%files modules
%license GPL
%{_libdir}/rocm
%if 0%{?is_opensuse}
%{_datadir}/modules
%else
%{_datadir}/modulefiles/rocm/
%endif

%changelog
%if 0%{?is_opensuse}
* Sun Nov 10 2024 Tom Rix <Tom.Rix@amd.com> - 6.2.1-1
- Stub for tumbleweed

%else
%autochangelog
%endif

openSUSE Build Service is sponsored by