ExclusiveArch: aarch64 Name: linux-sm8150 Version: 6.14 Release: 7%{?dist} Summary: Fedora‑style Linux kernel, modules and headers for Qualcomm SM8150 License: GPLv2 URL: https://gitlab.com/sm8150-mainline/linux Source0: %{url}/-/archive/sm8150/%{version}/linux-sm8150-%{version}.tar.gz BuildRequires: bc bison dwarves diffutils elfutils-devel findutils gcc gcc-c++ \ git-core hmaccalc hostname make openssl-devel perl-interpreter \ rsync tar which flex bzip2 xz zstd \ python3 python3-devel python3-pyyaml rust rust-src bindgen rustfmt clippy \ opencsd-devel net-tools Provides: kernel = %{version}-%{release} Provides: kernel-core = %{version}-%{release} Provides: kernel-modules = %{version}-%{release} Provides: kernel-devel = %{version}-%{release} Provides: kernel-headers = %{version}-%{release} %description Mainline kernel for sm8150 (qcom snapdragon 855/860) devices. %prep %autosetup -n linux-sm8150-%{version} make defconfig sm8150.config %global uname_r %(make -s kernelrelease EXTRAVERSION="-%{release}") %build cat >> .config <<'EOF' CONFIG_FW_LOADER_COMPRESS=y CONFIG_FW_LOADER_COMPRESS_XZ=y CONFIG_FW_LOADER_COMPRESS_ZSTD=y CONFIG_OF_RESOLVE=y CONFIG_OF_OVERLAY=y EOF make EXTRAVERSION="-%{release}" -j%{?_smp_build_ncpus} %install make EXTRAVERSION="-%{release}" \ INSTALL_PATH=%{buildroot}/usr/lib/modules/%{uname_r} \ INSTALL_MOD_PATH=%{buildroot}/usr \ INSTALL_HDR_PATH=%{buildroot}/usr \ modules_install headers_install install install -Dm644 System.map %{buildroot}/usr/lib/modules/%{uname_r}/System.map install -Dm644 .config %{buildroot}/usr/lib/modules/%{uname_r}/config if [ -d arch/arm64/boot/dts ]; then mkdir -p %{buildroot}/usr/lib/modules/%{uname_r}/dtb cp -a arch/arm64/boot/dts/*.dtb \ %{buildroot}/usr/lib/modules/%{uname_r}/dtb/ fi install -d %{buildroot}/boot ln -sr %{buildroot}/usr/lib/modules/%{uname_r}/vmlinuz \ %{buildroot}/boot/vmlinuz-%{uname_r} install -d %{buildroot}/usr/lib/ostree-boot touch %{buildroot}/usr/lib/modules/%{uname_r}/initramfs.img ln -s ../modules/%{uname_r}/vmlinuz \ %{buildroot}/usr/lib/ostree-boot/vmlinuz-%{uname_r} ln -s ../modules/%{uname_r}/initramfs.img \ %{buildroot}/usr/lib/ostree-boot/initramfs-%{uname_r}.img %files %license COPYING /boot/vmlinuz-%{uname_r} /usr/lib/modules/%{uname_r} /usr/lib/ostree-boot/vmlinuz-%{uname_r} /usr/lib/ostree-boot/initramfs-%{uname_r}.img /usr/include # installed by ‘headers_install’ %posttrans set -e uname_r=%{uname_r} depmod -a "${uname_r}" || : dracut -v --force "/usr/lib/modules/${uname_r}/initramfs.img" "${uname_r}" ln -sf "../modules/${uname_r}/initramfs.img" "/usr/lib/ostree-boot/initramfs-${uname_r}.img" kernel-install add "${uname_r}" "/usr/lib/modules/${uname_r}/vmlinuz" "/usr/lib/modules/${uname_r}/initramfs.img" || : %postun if [ "$1" -eq 0 ] ; then kernel-install remove %{uname_r} || : fi %changelog * Fri Jul 25 2025 gmanka 6.14-7 - Adopt Fedora kernel‑core file layout - Generate initramfs + BLS in %posttrans so bootc images are bootable - Provide virtual ‘kernel*’ names to satisfy dependencies