mirror of
https://github.com/terrapkg/packages.git
synced 2026-06-02 09:52:18 +00:00
70 lines
3.0 KiB
RPMSpec
70 lines
3.0 KiB
RPMSpec
# The reason why this package is a separate from the main one despite using the same sources
|
|
# is because akmods use the srpm to build the kmod package, and if the kmod package is included
|
|
# in the main package, akmods will reinstall the userspace package every time the kernel is updated.
|
|
|
|
%if 0%{?fedora}
|
|
%global buildforkernels akmod
|
|
%global debug_package %{nil}
|
|
%endif
|
|
|
|
%global commit 35d0eb44f00d73e6cc62646a557cf9728749eaf6
|
|
%global commitdate 20260421
|
|
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
|
%global modulename logitech-rs50-linux-driver
|
|
|
|
Name: %{modulename}-kmod
|
|
Version: 1.0^%{commitdate}git.%{shortcommit}
|
|
Release: 1%{?dist}
|
|
Summary: Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276)
|
|
License: GPL-2.0-only
|
|
URL: https://github.com/mescon/logitech-rs50-linux-driver
|
|
Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz
|
|
BuildArch: x86_64
|
|
BuildRequires: gcc
|
|
BuildRequires: make
|
|
BuildRequires: kmodtool
|
|
|
|
Requires: akmods
|
|
Requires: %{modulename} = %{?epoch:%{epoch}:}%{version}
|
|
Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version}
|
|
Requires: kernel-devel
|
|
Conflicts: dkms-%{modulename}
|
|
|
|
%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) }
|
|
|
|
%description
|
|
Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276).
|
|
This is a patched version of the hid-logitech-hidpp driver that adds RS50 support with force feedback (FF_CONSTANT) and exposes all G Hub settings via sysfs for runtime configuration.
|
|
Note: This driver replaces the in-kernel hid-logitech-hidpp module and continues to support all other Logitech HID++ devices (mice, keyboards, other racing wheels like the G29, G920, G923, etc.).
|
|
|
|
%prep
|
|
# error out if there was something wrong with kmodtool
|
|
%{?kmodtool_check}
|
|
|
|
# print kmodtool output for debugging purposes:
|
|
kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null
|
|
|
|
%setup -q -c -n %{modulename}-%{commit}
|
|
|
|
mv %{modulename}-%{commit}/mainline/* %{modulename}-%{commit}/
|
|
|
|
for kernel_version in %{?kernel_versions} ; do
|
|
cp -a %{modulename}-%{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%%___*}/hid-logitech-hidpp.ko %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/
|
|
chmod a+x %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/hid-logitech-hidpp.ko
|
|
done
|
|
%{?akmod_install}
|
|
|
|
%changelog
|
|
%autochangelog
|