]> git.pld-linux.org Git - packages/distcc.git/blobdiff - distcc.spec
- BuildRequires: libgnomeui-devel
[packages/distcc.git] / distcc.spec
index 748aa686d1bf7eca985e5f2359796cd86b391a3e..596965fdd900a026bef8d15af73ed9343635973e 100644 (file)
@@ -1,18 +1,30 @@
+#
+# Conditional build:
+%bcond_without gnome   # build without gnome(monitor) support
+#
 Summary:       Program to distribute compilation of C or C++
 Summary(pl):   Program do rozdzielania kompilacji programów w C lub C++
 Name:          distcc
 Group:         Development/Languages
-Version:       1.2
-Release:       1
+Version:       2.14
+Release:       0.1
 License:       GPL
-URL:           http://distcc.samba.org
 Source0:       http://distcc.samba.org/ftp/distcc/%{name}-%{version}.tar.bz2
+# Source0-md5: 612ee81b3e04fc6000dfbc4078ec9d8b
 Source1:       %{name}.inetd
-Requires:      gcc
-Requires:      gcc-c++
-Requires:      inetdaemon
+Source2:       %{name}.init
+Source3:       %{name}.sh
+Source4:       %{name}.csh
+Source5:       %{name}.config
+Source6:       %{name}.logrotate
+Patch0:                %{name}-user.patch
+Patch1:                %{name}-waal.patch
+URL:           http://distcc.samba.org/
+BuildRequires: autoconf >= 2.53
+%{?with_gnome:BuildRequires:   libgnome-devel >= 2.0}
+%{?with_gnome:BuildRequires:   libgnomeui-devel}
+BuildRequires: pkgconfig
 BuildRequires: popt-devel
-Prereq:         /sbin/chkconfig
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -27,41 +39,177 @@ na kilka maszyn w sieci. distcc powinien zawsze generowa
 rezultaty jak lokalna kompilacja, jest prosty w instalacji i u¿yciu
 oraz bardzo czêsto dwa lub wiêcej razy szybszy ni¿ lokalna kompilacja.
 
+%package common
+Summary:       Common files for inetd and standalone versions of distcc
+Summary(pl):   Pliki wspólne dla wersji inetd i standalone distcc
+Group:         Daemons
+Requires:      gcc
+Requires:      gcc-c++
+Obsoletes:     %{name} < %{name}-2.1-2
+
+%description common
+distcc is a program to distribute compilation of C or C++ code across
+several machines on a network. distcc should always generate the same
+results as a local compile, is simple to install and use, and is often
+two or more times faster than a local compile.
+
+%description common -l pl
+distcc jest programem pozwalaj±cym na dystrybucjê kompilacji C lub C++
+na kilka maszyn w sieci. distcc powinien zawsze generowaæ takie same
+rezultaty jak lokalna kompilacja, jest prosty w instalacji i u¿yciu
+oraz bardzo czêsto dwa lub wiêcej razy szybszy ni¿ lokalna kompilacja.
+
+%package inetd
+Summary:       inetd configs for distcc
+Summary(pl):   Pliki konfiguracyjne do u¿ycia distcc poprzez inetd
+Group:         Daemons
+PreReq:                %{name}-common = %{version}
+PreReq:                rc-inetd
+Obsoletes:     %{name} < %{name}-2.1-2
+
+%description inetd
+distcc configs for running from inetd.
+
+%description inetd -l pl
+Pliki konfiguracyjna distcc do startowania demona poprzez inetd.
+
+%package standalone
+Summary:       Standalone daemon configs for distcc
+Summary(pl):   Pliki konfiguracyjne do startowania distcc w trybie standalone
+Group:         Daemons
+PreReq:                %{name}-common = %{version}
+PreReq:                rc-scripts
+Requires(post,preun):  /sbin/chkconfig
+Obsoletes:     %{name} < %{name}-2.1-2
+
+%description standalone
+distcc configs for running as a standalone daemon.
+
+%description standalone -l pl
+Pliki konfiguracyjne distcc do startowania demona w trybie
+standalone.
+
+%package monitor
+Summary:        Monitor for distcc
+Summary(pl):    Monitor dla distcc
+Group:          Applications
+
+%description monitor
+Monitor for distcc.
+
+%description monitor -l pl
+Monitor dla distcc.
+
+%package monitor-gnome
+Summary:        gtk monitor for distcc
+Summary(pl):    Monitor gtk dla distcc
+Group:          X11/Applications
+
+%description monitor-gnome
+gtk monitor for distcc.
+
+%description monitor-gnome -l pl
+Monitor gtk dla distcc.
+
 %prep
 %setup -q
