Skip to content

Instantly share code, notes, and snippets.

@n0ts
Created December 14, 2011 10:52
Show Gist options
  • Save n0ts/1476106 to your computer and use it in GitHub Desktop.
Save n0ts/1476106 to your computer and use it in GitHub Desktop.
kmod-usbrh.spec
Source10: kmodtool
%{!?kversion: %define kversion %(uname -r)}
# hint: this can be overridden with "--define kversion foo" on rpmbuild, e.g.
# --define "kversion 2.6.18-128.el5"
%define kmod_name usbrh
%define kverrel %(%{kmodtool} verrel %{?kversion} 2>/dev/null)
%define upvar ""
%ifarch i686 x86_64 ia64
%define xenvar xen
%endif
%ifarch i686
%define paevar PAE
%endif
%{!?kvariants: %define kvariants %{?upvar} %{?xenvar} %{?paevar}}
# hint: this can be overridden with "--define kvariants foo" on rpmbuild, e.g.
# --define 'kvariants "" PAE'
Name: %{kmod_name}-kmod
Version: 0.0.8
Release: 1%{?dist}
Summary: kernel module for USB hygrometer / thermometer USB-RH
Group: System Environment/Kernel
License: GPL
URL: http://acapulco.dyndns.org/usbrh/
Source0: http://acapulco.dyndns.org/usbrh/usbrh-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: sed
ExclusiveOS: linux
ExclusiveArch: %{ix86} x86_64
%description
USB-RH is a hygrometer / thermometer connected via USB.
# magic hidden here:
%{expand:%(%{kmodtool} rpmtemplate_kmp %{kmod_name} %{kverrel} %{kvariants} 2>/dev/null)}
%prep
%setup -q -c -T -a 0
sed -i -e "/etc\/udev/d" %{kmod_name}-%{version}/Makefile
sed -i -e "/etc\/modprobe/d" %{kmod_name}-%{version}/Makefile
for kvariant in %{kvariants}; do
cp -a %{kmod_name}-%{version} _kmod_build_$kvariant
done
cd %{kmod_name}-%{version}
%build
[ -n $RPM_BUILD_ROOT -a "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
mkdir -p %{buildroot}
for kvariant in %{kvariants}; do
ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu}
pushd _kmod_build_$kvariant
make TOPDIR=${ksrc} all %{?_smp_mflags}
popd
done
%install
for kvariant in %{kvariants}; do
ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu}
pushd _kmod_build_$kvariant
make TOPDIR=${ksrc} INSTALL_MOD_PATH=$RPM_BUILD_ROOT INSTALL_MOD_DIR=extra/%{kmod_name} install %{?_smp_mflags}
popd
done
find $RPM_BUILD_ROOT -type f -name \*.ko -exec strip --strip-debug \{\} \;
mkdir -p $RPM_BUILD_ROOT/etc/udev/rules.d/
cp %{_builddir}/%{name}-%{version}/_kmod_build_/util/10-usbrh.rules $RPM_BUILD_ROOT/etc/udev/rules.d/
mkdir -p $RPM_BUILD_ROOT/etc/modprobe.d/
cp %{_builddir}/%{name}-%{version}/_kmod_build_/util/usbrh.conf $RPM_BUILD_ROOT/etc/modprobe.d/
find ${RPM_BUILD_ROOT} -type f > files.list
sed -i -e "s|$RPM_BUILD_ROOT||" files.list
%clean
[ -n $RPM_BUILD_ROOT -a "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
%files -f files.list
%changelog
* Wed Oct 14 2011 Naoya Nakazawa - 0.0.8-1
- Updated to version 0.0.8
* Fri Jul 24 2009 dayflower - 0.0.7-1
- Initial release
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment