%define DMIVER 2.9 %define PCIVER 2.2.4 %define CURLVER 7.18.1 %define LIBUSBVER 1.0.8 %define PKG hardware4linux.info %define top /opt/%PKG %define _docdir %top/doc Summary: Collect system informations for the hardware4linux.info site Name: lsb-hardware4linux.info-collector Version: 0.11.0 Release: 1 Source0: http://download.savannah.gnu.org/releases/dmidecode/dmidecode-%{DMIVER}.tar.bz2 Source1: http://download.savannah.gnu.org/releases/dmidecode/dmidecode-%{DMIVER}.tar.bz2.sig Source2: hwreport-%{version}.tar.bz2 Source3: ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/pciutils-%{PCIVER}.tar.gz Source4: http://curl.haxx.se/download/curl-7.18.1.tar.bz2 Source5: libusb-1.0.8.tar.bz2 Patch0: lsb-hardware4linux.info-collector-0.6-lsb-386.patch Patch1: lsb-hardware4linux.info-collector-0.11-libusb.patch Packager: Frederic Lepied Requires: lsb >= 3.0 AutoReq: no License: GPL Group: System/Kernel and hardware Url: http://hardware4linux.info/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot %description Collect system informations for the hardware4linux.info site. %package auto Summary: Automatic and anonymous upload to hardware4linux.info Group: System/Kernel and hardware Requires: lsb-hardware4linux.info-collector = %{version}-%{release} %description auto Send periodically a report in an anonymous way to http://hardware4linux.info/ to help profile the systems running Linux. The report is sent only when something has changed. %prep %setup -q -c -n %name-%version -a2 -a3 -a4 -a5 %patch0 -p1 -b .lsb-386 %patch1 -p1 -b .libusb %build PATH=/opt/lsb/bin:$PATH export PATH export CFLAGS=-fno-stack-protector cd libusb-%LIBUSBVER CC=lsbcc ./configure --prefix=%top make -j`getconf _NPROCESSORS_ONLN` cd .. cd hwreport-%version lsbcc $CFLAGS -o scan-printers scan-printers.c lsbcc $CFLAGS -I../libusb-%LIBUSBVER/libusb -o reportusb reportusb.c ../libusb-%LIBUSBVER/libusb/.libs/libusb-1.0.a -lrt -lc cd .. cd dmidecode-%{DMIVER} make CC=lsbcc CFLAGS="$CFLAGS" cd .. cd pciutils-%{PCIVER} make CC="lsbcc -D__KERNEL_STRICT_NAMES -D__GLIBC__=2 -D__GLIBC_MINOR__=4 -O2 $CFLAGS" cd .. cd curl-%CURLVER CC=lsbcc ./configure --prefix=%top --without-zlib --without-libidn make -j`getconf _NPROCESSORS_ONLN` cd .. %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%top/sbin $RPM_BUILD_ROOT%top/lib $RPM_BUILD_ROOT/etc/cron.daily $RPM_BUILD_ROOT/var/opt/%PKG install hwreport-%version/scan-printers $RPM_BUILD_ROOT%top/lib/ install hwreport-%version/reportusb $RPM_BUILD_ROOT%top/lib/ install hwreport-%version/osinfo $RPM_BUILD_ROOT%top/lib/ install hwreport-%version/hwreport $RPM_BUILD_ROOT%top/sbin/ install dmidecode-%{DMIVER}/dmidecode $RPM_BUILD_ROOT%top/lib/ install pciutils-%{PCIVER}/lspci $RPM_BUILD_ROOT%top/lib/ perl -p -i -e 's@/usr/lib/hwreport@%top/lib@' $RPM_BUILD_ROOT%top/bin/hwreport install hwreport-%version/cron.sh $RPM_BUILD_ROOT/etc/cron.daily/%PKG perl -p -i -e "s@/var/lib/hwreport@/var/opt/%PKG@" $RPM_BUILD_ROOT/etc/cron.daily/%PKG perl -p -i -e "s@/usr/sbin@%top/sbin@" $RPM_BUILD_ROOT/etc/cron.daily/%PKG cd curl-%CURLVER make install DESTDIR=$RPM_BUILD_ROOT mv $RPM_BUILD_ROOT%top/bin/curl $RPM_BUILD_ROOT%top/lib/ rm -rf $RPM_BUILD_ROOT%top/share $RPM_BUILD_ROOT%top/lib/*.a $RPM_BUILD_ROOT%top/lib/*.la $RPM_BUILD_ROOT%top/lib/pkgconfig $RPM_BUILD_ROOT%top/include $RPM_BUILD_ROOT%top/bin %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc hwreport-%version/LICENSE hwreport-%version/README %top/sbin/hwreport %top/lib/dmidecode %top/lib/lspci %top/lib/scan-printers %top/lib/reportusb %top/lib/osinfo %files auto %defattr(-,root,root) /var/opt/%PKG %config(noreplace) /etc/cron.daily/%PKG %top/lib/*curl* %changelog * Thu May 1 2008 Frederic Lepied 0.10.0-1 - create a cron entry to periodically send a report in an anonymous way. It is sent only when something has changed. - bring a curl binary in the package as curl isn't part of LSB. - put the automatic upload machinery in a separate package. - report locales. - install hwreport in sbin to reflect the fact that it must be run as root. * Mon Aug 27 2007 Frederic Lepied 0.9.4-1 - fix collection of audio codecs - fix collection of Arch Linux version - added support for Dual OS * Wed Aug 8 2007 Frederic Lepied 0.9.3-1 - anonymize dmidecode output (Petter Reinholdtsen) - collect os version files instead of calling osinfo - collect audio codec files - added README (Petter Reinholdtsen) - collect pci modules (Petter Reinholdtsen) * Sun Jul 22 2007 Frederic Lepied 0.9.2-1 - added support for Knoppix and Puppy Linux. - workaround new version of cp that is checking empty files preventing the copy of files from /proc. * Thu Jul 19 2007 Frederic Lepied 0.9.1-1 - added support for PLD - fixed LSB packaging (doc file) * Mon Jul 16 2007 Frederic Lepied 0.9-1 - really fix support for kernel without module. - add a license file - added support for the Pardus distribution * Mon Jun 25 2007 Frederic Lepied 0.8-1 - fix the problem when uploading a system with a kernel without modules. - added support for zenwalk - improved arch linux detection - save /proc/cmdline if present * Sat Jun 16 2007 Frederic Lepied 0.7.1-1 - fix detection of newest Ubuntu - generate only LSB dependencies * Fri Jun 15 2007 Frederic Lepied 0.7-1 - fix bashism in hwreport which prevented to run on Ubuntu - fix hwreport on laptops * Sun Jun 10 2007 Frederic Lepied 0.6-2 - hack to compile on i386 * Tue May 29 2007 Frederic Lepied 0.6-1 - pciutils 2.2.4 - dmidecode 2.9 * Sun Oct 22 2006 Frederic Lepied 0.5-1 - include version of hwreport in the data * Sun Oct 22 2006 Frederic Lepied 0.4-1 - fix parallel printers scan * Fri Oct 6 2006 Frederic Lepied 0.3-1 - gather /proc/asound/card if present * Thu Sep 28 2006 Frederic Lepied 0.2-1 - package lspci * Fri Sep 22 2006 Frederic Lepied 0.1-1 - initial package