diff options
author | Alex Alexander <wired@gentoo.org> | 2012-01-09 13:29:10 +0000 |
---|---|---|
committer | Alex Alexander <wired@gentoo.org> | 2012-01-09 13:29:10 +0000 |
commit | f6a4cab2b71b122e213b1374fa7e10b89647489b (patch) | |
tree | 0fab6fe5065eba664a346eb5303610a8ceaf2f08 /sys-devel/distcc | |
parent | Fix build failure due to DISABLE_DEPRECATED flags, bug 398245 (diff) | |
download | historical-f6a4cab2b71b122e213b1374fa7e10b89647489b.tar.gz historical-f6a4cab2b71b122e213b1374fa7e10b89647489b.tar.bz2 historical-f6a4cab2b71b122e213b1374fa7e10b89647489b.zip |
added patch that increases argc properly, fixing virtualbox compilation. acked by xarthisius and Ultrabug, bug #351979
Package-Manager: portage-2.2.0_alpha84/cvs/Linux x86_64
Diffstat (limited to 'sys-devel/distcc')
-rw-r--r-- | sys-devel/distcc/ChangeLog | 11 | ||||
-rw-r--r-- | sys-devel/distcc/Manifest | 22 | ||||
-rw-r--r-- | sys-devel/distcc/distcc-3.1-r6.ebuild | 176 | ||||
-rw-r--r-- | sys-devel/distcc/files/distcc-3.1-argc-fix.patch | 17 |
4 files changed, 219 insertions, 7 deletions
diff --git a/sys-devel/distcc/ChangeLog b/sys-devel/distcc/ChangeLog index 68d87b569d69..6825c2882eaf 100644 --- a/sys-devel/distcc/ChangeLog +++ b/sys-devel/distcc/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sys-devel/distcc -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/ChangeLog,v 1.212 2011/12/27 16:09:23 ultrabug Exp $ +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/ChangeLog,v 1.213 2012/01/09 13:29:10 wired Exp $ + +*distcc-3.1-r6 (09 Jan 2012) + + 09 Jan 2012; Alex Alexander <wired@gentoo.org> +distcc-3.1-r6.ebuild, + +files/distcc-3.1-argc-fix.patch: + added patch that increases argc properly, fixing virtualbox compilation. + acked by xarthisius and Ultrabug, bug #351979 27 Dec 2011; Ultrabug <ultrabug@gentoo.org> files/3.1/init: Fix 3.1 series init script wrt #390063 thanks to André-Sebastian Liebe. diff --git a/sys-devel/distcc/Manifest b/sys-devel/distcc/Manifest index bcea83215f39..1b17351a0fda 100644 --- a/sys-devel/distcc/Manifest +++ b/sys-devel/distcc/Manifest @@ -1,5 +1,5 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 +Hash: SHA512 AUX 2.18-r1/conf 1345 RMD160 6921e75f3d71ecebf66ebf4356482655ff1d0a19 SHA1 89aa69c5cc8a645fe3ff11282cd230c3a3dd898a SHA256 c48a04bd789d38682c8e1003f891a4428e5bb457696578afe56a913ec003fdef AUX 2.18-r1/init 927 RMD160 11638f1be4f1a55414517e9982b3a2ee508b9b9d SHA1 6456b0af8e63112258fd401afc1abe7b578004cb SHA256 3b7343b659ce864da8b730d2bf2c221de6446d6afc935f7686d85fc8d0983167 @@ -14,6 +14,7 @@ AUX distcc-3.0-gentoo.patch 1225 RMD160 5c305052c9ee62c7d60377b26e53f69a67438b39 AUX distcc-3.0-svn617.patch 533 RMD160 64c8712a9290b1fef776ca5517074748a0ec9255 SHA1 7b9b661b21aea2e1a338b3ed890c6bd7dc8064e3 SHA256 902d6715f443fceb7c799bcf4f82d637569db2da900be5e36bb40b57a3e9fa84 AUX distcc-3.0-uninitialized.patch 448 RMD160 706d9923d257f7616775d55b287e02fb133dbdd9 SHA1 7275a1d4c314abc0ddac572cb85b49efaedee97b SHA256 2d4b0aefbe1e0245881d35c572605ee8f3c52e43316482041fadadc31e5fa9a6 AUX distcc-3.0-xinetd.patch 558 RMD160 c69f8a379ec543972fac6ec3066989c5393223f3 SHA1 58d4393c6cdd3546f35efc57021de496c66c239d SHA256 9ef11743e91167548ac6324aa21608a62fd09149a8dbdbab32602f70804e0560 +AUX distcc-3.1-argc-fix.patch 480 RMD160 64de6ab6e45f6ae19e87dc5c8d820df303d853dd SHA1 6fc2080965db4ef9b4947d7a62335afe24874266 SHA256 e576553f27c7fabc2dcd3f361a98e2db70fef9fa4f08df91a8bb00c178912a1b AUX distcc-3.1-freedesktop.patch 2959 RMD160 e2d503b80174709d0c416fd4feea8414e4a7900c SHA1 007161b1bec7a8d5b70e46077b307de21e2a7e1c SHA256 bf8694f4d1eb5e757615929bc58587f538ce733891097eb42204423cab644798 AUX distcc-3.1-python.patch 10754 RMD160 6f4f5b2e8ec24ea969002cb00fc3d4a624edc65a SHA1 34f73e4f0494066be528339e5ac0956fb95414da SHA256 8ba3c0745a30b5901cfb37f4231d754e5779cbc5a6fa173fb196661d2a035cc2 AUX distcc-3.2_rc1-freedesktop.patch 3140 RMD160 7402c835493978e3a2e4b338bf783f1958f7694b SHA1 b117588006f1b3d6de3bb7034f0fa303c1957f1d SHA256 7ead1174fc170cee5c32ac183edf0c15ae35df56bedbbf6bc24c0099fe23b7f6 @@ -36,13 +37,24 @@ DIST distcc-3.2rc1.tar.bz2 609904 RMD160 505447b910d90ea403a98fe0d0a3a0fa92cd703 EBUILD distcc-2.18.3-r10.ebuild 5137 RMD160 508cd0415759109afabf5a1808a9f8cb9270b668 SHA1 44abc5cb3306a4c36723cbd2bae77cfce65020ba SHA256 8a6295e903e6950a64a739ec3ea8138616d7ef4d0dcd60b12af278b228bcf34c EBUILD distcc-3.0-r4.ebuild 4593 RMD160 c9919883117733788883069757230bbb108744f4 SHA1 5539be07ad4c3fb49064cb4ee846ce8f80be78f4 SHA256 45780c57a309a9dba22d33514c8b1cc30abf77e19cd0b2744d764ff1fff602c6 EBUILD distcc-3.1-r5.ebuild 4735 RMD160 06f3e02b81546b3d71ca770f91d11755e2c4b046 SHA1 8fd61ea57b14a57273c124ad3db4bbe03557f8ba SHA256 f23dfa154325a758b56c51906ce972b5dc766e6c4da8cda721c932747d429c1c +EBUILD distcc-3.1-r6.ebuild 4805 RMD160 8982bf6638f65168f6ddc9456db31d0b13a36793 SHA1 5e7dab1167775a5c077497f47d9305093c64e498 SHA256 ffc5b7b1ff7e94b4d3396e750828f0eee219971f27f8b2362c841f9343731fc5 EBUILD distcc-3.2_rc1.ebuild 5798 RMD160 3b6c1f7cf9ddb5df746ef356a81e4736c6490c09 SHA1 756eb9529d3cbd601e46f665a7fdaa02946547c5 SHA256 5325144403f61699c81e19d9379cb31f70afe99c0e042877210d2eb951d7e3ed -MISC ChangeLog 38414 RMD160 87726b791890b9e34b3436904dfeb6d723624adf SHA1 61e270ca27cd30bb734cdef50fe5baac9ba15499 SHA256 663511bd5de07948e443cb3efbd5186273039f3245659506de10f28090da343f +MISC ChangeLog 38673 RMD160 505ad9b45ae6dfbafcbbbf26f9b18ddf5715ba52 SHA1 33d29bf6201e06e5f1cba8b8793fad585b79382d SHA256 6bae139f070ede765d5f1ceab694119df2ed4b0b4e786f48ac71a046880b3201 MISC metadata.xml 546 RMD160 51a7caedb84842f9efa58ce9ec9da75b60e9378d SHA1 0d8767f8e7ca64a5c2c00eb4c20102955c2c12c1 SHA256 e94ab6ea446d8831bc33afa52dc75b25255bef5a05a1c2af22ba5b1ffc8d55d8 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) -iF4EAREIAAYFAk757bwACgkQKiQSS7ZY+hMzlAEAi9TXfEuMrOEgWdyDFZ3GedtN -6XfrdIfqiNcC0G6Khy4BAOb6Scees5JHhNjk/sJTN/N89zXhf9KU8qhSpjNcrRQh -=95OL +iQIcBAEBCgAGBQJPCuwKAAoJEDZF8K7rm0r6lx8P/jHG7upYBMnbxLsVpDDLkchl +md9IqLzhd9KoyXHOOKrTlL39J3nqIPvvrwrrVGlbF7BnSWx+5+6IRhUSbE4uHQMY +PJcln9IapBOm93KexYgI8KJqjwkxQmDHozYmB+pygpph1VHIOxwfnLqwnIZ452M/ +U7+F0xoG1OWMttq+E+T7mVWnU9gH6b1CnnK4Lerb4Tr0VpVATkasr9YwhMwyDpl2 +PSmPolyN/a1+KtHK35aktopoTn4UaQrfGJ47fKSF81vKOvcEsRIsQCIOKfuxCT8P +/WeWiiEcSxq4dKvykPMWZz/VcnIUFDX0wPxrgLhSfUb6zmsS4y2gBW21FqgIoEYB +41Qee4PA4pkMpSQsiMF07NEFsLxW0nDWCBjliahRUl+ae/a2nFwwAgQ6ikbn805S +rqiGDR1L3SX9yi7Ljn9xzzEQAFdDTdF+ZMQmZ+Zx4iGWJMdAlc7hWVO/y2mxpJlH +3U7PBw8JZorzpCSkpWBzfzqCVWV4Tce0Ea1uFr2wWOFWsXNrgK9V9ZIf5C7F3/KQ +8J4/W6qLaGGM2w+ihq3T23hAIjVT1+5ycLmGYCDHs2rAxg/VcPw8yREY5qFZsBiZ +u0nyQJ3r7R5cB8ipU/iprtVtY4c3ixEJiPD43WS7ruTlWGakME3E7zzUiUooaQqQ +BcCDVIQyi1jn6H66Nja2 +=rAxH -----END PGP SIGNATURE----- diff --git a/sys-devel/distcc/distcc-3.1-r6.ebuild b/sys-devel/distcc/distcc-3.1-r6.ebuild new file mode 100644 index 000000000000..fb741cb36e56 --- /dev/null +++ b/sys-devel/distcc/distcc-3.1-r6.ebuild @@ -0,0 +1,176 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/distcc-3.1-r6.ebuild,v 1.1 2012/01/09 13:29:10 wired Exp $ + +EAPI="3" +PYTHON_DEPEND="2" + +inherit eutils fdo-mime flag-o-matic multilib python toolchain-funcs + +DESCRIPTION="a program to distribute compilation of C code across several machines on a network" +HOMEPAGE="http://distcc.org/" +SRC_URI="http://distcc.googlecode.com/files/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd" +IUSE="avahi gnome gtk hardened ipv6 selinux xinetd" + +RESTRICT="test" + +RDEPEND="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 + ) + gtk? ( + x11-libs/gtk+:2 + )" +DEPEND="${RDEPEND} + dev-util/pkgconfig" +RDEPEND="${RDEPEND} + !net-misc/pump + >=sys-devel/gcc-config-1.4.1 + selinux? ( sec-policy/selinux-distcc ) + xinetd? ( sys-apps/xinetd )" + +DISTCC_LOG="" +DCCC_PATH="/usr/$(get_libdir)/distcc/bin" +DISTCC_VERBOSE="0" + +pkg_setup() { + enewuser distcc 240 -1 -1 daemon + python_set_active_version 2 + python_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" + + 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) \ + $(use_with gnome) \ + ${myconf} || die "econf failed" +} + +src_install() { + # In rare cases, parallel make install failed + emake -j1 DESTDIR="${D}" install || die + + dobin "${FILESDIR}/3.0/distcc-config" + + newinitd "${FILESDIR}/${PV}/init" distccd + + cp "${FILESDIR}/3.0/conf" "${T}/distccd" + if use avahi; then + cat >> "${T}/distccd" <<-EOF + + # Enable zeroconf support in distccd + DISTCCD_OPTS="\${DISTCCD_OPTS} --zeroconf" + EOF + 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 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 "${D}/usr/bin/distccmon-gnome" "${D}/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 "${D}/etc/default" + rm -f "${D}/etc/distcc/clients.allow" + rm -f "${D}/etc/distcc/commands.allow.sh" + + python_convert_shebangs -r $(python_get_version) "${ED}" + sed -e "s:${EPREFIX}/usr/bin/python:$(PYTHON -a):" -i "${ED}usr/bin/pump" || die "sed failed" +} + +pkg_postinst() { + python_mod_optimize include_server + use gnome && fdo-mime_desktop_database_update + + if use ipv6; then + elog + elog "IPv6 has not supported yet by ${P}." + fi + elog + elog "Tips on using distcc with Gentoo can be found at" + elog "http://www.gentoo.org/doc/en/distcc.xml" + 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 gnome || 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() { + python_mod_cleanup include_server + use gnome && fdo-mime_desktop_database_update +} diff --git a/sys-devel/distcc/files/distcc-3.1-argc-fix.patch b/sys-devel/distcc/files/distcc-3.1-argc-fix.patch new file mode 100644 index 000000000000..d7f30b5567fa --- /dev/null +++ b/sys-devel/distcc/files/distcc-3.1-argc-fix.patch @@ -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; |