# Default definitions. These can be overridden by passing arguments to rpmbuild # e.g., rpmbuild --define "package_version 6.12.0-176.qcom" %{!?package_version: %global package_version 6.12.0-176.qcom} %{!?srcrev: %global srcrev 805907993a14106abe8a7caafaf44c1ed59ac6a2} %global kernel_version %{package_version}%{?dist}.%{_arch} %global kernel_release %(echo %{package_version} | tr '-' '_') %define shortcommit %(c=%{srcrev}; echo ${c:0:7}) %global kmodtool_generate_buildreqs 1 Name: qcom-scmi Version: 2^%{shortcommit} Release: 1_%{kernel_release} Summary: Qualcomm SCMI compatible kernel modules License: GPLv2 URL: https://gitlab.com/CentOS/automotive/src/kmod-qcom-scmi.git Source: https://gitlab.com/CentOS/automotive/src/kmod-qcom-scmi/-/archive/el10iv/kmod-qcom-scmi-%{srcrev}.tar.gz ExclusiveArch: aarch64 BuildRequires: (( kernel-devel-uname-r = %{kernel_version} ) or ( kernel-devel-uname-r = %{kernel_version}+automotive )) BuildRequires: (( kernel-devel-priv-uname-r = %{kernel_version} ) or ( kernel-devel-priv-uname-r = %{kernel_version}+automotive )) BuildRequires: redhat-rpm-config kernel-rpm-macros elfutils-libelf-devel kmod rsync %global compression zstd %global compression_flags --rm %global compext zst # KMP provides __brp_kmod_compress hook to compress the modules. # Something is odd with debuginfo. The debugfiles.list is correctly populated # (*.ko-.debug), yet the debuginfo package will not grab the listed debug # files unless we modify their filenames to have the matching extension. %define __brp_kmod_compress \ find %{buildroot}/lib/modules -type f -name '*.ko' -exec %{compression} %{compression_flags} {} \\; \ while read -r f; do \ mv "$f" "${f//\.ko/.ko.%{compext}}" \ done < <(find %{buildroot}/usr/lib/debug/lib/modules -type f -name '*.ko*.debug') %kernel_module_package %description %{summary} %package -n kmod-%{name}-devel Summary: Development package for building kernel modules to match the %{kernel_version} kernel. Requires: (( kernel-devel-uname-r = %{kernel_version} ) or ( kernel-devel-uname-r = %{kernel_version}+automotive )) Requires: (( kernel-devel-priv-uname-r = %{kernel_version} ) or ( kernel-devel-priv-uname-r = %{kernel_version}+automotive )) Provides: kmod-%{name}-devel-uname-r = %{kernel_version} %description -n kmod-%{name}-devel %{summary} %package -n kmod-%{name}-headers Summary: Header files for %{name} for use by user space software. %description -n kmod-%{name}-headers %{summary} %prep %setup -T -b 0 -q -n kmod-qcom-scmi-%{srcrev} %build %make_build KERNEL_SRC=%{kernel_source default} modules %install %make_build KERNEL_SRC=%{kernel_source default} INSTALL_MOD_PATH=%{buildroot} DEPMOD=/usr/bin/true modules_install %make_build KERNEL_VERSION=%{kernel_version} INSTALL_HDR_PATH=%{buildroot} headers_install %files -n kmod-%{name}-devel %{_usrsrc}/kernels/%{kernel_version}/ %files -n kmod-%{name}-headers %{_includedir}/ %changelog * Fri Jan 09 2026 Eric Chanudet 2^8059079-1 - dma-buf: heaps: qcom: move dt-bindings to downstream-dtbs * Thu Dec 18 2025 Eric Chanudet 1^5e57098-1_6.12.0-176.qcom - spec: add devel and headers packages - makefile: install kernel devel and uapi headers * Fri Dec 05 2025 Eric Chanudet 0^a1e809ea-1_6.12.0-150.qcom - spec: refactor dist/version handling. * Mon Feb 17 2025 Eric Chanudet 5.14.0-569.517.2-2 - spec: upgrade to next kernel version * Thu Feb 13 2025 Eric Chanudet 5.14.0-563.511.2-2 - spec: compress modules - spec: upgrade kmod to the next version * Wed Jan 22 2025 Eric Chanudet 5.14.0~549.498.1-1 - spec: initial packaging