]> git.pld-linux.org Git - packages/distcc.git/blobdiff - distcc.spec
- up to 2.18.1
[packages/distcc.git] / distcc.spec
index 9a629f49f039bc0e916bbe31e097a664c15bde08..05095233531060dfa4c6a0003e53932e88f354df 100644 (file)
@@ -1,16 +1,17 @@
 #
 # Conditional build:
-%bcond_with    gnome   # build without gnome(monitor) support
+%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:       2.11.2
+Version:       2.18.1
 Release:       1
 License:       GPL
 Source0:       http://distcc.samba.org/ftp/distcc/%{name}-%{version}.tar.bz2
-# Source0-md5: 034bc9c36bd5c3d9c26241600510927b
+# Source0-md5: c3ab3eec92d525f5f818fe7e00ed2227
+# Source0-size:        339939
 Source1:       %{name}.inetd
 Source2:       %{name}.init
 Source3:       %{name}.sh
@@ -19,8 +20,9 @@ Source5:      %{name}.config
 Source6:       %{name}.logrotate
 Patch0:                %{name}-user.patch
 URL:           http://distcc.samba.org/
-BuildRequires: autoconf
-%{?with_gtk:BuildRequires:     libgnome-devel >= 2.0}
+BuildRequires: autoconf >= 2.53
+BuildRequires: automake
+%{?with_gnome:BuildRequires:   libgnomeui-devel >= 2.0}
 BuildRequires: pkgconfig
 BuildRequires: popt-devel
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -43,7 +45,15 @@ Summary(pl): Pliki wsp
 Group:         Daemons
 Requires:      gcc
 Requires:      gcc-c++
-Obsoletes:     %{name} < %{name}-2.1-2
+Requires(pre): /bin/id
+Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/sbin/groupadd
+Requires(pre):         /usr/sbin/useradd
+Requires(postun):      /usr/sbin/groupdel
+Requires(postun):      /usr/sbin/userdel
+Provides:      group(distcc)
+Provides:      user(distcc)
+Obsoletes:     distcc < 2.1-2
 
 %description common
 distcc is a program to distribute compilation of C or C++ code across
@@ -61,9 +71,9 @@ oraz bardzo cz
 Summary:       inetd configs for distcc
 Summary(pl):   Pliki konfiguracyjne do u¿ycia distcc poprzez inetd
 Group:         Daemons
-PreReq:                %{name}-common = %{version}
+PreReq:                %{name}-common = %{version}-%{release}
 PreReq:                rc-inetd
-Obsoletes:     %{name} < %{name}-2.1-2
+Obsoletes:     distcc < 2.1-2
 
 %description inetd
 distcc configs for running from inetd.
@@ -75,10 +85,9 @@ Pliki konfiguracyjna distcc do startowania demona poprzez inetd.
 Summary:       Standalone daemon configs for distcc
 Summary(pl):   Pliki konfiguracyjne do startowania distcc w trybie standalone
 Group:         Daemons
-PreReq:                %{name}-common = %{version}
+PreReq:                %{name}-common = %{version}-%{release}
 PreReq:                rc-scripts
-Requires(post,preun):  /sbin/chkconfig
-Obsoletes:     %{name} < %{name}-2.1-2
+Obsoletes:     distcc < 2.1-2
 
 %description standalone
 distcc configs for running as a standalone daemon.
@@ -88,9 +97,9 @@ Pliki konfiguracyjne distcc do startowania demona w trybie
 standalone.
 
 %package monitor
-Summary:        Monitor for distcc
-Summary(pl):    Monitor dla distcc
-Group:          Applications
+Summary:       Monitor for distcc
+Summary(pl):   Monitor dla distcc
+Group:         Applications
 
 %description monitor
 Monitor for distcc.
@@ -99,33 +108,36 @@ Monitor for distcc.
 Monitor dla distcc.
 
 %package monitor-gnome
