distcc: moved distccd to /usr/sbin

updated README
added DISTCC_LOG_LEVEL option documented in README
This commit is contained in:
Danny Rawlins 2008-05-18 02:21:39 +10:00
parent a06d12bf3a
commit ab4264c293
6 changed files with 103 additions and 22 deletions

View File

@ -4,7 +4,6 @@ drwxr-xr-x root/root etc/rc.d/
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/bin/
-rwxr-xr-x root/root usr/bin/distcc
-rwxr-xr-x root/root usr/bin/distccd
-rwxr-xr-x root/root usr/bin/distccmon-text
drwxr-xr-x root/root usr/lib/
drwxr-xr-x root/root usr/lib/distcc/
@ -17,3 +16,5 @@ drwxr-xr-x root/root usr/man/man1/
-rw-r--r-- root/root usr/man/man1/distcc.1.gz
-rw-r--r-- root/root usr/man/man1/distccd.1.gz
-rw-r--r-- root/root usr/man/man1/distccmon-text.1.gz
drwxr-xr-x root/root usr/sbin/
-rwxr-xr-x root/root usr/sbin/distccd

View File

@ -1,3 +1,3 @@
f478a7f8d8e65ff2710fdc4bd77e9b66 distcc-2.18.3-install.patch
537dfe64b73d0c48549d8c861186742e distcc-2.18.3-install.patch
0d6b80a1efc3a3d816c4f4175f63eaa2 distcc-2.18.3.tar.bz2
3e6bdcea02d0ec785f2cfed074bc5614 distccd
0c86f4c2004a4d5fdc1a1ac19978bb27 distccd

View File

@ -6,7 +6,7 @@
name=distcc
version=2.18.3
release=5
release=6
source=(http://distcc.samba.org/ftp/distcc/distcc-$version.tar.bz2 \
distcc-$version-install.patch distccd)
@ -25,8 +25,10 @@ build() {
install -m 0755 -D ../distccd $PKG/etc/rc.d/distccd
install -d $PKG/usr/lib/distcc
cd $PKG/usr/lib/distcc
for c in cc c++ gcc g++; do
cd $PKG/usr/lib/distcc && ln -s ../../bin/distcc $c
ln -s ../../bin/distcc $c
done
cd -
}

View File

@ -1,19 +1,24 @@
POST-INSTALL
to use distcc, just
a) export DISTCC_HOSTS to include the compilation hosts
b) prepend /usr/lib/distcc to your $PATH environment variable.
POST-INSTALL:
To use distcc, just:
a) Set DISTCC_ALLOW=IPADDR[/MASK] to /etc/rc.conf.
b) Export DISTCC_HOSTS to include the compilation hosts.
c) Prepend /usr/lib/distcc to your $PATH environment variable.
(e.g. in pkgmk.conf)
c) export MAKEFLAGS=-j<n> where n is a number representing the number of
parallel jobs you want
d) Export MAKEFLAGS=-j<n> where n is a number representing the number of
parallel jobs you want.
e) Optionally set DISTCC_LOG_LEVEL=LEVEL in /etc/rc.conf to be more or
less verbose to syslogd.
DISTCCD SERVICE
There's a service to simplify running distccd. By default, it uses allows connections from '192.168.0.0/24' and runs as user 'nobody'. Both values can be overridden in /etc/rc.conf, like this:
There's a service to simplify running distccd. By default, it wont run without DISTCC_ALLOW=IPADDR[/MASK] to accept connections and runs as user 'nobody'. Both values can be overridden in /etc/rc.conf, like this:
----
DISTCC_ALLOW=192.168.1.0/24
DISTCC_USER=otheruser
DISTCC_ALLOW='192.168.1.0/24'
DISTCC_USER='pkgmk'
----
There is more information on the public wiki http://crux.nu/Public/HomePage
and in the man pages 'man distccd' and 'man distcc'.

View File

