%if 0%{?fedora} %global buildforkernels akmod %endif %global debug_package %{nil} %global commit 6164bc3dec24b6bb2806eedd269df6a170bcc930 %global short_commit %(echo %{commit} | cut -c1-9) %global prjname framework-laptop Name: %{prjname}-kmod Summary: Kernel module to expose more Framework Laptop stuff Version: 0 Release: 1+%{short_commit}%{?dist} License: GPLv2+ URL: https://github.com/DHowett/framework-laptop-kmod Source0: %{url}/archive/%{commit}.tar.gz#/%{prjname}-%{commit}.tar.gz BuildRequires: gcc BuildRequires: elfutils-libelf-devel BuildRequires: kmodtool # kmodtool does its magic here %{expand:%(kmodtool --target %{_target_cpu} --kmodname %{prjname} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description A kernel module that exposes the Framework Laptop (13, 16)'s battery charge limit and LEDs to userspace. This package contains the kmod module for %{prjname}. %prep # error out if there was something wrong with kmodtool %{?kmodtool_check} # print kmodtool output for debugging purposes: kmodtool --target %{_target_cpu} --kmodname %{prjname} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -c %{name}-%{commmt} -N for kernel_version in %{?kernel_versions} ; do cp -a xone-%{commit} _kmod_build_${kernel_version%%___*} done %build for kernel_version in %{?kernel_versions} ; do make V=1 %{?_smp_mflags} -C ${kernel_version##*___} M=${PWD}/_kmod_build_${kernel_version%%___*} VERSION=v%{version} modules done %install for kernel_version in %{?kernel_versions}; do mkdir -p %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ install -D -m 755 _kmod_build_${kernel_version%%___*}/*.ko %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ chmod a+x %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/*.ko done %{?akmod_install} %check # Nothing to check %changelog * Sun Jul 27 2025 Jan200101 - 0-1+6164bc3de - initial spec