-Summary:        gtk monitor for distcc
-Summary(pl):    Monitor gtk dla distcc
-Group:          X11/Applications
+Summary:       GTK+ monitor for distcc
+Summary(pl):   Monitor GTK+ dla distcc
+Group:         X11/Applications
 
 %description monitor-gnome
-gtk monitor for distcc.
+GTK+ monitor for distcc.
 
 %description monitor-gnome -l pl
-Monitor gtk dla distcc.
+Monitor GTK+ dla distcc.
 
 %prep
 %setup -q
-%patch -p1
+%patch0 -p1
+
+sed -i -e 's#PKGDATADIR#"%{_pixmapsdir}"#g' src/mon-gnome.c
 
 %build
+cp -f /usr/share/automake/config.* .
 %{__autoconf}
 %{__autoheader}
 %configure \
-       %{?with_gnome:--with-gnome}
+       --enable-rfc2553 \
+       %{?with_gnome:--with-gnome} 
 
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 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
+       $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},%{_var}/log}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
@@ -137,9 +149,9 @@ 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}/distccmon-gnome.desktop \
-       $RPM_BUILD_ROOT%{_applnkdir}/Network/Misc
-mv $RPM_BUILD_ROOT%{_datadir}/distccmon-gnome-icon.png \
+mv $RPM_BUILD_ROOT%{_datadir}/%{name}/distccmon-gnome.desktop \
+       $RPM_BUILD_ROOT%{_desktopdir}
+mv $RPM_BUILD_ROOT%{_datadir}/%{name}/distccmon-gnome-icon.png \
        $RPM_BUILD_ROOT%{_pixmapsdir}
 %endif
 
@@ -148,6 +160,31 @@ touch $RPM_BUILD_ROOT%{_var}/log/distcc
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%pre common
+if [ -n "`/usr/bin/getgid distcc`" ]; then
+       if [ "`/usr/bin/getgid distcc`" != "137" ]; then
+               echo "Error: group distcc doesn't have gid=137. Correct this before installing distccd." 1>&2
+               exit 1
+       fi
+else
+       /usr/sbin/groupadd -g 137 distcc 1>&2
+fi
+if [ -n "`/bin/id -u distcc 2>/dev/null`" ]; then
+       if [ "`/bin/id -u distcc`" != "137" ]; then
+               echo "Error: user distcc doesn't have uid=137. Correct this before installing distccd server." 1>&2
+               exit 1
+       fi
+else
+       /usr/sbin/useradd -u 137 -d /tmp -s /bin/false -c "distcc user" \
+               -g distcc distcc 1>&2
+fi
+
+%postun common
+if [ "$1" = "0" ]; then
+       %userremove distcc
+       %groupremove distcc
+fi
+
 %post inetd
 if [ -f /var/lock/subsys/rc-inetd ]; then
        /etc/rc.d/init.d/rc-inetd reload 1>&2
@@ -181,15 +218,15 @@ fi
 %doc AUTHORS NEWS README *.txt
 %attr(755,root,root) %{_bindir}/%{name}
 %{_mandir}/man?/%{name}.*
-/etc/profile.d/*sh
+%attr(755,root,root) /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(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/distccd
 %attr(755,root,root) %{_bindir}/%{name}d
 %{_mandir}/man?/%{name}d.*
+%attr(640,distcc,root) %ghost %{_var}/log/distcc
 
 %files inetd
 %defattr(644,root,root,755)
@@ -202,8 +239,12 @@ fi
 %files monitor
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/distccmon-text
+%{_mandir}/man1/distccmon-text.*
+
 %if %{with gnome}
+%files monitor-gnome
+%defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/distccmon-gnome
-%{_applnkdir}/Network/Misc/*.desktop
-%{_pixmapsdir}/*
+%{_desktopdir}/*.desktop
+%{_pixmapsdir}/*.png
 %endif
This page took 0.104302 seconds and 4 git commands to generate.