@ -1,6 +1,6 @@
diff -pruN distcc-2.18.3.orig/configure distcc-2.18.3/configure
--- distcc-2.18.3.orig/configure 2008-05-07 11:40:41.950347462 +1000
+++ distcc-2.18.3/configure 2008-05-07 11:50:41.411347269 +1000
--- distcc-2.18.3.orig/configure 2008-05-18 01:45:48.738143672 +1000
+++ distcc-2.18.3/configure 2008-05-18 01:46:11.810142374 +1000
@@ -342,9 +342,9 @@ bindir='${exec_prefix}/bin'
sbindir='${exec_prefix}/sbin'
libexecdir='${exec_prefix}/libexec'
@ -13,3 +13,74 @@ diff -pruN distcc-2.18.3.orig/configure distcc-2.18.3/configure
libdir='${exec_prefix}/lib'
includedir='${prefix}/include'
oldincludedir='/usr/include'
diff -pruN distcc-2.18.3.orig/Makefile.in distcc-2.18.3/Makefile.in
--- distcc-2.18.3.orig/Makefile.in 2008-05-18 01:45:48.736140909 +1000
+++ distcc-2.18.3/Makefile.in 2008-05-18 01:47:29.487145051 +1000
@@ -289,10 +289,12 @@ popt_EXTRA = popt/README.popt popt/.stam
bin_PROGRAMS = \
distcc@EXEEXT@ \
- distccd@EXEEXT@ \
distccmon-text@EXEEXT@ \
@GNOME_BIN@
+sbin_PROGRAMS = \
+ distccd@EXEEXT@
+
check_PROGRAMS = \
h_argvtostr@EXEEXT@ \
h_exten@EXEEXT@ \
@@ -322,7 +324,7 @@ check_PROGRAMS = \
# We don't build the web pages by default, because many people will
# not have the tools to do it. Just use all-web if you want it.
-all: $(bin_PROGRAMS)
+all: $(bin_PROGRAMS) $(sbin_PROGRAMS)
all-web: all-latte
all-latte: $(latte_HTML)
@@ -432,7 +434,7 @@ man/distccmon_text_1.html: man/distccmon
######################################################################
## CHECK targets
-check_programs: $(check_PROGRAMS) $(bin_PROGRAMS)
+check_programs: $(check_PROGRAMS) $(bin_PROGRAMS) $(sbin_PROGRAMS)
# WARNING: This resets the path to avoid any confusion caused by
# having distcc masquerades already on the path. If you have gcc
@@ -440,7 +442,7 @@ check_programs: $(check_PROGRAMS) $(bin_
maintainer-check: check_programs
if test x$(PYTHON) != x; then \
$(PYTHON) -c 'import sys; print sys.version'; \
- PATH=`pwd`:/usr/local/bin:/bin:/usr/bin $(PYTHON) $(srcdir)/test/testdistcc.py; \
+ PATH=`pwd`:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/bin:/usr/sbin $(PYTHON) $(srcdir)/test/testdistcc.py; \
else echo "WARNING: python not found; tests skipped"; \
fi
@@ -481,7 +483,7 @@ benchmark:
# Also clean binaries which are optionally built
clean: clean-autoconf clean-lzo
rm -f src/*.o popt/*.o
- rm -f $(check_PROGRAMS) $(bin_PROGRAMS)
+ rm -f $(check_PROGRAMS) $(bin_PROGRAMS) $(sbin_PROGRAMS)
rm -f distccmon-gnome
rm -rf testtmp
@@ -558,11 +560,15 @@ showpaths:
install: showpaths install-doc install-man install-programs install-example @INSTALL_GNOME@
-install-programs: $(bin_PROGRAMS)
+install-programs: $(bin_PROGRAMS) $(sbin_PROGRAMS)
$(mkinstalldirs) $(DESTDIR)$(bindir)
- for p in $^; do \
+ for p in $(bin_PROGRAMS); do \
$(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir) || exit 1; \
done
+ $(mkinstalldirs) $(DESTDIR)$(sbindir)
+ for p in $(sbin_PROGRAMS); do \
+ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(sbindir) || exit 1; \
+ done
install-man: $(man1_MEN)
$(mkinstalldirs) $(DESTDIR)$(man1dir)

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/usr/bin/env sh
#
# /etc/rc.d/distccd: start/stop distcc daemon
#
@ -7,17 +7,19 @@
if [ -z "$DISTCC_ALLOW" ]; then
echo "Please define a range of IPs allowed to connect to this distccd"
echo "host in DISTCC_ALLOW in /etc/rc.conf. More detailed information"
echo "can be found in distccd's man page."
exit -1
echo "can be found in the distcc's README package."
exit 1
fi
DISTCC_USER=${DISTCC_USER:=nobody}
DISTCC_USER="${DISTCC_USER:=nobody}"
DISTCC_LOG_LEVEL="${DISTCC_LOG_LEVEL:=notice}"
case $1 in
start)
/usr/bin/distccd --daemon --user $DISTCC_USER --allow $DISTCC_ALLOW
/usr/sbin/distccd --daemon --user "$DISTCC_USER" --allow "$DISTCC_ALLOW" --log-level "$DISTCC_LOG_LEVEL"
;;
stop)
killall -q /usr/bin/distccd
killall -q /usr/sbin/distccd
;;
restart)
$0 stop