Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

distcc: these are needed... :)

  • Loading branch information...
commit 1bcd97b2b6a9f7f3eff4b9775172a131984b6956 1 parent 14bee61
@wired authored
View
3  sys-devel/distcc/Manifest
@@ -1,3 +1,6 @@
+AUX 3.0/conf 1286 RMD160 52f0fb469fc83b2f28f032c81515773d09add0d5 SHA1 4860a6e2eea10d918058b0cdcb76ac196a2d7992 SHA256 28fa9a9ce30c9f979eac3d5be3fc64f199ecffa9d7e38e02f11957019152dc46
+AUX 3.0/distcc-config 3402 RMD160 ef72502f3b69d86884fcc038d84105be46b952f2 SHA1 bbef02b51241439f64a679c72b69428035a8c2a8 SHA256 b37627554a6b55671770dd005c85a68a3db83a0b9a5669517c11064b76086e71
+AUX 3.0/init 846 RMD160 313ba4a8b611254bd333364f54bd7dc73d988283 SHA1 4e4a271486ea78d4d126df5d3ee2a6d38af13b0e SHA256 ca81ef66534013ec10a10e3e58610170938b54fb75ced23e3507ebd166be99cc
AUX 3.1/init 778 RMD160 4f8a3411315663074ef43a70e4ac8bbdebafc4b4 SHA1 87e7ef465be6b2c332c38a7f1c8e4ec5474c7d50 SHA256 f5c66a7212eb91f3dec55287a6c2b703b390c6894a933e51592f2762db7d2f73
AUX distcc-3.0-fix-fortify.patch 313 RMD160 e5edc96a4bc4fe06a58878011cbb466184946b3e SHA1 386ee72a9d0b620dfc3aa75324060f764ed44e6d SHA256 7b57ae28dcef0c1ecd273a8a10dd1a16fa6a7af618d5438e1fe4398863fa8901
AUX distcc-3.0-gentoo.patch 1225 RMD160 5c305052c9ee62c7d60377b26e53f69a67438b39 SHA1 7114da1f2ddda38498d19a685782da48a8b37f30 SHA256 ba1895fa906ba18490b722f9eda07a96459949d879412c2aba0218f8854ca7cc
View
40 sys-devel/distcc/files/3.0/conf
@@ -0,0 +1,40 @@
+# /etc/conf.d/distccd: config file for /etc/init.d/distccd
+
+DISTCCD_OPTS=""
+
+# this is the distccd executable
+DISTCCD_EXEC="/usr/bin/distccd"
+
+# this is where distccd will store its pid file
+DISTCCD_PIDFILE="/var/run/distccd/distccd.pid"
+
+# set this option to run distccd with extra parameters
+# Default port is 3632. For most people the default is okay.
+DISTCCD_OPTS="${DISTCCD_OPTS} --port 3632"
+
+# Logging
+# You can change some logging options here:
+# --log-file FILE
+# --log-level LEVEL [critical,error,warning, notice, info, debug]
+#
+# Leaving --log-file blank will log to syslog
+# example: --log-file /dev/null --log-level warning
+# example: --log-level critical
+
+DISTCCD_OPTS="${DISTCCD_OPTS} --log-level critical"
+
+# SECURITY NOTICE:
+# It is HIGHLY recomended that you use the --listen option
+# for increased security. You can specify an IP to permit connections
+# from or a CIDR mask
+# --listen accepts only a single IP
+# --allow is now mandatory as of distcc-2.18.
+# example: --allow 192.168.0.0/24
+# example: --allow 192.168.0.5 --allow 192.168.0.150
+# example: --listen 192.168.0.2
+DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.0.0/24"
+#DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.0.2"
+
+# set this for niceness
+# Default is 15
+DISTCCD_OPTS="${DISTCCD_OPTS} -N 15"
View
123 sys-devel/distcc/files/3.0/distcc-config
@@ -0,0 +1,123 @@
+#!/usr/bin/env python
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/files/3.0/distcc-config,v 1.3 2008/10/27 21:29:44 matsuu Exp $
+
+import os, re, signal, sys
+from string import rstrip
+from subprocess import Popen
+
+options=[
+ '--get-hosts',
+ '--set-hosts',
+ '--get-verbose',
+ '--set-verbose',
+ '--get-log',
+ '--set-log',
+ '--help',
+ '--get-env',
+ '--set-env'
+]
+
+tmpcmdline=sys.argv[1:]
+cmdline=[]
+envfile = '/etc/env.d/02distcc'
+
+def exithandler(foo,bar):
+ os.kill(0,signal.SIGKILL)
+ sys.exit(1)
+
+signal.signal(signal.SIGINT,exithandler)
+
+def isroot(ret=0):
+ if os.getuid() != 0:
+ if ret == 0:
+ print '!!!',sys.argv[:1][0],tmpcmdline[0],'must be run as root'
+ sys.exit(1)
+ else:
+ retval = 0
+ else:
+ retval = 1
+ return retval
+
+def writeenv(var,value):
+ isroot()
+ distcc_env = []
+ distcc_env = open(envfile, 'r').readlines()
+ distcc_env_new = open(envfile, 'w')
+ for i in range(len(distcc_env)):
+ if re.compile(var+'="(.*)"').match(distcc_env[i]):
+ distcc_env[i] = var+'="'+value+'"\n'
+ distcc_env_new.write(distcc_env[i])
+ #print 'Set',var,'to:',value
+ Popen('/usr/sbin/env-update', shell=True)
+ print 'If you want to use these new settings in an existing shell,'
+ print 'you need to "source /etc/profile" to get the changes.'
+
+def readenv(var):
+ distcc_env = open(envfile, 'r').read()
+ match = re.compile(var+'="(.*)"').search(distcc_env)
+ if match:
+ print var+'='+match.group(1)
+ else:
+ print var,'not set.'
+
+def createdistccdir(dir):
+ if not os.path.exists(dir):
+ os.mkdir(dir)
+ os.chmod(dir, 0755)
+
+for x in tmpcmdline:
+ if not x:
+ continue
+ if x[0:2]=="--":
+ if not x in options:
+ print "!!! Error:",x,"is an invalid option."
+ sys.exit(1)
+ else:
+ cmdline = x
+
+if '--get-hosts' in tmpcmdline:
+ HOSTS_ENV = os.environ.get('DISTCC_HOSTS')
+ HOSTS_HOME = os.environ.get('HOME')+'/hosts'
+ if HOSTS_ENV:
+ print HOSTS_ENV
+ elif os.path.isfile(HOSTS_HOME) and os.path.getsize(HOSTS_HOME) != 0:
+ print rstrip(open(HOSTS_HOME, 'r').read())
+ elif os.path.exists('/etc/distcc/hosts'):
+ print rstrip(open('/etc/distcc/hosts', 'r').read())
+ else:
+ print 'No configuration file found. Setup your hosts with --set-hosts.'
+elif '--set-hosts' in tmpcmdline:
+ if isroot(1):
+ PATH = '/etc/distcc'
+ else:
+ PATH = os.environ.get('HOME')
+ createdistccdir(PATH)
+ open(PATH+'/hosts', 'w').write(cmdline + '\n')
+elif '--get-verbose' in tmpcmdline:
+ readenv('DISTCC_VERBOSE')
+elif '--set-verbose' in tmpcmdline:
+ writeenv('DISTCC_VERBOSE',tmpcmdline[1])
+elif '--get-log' in tmpcmdline:
+ readenv('DISTCC_LOG')
+elif '--set-log' in tmpcmdline:
+ writeenv('DISTCC_LOG',tmpcmdline[1])
+elif '--get-env' in tmpcmdline:
+ if len(tmpcmdline) == 1:
+ print rstrip(open(envfile, 'r').read())
+ elif len(tmpcmdline) == 2:
+ readenv(tmpcmdline[1])
+ else:
+ print '!!! Error: Specify only one variable.'
+elif '--set-env' in tmpcmdline:
+ if len(tmpcmdline) > 2 and len(tmpcmdline) <= 3:
+ isroot()
+ writeenv(tmpcmdline[1],tmpcmdline[2])
+ else:
+ print '!!! Error: Awaiting two parameters.'
+else:
+ print 'Usage: %s --set-hosts DISTCC_HOSTS | --get-hosts' % sys.argv[0]
+ print ' %s --set-verbose { 0 | 1 } | --get-verbose' % sys.argv[0]
+ print ' %s --set-log FILE | --get-log' % sys.argv[0]
+ print ' %s --set-env VARIABLE VALUE | --get-env [VARIABLE]' % sys.argv[0]
View
32 sys-devel/distcc/files/3.0/init
@@ -0,0 +1,32 @@
+#!/sbin/runscript
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/files/3.0/init,v 1.4 2008/11/16 16:36:37 matsuu Exp $
+
+depend() {
+ need net
+ use avahi-daemon ypbind
+}
+
+start() {
+ ebegin "Starting distccd"
+
+ if [ ! -e /var/run/distccd ] ; then
+ mkdir -p /var/run/distccd
+ chown distcc:daemon /var/run/distccd
+ fi
+
+ # Load GCC_SPECS from profile.env bug #164818
+ GCC_SPECS="$(. /etc/profile.env; echo "${GCC_SPECS}")" \
+ PATH="$(gcc-config --get-bin-path):${PATH}" \
+ start-stop-daemon --start --quiet --exec "${DISTCCD_EXEC}" -- \
+ --daemon --pid-file "${DISTCCD_PIDFILE}" --user distcc \
+ ${DISTCCD_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping distccd"
+ start-stop-daemon --stop --quiet --pidfile "${DISTCCD_PIDFILE}"
+ eend $?
+}
Please sign in to comment.
Something went wrong with that request. Please try again.