+%patch0 -p1
+#%patch1 -p1
 
 %build
-%configure
+%{__autoconf}
+%{__autoheader}
+%configure \
+       --enable-rfc2553 \
+       %{?with_gnome:--with-gnome} 
+
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd
+install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d,profile.d,logrotate.d} \
+       $RPM_BUILD_ROOT%{_applnkdir}/Network/Misc $RPM_BUILD_ROOT%{_pixmapsdir} \
+       $RPM_BUILD_ROOT%{_var}/log
+
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
 
-%{makeinstall}
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/distccd
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/distcc
+install %{SOURCE3} %{SOURCE4} $RPM_BUILD_ROOT/etc/profile.d
+install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/distccd
+install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/distccd
+
+%if %{with gnome}
+mv $RPM_BUILD_ROOT%{_datadir}/%{name}/distccmon-gnome.desktop \
+       $RPM_BUILD_ROOT%{_applnkdir}/Network/Misc
+mv $RPM_BUILD_ROOT%{_datadir}/%{name}/distccmon-gnome-icon.png \
+       $RPM_BUILD_ROOT%{_pixmapsdir}
+%endif
 
-%post
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+touch $RPM_BUILD_ROOT%{_var}/log/distcc
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post inetd
 if [ -f /var/lock/subsys/rc-inetd ]; then
-        /etc/rc.d/init.d/rc-inetd reload 1>&2
+       /etc/rc.d/init.d/rc-inetd reload 1>&2
 else
-        echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
+       echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
 fi
 
-%postun
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+%postun inetd
 if [ -f /var/lock/subsys/rc-inetd ]; then
-        /etc/rc.d/init.d/rc-inetd reload
+       /etc/rc.d/init.d/rc-inetd reload
 fi
 
-%clean
-rm -rf ${RPM_BUILD_ROOT}
+%post standalone
+/sbin/chkconfig --add distcc
+if [ -f /var/lock/subsys/distccd ]; then
+       /etc/rc.d/init.d/distcc restart 1>&2
+else
+       echo "Run \"/etc/rc.d/init.d/distcc start\" to start distcc daemon."
+fi
+
+%preun standalone
+if [ "$1" = "0" ]; then
+       if [ -f /var/lock/subsys/distccd ]; then
+               /etc/rc.d/init.d/distcc stop 1>&2
+       fi
+       /sbin/chkconfig --del distcc
+fi
 
 %files
 %defattr(644,root,root,755)
-%doc AUTHORS NEWS OLDNEWS README linuxdoc/html/*
-%attr(755,root,root) %{_bindir}/*
-%attr(644,root,root) %{_mandir}/man?/*
-%attr(640,root,root) /etc/sysconfig/rc-inetd/distccd
-%{_infodir}/distcc*
+%doc AUTHORS NEWS README *.txt
+%attr(755,root,root) %{_bindir}/%{name}
+%{_mandir}/man?/%{name}.*
+/etc/profile.d/*sh
+
+%files common
+%defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/distccd
+%attr(640,root,root) %ghost %{_var}/log/distcc
+%attr(640,root,root) /etc/logrotate.d/distccd
+%attr(755,root,root) %{_bindir}/%{name}d
+%{_mandir}/man?/%{name}d.*
+%attr(640,nobody,root) %ghost %{_var}/log/distcc
+
+%files inetd
+%defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/distccd
+
+%files standalone
+%defattr(644,root,root,755)
+%attr(754,root,root) /etc/rc.d/init.d/distcc
+
+%files monitor
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/distccmon-text
+%{_mandir}/man1/distccmon-text.*
+%if %{with gnome}
+%attr(755,root,root) %{_bindir}/distccmon-gnome
+%{_applnkdir}/Network/Misc/*.desktop
+%{_pixmapsdir}/*
+%endif
This page took 0.196585 seconds and 4 git commands to generate.