3 %bcond_without gnome # build without gnome(monitor) support
5 Summary: Program to distribute compilation of C or C++
6 Summary(pl): Program do rozdzielania kompilacji programów w C lub C++
8 Group: Development/Languages
12 Source0: http://distcc.samba.org/ftp/distcc/%{name}-%{version}.tar.bz2
13 # Source0-md5: 0d6b80a1efc3a3d816c4f4175f63eaa2
14 Source1: %{name}.inetd
18 Source5: %{name}.config
19 Source6: %{name}.logrotate
20 Patch0: %{name}-user.patch
21 URL: http://distcc.samba.org/
22 BuildRequires: autoconf >= 2.53
23 BuildRequires: automake
24 %{?with_gnome:BuildRequires: libgnomeui-devel >= 2.0}
25 BuildRequires: pkgconfig
26 BuildRequires: popt-devel
27 BuildRequires: rpmbuild(macros) >= 1.202
28 BuildRequires: sed >= 4.0
29 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32 distcc is a program to distribute compilation of C or C++ code across
33 several machines on a network. distcc should always generate the same
34 results as a local compile, is simple to install and use, and is often
35 two or more times faster than a local compile.
38 distcc jest programem pozwalaj±cym na dystrybucjê kompilacji C lub C++
39 na kilka maszyn w sieci. distcc powinien zawsze generowaæ takie same
40 rezultaty jak lokalna kompilacja, jest prosty w instalacji i u¿yciu
41 oraz bardzo czêsto dwa lub wiêcej razy szybszy ni¿ lokalna kompilacja.
44 Summary: Common files for inetd and standalone versions of distcc
45 Summary(pl): Pliki wspólne dla wersji inetd i standalone distcc
49 Requires(pre): /bin/id
50 Requires(pre): /usr/bin/getgid
51 Requires(pre): /usr/sbin/groupadd
52 Requires(pre): /usr/sbin/useradd
53 Requires(postun): /usr/sbin/groupdel
54 Requires(postun): /usr/sbin/userdel
55 Provides: group(distcc)
56 Provides: user(distcc)
57 Obsoletes: distcc < 2.1-2
60 distcc is a program to distribute compilation of C or C++ code across
61 several machines on a network. distcc should always generate the same
62 results as a local compile, is simple to install and use, and is often
63 two or more times faster than a local compile.
65 %description common -l pl
66 distcc jest programem pozwalaj±cym na dystrybucjê kompilacji C lub C++
67 na kilka maszyn w sieci. distcc powinien zawsze generowaæ takie same
68 rezultaty jak lokalna kompilacja, jest prosty w instalacji i u¿yciu
69 oraz bardzo czêsto dwa lub wiêcej razy szybszy ni¿ lokalna kompilacja.
72 Summary: inetd configs for distcc
73 Summary(pl): Pliki konfiguracyjne do u¿ycia distcc poprzez inetd
75 PreReq: %{name}-common = %{version}-%{release}
77 Obsoletes: distcc < 2.1-2
80 distcc configs for running from inetd.
82 %description inetd -l pl
83 Pliki konfiguracyjna distcc do startowania demona poprzez inetd.
86 Summary: Standalone daemon configs for distcc
87 Summary(pl): Pliki konfiguracyjne do startowania distcc w trybie standalone
89 PreReq: %{name}-common = %{version}-%{release}
91 Requires(post,preun): /sbin/chkconfig
92 Obsoletes: distcc < 2.1-2
94 %description standalone
95 distcc configs for running as a standalone daemon.
97 %description standalone -l pl
98 Pliki konfiguracyjne distcc do startowania demona w trybie
102 Summary: Monitor for distcc
103 Summary(pl): Monitor dla distcc
109 %description monitor -l pl
112 %package monitor-gnome
113 Summary: GTK+ monitor for distcc
114 Summary(pl): Monitor GTK+ dla distcc
115 Group: X11/Applications
117 %description monitor-gnome
118 GTK+ monitor for distcc.
120 %description monitor-gnome -l pl
121 Monitor GTK+ dla distcc.
127 sed -i -e 's#PKGDATADIR#"%{_pixmapsdir}"#g' src/mon-gnome.c
130 cp -f /usr/share/automake/config.* .
135 %{?with_gnome:--with-gnome}
140 rm -rf $RPM_BUILD_ROOT
141 install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d,profile.d,logrotate.d} \
142 $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},%{_var}/log}
145 DESTDIR=$RPM_BUILD_ROOT
147 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/distccd
148 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/distcc
149 install %{SOURCE3} %{SOURCE4} $RPM_BUILD_ROOT/etc/profile.d
150 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/distccd
151 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/distccd
154 mv $RPM_BUILD_ROOT%{_datadir}/%{name}/distccmon-gnome.desktop \
155 $RPM_BUILD_ROOT%{_desktopdir}
156 mv $RPM_BUILD_ROOT%{_datadir}/%{name}/distccmon-gnome-icon.png \
157 $RPM_BUILD_ROOT%{_pixmapsdir}
160 touch $RPM_BUILD_ROOT%{_var}/log/distcc
163 rm -rf $RPM_BUILD_ROOT
166 %groupadd -P %{name}-common -g 137 distcc
167 %useradd -P %{name}-common -u 137 -d /tmp -s /bin/false -c "distcc user" -g distcc distcc
170 if [ "$1" = "0" ]; then
176 if [ -f /var/lock/subsys/rc-inetd ]; then
177 /etc/rc.d/init.d/rc-inetd reload 1>&2
179 echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
183 if [ -f /var/lock/subsys/rc-inetd ]; then
184 /etc/rc.d/init.d/rc-inetd reload
188 /sbin/chkconfig --add distcc
189 if [ -f /var/lock/subsys/distccd ]; then
190 /etc/rc.d/init.d/distcc restart 1>&2
192 echo "Run \"/etc/rc.d/init.d/distcc start\" to start distcc daemon."
196 if [ "$1" = "0" ]; then
197 if [ -f /var/lock/subsys/distccd ]; then
198 /etc/rc.d/init.d/distcc stop 1>&2
200 /sbin/chkconfig --del distcc
204 %defattr(644,root,root,755)
205 %doc AUTHORS NEWS README *.txt
206 %attr(755,root,root) %{_bindir}/%{name}
207 %{_mandir}/man?/%{name}.*
208 %attr(755,root,root) /etc/profile.d/*sh
211 %defattr(644,root,root,755)
212 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/distccd
213 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/distccd
214 %attr(755,root,root) %{_bindir}/%{name}d
215 %{_mandir}/man?/%{name}d.*
216 %attr(640,distcc,root) %ghost %{_var}/log/distcc
219 %defattr(644,root,root,755)
220 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/distccd
223 %defattr(644,root,root,755)
224 %attr(754,root,root) /etc/rc.d/init.d/distcc
227 %defattr(644,root,root,755)
228 %attr(755,root,root) %{_bindir}/distccmon-text
229 %{_mandir}/man1/distccmon-text.*
233 %defattr(644,root,root,755)
234 %attr(755,root,root) %{_bindir}/distccmon-gnome
235 %{_desktopdir}/*.desktop