]> git.pld-linux.org Git - packages/apcupsd.git/blobdiff - apcupsd.spec
- added net support
[packages/apcupsd.git] / apcupsd.spec
index 01b8b53f3eb1314f3bcb79a7102974fc8a63da0c..2e0d0f4b7eadec7691e5810136ce1d7e1b60ffc1 100644 (file)
@@ -1,20 +1,30 @@
+#
+# Conditional build:
+%bcond_without test    # without TEST support
+%bcond_with    usb     # with USB support
+%bcond_with    net     # with network support
+#
+Summary:       Power management software for APC UPS hardware
+Summary(pl):   Oprogramowanie do zarz±dzania energi± dla UPS-ów APC
 Name:          apcupsd
-Version:       3.5.8
+Version:       3.10.18
 Release:       2
 License:       GPL v2
 Group:         Networking/Daemons
-Group(pl):     Sieciowe/Serwery
-Source0:       http://www.brisse.dk/site/apcupsd/download/%{name}-%{version}.src.tar.gz
-Patch0:                apcups-initscript.patch
-Patch1:                apcups-makefile.patch
-Patch2:                apcupsd-Makefile-fix.patch
-Summary:       power management software for APC UPS hardware
-URL:           http://www.brisse.dk/site/apcupsd/
+Source0:       http://dl.sourceforge.net/apcupsd/%{name}-%{version}.tar.gz
+# Source0-md5: 64104a1fface0253e77318ca84948bac
+Source1:       %{name}.init
+Source2:       %{name}.logrotate
+Source3:       %{name}.sysconfig
+Patch0:                %{name}-configure.patch
+URL:           http://www.apcupsd.com/
+BuildRequires: autoconf
+BuildRequires: automake
+Requires(post):        fileutils
+Requires(post,preun):  /sbin/chkconfig
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-#Icon:         apcupsd-logo.xpm
 
-%define                _prefix         /
-%define                _mandir         /usr/share/man
+%define                _sysconfdir     /etc/apcupsd
 
 %description
 UPS power management under Linux for APCC Products. It allows your
@@ -23,79 +33,95 @@ time or the life of the batteries in your BackUPS, BackUPS Pro,
 SmartUPS v/s, or SmartUPS, and then properly executes a controlled
 shutdown during an extended power failure.
 
+%description -l pl
+Oprogramowanie do zarz±dzania energi± dla UPS-ów APC. Pozwala
+komputerowi dzia³aæ po awarii zasilania przez okre¶lony czas lub czas
+¿ycia akumulatorów w BackUPS, BackUPS Pro, SmartUPS v/s, SmartUPS oraz
+odpowiednio uruchamia kontrolowany shutdown przy d³u¿szej awarii
+zasilania.
+
 %prep
-%setup -q -n %{name}-%{version}.src
+%setup -q
 %patch0 -p1
-%patch1 -p1
-%patch2 -p0
 
 %build
