File lomoco.spec of Package lomoco

#
# spec file for package lomoco (Version 1.0)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild
# icecream 0


Name:           lomoco
BuildRequires:  udev
%if %suse_version > 1020
BuildRequires:  libusb-devel
%else
BuildRequires:  libusb
%endif
%if %suse_version > 1000
%define udev_scripts_dir /lib/udev
%else
%define udev_scripts_dir /etc/udev/scripts
%endif
License:        GPL v2 or later
Url:            http://lomoco.linux-gamers.net/
Group:          Hardware/Other
Version:        1.0
Release:        99
Summary:        Tool for setting the special features of some Logitech mice
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Requires:       udev
Conflicts:      logitech_applet, lmctl
Provides:       lmctl:/usr/bin/lmctl
Patch:          lomoco.diff
Patch1:         lomoco-udev-1030.diff
Source:         lomoco-1.0.tar.gz
Source2:        tohal.awk
Source3:        sysconfig.logitech_mouse
Source4:        tomodalias.awk
Source5:        udev.lomoco
Supplements:    modalias(usb:v046DpC00E*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC00F*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC012*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC01D*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC01E*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC024*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC01B*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC025*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC031*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC041*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC501*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC502*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC503*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC504*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC505*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC506*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC508*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC702*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC704*dc*dsc*dp*ic*isc*ip*) modalias(usb:v046DpC50E*dc*dsc*dp*ic*isc*ip*)

%description
lomoco can configure vendor-specific options on Logitech USB mice (or
dual-personality mice plugged into the USB port). A number of recent
devices are supported. The program is mostly useful in setting the
resolution to 800 cpi on mice that boot at 400 cpi (such as the
MX-500), and disabling SmartScroll or Cruise Control for those who
would rather use the two extra buttons as ordinary mouse buttons.

You can configure which features should be enabled in
/etc/sysconfig/logitech_mouse



Authors:
--------
    Andreas Schneider
    Tobias Schleuss
    Alexios Chouchoulas

%prep
%setup -n lomoco-1.0
%if %suse_version > 1000
%patch -p0
%endif
%if %suse_version > 1020
%patch1 -p0
%endif

%build
./autogen.sh
%configure
%__make
awk -f udev/toudev.awk < src/lomoco.c \
	| sed 's,RUN="lomoco",RUN="%{udev_scripts_dir}/lomoco.sh",' \
	> lomoco.rules
awk -f %{SOURCE2} < src/lomoco.c > lomoco.fdi

%install
%makeinstall
%__install -d -m 755 %{buildroot}/etc/udev/scripts
%__install -d -m 755 %{buildroot}/etc/udev/rules.d
%__install -d -m 755 %{buildroot}%{_datadir}/hal/fdi/policy/10osvendor
%__install -d -m 755 %{buildroot}/var/adm/fillup-templates
%__install -m 644 lomoco.rules %{buildroot}/etc/udev/rules.d/40-lomoco.rules
%__install -m 644 lomoco.fdi %{buildroot}%{_datadir}/hal/fdi/policy/10osvendor/50-lomoco.fdi
%__install -d -m 755 %{buildroot}%{udev_scripts_dir}
%__install -m 644 %{SOURCE3} %{buildroot}/var/adm/fillup-templates
%if %suse_version > 1020
%__install -m 755 %{SOURCE5} %{buildroot}%{udev_scripts_dir}/lomoco.sh
%else
%__install -m 755 udev/udev.lomoco %{buildroot}%{udev_scripts_dir}/lomoco.sh
%endif

%clean
%__rm -rf %{buildroot}

%post
%fillup_only -n logitech_mouse

%files
%defattr(-,root,root)
%doc AUTHORS ChangeLog COPYING INSTALL README 
%dir %{udev_scripts_dir}
%{udev_scripts_dir}/lomoco.sh
%config(noreplace) /etc/udev/rules.d/*
%{_bindir}/lomoco
%{_mandir}/man?/lomoco.*
%{_datadir}/hal
/var/adm/fillup-templates/sysconfig.logitech_mouse

%changelog
* Tue Sep 30 2008 kukuk@suse.de
- Fix libusb BuildRequires
* Fri Aug 22 2008 lnussel@suse.de
- remove resmgr from BuildRequires
* Tue Apr 08 2008 anschneider@suse.de
- Remove #!/bin/bash from fillup-template
* Mon Nov 26 2007 anschneider@suse.de
- Fix udev rules for newer releases; [#332513].
- Fix udev script for newer releases; [#332506].
- Fix resmgr rules for newer releases; [#332513].
* Mon Jul 30 2007 anschneider@suse.de
- Update to version 1.0
  * Update udev rules and script for latest version; fixes (#295526)
  * Added patch for the MX518, MX510, MX310, MX3100
  * Added lomoco.xml manpage template
  * Updated udev support, thanks to Ludwig Nussel
  * Fixed memory leaks
- Fix unitialized buffer
- Fix BuildRequires for later versions
* Wed May 16 2007 olh@suse.de
- Buildrequires libusb -> libusb-devel
* Fri Mar 10 2006 lnussel@suse.de
- add modalias to Supplements (#156864)
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Mon Jan 16 2006 lnussel@suse.de
- create fdi file that matches logitech mice usbraw interfaces and
  adds them as class imput to resmgr
* Tue Jan 10 2006 lnussel@suse.de
- use SUBSYSTEM=="usb_device" to match udev events (#142023)
* Mon Jan 09 2006 lnussel@suse.de
- switch to lmctl successor project lomoco
* Mon Aug 29 2005 ro@suse.de
- added directory to filelist
* Thu Aug 25 2005 lnussel@suse.de
- add support for the MX310 (#112796)
* Fri Jul 29 2005 lnussel@suse.de
- new package with patches from Andreas Schneider,
  replaces logitech_applet (#99237)