bump(sys-devel/distcc): sync with upstream

This commit is contained in:
Nick Owens 2016-05-19 16:03:16 -07:00
parent 85ba8768c0
commit 0bb1a8025a
28 changed files with 3465 additions and 0 deletions

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=configure install postinst postrm prepare setup
DEPEND=>=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_jython2_7(-),-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),python_single_target_python2_7(+)] dev-libs/popt avahi? ( >=net-dns/avahi-0.6[dbus] ) gtk? ( x11-libs/gtk+:2 ) virtual/pkgconfig virtual/pkgconfig
DESCRIPTION=Distribute compilation of C code across several machines on a network
EAPI=5
HOMEPAGE=http://distcc.org/
IUSE=avahi gtk hardened ipv6 selinux xinetd python_targets_python2_7
KEYWORDS=alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd
LICENSE=GPL-2
RDEPEND=>=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_jython2_7(-),-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),python_single_target_python2_7(+)] dev-libs/popt avahi? ( >=net-dns/avahi-0.6[dbus] ) gtk? ( x11-libs/gtk+:2 ) !net-misc/pump >=sys-devel/gcc-config-1.4.1 selinux? ( sec-policy/selinux-distcc ) xinetd? ( sys-apps/xinetd )
REQUIRED_USE=python_targets_python2_7
RESTRICT=test
SLOT=0
SRC_URI=https://distcc.googlecode.com/files/distcc-3.1.tar.bz2
_eclasses_=eutils 9d81603248f2ba3ec59124320d123e5e fdo-mime 92d07846ea8ea54172f8c0112a47ae3d flag-o-matic d270fa247153df66074f795fa42dba3e multilib 3972ca401cf7dbb430df9995f5d8d580 python-single-r1 2ebea8fbab356d63110245129a67a6dd python-utils-r1 2e6826f6a93ad2acf904eecf5b5fb6d2 systemd 3165c885f3c71ffae7a867d931fb0e07 toolchain-funcs 7a212e5e01adfa4805c9978366e6ee85 user 906f3c8eb3a2350a4f1191a89baa3e46
_md5_=c23876e76c62492bcbc84ce5da9912b5

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=configure install postinst postrm prepare setup
DEPEND=>=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_jython2_7(-),-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),python_single_target_python2_7(+)] dev-libs/popt avahi? ( >=net-dns/avahi-0.6[dbus] ) gnome? ( >=gnome-base/libgnome-2 >=gnome-base/libgnomeui-2 x11-libs/gtk+:2 x11-libs/pango ) gssapi? ( net-libs/libgssglue ) gtk? ( x11-libs/gtk+:2 ) virtual/pkgconfig !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.15:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig
DESCRIPTION=Distribute compilation of C code across several machines on a network
EAPI=5
HOMEPAGE=http://distcc.org/
IUSE=avahi crossdev gnome gssapi gtk hardened ipv6 selinux xinetd python_targets_python2_7
KEYWORDS=alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~sparc-fbsd ~x86-fbsd
LICENSE=GPL-2
RDEPEND=>=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_jython2_7(-),-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),python_single_target_python2_7(+)] dev-libs/popt avahi? ( >=net-dns/avahi-0.6[dbus] ) gnome? ( >=gnome-base/libgnome-2 >=gnome-base/libgnomeui-2 x11-libs/gtk+:2 x11-libs/pango ) gssapi? ( net-libs/libgssglue ) gtk? ( x11-libs/gtk+:2 ) !net-misc/pump >=sys-devel/gcc-config-1.4.1 selinux? ( sec-policy/selinux-distcc ) xinetd? ( sys-apps/xinetd )
REQUIRED_USE=python_targets_python2_7
RESTRICT=test
SLOT=0
SRC_URI=https://distcc.googlecode.com/files/distcc-3.2rc1.tar.bz2
_eclasses_=autotools 07e71b3b5690738ef7e8bc097077e00c eutils 9d81603248f2ba3ec59124320d123e5e fdo-mime 92d07846ea8ea54172f8c0112a47ae3d flag-o-matic d270fa247153df66074f795fa42dba3e libtool b75230758539a7da029e24afdb693960 multilib 3972ca401cf7dbb430df9995f5d8d580 python-single-r1 2ebea8fbab356d63110245129a67a6dd python-utils-r1 2e6826f6a93ad2acf904eecf5b5fb6d2 systemd 3165c885f3c71ffae7a867d931fb0e07 toolchain-funcs 7a212e5e01adfa4805c9978366e6ee85 user 906f3c8eb3a2350a4f1191a89baa3e46
_md5_=0edf3fc9dcafe638a9e462064af58b33

View File

