summaryrefslogtreecommitdiff
path: root/meta/packages/distcc
diff options
context:
space:
mode:
authorMarcin Juszkiewicz <hrw@openedhand.com>2007-04-27 13:23:08 +0000
committerMarcin Juszkiewicz <hrw@openedhand.com>2007-04-27 13:23:08 +0000
commit0b01f1f9638018ad4727045b0620a9d5a6d0381a (patch)
treefe2ca59cc1aa5c8f9febbfb340afb0ba4551df9e /meta/packages/distcc
parent64d91d2b96991c1c8ce28f26f6f401a9b8bea9f6 (diff)
downloadopenembedded-core-0b01f1f9638018ad4727045b0620a9d5a6d0381a.tar.gz
openembedded-core-0b01f1f9638018ad4727045b0620a9d5a6d0381a.tar.bz2
openembedded-core-0b01f1f9638018ad4727045b0620a9d5a6d0381a.tar.xz
openembedded-core-0b01f1f9638018ad4727045b0620a9d5a6d0381a.zip
distcc: autostart distccd on boot
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1570 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/distcc')
-rw-r--r--meta/packages/distcc/distcc_2.18.3.bb21
-rw-r--r--meta/packages/distcc/files/default19
-rwxr-xr-xmeta/packages/distcc/files/distcc98
3 files changed, 133 insertions, 5 deletions
diff --git a/meta/packages/distcc/distcc_2.18.3.bb b/meta/packages/distcc/distcc_2.18.3.bb
index 124f87fc7..7f557c41d 100644
--- a/meta/packages/distcc/distcc_2.18.3.bb
+++ b/meta/packages/distcc/distcc_2.18.3.bb
@@ -2,23 +2,34 @@ DESCRIPTION = "distcc is a parallel build system that distributes \
compilation of C/C++/ObjC code across machines on a network."
SECTION = "devel"
LICENSE = "GPLv2"
+PR = "r1"
DEPENDS = "avahi gtk+"
RRECOMMENDS = "avahi-daemon"
SRC_URI = "http://distcc.samba.org/ftp/distcc/distcc-${PV}.tar.bz2 \
- http://0pointer.de/public/distcc-avahi.patch;patch=1"
+ http://0pointer.de/public/distcc-avahi.patch;patch=1 \
+ file://default \
+ file://distcc"
-inherit autotools pkgconfig
+inherit autotools pkgconfig update-rc.d
+
+INITSCRIPT_NAME = "distcc"
EXTRA_OECONF = " --with-gtk "
+do_install_append() {
+ install -d ${D}${sysconfdir}/init.d/
+ install -d ${D}${sysconfdir}/default
+ install -m 0755 ${WORKDIR}/distcc ${D}${sysconfdir}/init.d/
+ install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/distcc
+}
+
PACKAGES += "distcc-distmon-gnome"
-FILES_${PN} = " ${bindir}/distcc \
+FILES_${PN} = " ${sysconfdir} \
+ ${bindir}/distcc \
${bindir}/distccd \
${bindir}/distccmon-text"
FILES_distcc-distmon-gnome = " ${bindir}/distccmon-gnome \
${datadir}/distcc"
-
-
diff --git a/meta/packages/distcc/files/default b/meta/packages/distcc/files/default
new file mode 100644
index 000000000..95290f848
--- /dev/null
+++ b/meta/packages/distcc/files/default
@@ -0,0 +1,19 @@
+# Defaults for distcc initscript
+# sourced by /etc/init.d/distcc
+
+#
+# should distcc be started on boot?
+#
+# STARTDISTCC="true"
+
+STARTDISTCC="true"
+
+#
+# Which networks/hosts should be allowed to connect to the daemon?
+# You can list multiple hosts/networks separated by spaces.
+# Networks have to be in CIDR notation, f.e. 192.168.1.0/24
+# Hosts are represented by a single IP Adress
+#
+# ALLOWEDNETS="127.0.0.1"
+
+ALLOWEDNETS="192.168.7.0/24"
diff --git a/meta/packages/distcc/files/distcc b/meta/packages/distcc/files/distcc
new file mode 100755
index 000000000..bbd470749
--- /dev/null
+++ b/meta/packages/distcc/files/distcc
@@ -0,0 +1,98 @@
+#!/bin/sh
+#
+# distccd Debian init.d script contributed by Jason Thomas. (Debian #161136)
+#
+# skeleton example file to build /etc/init.d/ scripts.
+# This file should be used to construct scripts for /etc/init.d.
+#
+# Written by Miquel van Smoorenburg <miquels@cistron.nl>.
+# Modified for Debian GNU/Linux
+# by Ian Murdock <imurdock@gnu.ai.mit.edu>.
+#
+# Version: @(#)skeleton 1.9.1 08-Apr-2002 miquels@cistron.nl
+#
+
+PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+DAEMON=/usr/bin/distccd
+NAME=distcc
+DESC="Distributed Compiler Daemon"
+DAEMON_ARGS="--pid-file=/var/run/$NAME.pid --daemon"
+# please change those variables by overriding them in /etc/defaults/distcc
+ALLOWEDNETS="127.0.0.1"
+
+# Reads config file (will override defaults above)
+[ -r /etc/default/distcc ] && . /etc/default/distcc
+
+test -x $DAEMON || exit 0
+
+set -e
+
+# construct access list
+ALLOW=""
+for net in $ALLOWEDNETS
+do
+ ALLOW="$ALLOW --allow $net"
+done
+
+should_start() {
+ if [ "$STARTDISTCC" != "true" ] && [ "$STARTDISTCC" != "YES" ]; then
+ echo "STARTDISTCC is set to false in /etc/default/distcc"
+ echo "$DAEMON not starting"
+ exit 0
+ fi
+}
+
+case "$1" in
+ start)
+ should_start
+ echo -n "Starting $DESC: $NAME"
+ start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
+ --exec $DAEMON -- $DAEMON_ARGS $ALLOW ||
+ {
+ code=$?
+ echo "$0: start failed with error code $code" >&2
+ exit $code
+ }
+ echo "."
+ ;;
+ stop)
+ echo -n "Stopping $DESC: $NAME"
+ start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
+ --exec $DAEMON ||
+ {
+ code=$?
+ echo "$0: stop failed with error code $code" >&2
+ exit $code
+ }
+ echo "."
+ ;;
+ restart|force-reload)
+ #
+ # If the "reload" option is implemented, move the "force-reload"
+ # option to the "reload" entry above. If not, "force-reload" is
+ # just the same as "restart".
+ #
+ echo -n "Restarting $DESC: $NAME"
+ start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
+ --exec $DAEMON
+ sleep 1
+ should_start
+ start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
+ --exec $DAEMON -- $DAEMON_ARGS $ALLOW ||
+ {
+ code=$?
+ echo "$0: restart failed with error code $code" >&2
+ exit $code
+ }
+ echo "."
+ ;;
+ *)
+ N=/etc/init.d/$NAME
+ echo "Usage: $N {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
+
+