X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=distcc.spec;h=05095233531060dfa4c6a0003e53932e88f354df;hb=8226a1e293b373fed393a387d704255792766f97;hp=9a629f49f039bc0e916bbe31e097a664c15bde08;hpb=f3be72f64db5a452a062a83adb7c9eb2735c38d5;p=packages%2Fdistcc.git diff --git a/distcc.spec b/distcc.spec index 9a629f4..0509523 100644 --- a/distcc.spec +++ b/distcc.spec @@ -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