@ -0,0 +1,205 @@
# ChangeLog for sys-devel/distcc
# Copyright 1999-2016 Gentoo Foundation; Distributed under the GPL v2
# (auto-generated from git log)
*distcc-3.2_rc1-r3 (09 Aug 2015)
*distcc-3.1-r10 (09 Aug 2015)
09 Aug 2015; Robin H. Johnson <robbat2@gentoo.org> +distcc-3.1-r10.ebuild,
+distcc-3.2_rc1-r3.ebuild, +files/2.18-r1/conf, +files/2.18-r1/init,
+files/2.18/conf, +files/2.18/init, +files/3.0/conf,
+files/3.0/distcc-config, +files/3.0/init, +files/3.1/conf, +files/3.1/init,
+files/distcc-3.0-fix-fortify.patch, +files/distcc-3.0-gentoo.patch,
+files/distcc-3.0-svn617.patch, +files/distcc-3.0-uninitialized.patch,
+files/distcc-3.0-xinetd.patch, +files/distcc-3.1-argc-fix.patch,
+files/distcc-3.1-freedesktop.patch, +files/distcc-3.1-python.patch,
+files/distcc-3.2_rc1-freedesktop.patch, +files/distcc-3.2_rc1-gssapi.patch,
+files/distcc-3.2_rc1-python.patch, +files/distcc-3.2_rc1-socks5.patch,
+files/distcc-as-needed.patch, +files/distcc-avahi-configure.patch,
+files/distcc-config, +files/distcc-config-3.2_rc1,
+files/distcc-create-dir.patch, +files/distcc-freedesktop.patch,
+files/distcc-gentoo-multilib-r1.patch, +files/distcc-gentoo-multilib.patch,
+files/distcc-hardened.patch, +files/distcc-march-native.patch,
+files/distccd.service, +files/distccd.service.conf, +metadata.xml:
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration
tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this
project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo
developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve
cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014
work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on
the bikeshed
09 Aug 2015; Ulrich Müller <ulm@gentoo.org> files/3.0/init, files/3.1/init:
[QA] Remove executable bit from files, bug 550434.
24 Aug 2015; Justin Lecher <jlec@gentoo.org> distcc-3.1-r10.ebuild,
distcc-3.2_rc1-r3.ebuild, metadata.xml:
Use https by default
Convert all URLs for sites supporting encrypted connections from http to
https
Signed-off-by: Justin Lecher <jlec@gentoo.org>
24 Aug 2015; Justin Lecher <jlec@gentoo.org> distcc-3.1-r10.ebuild,
distcc-3.2_rc1-r3.ebuild:
Convert URIs for googlecode.com to https
Signed-off-by: Justin Lecher <jlec@gentoo.org>
24 Aug 2015; Mike Gilbert <floppym@gentoo.org> metadata.xml:
Revert DOCTYPE SYSTEM https changes in metadata.xml
repoman does not yet accept the https version.
This partially reverts eaaface92ee81f30a6ac66fe7acbcc42c00dc450.
Bug: https://bugs.gentoo.org/552720
22 Oct 2015; Jeroen Roovers <jer@gentoo.org> -files/2.18-r1/conf,
-files/2.18-r1/init, -files/2.18/conf, -files/2.18/init, files/3.0/conf,
-files/3.0/init, files/3.1/conf, -files/distcc-3.0-gentoo.patch,
-files/distcc-3.0-svn617.patch, -files/distcc-3.0-uninitialized.patch,
-files/distcc-as-needed.patch, -files/distcc-avahi-configure.patch,
-files/distcc-create-dir.patch, -files/distcc-freedesktop.patch,
-files/distcc-gentoo-multilib-r1.patch, -files/distcc-gentoo-multilib.patch,
-files/distcc-march-native.patch:
Remove old. Fix one type.
Package-Manager: portage-2.2.23
22 Oct 2015; Sergey Popov <pinkbyte@gentoo.org> distcc-3.2_rc1-r3.ebuild:
fix path to make.conf in pkg_postinst tips section
Tips section about how to use distcc mentioned old location for make.conf
file
Gentoo-Bug: 555542
Package-Manager: portage-2.2.23
*distcc-3.2_rc1-r4 (22 Oct 2015)
22 Oct 2015; Sergey Popov <pinkbyte@gentoo.org> -distcc-3.2_rc1-r3.ebuild,
+distcc-3.2_rc1-r4.ebuild, +files/3.2/conf, +files/3.2/distcc-config,
+files/3.2/init, -files/distcc-config-3.2_rc1:
revision bump
Distcc-config appears to be installed twice, which is wrong.
Also, create separate subdirectory for config files and initscripts,
related to 3.2 branch of package. Drop old revision.
Gentoo-Bug: 523658
Package-Manager: portage-2.2.20
22 Oct 2015; Sergey Popov <pinkbyte@gentoo.org> distcc-3.1-r10.ebuild,
distcc-3.2_rc1-r4.ebuild:
fix documentation path
Documentation about using distcc in Gentoo were moved to wiki,
fix apropriate URLs
Gentoo-Bug: 534502
Package-Manager: portage-2.2.20
24 Oct 2015; Jeroen Roovers <jer@gentoo.org> distcc-3.2_rc1-r4.ebuild:
Stable for HPPA PPC64 (bug #421481).
Package-Manager: portage-2.2.23
RepoMan-Options: --ignore-arches
27 Oct 2015; Agostino Sarubbo <ago@gentoo.org> distcc-3.2_rc1-r4.ebuild:
amd64 stable wrt bug #421481
Package-Manager: portage-2.2.20.1
RepoMan-Options: --include-arches="amd64"
28 Oct 2015; Justin Lecher <jlec@gentoo.org> distcc-3.1-r10.ebuild:
Fix for prefix
Package-Manager: portage-2.2.23
Signed-off-by: Justin Lecher <jlec@gentoo.org>
30 Oct 2015; Agostino Sarubbo <ago@gentoo.org> distcc-3.2_rc1-r4.ebuild:
ppc stable wrt bug #421481
Package-Manager: portage-2.2.20.1
RepoMan-Options: --include-arches="ppc"
01 Nov 2015; Tobias Klausmann <klausman@gentoo.org>
distcc-3.2_rc1-r4.ebuild:
add alpha keyword
Gentoo-Bug: 421481
Package-Manager: portage-2.2.23
03 Nov 2015; Agostino Sarubbo <ago@gentoo.org> distcc-3.2_rc1-r4.ebuild:
x86 stable wrt bug #421481
Package-Manager: portage-2.2.20.1
RepoMan-Options: --include-arches="x86"
05 Nov 2015; Agostino Sarubbo <ago@gentoo.org> distcc-3.2_rc1-r4.ebuild:
sparc stable wrt bug #421481
Package-Manager: portage-2.2.20.1
RepoMan-Options: --include-arches="sparc"
05 Nov 2015; Markus Meier <maekke@gentoo.org> distcc-3.2_rc1-r4.ebuild:
arm stable, bug #421481
Package-Manager: portage-2.2.23
RepoMan-Options: --include-arches="arm"
16 Nov 2015; Agostino Sarubbo <ago@gentoo.org> distcc-3.2_rc1-r4.ebuild:
ia64 stable wrt bug #421481
Package-Manager: portage-2.2.20.1
RepoMan-Options: --include-arches="ia64"
18 Nov 2015; Sergey Popov <pinkbyte@gentoo.org> distcc-3.2_rc1-r4.ebuild:
s390 stable
Gentoo-Bug: 421481
Package-Manager: portage-2.2.23
24 Jan 2016; Michał Górny <mgorny@gentoo.org> metadata.xml:
Replace all herds with appropriate projects (GLEP 67)
Replace all uses of herd with appropriate project maintainers, or no
maintainers in case of herds requested to be disbanded.
24 Jan 2016; Michał Górny <mgorny@gentoo.org> metadata.xml:
Set appropriate maintainer types in metadata.xml (GLEP 67)
18 May 2016; Austin English <wizardedit@gentoo.org> files/3.1/init,
files/3.2/init:
use #!/sbin/openrc-run instead of #!/sbin/runscript

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,27 @@
AUX 3.0/conf 1287 SHA256 253cfaa5b53fe4943a9db83e76ff6d6e8855665f69c2f7beca124af3ec63c88a SHA512 e3c32d1bf67fa475ce7b8f6f27835ca604eca23bcb338312c3b93d59123c2747a7c45b2ba7fe19a0c3eec9dca409aa036b1c7aa3776d0f163bd06ac7bb6b2e94 WHIRLPOOL dbd0e9b9b27d40d0ad92cf9b9c663bc5d1b2351a61cd5f9a1e526dfce889eb6bad39ce0b88efd1cbbd45bc6ed827ab5f29150faf0e7aacb9aabf8e730aa08da8
AUX 3.0/distcc-config 3294 SHA256 2d9ecf688e140fddfeea9c8d1a42ad5c611bec2fc690fa4695061df91634beec SHA512 0a641d939acd57077cfe4a5602b327086a5ce19b39e3f7e6161b9928a61222a08b26d70f90eaa774f99c3c758f1ae77964317d29a95742f6f4283e05a0c494f6 WHIRLPOOL 18f8c9590a6b250cad9f0c0528d65be52e45af096ec85abd3386e68e461b1208c2894f292d63a197970a92f9fcedfaa30047a35f7d44c4a7b048912f4e37d862
AUX 3.1/conf 1143 SHA256 f6fe901a78b6ca3277a7990920b317265ba5a5d8f137a62b287da730c665890f SHA512 11330d0725ace3d4d48615d0b29a296c89a462047b9d1aa5600b835be064cc6a1ce66958214c518e5bcd8e3048fa7f9aa4f59beb7cbb59494b363358e1447831 WHIRLPOOL 378d4aebd04ad9c60e5ab0e5dcdecd20fc9bf6021a6223bdcd5f7225ab658c2bbc1ccacd6c619bf4a87f59be3464d491afaff56e415054b9afd441a85cde7cc8
AUX 3.1/init 678 SHA256 92a4931b0241b2ddb9d7771f14c880802bdff9c44fadb2c6671387e08cea0c7c SHA512 e928ebc566c939cf74088dccb013e111dee69923ab66065db3f30f33d12db2405f1ec025ef2f7a185a702d253470f0dcde6710815fda488a21f29ce72b6a1b31 WHIRLPOOL 86436b58fd76b6edbca0f2308437b5a39fab2658ce3663fc56fdd855f793127a6cd7cd39b41218bf58f56d40ef1e4d9952cff5e8f19d56ad4e53c67fc0426e15
AUX 3.2/conf 1287 SHA256 253cfaa5b53fe4943a9db83e76ff6d6e8855665f69c2f7beca124af3ec63c88a SHA512 e3c32d1bf67fa475ce7b8f6f27835ca604eca23bcb338312c3b93d59123c2747a7c45b2ba7fe19a0c3eec9dca409aa036b1c7aa3776d0f163bd06ac7bb6b2e94 WHIRLPOOL dbd0e9b9b27d40d0ad92cf9b9c663bc5d1b2351a61cd5f9a1e526dfce889eb6bad39ce0b88efd1cbbd45bc6ed827ab5f29150faf0e7aacb9aabf8e730aa08da8
AUX 3.2/distcc-config 5220 SHA256 fb06c89b8de7fb30ce9f0445892be1b4a0836e7e614d5d246de0f1a00b42a5bd SHA512 5035d2654616c2456cb390b11575095540e79f10bced260d3269f6a0b4416d16ac877b1518f5e7a3ae29c3c1b754f44ff19e06f9c6b968acba98422c9024531f WHIRLPOOL afa436411555260c4ae02f8c8e350c27a7909f48b9ddbc0396ab0dfadcfe23029aa0c895584e9f871b39f5da6a852e8abf719b34e4c4b2d78c2d127e92a09b15
AUX 3.2/init 678 SHA256 92a4931b0241b2ddb9d7771f14c880802bdff9c44fadb2c6671387e08cea0c7c SHA512 e928ebc566c939cf74088dccb013e111dee69923ab66065db3f30f33d12db2405f1ec025ef2f7a185a702d253470f0dcde6710815fda488a21f29ce72b6a1b31 WHIRLPOOL 86436b58fd76b6edbca0f2308437b5a39fab2658ce3663fc56fdd855f793127a6cd7cd39b41218bf58f56d40ef1e4d9952cff5e8f19d56ad4e53c67fc0426e15
AUX distcc-3.0-fix-fortify.patch 313 SHA256 7b57ae28dcef0c1ecd273a8a10dd1a16fa6a7af618d5438e1fe4398863fa8901 SHA512 11f125fd12398d7e7cdcbbb2bb57d5d374fc3dda0eb88d22176c1c9948393debaf4aa05975d79e6fa4ca8de69b332cd2a75b301868b473c42511901e38b4c2a1 WHIRLPOOL 6eb87c3228717cff12a55770c6ff3d3846ed102ce5fe65e48e49cb7198c60d05fb0f779150c2f21c9cad59d869c249b53ae37f2c2332bacd583298aba6651399
AUX distcc-3.0-xinetd.patch 558 SHA256 9ef11743e91167548ac6324aa21608a62fd09149a8dbdbab32602f70804e0560 SHA512 1c0aa31606e1ce828ad52c9fff672d9e13a00494b8a3441095aca101d76f0f296308e359330a85745e2c60533eb1dcf82cea3feff2d0a3154b204d56735f0d14 WHIRLPOOL 59b3fdc21fe5a15a5163b02ec6c778085b85ae2eb2c98a1b88a6b5cfb7cd2a9a81512e5ef66892c7cdb1ea17e7e6728fd059b42762e15d2d20a60ad79c458155
AUX distcc-3.1-argc-fix.patch 480 SHA256 e576553f27c7fabc2dcd3f361a98e2db70fef9fa4f08df91a8bb00c178912a1b SHA512 da9266ee6ce36cf427324b94734fa6e368498422b0a3adcdde9bfe252e163173a989db323b9d2c7e2a2b1048aa76ede13d4dbd169fef34fc559e244a7b802b00 WHIRLPOOL df9b32d2f3697c90bdca4a606280fe9f69d83f5d24f5031797d7a176a563ad4da3b191d085d909a8a9a0c86afba12a6481cda69c3e897d5ae00003c8cccc8877
AUX distcc-3.1-freedesktop.patch 2959 SHA256 bf8694f4d1eb5e757615929bc58587f538ce733891097eb42204423cab644798 SHA512 4eb6497179ca1f6b57d1b7f6ca8f58d2ad8b7a512f771cd63f835ddf457b988d188800a1d662463d0caec66c06ad151378145f5b910f6bd9eb922e0c228e43c9 WHIRLPOOL 3da6509bcf47132b1f9d215e84756c8e015ba532f2e078ea2b2de163157a44db0fa88d8d37cd772851658586d5308da141f93ee706aaf9e307664c0018dce81d
AUX distcc-3.1-python.patch 10754 SHA256 8ba3c0745a30b5901cfb37f4231d754e5779cbc5a6fa173fb196661d2a035cc2 SHA512 8a66113ef0157b6ec382883325f4acc1dcd7df573c3c7f14bf88429b6060687faa64862a53b510709f6429e082aad97be7934e964168d91f85086c8c5f764a1e WHIRLPOOL 3aed5e32be73c04af7786c0b888e3a11b7f2dbb78c958f2aa1aa4175651cb850aab4dc1559aaacabe2295168aed692238ac71cee1b838d1b3a6a3a44e5db0eee
AUX distcc-3.2_rc1-freedesktop.patch 3140 SHA256 7ead1174fc170cee5c32ac183edf0c15ae35df56bedbbf6bc24c0099fe23b7f6 SHA512 fe953e1884b498da9cbb83ca90af9e49b554ad56fef8a8f55b9e6b46e5904f7376e5e58a9123f4acb474e16577fb6c9371a12eddc29c07c5d488be847f4ed2ef WHIRLPOOL b073d4c775493a2976dc430f949269d6328178254c2080ca1f8c71be3b935cdfcc5e3135e2504e87267059df243f744d2f7f90a517aefebeaed5f55e40607eb1
AUX distcc-3.2_rc1-gssapi.patch 1638 SHA256 2693fbf5b76ab64874e0a4bc1540067f402799dfabde5202a89ec045f1d88ea0 SHA512 c804189f87068f82e7cb18de4e8d30cc67db7cc7fbcb13872d44e3f6fb006b3c779adf9c6068ae50831ef649da718ddb33c0efc4354636aacc9a7217b3c9a348 WHIRLPOOL fd0afc3bcdc176aec7f2f2e9d990578573628c66a23da60ba8e34663c86835ca138f48a2feb4f02dd8cfa2c28442f65338ea531994a09db38bbdf62bfdfcbe4d
AUX distcc-3.2_rc1-python.patch 10592 SHA256 935328943efe26f20bfb94952bc8bcb7f8536465db72411d81e6f3d1ade37989 SHA512 513c2fb9aa8f222a0f6062795fac1f855d67467d796b406c6b685e345554ce09a96ab9e594d6a05aad6c5a0f8c7906700529cfb562f2dd7c498d9078219b3d6b WHIRLPOOL 0ec9deafa00b161a29ead3ff7791262a189501d2ca69d03d46eb5838ca3effa8e1de7878b72917634cb261ee2cf68401f2b8ca70048345d4bfddc6db82fa56aa
AUX distcc-3.2_rc1-socks5.patch 5462 SHA256 85b48489c360d384a67de91f1a750413a2239dd81fe45d7270c62451114a6f22 SHA512 707b6ad02bb7ff1507cfbfbb4cee673d5f0dc776006e9b7e801deabccf05c6057b33ea43c6a3ddd1756b8d07ff1d5e3087b635f15285195ba795b8679ebdc860 WHIRLPOOL 92f2721675d8dc06d73f8c5b0f0236fc1dc57f1dd1f05bc3765cc5daaa1b41db563af579c8dac4741666aeb10c12edfabf8109eef2e36cbd267506ee1c3ea3d6
AUX distcc-config 4769 SHA256 e725831a19e7533da1d1fef823e79ff6c8004a8785c534ea1adca97d6d8141da SHA512 390c4cd879acf1babea9b4cb3510a89d0bd1764fa8f6d1b5c0a266d86e6e239df09fe39f22b92e2ff47db710fccbc5cc905c6824eb1e10cea43b7772a7680a84 WHIRLPOOL b9bc188174859638cea629f7acd07c1aba76c0cadb463405d97bedd860ea12958906fbdeea432bca584998ee6e242704e1d6174007a6c655f47bebb29646dd0b
AUX distcc-hardened.patch 1084 SHA256 dcf63f201cb7f4bf13eeb1485a5056c64370b9239d28e4acc77a47046dcda6cf SHA512 d1150dc83bf89c332f8c0bd01e15f52f95d71868733bd2e5430a5377f1a4aaa2b5b6e0cd488d33d9b94ce18b0eeeadf4af719db536b001b50e4d482b35c7e057 WHIRLPOOL 5faa97711f48d3bb41c6362d9467dab28546d01015de1b76eaaf847d633711bf56af16d1e3484b9bf9215cdf5436fcc6837bc870287cce02553b9ff756215111
AUX distccd.service 244 SHA256 d9cbc0f6fbadd1628dfdd9b31f5ade85f4a29cdd2dc05382aff8d9539881a746 SHA512 0626a2da412df4a124ec8f3486b48af92895e97ad626bb848f14e60c9b016de313ca7c17a09565de95fa48233c9f7e37bf79038d1115b339a2033f0eacf0a22f WHIRLPOOL 31e258449949cd8185e5f83cfdc62017dd5576e8c80468fc5624c6f49abd133b488f3d333096fbdb213a8a7dddfb2d2414949e5fc1e68c79c569fd73298f3c93
AUX distccd.service.conf 186 SHA256 75fd7954ab324efeeb3c7a9379bf261370f4aa715c57f3a9b39413822ce5ebc7 SHA512 19bf25757ba724ba4e728797b8c6fccabb8b95d2945f0e3c216303a04a4e7470507dcf8535657954f265ed5f067f32dcb3fb6558e9958a86de76b1e66e2b31b6 WHIRLPOOL 7b110c3a799469d368ae510d915fbdc6999a4750fa4abd91045e5576ac5aedb5daa063741a5833388d2dfb97d5b76e235bfd49875bd571f4732e27e8cabdabc7
DIST distcc-3.1.tar.bz2 588820 SHA256 f55dbafd76bed3ce57e1bbcdab1329227808890d90f4c724fcd2d53f934ddd89 SHA512 0ca7167309badf5d36d2783bab398295b52c43fde0355cf1902032c70b27fc40c21729c98af0ee4c0aeea0c48755e4626308e9385d938b7822de27cdb048e7bd WHIRLPOOL 9152feab2b7def17606259293fe7af7815ec295defa0287b7e5c054f17b0cb73d07f6e721855fd06eec4fc838c44ff509db20fc89c47871f7f1349e08cd126bd
DIST distcc-3.2rc1.tar.bz2 609904 SHA256 311671e844625d7fdb18dd3d096cd855751cfe8de13827682bcb7beff9133b30 SHA512 98b2e8423d724bbb6a615d946d170441a8e293310785f867d7a277b318c043a37b0af39ae8ed1f7a0667803de9db1d1925199bad85130cf9bd9cb347635125ee WHIRLPOOL d366abb05d10aa5a458acf7b57f5bf52fd4f5ff46c68494e28140eb944524e66d729ebef60190acb1d9b33a0fb8faea6b909509de67294c29dbebcf01d500a36
EBUILD distcc-3.1-r10.ebuild 4621 SHA256 0a46944d9ac54a7468df7ed62215bb5e7b9988de31aa76759be983238d7f9780 SHA512 a48968fe9121cb0dad4a6f16a188aa0444814998f66a78ec70d8fbcb756da4ffce51916516c474936bdafdaa926b25778f889ea20fd820a4b6d96bf6dd0d6300 WHIRLPOOL babce9ca255396c0ee41f9a3b56548b4dce4f9a5605abfdcd9dddb0ca09b4ed253dde6973d2818505555fece035662b18fcc4efbdff22a073aff1c6a2178d816
EBUILD distcc-3.2_rc1-r4.ebuild 5842 SHA256 747a2c8f291f4fa2e8abd1c334350e531ebce6ab5e2df5a9970a4493e06fbf7a SHA512 db40e631e4188992cac143ec25fd83f4a65b876b7a620f88c35f69cf4e8a0d0d2f237c3c4f2d204f22e77c017af1d300afe903617eccd1f2155928054a87e741 WHIRLPOOL 810a486f3b9eac77f608e7a267c66d9ff6d80007ef719af5fae156095d9eb4088ff120347837c0932c90a7db62a20790df29d3a47b8216161f56c28c10a4fc73
MISC ChangeLog 7420 SHA256 4ed189ddcb11fde22fdeb72401c0929523206f92f8dc79404aba0c87c018895a SHA512 8f40173d32619100007676d6d4f939a5974b311ef34c64bbc4203094aef860b6391cd93f074c03e877cf6cd5dd90f2ac396ad9d076db721a86310835f31849c7 WHIRLPOOL 93170d9b34f1f6d2b13a7d8337c3f875562ff84d1f2b2b0d6c4899375dac54805953b86524decc498a4662d5f467f2c403544e5ca69287a7c08ff22b068ac379
MISC ChangeLog-2015 43187 SHA256 092f07c773f2361956f0e8b4d28d338aaa03ee4143644db6922a803e93f90f75 SHA512 2845de19f4949be5630835998b1b2a95369f2d49454579f14df5070186f3416d750014cd2945353d07f88e7e06fd53a125834570f2a2e496060697da36cb7991 WHIRLPOOL db2463f7da6cbf5ed97ee04e7498b804862ac6614eb9b6e84f30280c34103bf5bd47f798d5d516f597ebf3abbad5fd9af6af8e1a5ee58c32b615c994a8b2519e
MISC metadata.xml 591 SHA256 bb88c70f929966bac3eb4e28ae28551d77b51405fdb2a7c1d821d900675d27fe SHA512 e1505d96de755aa36e470200545efec04e93f21fb122d0679b47f0e5b4fd17aeb82d31d02bed9da4a99408200748df14e4599f4ba03925c39566f6411eb98b71 WHIRLPOOL 0bd64f2dc0d1a5e341995838237ef715b83827f6ce91a0d9907330ca70ed4ad23d8f41f6f2361cc9bd2ae3086f1b721b2625b0d9b27da305c23ac55a8c31be18

View File

@ -0,0 +1,174 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit eutils fdo-mime flag-o-matic multilib python-single-r1 systemd toolchain-funcs user
DESCRIPTION="Distribute compilation of C code across several machines on a network"
HOMEPAGE="http://distcc.org/"
SRC_URI="https://distcc.googlecode.com/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
IUSE="avahi gtk hardened ipv6 selinux xinetd"
RESTRICT="test"
CDEPEND="${PYTHON_DEPS}
dev-libs/popt
avahi? ( >=net-dns/avahi-0.6[dbus] )
gtk? ( x11-libs/gtk+:2 )"
DEPEND="${CDEPEND}
virtual/pkgconfig"
RDEPEND="${CDEPEND}
!net-misc/pump
>=sys-devel/gcc-config-1.4.1
selinux? ( sec-policy/selinux-distcc )
xinetd? ( sys-apps/xinetd )"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DISTCC_LOG=""
DCCC_PATH="/usr/$(get_libdir)/distcc/bin"
DISTCC_VERBOSE="0"
pkg_setup() {
enewuser distcc 240 -1 -1 daemon
python-single-r1_pkg_setup
}
src_prepare() {
epatch "${FILESDIR}/${PN}-3.0-xinetd.patch"
# bug #253786
epatch "${FILESDIR}/${PN}-3.0-fix-fortify.patch"
# bug #255188
epatch "${FILESDIR}/${P}-freedesktop.patch"
# bug #258364
epatch "${FILESDIR}/${P}-python.patch"
# bug #351979
epatch "${FILESDIR}/${P}-argc-fix.patch"
epatch_user
sed -i -e "/PATH/s:\$distcc_location:${DCCC_PATH}:" pump.in || die
# Bugs #120001, #167844 and probably more. See patch for description.
use hardened && epatch "${FILESDIR}/distcc-hardened.patch"
}
src_configure() {
local myconf="--disable-Werror --with-docdir=/usr/share/doc/${PF}"
# More legacy stuff?
[ "$(gcc-major-version)" = "2" ] && filter-lfs-flags
# --disable-rfc2553 b0rked, bug #254176
use ipv6 && myconf="${myconf} --enable-rfc2553"
econf \
$(use_with avahi) \
$(use_with gtk) \
${myconf}
}
src_install() {
# In rare cases, parallel make install failed
MAKEOPTS+=" -j1"
default
dobin "${FILESDIR}/3.0/distcc-config"
newinitd "${FILESDIR}/${PV}/init" distccd
systemd_dounit "${FILESDIR}/distccd.service"
systemd_install_serviced "${FILESDIR}/distccd.service.conf"
cp "${FILESDIR}/3.1/conf" "${T}/distccd" || die
if use avahi; then
cat >> "${T}/distccd" <<-EOF
# Enable zeroconf support in distccd
DISTCCD_OPTS="\${DISTCCD_OPTS} --zeroconf"
EOF
sed -i '/ExecStart/ s|$| --zeroconf|' "${ED}"/usr/lib/systemd/system/distccd.service || die
fi
doconfd "${T}/distccd"
cat > "${T}/02distcc" <<-EOF
# This file is managed by distcc-config; use it to change these settings.
DISTCC_LOG="${DISTCC_LOG}"
DCCC_PATH="${DCCC_PATH}"
DISTCC_VERBOSE="${DISTCC_VERBOSE}"
EOF
doenvd "${T}/02distcc"
# create the masquerade directory
dodir "${DCCC_PATH}"
for f in cc c++ gcc g++; do
dosym /usr/bin/distcc "${DCCC_PATH}/${f}"
if [ "${f}" != "cc" ]; then
dosym /usr/bin/distcc "${DCCC_PATH}/${CTARGET:-${CHOST}}-${f}"
fi
done
# create the distccd pid directory
keepdir /var/run/distccd
fowners distcc:daemon /var/run/distccd
if use gtk; then
einfo "Renaming /usr/bin/distccmon-gnome to /usr/bin/distccmon-gui"
einfo "This is to have a little sensability in naming schemes between distccmon programs"
mv "${ED}/usr/bin/distccmon-gnome" "${ED}/usr/bin/distccmon-gui" || die
dosym distccmon-gui /usr/bin/distccmon-gnome
fi
if use xinetd; then
insinto /etc/xinetd.d
newins "doc/example/xinetd" distcc
fi
rm -rf "${ED}/etc/default" || die
rm -f "${ED}/etc/distcc/clients.allow" || die
rm -f "${ED}/etc/distcc/commands.allow.sh" || die
python_fix_shebang "${ED}"
python_optimize
}
pkg_postinst() {
use gtk && fdo-mime_desktop_database_update
if use ipv6; then
elog
elog "IPv6 is not supported yet by ${P}."
fi
elog
elog "Tips on using distcc with Gentoo can be found at"
elog "https://wiki.gentoo.org/wiki/Distcc"
elog
elog "How to use pump mode with Gentoo:"
elog "# distcc-config --set-hosts \"foo,cpp,lzo bar,cpp,lzo baz,cpp,lzo\""
elog "# pump emerge -u world"
elog
elog "To use the distccmon programs with Gentoo you should use this command:"
elog "# DISTCC_DIR=\"${DISTCC_DIR}\" distccmon-text 5"
if use gtk; then
elog "Or:"
elog "# DISTCC_DIR=\"${DISTCC_DIR}\" distccmon-gnome"
fi
elog
elog "***SECURITY NOTICE***"
elog "If you are upgrading distcc please make sure to run etc-update to"
elog "update your /etc/conf.d/distccd and /etc/init.d/distccd files with"
elog "added security precautions (the --listen and --allow directives)"
elog
}
pkg_postrm() {
use gtk && fdo-mime_desktop_database_update
}

View File

@ -0,0 +1,205 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit autotools eutils fdo-mime flag-o-matic multilib python-single-r1 systemd toolchain-funcs user
MY_P="${P/_}"
DESCRIPTION="Distribute compilation of C code across several machines on a network"
HOMEPAGE="http://distcc.org/"
SRC_URI="https://distcc.googlecode.com/files/${MY_P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~sparc-fbsd ~x86-fbsd"
IUSE="avahi crossdev gnome gssapi gtk hardened ipv6 selinux xinetd"
RESTRICT="test"
CDEPEND="${PYTHON_DEPS}
dev-libs/popt
avahi? ( >=net-dns/avahi-0.6[dbus] )
gnome? (
>=gnome-base/libgnome-2
>=gnome-base/libgnomeui-2
x11-libs/gtk+:2
x11-libs/pango
)
gssapi? ( net-libs/libgssglue )
gtk? ( x11-libs/gtk+:2 )"
DEPEND="${CDEPEND}
virtual/pkgconfig"
RDEPEND="${CDEPEND}
!net-misc/pump
>=sys-devel/gcc-config-1.4.1
selinux? ( sec-policy/selinux-distcc )
xinetd? ( sys-apps/xinetd )"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
S="${WORKDIR}/${MY_P}"
DCCC_PATH="/usr/$(get_libdir)/distcc/bin"
DISTCC_VERBOSE="0"
pkg_setup() {
enewuser distcc 240 -1 -1 daemon
python-single-r1_pkg_setup
}
src_prepare() {
epatch "${FILESDIR}/${PN}-3.0-xinetd.patch"
# bug #253786
epatch "${FILESDIR}/${PN}-3.0-fix-fortify.patch"
# bug #255188
epatch "${FILESDIR}/${PN}-3.2_rc1-freedesktop.patch"
# bug #258364
epatch "${FILESDIR}/${PN}-3.2_rc1-python.patch"
# for net-libs/libgssglue
epatch "${FILESDIR}/${PN}-3.2_rc1-gssapi.patch"
# SOCKSv5 support needed for Portage, bug #537616
epatch "${FILESDIR}/${PN}-3.2_rc1-socks5.patch"
epatch_user
# Bugs #120001, #167844 and probably more. See patch for description.
use hardened && epatch "${FILESDIR}/distcc-hardened.patch"
sed -i \
-e "/PATH/s:\$distcc_location:${EPREFIX}${DCCC_PATH}:" \
-e "s:@PYTHON@:${EPYTHON}:" \
pump.in || die "sed failed"
sed \
-e "s:@EPREFIX@:${EPREFIX:-/}:" \
-e "s:@libdir@:/usr/$(get_libdir):" \
"${FILESDIR}/3.2/distcc-config" > "${T}/distcc-config" || die
eaclocal -Im4 --output=aclocal.m4
eautoconf
}
src_configure() {
local myconf="--disable-Werror --with-docdir=/usr/share/doc/${PF}"
# More legacy stuff?
[ "$(gcc-major-version)" = "2" ] && filter-lfs-flags
# --disable-rfc2553 b0rked, bug #254176
use ipv6 && myconf="${myconf} --enable-rfc2553"
econf \
$(use_with avahi) \
$(use_with gtk) \
$(use_with gnome) \
$(use_with gssapi auth) \
${myconf}
}
src_install() {
default
python_optimize
newinitd "${FILESDIR}/3.2/init" distccd
systemd_dounit "${FILESDIR}/distccd.service"
systemd_install_serviced "${FILESDIR}/distccd.service.conf"
cp "${FILESDIR}/3.2/conf" "${T}/distccd" || die
if use avahi; then
cat >> "${T}/distccd" <<-EOF
# Enable zeroconf support in distccd
DISTCCD_OPTS="\${DISTCCD_OPTS} --zeroconf"
EOF
sed -i '/ExecStart/ s|$| --zeroconf|' "${ED}"/usr/lib/systemd/system/distccd.service || die
fi
doconfd "${T}/distccd" || die
cat > "${T}/02distcc" <<-EOF
# This file is managed by distcc-config; use it to change these settings.
# DISTCC_LOG and DISTCC_DIR should not be set.
DISTCC_VERBOSE="${DISTCC_VERBOSE:-0}"
DISTCC_FALLBACK="${DISTCC_FALLBACK:-1}"
DISTCC_SAVE_TEMPS="${DISTCC_SAVE_TEMPS:-0}"
DISTCC_TCP_CORK="${DISTCC_TCP_CORK}"
DISTCC_SSH="${DISTCC_SSH}"
UNCACHED_ERR_FD="${UNCACHED_ERR_FD}"
DISTCC_ENABLE_DISCREPANCY_EMAIL="${DISTCC_ENABLE_DISCREPANCY_EMAIL}"
DCC_EMAILLOG_WHOM_TO_BLAME="${DCC_EMAILLOG_WHOM_TO_BLAME}"
EOF
doenvd "${T}/02distcc" || die
keepdir "${DCCC_PATH}" || die
dobin "${T}/distcc-config" || die
# create the distccd pid directory
keepdir /var/run/distccd || die
fowners distcc:daemon /var/run/distccd || die
if use gnome || use gtk; then
einfo "Renaming /usr/bin/distccmon-gnome to /usr/bin/distccmon-gui"
einfo "This is to have a little sensability in naming schemes between distccmon programs"
mv "${ED}/usr/bin/distccmon-gnome" "${ED}/usr/bin/distccmon-gui" || die
dosym distccmon-gui /usr/bin/distccmon-gnome || die
fi
if use xinetd; then
insinto /etc/xinetd.d || die
newins "doc/example/xinetd" distcc || die
fi
rm -r "${ED}/etc/default" || die
rm "${ED}/etc/distcc/clients.allow" || die
rm "${ED}/etc/distcc/commands.allow.sh" || die
}
pkg_postinst() {
if [ -x "${EPREFIX}/usr/bin/distcc-config" ] ; then
if use crossdev; then
"${EPREFIX}/usr/bin/distcc-config" --update-masquerade-with-crossdev
else
"${EPREFIX}/usr/bin/distcc-config" --update-masquerade
fi
fi
use gnome && fdo-mime_desktop_database_update
elog
elog "Tips on using distcc with Gentoo can be found at"
elog "https://wiki.gentoo.org/wiki/Distcc"
elog
elog "How to use pump mode with Gentoo:"
elog "# distcc-config --set-hosts \"foo,cpp,lzo bar,cpp,lzo baz,cpp,lzo\""
elog "# echo 'FEATURES=\"\${FEATURES} distcc distcc-pump\"' >> /etc/portage/make.conf"
elog "# emerge -u world"
elog
elog "To use the distccmon programs with Gentoo you should use this command:"
elog "# DISTCC_DIR=\"${DISTCC_DIR:-${BUILD_PREFIX}/.distcc}\" distccmon-text 5"
if use gnome || use gtk; then
elog "Or:"
elog "# DISTCC_DIR=\"${DISTCC_DIR:-${BUILD_PREFIX}/.distcc}\" distccmon-gnome"
fi
elog
elog "***SECURITY NOTICE***"
elog "If you are upgrading distcc please make sure to run etc-update to"
elog "update your /etc/conf.d/distccd and /etc/init.d/distccd files with"
elog "added security precautions (the --listen and --allow directives)"
elog
}
pkg_postrm() {
# delete the masquerade directory
if [ ! -f "${EPREFIX}/usr/bin/distcc" ] ; then
einfo "Remove masquerade symbolic links."
rm "${EPREFIX}${DCCC_PATH}/"*{cc,c++,gcc,g++}
rmdir "${EPREFIX}${DCCC_PATH}"
fi
use gnome && fdo-mime_desktop_database_update
}

View File

@ -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 recommended 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 File

@ -0,0 +1,123 @@
#!/usr/bin/env python
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
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 File

@ -0,0 +1,35 @@
# /etc/conf.d/distccd: config file for /etc/init.d/distccd
# 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"
# Ports:
# Default port is 3632. For most people the default is okay.
#
# 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
#
# Nice level:
# The default nice level is 15. You can change it by adding: -N xx
# where xx is the nice level.
# SECURITY NOTICE:
# It is HIGHLY recommended 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="--port 3632 --log-level notice --log-file /var/log/distccd.log -N 15"

View File

@ -0,0 +1,32 @@
#!/sbin/openrc-run
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
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 PATH and GCC_SPECS from gcc-config, bug #262773
eval "$(gcc-config -E)"
start-stop-daemon --start --quiet --exec "${DISTCCD_EXEC}" --user distcc -- \
--daemon --pid-file "${DISTCCD_PIDFILE}" \
${DISTCCD_OPTS}
eend $?
}
stop() {
ebegin "Stopping distccd"
start-stop-daemon --stop --quiet --pidfile "${DISTCCD_PIDFILE}"
eend $?
}