-mv Makefile Makefile.orig
-cat Makefile.orig \
- | sed "s,^PREFIX    =,PREFIX    = ${RPM_BUILD_ROOT},"  \
- | sed "s,^MANPREFIX = /usr,MANPREFIX = ${RPM_BUILD_ROOT}/usr," \
- > Makefile
-%{__make} linux
+cd autoconf
+cp -f /usr/share/automake/config.sub .
+%{__autoconf}
+cp -f ./configure ..
+cd ..
+%configure \
+       --with-log-dir=%{_var}/log \
+       --with-stat-dir=%{_var}/lib/apcupsd \
+       %{?with_test:--enable-test} \
+       %{?with_net:--enable-net} \
+%if %{with usb}
+       --enable-usb \
+       --with-serial-dev=/dev/usb/hiddev[0-15] \
+       --with-upstype=usb \
+       --with-upscable=usb
+%endif
+
+%{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT/etc/{apcupsd,logrotate.d,rc.d/init.d,sysconfig} \
+       $RPM_BUILD_ROOT/var/{log,lib/apcupsd}
+
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
 
-# Some issues :
-# - why doesn't the Makefile know that it should install *-linux ??
-# - make install tries to stop apcupsd. That's not necessary (buildroot) (hany: not issue anymore)
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/apcupsd
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/apcupsd
+install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/apcupsd
 
-#install -d ${RPM_BUILD_ROOT}/{sbin,bin,etc/rc.d/init.d,usr/man/man8,var/log}
-install -d ${RPM_BUILD_ROOT}/{bin,sbin,usr/share/man/man8}
-install -d ${RPM_BUILD_ROOT}/{etc/rc.d/init.d,var/log}
+touch $RPM_BUILD_ROOT/var/log/apcupsd.events
+touch $RPM_BUILD_ROOT/var/lib/apcupsd/apcupsd.status
 
-NAME="-linux"  make MANPREFIX="${RPM_BUILD_ROOT}%{_datadir}/" install
-# hany: why this? we're just building. not installing
-#[ -x /sbin/powersc ] && /sbin/powersc RESTARTME
-gzip -9nf ${RPM_BUILD_ROOT}%{_mandir}/man8/*
-install installs/apcupsd.conf ${RPM_BUILD_ROOT}%{_sysconfdir}
-install installs/apcups.rhs ${RPM_BUILD_ROOT}/etc/rc.d/init.d/apcups
-touch ${RPM_BUILD_ROOT}/var/log/apcupsd.log
-touch ${RPM_BUILD_ROOT}%{_sysconfdir}/apcupsd.status
+cat > $RPM_BUILD_ROOT/etc/rc.d/init.d/halt << EOF
+#!/bin/sh
+/etc/rc.d/init.d/apcupsd powerdown
+EOF
 
 %clean
-rm -rf ${RPM_BUILD_ROOT}
+rm -rf $RPM_BUILD_ROOT
 
 %post
-/sbin/ldconfig
-/sbin/chkconfig --add apcups
-if !(grep /sbin/powersc /etc/rc.d/init.d/halt > /dev/null); then
-cp -f /etc/rc.d/init.d/halt /etc/rc.d/init.d/halt.rpmorig
-sed -e '/# Now halt or reboot./i\' \
-     -e '\
-# See if this is a powerfail situation.\
-if [ -f /etc/powerfail ]; then\
-  echo "APCUPSD to the Rescue!"\
-  echo\
-  /sbin/powersc KILL\
-  echo\
-  sleep 120\
-  exit 1\
-fi\
-' /etc/rc.d/init.d/halt.rpmorig > /etc/rc.d/init.d/halt
-
+/sbin/chkconfig --add apcupsd
+if [ -f /var/lock/subsys/apcupsd ]; then
+       /etc/rc.d/init.d/apcupsd restart >&2
+else
+       echo "Run \"/etc/rc.d/init.d/apcupsd start\" to start apcupsd daemon."
 fi
-echo Check the documentation to see whether /etc/rc.d/init.d/halt has a
-echo correct invocation of /sbin/powersc .
 
 %preun
-chkconfig --del apcups
+if [ "$1" = "0" ]; then
+       if [ -f /var/lock/subsys/apcupsd ]; then
+               /etc/rc.d/init.d/apcupsd stop >&2
+       fi
+/sbin/chkconfig --del apcupsd
+fi
 
 %files
 %defattr(644,root,root,755)
-%doc README.NEW Changelog port.gif Statement.APCC
-%doc %{name}-%{version}.src.lsm
-%doc readmes/* docs/apcupsd.docs
-%doc installs/halt.rhs installs/apcups.rhs installs/powersc
-%{_mandir}/man8/apcupsd.8*
-%attr(755,root,root) /sbin/apcupsd
-%attr(755,root,root) /bin/apcaccess
-%attr(755,root,root) %config /sbin/powersc
-%attr(640,root,root) %config(noreplace) %{_sysconfdir}/apcupsd.conf
-%attr(754,root,root) /etc/rc.d/init.d/apcups
-%ghost /var/log/apcupsd.log
-%ghost %{_sysconfdir}/apcupsd.status
+%doc ChangeLog Developers doc/{README.apcaccess,README.solaris}
+%{_mandir}/man8/apcupsd.*
+%attr(755,root,root) %{_sbindir}/*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apcupsd.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/apcupsd
+%attr(754,root,root) %{_sysconfdir}/apccontrol
+%attr(754,root,root) %{_sysconfdir}/changeme
+%attr(754,root,root) %{_sysconfdir}/commfailure
+%attr(754,root,root) %{_sysconfdir}/commok
+%attr(754,root,root) %{_sysconfdir}/mainsback
+%attr(754,root,root) %{_sysconfdir}/masterconnect
+%attr(754,root,root) %{_sysconfdir}/mastertimeout
+%attr(754,root,root) %{_sysconfdir}/onbattery
+%attr(754,root,root) /etc/rc.d/init.d/apcupsd
+%attr(754,root,root) /etc/rc.d/init.d/halt
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/apcupsd
+%dir %{_sysconfdir}
+%dir /var/lib/apcupsd
+%attr(640,root,root) %ghost /var/log/apcupsd.events
+%attr(640,root,root) %ghost /var/lib/apcupsd/apcupsd.status
This page took 0.067776 seconds and 4 git commands to generate.