View File

@ -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 recommended 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 File

@ -0,0 +1,181 @@
#!/usr/bin/env python2
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
import os, re, signal, subprocess, sys
options=[
'--get-hosts',
'--set-hosts',
'--get-verbose',
'--set-verbose',
'--get-log',
'--set-log',
'--update-masquerade',
'--update-masquerade-with-crossdev',
'--help',
'--get-env',
'--set-env'
]
tmpcmdline=sys.argv[1:]
cmdline=[]
eprefix = '@EPREFIX@'
bindir = os.path.join(eprefix, 'usr', 'bin')
sbindir = os.path.join(eprefix, 'usr', 'sbin')
libdir = os.path.join(eprefix, '@libdir@')
sysconfdir = os.path.join(eprefix, 'etc')
gcc_config = os.path.join(bindir, 'gcc-config')
env_update = os.path.join(sbindir, 'env-update')
envfile = os.path.join(sysconfdir, 'env.d', '02distcc')
default_distcc_dir = os.path.join(sysconfdir, 'distcc')
hostfile = os.path.join(default_distcc_dir, 'hosts')
distcc_path = os.path.join(bindir, 'distcc')
dccc_dir = os.path.join(libdir, 'distcc', 'bin')
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('!!! %s %s must be run as root' % (sys.argv[:1][0],tmpcmdline[0]))
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 %s to: %s ' % (var,value))
subprocess.Popen(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 installlink(chost='', version=''):
for file in ['gcc', 'cc', 'c++', 'g++']:
if not chost == '':
file = '%s-%s' % (chost,file)
if not version == '':
file = '%s-%s' % (file,version)
path = os.path.join(dccc_dir,file)
if os.path.exists(os.path.join(bindir,file)):
if not os.path.exists(path):
print('Creating %s symlink...' % (path))
os.symlink(distcc_path,path)
#else:
# print('Already exists. Skipping...')
def installlinks():
p = subprocess.Popen([gcc_config+" -C -l"], shell=True, stdout=subprocess.PIPE)
lines = p.stdout.read().rstrip().split('\n')
for line in lines:
columns = line.split()
if len(columns) >= 2:
matches = re.match("(.*)-(.*)", columns[1])
chost = matches.group(1)
version = matches.group(2)
installlink(chost)
installlink(chost, version)
def uninstalllinks():
for root, dirs, files in os.walk(dccc_dir):
for file in files:
os.remove(os.path.join(root, file))
def createdistccdir(dir):
if not os.path.exists(dir):
os.mkdir(dir)
os.chmod(dir, 0o755)
for x in tmpcmdline:
if not x:
continue
if x[0:2]=="--":
if not x in options:
print("!!! Error: %s is an invalid option." % (x))
sys.exit(1)
else:
cmdline = x
if '--get-hosts' in tmpcmdline:
HOSTS_ENV = os.environ.get('DISTCC_HOSTS')
HOSTS_HOME = os.path.join(os.environ.get('HOME'), '.distcc', 'hosts')
if HOSTS_ENV:
print(HOSTS_ENV)
elif os.path.isfile(HOSTS_HOME) and os.path.getsize(HOSTS_HOME) != 0:
print(HOSTS_HOME)
elif os.path.exists(hostfile):
print(open(hostfile, 'r').read().rstrip())
else:
print('No configuration file found. Setup your hosts with --set-hosts.')
elif '--set-hosts' in tmpcmdline:
if isroot(1):
PATH = default_distcc_dir
else:
PATH = os.path.join(os.environ.get('HOME'), '.distcc')
createdistccdir(PATH)
open(os.path.join(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 '--update-masquerade' in tmpcmdline:
isroot()
uninstalllinks()
print('Creating symlinks...')
installlink()
installlinks()
elif '--update-masquerade-with-crossdev' in tmpcmdline:
isroot()
uninstalllinks()
print('Creating symlinks...')
installlinks()
elif '--get-env' in tmpcmdline:
if len(tmpcmdline) == 1:
print(open(envfile, 'r').read().rstrip())
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:
cmd = sys.argv[:1][0]
print('Usage: %s --set-hosts DISTCC_HOSTS | --get-hosts' % (cmd))
print(' %s --set-verbose { 0 | 1 } | --get-verbose' % (cmd))
print(' %s --set-log FILE | --get-log' % (cmd))
print(' %s --set-env VARIABLE VALUE | --get-env [VARIABLE]' % (cmd))
print(' %s --update-masquerade' % (cmd))
print(' %s --update-masquerade-with-crossdev' % (cmd))

View File

@ -0,0 +1,32 @@
#!/sbin/openrc-run
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
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 PATH and GCC_SPECS from gcc-config, bug #262773
eval "$(gcc-config -E)"
start-stop-daemon --start --quiet --exec "${DISTCCD_EXEC}" --user distcc -- \
--daemon --pid-file "${DISTCCD_PIDFILE}" \
${DISTCCD_OPTS}
eend $?
}
stop() {
ebegin "Stopping distccd"
start-stop-daemon --stop --quiet --pidfile "${DISTCCD_PIDFILE}"
eend $?
}

View File

@ -0,0 +1,11 @@
diff -ru a/src/snprintf.h b/src/snprintf.h
--- a/src/snprintf.h 2008-08-06 15:52:06.000000000 -0500
+++ b/src/snprintf.h 2009-01-04 15:19:22.000000000 -0600
@@ -7,6 +7,7 @@
*/
#include <stdarg.h>
+#include "config.h"
#ifdef __GNUC__
/** Use gcc attribute to check printf fns. a1 is the 1-based index of

View File

@ -0,0 +1,15 @@
diff -Naur distcc-3.0.orig/doc/example/xinetd distcc-3.0/doc/example/xinetd
--- distcc-3.0.orig/doc/example/xinetd 2008-08-07 05:52:13.000000000 +0900
+++ distcc-3.0/doc/example/xinetd 2008-10-27 15:32:14.000000000 +0900
@@ -19,10 +19,6 @@
socket_type = stream
wait = no
user = distcc
- server = /usr/local/bin/distccd
+ server = /usr/bin/distccd
server_args = --inetd
-
- # This makes xinetd cope if there is no service listed in
- # /etc/services
- type = UNLISTED
}

View File

@ -0,0 +1,17 @@
this fixes virtualbox not compiling with distcc
https://bugs.gentoo.org/show_bug.cgi?id=351979
http://code.google.com/p/distcc/issues/detail?id=83
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=626926
--- distcc-3.1.orig/source/src/arg.c
+++ distcc-3.1/source/src/arg.c
@@ -515,6 +515,8 @@
}
free(argv);
*argv_ptr = argv = new_argv;
+ i += extra_args - 1;
+ argc += extra_args - 1;
}
}
return 0;

View File

@ -0,0 +1,76 @@
diff -Naur distcc-3.1.orig/Makefile.in distcc-3.1/Makefile.in
--- distcc-3.1.orig/Makefile.in 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/Makefile.in 2009-02-02 00:40:20.000000000 +0900
@@ -49,13 +49,14 @@
includedir = @includedir@
oldincludedir = /usr/include
docdir = @docdir@
-pkgdatadir = $(datadir)/@PACKAGE_NAME@
+icondir = $(datadir)/pixmaps
+desktopdir = $(datadir)/applications
include_server_builddir = $(builddir)/_include_server
# These must be done from here, not from autoconf, because they can
# contain variable expansions written in Make syntax. Ew.
-DIR_DEFS = -DSYSCONFDIR="\"${sysconfdir}\"" -DPKGDATADIR="\"${pkgdatadir}\""
+DIR_DEFS = -DSYSCONFDIR="\"${sysconfdir}\"" -DICONDIR="\"${icondir}\""
# arguments to pkgconfig
GNOME_PACKAGES = @GNOME_PACKAGES@
@@ -1003,7 +1004,8 @@
@echo " documents $(DESTDIR)$(docdir)"
@echo " programs $(DESTDIR)$(bindir)"
@echo " system configuration $(DESTDIR)$(sysconfdir)"
- @echo " shared data files $(DESTDIR)$(pkgdatadir)"
+ @echo " icons $(DESTDIR)$(icondir)"
+ @echo " .desktop file $(DESTDIR)$(desktopdir)"
# install-sh can't handle multiple arguments, but we don't need any
@@ -1086,10 +1088,10 @@
done
install-gnome-data: $(gnome_data)
- $(mkinstalldirs) "$(DESTDIR)$(pkgdatadir)"
- for p in $(gnome_data); do \
- $(INSTALL_DATA) "$$p" "$(DESTDIR)$(pkgdatadir)" || exit 1; \
- done
+ $(mkinstalldirs) $(DESTDIR)$(icondir)
+ $(mkinstalldirs) $(DESTDIR)$(desktopdir)
+ $(INSTALL_DATA) gnome/distccmon-gnome-icon.png $(DESTDIR)$(icondir)
+ $(INSTALL_DATA) gnome/distccmon-gnome.desktop $(DESTDIR)$(desktopdir)
install-conf: $(conf_files) $(default_files)
$(mkinstalldirs) "$(DESTDIR)$(sysconfdir)/distcc"
diff -Naur distcc-3.1.orig/gnome/distccmon-gnome.desktop distcc-3.1/gnome/distccmon-gnome.desktop
--- distcc-3.1.orig/gnome/distccmon-gnome.desktop 2008-12-03 06:50:27.000000000 +0900
+++ distcc-3.1/gnome/distccmon-gnome.desktop 2009-02-02 00:40:55.000000000 +0900
@@ -1,13 +1,11 @@
[Desktop Entry]
-Version=0.9.4
-Encoding=UTF-8
Exec=distccmon-gnome
Name=distcc monitor
GenericName=Distributed Compile Monitor
Comment=Graphical view of distributed compile tasks
-Icon=distccmon-gnome-icon.png
+Icon=distccmon-gnome-icon
TryExec=distccmon-gnome
Terminal=false
Type=Application
-Categories=GNOME;Application;Development;
+Categories=GNOME;Development;
StartupNotify=true
diff -Naur distcc-3.1.orig/src/mon-gnome.c distcc-3.1/src/mon-gnome.c
--- distcc-3.1.orig/src/mon-gnome.c 2008-12-03 06:50:25.000000000 +0900
+++ distcc-3.1/src/mon-gnome.c 2009-02-02 00:41:18.000000000 +0900
@@ -599,7 +599,7 @@
#if GTK_CHECK_VERSION(2,2,0)
gtk_window_set_icon_from_file (GTK_WINDOW (mainwin),
- PKGDATADIR "/distccmon-gnome-icon.png",
+ ICONDIR "/distccmon-gnome-icon.png",
NULL);
#endif

View File

@ -0,0 +1,258 @@
diff -Naur distcc-3.1.orig/bench/statistics.py distcc-3.1/bench/statistics.py
--- distcc-3.1.orig/bench/statistics.py 2008-12-03 06:50:21.000000000 +0900
+++ distcc-3.1/bench/statistics.py 2009-03-17 01:29:26.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/env python2.2
+#! /usr/bin/env python
# benchmark -- automated system for testing distcc correctness
# and performance on various source trees.
diff -Naur distcc-3.1.orig/configure distcc-3.1/configure
--- distcc-3.1.orig/configure 2008-12-03 06:50:34.000000000 +0900
+++ distcc-3.1/configure 2009-03-17 01:31:09.000000000 +0900
@@ -3629,7 +3629,7 @@
#
# NB: Cannot use AC_CONFIG_LIBOBJ_DIR here, because it's not present
# in autoconf 2.53.
-for ac_prog in python2.5 python-2.5 python2.4 python-2.4 python
+for ac_prog in python
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
diff -Naur distcc-3.1.orig/configure.ac distcc-3.1/configure.ac
--- distcc-3.1.orig/configure.ac 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/configure.ac 2009-03-17 01:29:04.000000000 +0900
@@ -243,7 +243,7 @@
#
# NB: Cannot use AC_CONFIG_LIBOBJ_DIR here, because it's not present
# in autoconf 2.53.
-AC_PATH_PROGS(PYTHON, [python2.5 python-2.5 python2.4 python-2.4 python])
+AC_PATH_PROGS(PYTHON, [python])
AC_ARG_VAR(PYTHON, [Python interpreter])
# Python 1 doesn't even support -V
if ! "$PYTHON" -V 2>&1 | grep "^Python" >/dev/null; then
diff -Naur distcc-3.1.orig/include_server/basics.py distcc-3.1/include_server/basics.py
--- distcc-3.1.orig/include_server/basics.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/basics.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
#
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/basics_test.py distcc-3.1/include_server/basics_test.py
--- distcc-3.1.orig/include_server/basics_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/basics_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/c_extensions_test.py distcc-3.1/include_server/c_extensions_test.py
--- distcc-3.1.orig/include_server/c_extensions_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/c_extensions_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/cache_basics.py distcc-3.1/include_server/cache_basics.py
--- distcc-3.1.orig/include_server/cache_basics.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/cache_basics.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/compiler_defaults.py distcc-3.1/include_server/compiler_defaults.py
--- distcc-3.1.orig/include_server/compiler_defaults.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/compiler_defaults.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/compress_files.py distcc-3.1/include_server/compress_files.py
--- distcc-3.1.orig/include_server/compress_files.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/compress_files.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/include_analyzer.py distcc-3.1/include_server/include_analyzer.py
--- distcc-3.1.orig/include_server/include_analyzer.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/include_analyzer.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/include_analyzer_memoizing_node.py distcc-3.1/include_server/include_analyzer_memoizing_node.py
--- distcc-3.1.orig/include_server/include_analyzer_memoizing_node.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/include_analyzer_memoizing_node.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/include_analyzer_memoizing_node_test.py distcc-3.1/include_server/include_analyzer_memoizing_node_test.py
--- distcc-3.1.orig/include_server/include_analyzer_memoizing_node_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/include_analyzer_memoizing_node_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/include_analyzer_test.py distcc-3.1/include_server/include_analyzer_test.py
--- distcc-3.1.orig/include_server/include_analyzer_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/include_analyzer_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/include_server.py distcc-3.1/include_server/include_server.py
--- distcc-3.1.orig/include_server/include_server.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/include_server.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/include_server_test.py distcc-3.1/include_server/include_server_test.py
--- distcc-3.1.orig/include_server/include_server_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/include_server_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/macro_eval.py distcc-3.1/include_server/macro_eval.py
--- distcc-3.1.orig/include_server/macro_eval.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/macro_eval.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/macro_eval_test.py distcc-3.1/include_server/macro_eval_test.py
--- distcc-3.1.orig/include_server/macro_eval_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/macro_eval_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/mirror_path.py distcc-3.1/include_server/mirror_path.py
--- distcc-3.1.orig/include_server/mirror_path.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/mirror_path.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/mirror_path_test.py distcc-3.1/include_server/mirror_path_test.py
--- distcc-3.1.orig/include_server/mirror_path_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/mirror_path_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/parse_command.py distcc-3.1/include_server/parse_command.py
--- distcc-3.1.orig/include_server/parse_command.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/parse_command.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/parse_command_test.py distcc-3.1/include_server/parse_command_test.py
--- distcc-3.1.orig/include_server/parse_command_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/parse_command_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/parse_file.py distcc-3.1/include_server/parse_file.py
--- distcc-3.1.orig/include_server/parse_file.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/parse_file.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/parse_file_test.py distcc-3.1/include_server/parse_file_test.py
--- distcc-3.1.orig/include_server/parse_file_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/parse_file_test.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/run.py distcc-3.1/include_server/run.py
--- distcc-3.1.orig/include_server/run.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/run.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/setup.py distcc-3.1/include_server/setup.py
--- distcc-3.1.orig/include_server/setup.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/setup.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/include_server/statistics.py distcc-3.1/include_server/statistics.py
--- distcc-3.1.orig/include_server/statistics.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.1/include_server/statistics.py 2009-03-17 01:30:46.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
#
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/test/onetest.py distcc-3.1/test/onetest.py
--- distcc-3.1.orig/test/onetest.py 2008-12-03 06:50:22.000000000 +0900
+++ distcc-3.1/test/onetest.py 2009-03-17 01:29:44.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
#
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.1.orig/test/testdistcc.py distcc-3.1/test/testdistcc.py
--- distcc-3.1.orig/test/testdistcc.py 2008-12-03 06:50:22.000000000 +0900
+++ distcc-3.1/test/testdistcc.py 2009-03-17 01:29:36.000000000 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/env python2.2
+#! /usr/bin/env python
# Copyright (C) 2002, 2003, 2004 by Martin Pool <mbp@samba.org>
# Copyright 2007 Google Inc.

View File

@ -0,0 +1,79 @@
diff -Naur distcc-3.2rc1.orig/Makefile.in distcc-3.2rc1/Makefile.in
--- distcc-3.2rc1.orig/Makefile.in 2011-10-26 11:07:15.000000000 +0900
+++ distcc-3.2rc1/Makefile.in 2011-10-27 16:57:46.815272689 +0900
@@ -50,13 +50,14 @@
includedir = @includedir@
oldincludedir = /usr/include
docdir = @docdir@
-pkgdatadir = $(datadir)/@PACKAGE_NAME@
+icondir = $(datadir)/pixmaps
+desktopdir = $(datadir)/applications
include_server_builddir = $(builddir)/_include_server
# These must be done from here, not from autoconf, because they can
# contain variable expansions written in Make syntax. Ew.
-DIR_DEFS = -DSYSCONFDIR="\"${sysconfdir}\"" -DPKGDATADIR="\"${pkgdatadir}\""
+DIR_DEFS = -DSYSCONFDIR="\"${sysconfdir}\"" -DICONDIR="\"${icondir}\""
# arguments to pkgconfig
GNOME_PACKAGES = @GNOME_PACKAGES@
@@ -1016,7 +1017,8 @@
@echo " documents $(DESTDIR)$(docdir)"
@echo " programs $(DESTDIR)$(bindir)"
@echo " system configuration $(DESTDIR)$(sysconfdir)"
- @echo " shared data files $(DESTDIR)$(pkgdatadir)"
+ @echo " icons $(DESTDIR)$(icondir)"
+ @echo " .desktop file $(DESTDIR)$(desktopdir)"
# install-sh can't handle multiple arguments, but we don't need any
@@ -1108,10 +1110,10 @@
done
install-gnome-data: $(gnome_data)
- $(mkinstalldirs) "$(DESTDIR)$(pkgdatadir)"
- for p in $(gnome_data); do \
- $(INSTALL_DATA) "$$p" "$(DESTDIR)$(pkgdatadir)" || exit 1; \
- done
+ $(mkinstalldirs) "$(DESTDIR)$(icondir)"
+ $(mkinstalldirs) "$(DESTDIR)$(desktopdir)"
+ $(INSTALL_DATA) gnome/distccmon-gnome-icon.png "$(DESTDIR)$(icondir)" || exit 1
+ $(INSTALL_DATA) gnome/distccmon-gnome.desktop "$(DESTDIR)$(desktopdir)" || exit 1
install-conf: $(conf_files) $(default_files)
$(mkinstalldirs) "$(DESTDIR)$(sysconfdir)/distcc"
diff -Naur distcc-3.2rc1.orig/gnome/distccmon-gnome.desktop distcc-3.2rc1/gnome/distccmon-gnome.desktop
--- distcc-3.2rc1.orig/gnome/distccmon-gnome.desktop 2011-04-06 03:58:58.000000000 +0900
+++ distcc-3.2rc1/gnome/distccmon-gnome.desktop 2011-10-27 17:01:50.792242592 +0900
@@ -1,6 +1,4 @@
[Desktop Entry]
-Version=0.9.4
-Encoding=UTF-8
Exec=distccmon-gnome
Name=distcc monitor
Name[sv]=distcc övervakare
@@ -8,9 +6,9 @@
GenericName[sv]=Distribuerad kompilerings-övervakare
Comment=Graphical view of distributed compile tasks
Comment[sv]=Grafisk vy av distribuerade kompileringsuppgifter
-Icon=distccmon-gnome-icon.png
+Icon=distccmon-gnome-icon
TryExec=distccmon-gnome
Terminal=false
Type=Application
-Categories=GNOME;Application;Development;
+Categories=GNOME;Development;
StartupNotify=true
diff -Naur distcc-3.2rc1.orig/src/mon-gnome.c distcc-3.2rc1/src/mon-gnome.c
--- distcc-3.2rc1.orig/src/mon-gnome.c 2008-12-03 06:50:25.000000000 +0900
+++ distcc-3.2rc1/src/mon-gnome.c 2011-10-27 16:54:50.220566026 +0900
@@ -599,7 +599,7 @@
#if GTK_CHECK_VERSION(2,2,0)
gtk_window_set_icon_from_file (GTK_WINDOW (mainwin),
- PKGDATADIR "/distccmon-gnome-icon.png",
+ ICONDIR "/distccmon-gnome-icon.png",
NULL);
#endif

View File

@ -0,0 +1,36 @@
diff -Naur distcc-3.2rc1.orig/configure.ac distcc-3.2rc1/configure.ac
--- distcc-3.2rc1.orig/configure.ac 2011-10-21 13:40:55.000000000 +0900
+++ distcc-3.2rc1/configure.ac 2011-10-27 18:06:58.938922585 +0900
@@ -15,6 +15,8 @@
AC_CONFIG_HEADERS(src/config.h)
AC_CANONICAL_HOST
+PKG_PROG_PKG_CONFIG
+
# FreeBSD installs its version of libpopt into /usr/local/, but does
# not put that on the default library and header path.
# Solaris doesn't even ship libpopt. We used to add that path if
@@ -502,16 +504,17 @@
[provide mutual authentication services via the GSS-API])])
if test x"$with_auth" = xyes; then
- AC_SEARCH_LIBS([gss_init_sec_context],
- [gssapi gssapi_krb5],
- AC_DEFINE(HAVE_GSSAPI, 1, [Define if the GSS_API is available])
+ PKG_CHECK_MODULES(GSSAPI, libgssglue,
+ [AC_DEFINE(HAVE_GSSAPI, 1, [Define if the GSS_API is available])
+ CFLAGS="$CFLAGS $GSSAPI_CFLAGS"
+ LIBS="$LIBS $GSSAPI_LIBS"
AUTH_COMMON_OBJS="src/auth_common.o"
AUTH_DISTCC_OBJS="src/auth_distcc.o"
- AUTH_DISTCCD_OBJS="src/auth_distccd.o",
- AC_MSG_FAILURE([--with-auth was given but no GSS-API library found])
+ AUTH_DISTCCD_OBJS="src/auth_distccd.o"],
+ [AC_MSG_FAILURE([--with-auth was given but no GSS-API library found])
AUTH_COMMON_OBJS=""
AUTH_DISTCC_OBJS=""
- AUTH_DISTCCD_OBJS="")
+ AUTH_DISTCCD_OBJS=""])
fi
AC_SUBST(AUTH_COMMON_OBJS)

View File

@ -0,0 +1,246 @@
diff -Naur distcc-3.2rc1.orig/bench/statistics.py distcc-3.2rc1/bench/statistics.py
--- distcc-3.2rc1.orig/bench/statistics.py 2008-12-03 06:50:21.000000000 +0900
+++ distcc-3.2rc1/bench/statistics.py 2011-10-27 17:05:08.418023081 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/env python2.2
+#! /usr/bin/env python
# benchmark -- automated system for testing distcc correctness
# and performance on various source trees.
diff -Naur distcc-3.2rc1.orig/configure.ac distcc-3.2rc1/configure.ac
--- distcc-3.2rc1.orig/configure.ac 2011-10-21 13:40:55.000000000 +0900
+++ distcc-3.2rc1/configure.ac 2011-10-27 17:05:31.179112690 +0900
@@ -243,7 +243,7 @@
#
# NB: Cannot use AC_CONFIG_LIBOBJ_DIR here, because it's not present
# in autoconf 2.53.
-AC_PATH_PROGS(PYTHON, [python2.6 python-2.6 python2.5 python-2.5 python2.4 python-2.4 python])
+AC_PATH_PROGS(PYTHON, [python])
AC_ARG_VAR(PYTHON, [Python interpreter])
# Python 1 doesn't even support -V
if ! "$PYTHON" -V 2>&1 | grep "^Python" >/dev/null; then
diff -Naur distcc-3.2rc1.orig/include_server/basics.py distcc-3.2rc1/include_server/basics.py
--- distcc-3.2rc1.orig/include_server/basics.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/basics.py 2011-10-27 17:05:08.421023097 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
#
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/basics_test.py distcc-3.2rc1/include_server/basics_test.py
--- distcc-3.2rc1.orig/include_server/basics_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/basics_test.py 2011-10-27 17:05:08.421023097 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/c_extensions_test.py distcc-3.2rc1/include_server/c_extensions_test.py
--- distcc-3.2rc1.orig/include_server/c_extensions_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/c_extensions_test.py 2011-10-27 17:05:08.421023097 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/cache_basics.py distcc-3.2rc1/include_server/cache_basics.py
--- distcc-3.2rc1.orig/include_server/cache_basics.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/cache_basics.py 2011-10-27 17:05:08.422023101 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/compiler_defaults.py distcc-3.2rc1/include_server/compiler_defaults.py
--- distcc-3.2rc1.orig/include_server/compiler_defaults.py 2011-04-06 03:58:59.000000000 +0900
+++ distcc-3.2rc1/include_server/compiler_defaults.py 2011-10-27 17:05:08.422023101 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/compress_files.py distcc-3.2rc1/include_server/compress_files.py
--- distcc-3.2rc1.orig/include_server/compress_files.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/compress_files.py 2011-10-27 17:05:08.422023101 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer.py distcc-3.2rc1/include_server/include_analyzer.py
--- distcc-3.2rc1.orig/include_server/include_analyzer.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/include_analyzer.py 2011-10-27 17:05:08.422023101 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node.py distcc-3.2rc1/include_server/include_analyzer_memoizing_node.py
--- distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/include_analyzer_memoizing_node.py 2011-10-27 17:05:08.422023101 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node_test.py distcc-3.2rc1/include_server/include_analyzer_memoizing_node_test.py
--- distcc-3.2rc1.orig/include_server/include_analyzer_memoizing_node_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/include_analyzer_memoizing_node_test.py 2011-10-27 17:05:08.423023105 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/include_analyzer_test.py distcc-3.2rc1/include_server/include_analyzer_test.py
--- distcc-3.2rc1.orig/include_server/include_analyzer_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/include_analyzer_test.py 2011-10-27 17:05:08.423023105 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/include_server.py distcc-3.2rc1/include_server/include_server.py
--- distcc-3.2rc1.orig/include_server/include_server.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/include_server.py 2011-10-27 17:05:08.423023105 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/include_server_test.py distcc-3.2rc1/include_server/include_server_test.py
--- distcc-3.2rc1.orig/include_server/include_server_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/include_server_test.py 2011-10-27 17:05:08.423023105 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/macro_eval.py distcc-3.2rc1/include_server/macro_eval.py
--- distcc-3.2rc1.orig/include_server/macro_eval.py 2011-04-06 03:58:59.000000000 +0900
+++ distcc-3.2rc1/include_server/macro_eval.py 2011-10-27 17:05:08.423023105 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/macro_eval_test.py distcc-3.2rc1/include_server/macro_eval_test.py
--- distcc-3.2rc1.orig/include_server/macro_eval_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/macro_eval_test.py 2011-10-27 17:05:08.423023105 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/mirror_path.py distcc-3.2rc1/include_server/mirror_path.py
--- distcc-3.2rc1.orig/include_server/mirror_path.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/mirror_path.py 2011-10-27 17:05:08.424023109 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/mirror_path_test.py distcc-3.2rc1/include_server/mirror_path_test.py
--- distcc-3.2rc1.orig/include_server/mirror_path_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/mirror_path_test.py 2011-10-27 17:05:08.424023109 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/parse_command.py distcc-3.2rc1/include_server/parse_command.py
--- distcc-3.2rc1.orig/include_server/parse_command.py 2011-04-06 03:58:59.000000000 +0900
+++ distcc-3.2rc1/include_server/parse_command.py 2011-10-27 17:05:08.424023109 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/parse_command_test.py distcc-3.2rc1/include_server/parse_command_test.py
--- distcc-3.2rc1.orig/include_server/parse_command_test.py 2011-04-06 03:58:59.000000000 +0900
+++ distcc-3.2rc1/include_server/parse_command_test.py 2011-10-27 17:05:08.424023109 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/parse_file.py distcc-3.2rc1/include_server/parse_file.py
--- distcc-3.2rc1.orig/include_server/parse_file.py 2011-04-06 03:58:59.000000000 +0900
+++ distcc-3.2rc1/include_server/parse_file.py 2011-10-27 17:05:08.424023109 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/parse_file_test.py distcc-3.2rc1/include_server/parse_file_test.py
--- distcc-3.2rc1.orig/include_server/parse_file_test.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/parse_file_test.py 2011-10-27 17:05:08.424023109 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/run.py distcc-3.2rc1/include_server/run.py
--- distcc-3.2rc1.orig/include_server/run.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/run.py 2011-10-27 17:05:08.424023109 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/setup.py distcc-3.2rc1/include_server/setup.py
--- distcc-3.2rc1.orig/include_server/setup.py 2011-04-06 03:58:59.000000000 +0900
+++ distcc-3.2rc1/include_server/setup.py 2011-10-27 17:05:08.425023113 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/include_server/statistics.py distcc-3.2rc1/include_server/statistics.py
--- distcc-3.2rc1.orig/include_server/statistics.py 2008-12-03 06:50:31.000000000 +0900
+++ distcc-3.2rc1/include_server/statistics.py 2011-10-27 17:05:08.425023113 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/python2.4
+#! /usr/bin/python
#
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/test/onetest.py distcc-3.2rc1/test/onetest.py
--- distcc-3.2rc1.orig/test/onetest.py 2008-12-03 06:50:22.000000000 +0900
+++ distcc-3.2rc1/test/onetest.py 2011-10-27 17:05:08.432023140 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.4
+#!/usr/bin/python
#
# Copyright 2007 Google Inc.
#
diff -Naur distcc-3.2rc1.orig/test/testdistcc.py distcc-3.2rc1/test/testdistcc.py
--- distcc-3.2rc1.orig/test/testdistcc.py 2011-10-21 11:40:49.000000000 +0900
+++ distcc-3.2rc1/test/testdistcc.py 2011-10-27 17:05:08.432023140 +0900
@@ -1,4 +1,4 @@
-#! /usr/bin/env python2.2
+#! /usr/bin/env python
# Copyright (C) 2002, 2003, 2004 by Martin Pool <mbp@samba.org>
# Copyright 2007 Google Inc.

View File

@ -0,0 +1,191 @@
From fdd93b1e9545b66d1b3a2a1ec24d4c8613ee43fb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Sat, 24 Jan 2015 23:59:21 +0100
Subject: [PATCH] Support SOCKSv5 proxy
Support using a SOCKSv5 proxy specified as DISTCC_SOCKS_PROXY.
The variable can either a hostname, a host:port pair or an absolute path
to a UNIX socket. When SOCKS is used, the hostname is passed to
the proxy and therefore the name resolution is done remotely.
---
src/clinet.c | 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 135 insertions(+), 2 deletions(-)
diff --git a/src/clinet.c b/src/clinet.c
index 010a884..4773d8b 100644
--- a/src/clinet.c
+++ b/src/clinet.c
@@ -31,6 +31,7 @@
#include <stdio.h>
#include <stdlib.h>
+#include <stddef.h>
#include <unistd.h>
#include <string.h>
#include <fcntl.h>
@@ -42,8 +43,10 @@
#include <sys/types.h>
#include <sys/socket.h>
+#include <arpa/inet.h>
#include <netinet/in.h>
#include <netinet/tcp.h>
+#include <sys/un.h>
#include <netdb.h>
@@ -161,7 +164,7 @@ out_failed:
/**
* Open a socket to a tcp remote host with the specified port.
**/
-int dcc_connect_by_name(const char *host, int port, int *p_fd)
+static int dcc_connect_by_name_real(const char *host, int port, int *p_fd)
{
struct addrinfo hints;
struct addrinfo *res;
@@ -201,7 +204,7 @@ int dcc_connect_by_name(const char *host, int port, int *p_fd)
*
* @todo Don't try for too long to connect.
**/
-int dcc_connect_by_name(const char *host, int port, int *p_fd)
+static int dcc_connect_by_name_real(const char *host, int port, int *p_fd)
{
struct sockaddr_in sock_out;
struct hostent *hp;
@@ -224,3 +227,133 @@ int dcc_connect_by_name(const char *host, int port, int *p_fd)
}
#endif /* not ENABLE_RFC2553 */
+
+static int dcc_connect_via_socks5(const char *host, int port, int *p_fd, const char *proxy)
+{
+ int ret;
+ char *proxy_host, *proxy_it;
+ int proxy_port;
+ char buf[262];
+ int host_length;
+ struct sockaddr_in addr_buf;
+ int skip_bytes;
+
+ host_length = strlen(host);
+ if (host_length > 255) {
+ rs_log_error("hostname \"%s\" too long for SOCKSv5 (over 255 chars)", host);
+ return EXIT_CONNECT_FAILED;
+ }
+
+ if (proxy[0] == '/') { /* UNIX socket */
+ struct sockaddr_un unix_addr;
+
+ if (strlen(proxy) >= sizeof(unix_addr.sun_path))
+ {
+ rs_log_error("UNIX socket path \"%s\" too long", proxy);
+ return EXIT_CONNECT_FAILED;
+ }
+
+ unix_addr.sun_family = AF_UNIX;
+ strcpy(unix_addr.sun_path, proxy);
+
+ ret = dcc_connect_by_addr((struct sockaddr *) &unix_addr,
+ offsetof(struct sockaddr_un, sun_path) + strlen(proxy) + 1,
+ p_fd);
+
+ } else { /* hostname? IP address? */
+ proxy_host = strdup(proxy);
+ if (proxy_host == NULL) return EXIT_OUT_OF_MEMORY;
+
+ proxy_it = strrchr(proxy_host, ':');
+ if (proxy_it) {
+ *(proxy_it++) = 0;
+ proxy_port = atoi(proxy_it);
+
+ if (proxy_port <= 0) {
+ rs_log_error("invalid proxy port \"%s\"", proxy_it);
+ free(proxy_host);
+ return EXIT_CONNECT_FAILED;
+ }
+ }
+ else
+ proxy_port = 1080;
+
+ ret = dcc_connect_by_name_real(proxy_host, proxy_port, p_fd);
+ free(proxy_host);
+ }
+
+ if (ret != 0)
+ return ret;
+
+ /* connected to proxy, now identifier/method selection */
+ buf[0] = 0x05; /* SOCKSv5 */
+ buf[1] = 0x01; /* one method */
+ buf[2] = 0x00; /* NO AUTHENTICATION REQUIRED */
+ ret = dcc_writex(*p_fd, buf, 3);
+ if (ret != 0)
+ return ret;
+
+ /* wait for method selection */
+ ret = dcc_readx(*p_fd, buf, 2);
+ if (ret != 0)
+ return ret;
+ if (buf[0] != 0x05 || buf[1] != 0x00) { /* version, method */
+ rs_log_error("invalid proxy reply (version 0x%02x, method 0x%02x)",
+ buf[0], buf[1]);
+ return EXIT_CONNECT_FAILED;
+ }
+
+ /* send connect request */
+ buf[0] = 0x05; /* SOCKSv5 */
+ buf[1] = 0x01; /* CONNECT command */
+ buf[2] = 0x00; /* reserved */
+ buf[3] = 0x03; /* DOMAINNAME address type */
+ buf[4] = host_length;
+ memcpy(&buf[5], host, host_length);
+ addr_buf.sin_port = htons(port);
+ memcpy(&buf[5 + host_length], &addr_buf.sin_port, 2);
+ ret = dcc_writex(*p_fd, buf, 7 + host_length);
+ if (ret != 0)
+ return ret;
+
+ /* wait for the connection */
+ /* read first 4 bytes of reply + 2 extra bytes we know will be there */
+ ret = dcc_readx(*p_fd, buf, 6);
+ if (ret != 0)
+ return ret;
+ if (buf[0] != 0x05 || buf[2] != 0x00) { /* version, reserved */
+ rs_log_error("invalid proxy reply (version 0x%02x, reserved 0x%02x)",
+ buf[0], buf[2]);
+ return EXIT_CONNECT_FAILED;
+ }
+ if (buf[1] != 0x00) { /* reply */
+ rs_log_error("proxy connection failed, reason=0x%02x", buf[1]);
+ return EXIT_CONNECT_FAILED;
+ }
+
+ /* now read the remaining (packet size - 6) bytes */
+ switch (buf[3]) { /* address type */
+ case 0x01: skip_bytes = 4; break; /* IPv4 */
+ case 0x03: skip_bytes = buf[4] + 1; break; /* hostname with length field */
+ case 0x04: skip_bytes = 16; break; /* IPv6 */
+ default:
+ rs_log_error("invalid proxy reply (address type 0x%02x)", buf[3]);
+ return EXIT_CONNECT_FAILED;
+ }
+ ret = dcc_readx(*p_fd, buf, skip_bytes);
+ if (ret != 0)
+ return ret;
+
+ return 0;
+}
+
+int dcc_connect_by_name(const char *host, int port, int *p_fd)
+{
+ const char *proxy;
+
+ proxy = getenv("DISTCC_SOCKS_PROXY");
+ if (proxy)
+ return dcc_connect_via_socks5(host, port, p_fd, proxy);
+ else
+ return dcc_connect_by_name_real(host, port, p_fd);
+}
--
2.3.0

View File

@ -0,0 +1,165 @@
#!/usr/bin/env python
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
import os, re, signal, sys, commands, pwd
from string import rstrip
options=[
'--get-hosts',
'--set-hosts',
'--get-verbose',
'--set-verbose',
'--get-log',
'--set-log',
'--install',
'--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
os.popen('/usr/sbin/env-update')
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 permissions(path,user,group):
for file in os.listdir(path):
#print 'Configuring',path+file+'...'
os.chown(path+file,user,group)
def installlinks(chost=''):
for file in ['gcc', 'cc', 'c++', 'g++']:
path = '/usr/lib/distcc/bin/'
if not chost == '':
file = chost+'-'+file
if os.path.exists('/usr/bin/'+file):
#print 'Creating',path+file,'symlink...'
if not os.path.exists(path+file):
os.symlink('/usr/bin/distcc',path+file)
#else:
# print 'Already exists. Skipping...'
def createdistccdir(dir):
if not os.path.exists(dir):
os.mkdir(dir)
os.chmod(dir, 1777)
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 HOSTS_HOME
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 '--install' in tmpcmdline:
isroot()
print 'Creating',envfile+'...'
distcc_env = open(envfile, 'w')
distcc_env.write('# This file is managed by distcc-config; use it to change these settings.\n')
distcc_env.write('DISTCC_LOG=""\n')
distcc_env.write('DCCC_PATH="/usr/lib/distcc/bin"\n')
distcc_env.write('DISTCC_VERBOSE="0"\n')
if os.WEXITSTATUS(commands.getstatusoutput('/usr/sbin/useradd -u 240 -g daemon -s /bin/false -d /dev/null -c "distccd" distcc')[0]) == 9:
os.WEXITSTATUS(commands.getstatusoutput('/usr/sbin/usermod -g daemon -s /bin/false -d /dev/null -c "distccd" distcc')[0])
foobar = pwd.getpwnam('distcc')
user = foobar[2]
group = foobar[3]
makeconf = open('/etc/make.conf', 'r').read()
chost = re.compile('CHOST="(.*)"').search(makeconf).group(1)
print 'Creating symlinks...'
installlinks()
installlinks(chost)
print 'Checking permissions...'
permissions('/usr/lib/distcc/bin/',user,group)
permissions('/var/run/distccd/',user,group)
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: /usr/bin/distcc-config --set-hosts DISTCC_HOSTS | --get-hosts'
print ' /usr/bin/distcc-config --set-verbose { 0 | 1 } | --get-verbose'
print ' /usr/bin/distcc-config --set-log FILE | --get-log'
print ' /usr/bin/distcc-config --set-env VARIABLE VALUE | --get-env [VARIABLE]'

View File

@ -0,0 +1,24 @@
From: Gordon Malm <gengor@gentoo.org>
Make distcc client pass -D__KERNEL__ macro. Hardened GCC uses this
macro to determine if code intended to be run in-kernel is being compiled.
If the code is kernel code, certain compile flags are not applied.
When using distcc to build kernel code (modules, etc.) without this patch,
the distccd host doesn't get passed -D__KERNEL__. Consequently, gcc on
the distccd host applies all kinds of flags that it shouldn't.
--- distcc-2.18.3/src/strip.c
+++ distcc-2.18.3-hardened/src/strip.c
@@ -73,7 +73,10 @@ int dcc_strip_local_args(char **from, ch
/* skip through argv, copying all arguments but skipping ones that
* ought to be omitted */
for (from_i = to_i = 0; from[from_i]; from_i++) {
- if (str_equal("-D", from[from_i])
+ if (str_equal("-D__KERNEL__", from[from_i])) {
+ to[to_i++] = from[from_i];
+ }
+ else if (str_equal("-D", from[from_i])
|| str_equal("-I", from[from_i])
|| str_equal("-U", from[from_i])
|| str_equal("-L", from[from_i])

View File

@ -0,0 +1,10 @@
[Unit]
Description=Distccd: A Distributed Compilation Server
After=network.target
[Service]
User=distcc
ExecStart=/usr/bin/distccd --verbose --no-detach --daemon --port 3632 -N 15 --allow $ALLOWED_SERVERS
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,6 @@
# --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
[Service]
Environment="ALLOWED_SERVERS=127.0.0.1"

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>cluster@gentoo.org</email>
<name>Gentoo Cluster Project</name>
</maintainer>
<longdescription lang="en">
Distcc is a program to distribute compilation of C code across several
machines on a network.
</longdescription>
<use>
<flag name="crossdev">Enable support for <pkg>sys-devel/crossdev</pkg></flag>
<flag name="gssapi">Enable support for <pkg>net-libs/libgssglue</pkg></flag>
</use>
</pkgmetadata>