diff options
author | Matsuu Takuto <matsuu@gentoo.org> | 2011-10-28 05:41:06 +0000 |
---|---|---|
committer | Matsuu Takuto <matsuu@gentoo.org> | 2011-10-28 05:41:06 +0000 |
commit | dfa5d0c2cf14ec1a537ed17ebb5e313a9555f73b (patch) | |
tree | 1241b3415598930e4baeff64c72f4dc3fa74692b /sys-devel | |
parent | Version bump. (diff) | |
download | gentoo-2-dfa5d0c2cf14ec1a537ed17ebb5e313a9555f73b.tar.gz gentoo-2-dfa5d0c2cf14ec1a537ed17ebb5e313a9555f73b.tar.bz2 gentoo-2-dfa5d0c2cf14ec1a537ed17ebb5e313a9555f73b.zip |
Version bumped. Added crossdev and gssapi local USE flags. Clean up.
(Portage version: 2.1.10.29/cvs/Linux x86_64)
Diffstat (limited to 'sys-devel')
-rw-r--r-- | sys-devel/distcc/ChangeLog | 10 | ||||
-rw-r--r-- | sys-devel/distcc/distcc-3.1-r4.ebuild | 167 | ||||
-rw-r--r-- | sys-devel/distcc/distcc-3.2_rc1.ebuild | 199 | ||||
-rw-r--r-- | sys-devel/distcc/files/distcc-3.2_rc1-freedesktop.patch | 79 | ||||
-rw-r--r-- | sys-devel/distcc/files/distcc-3.2_rc1-gssapi.patch | 36 | ||||
-rw-r--r-- | sys-devel/distcc/files/distcc-3.2_rc1-python.patch | 246 | ||||
-rw-r--r-- | sys-devel/distcc/files/distcc-config-3.2_rc1 | 181 | ||||
-rw-r--r-- | sys-devel/distcc/metadata.xml | 4 |
8 files changed, 754 insertions, 168 deletions
diff --git a/sys-devel/distcc/ChangeLog b/sys-devel/distcc/ChangeLog index eb6a766c3470..cc4852e051ce 100644 --- a/sys-devel/distcc/ChangeLog +++ b/sys-devel/distcc/ChangeLog @@ -1,6 +1,14 @@ # 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.210 2011/03/30 11:12:30 angelos Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/ChangeLog,v 1.211 2011/10/28 05:41:06 matsuu Exp $ + +*distcc-3.2_rc1 (28 Oct 2011) + + 28 Oct 2011; MATSUU Takuto <matsuu@gentoo.org> -distcc-3.1-r4.ebuild, + +files/distcc-config-3.2_rc1, +distcc-3.2_rc1.ebuild, + +files/distcc-3.2_rc1-freedesktop.patch, +files/distcc-3.2_rc1-gssapi.patch, + +files/distcc-3.2_rc1-python.patch, metadata.xml: + Version bumped. Removed old version. 30 Mar 2011; Christoph Mende <angelos@gentoo.org> distcc-2.18.3-r10.ebuild, distcc-3.0-r4.ebuild, distcc-3.1-r4.ebuild: diff --git a/sys-devel/distcc/distcc-3.1-r4.ebuild b/sys-devel/distcc/distcc-3.1-r4.ebuild deleted file mode 100644 index d94bfa03b458..000000000000 --- a/sys-devel/distcc/distcc-3.1-r4.ebuild +++ /dev/null @@ -1,167 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/distcc-3.1-r4.ebuild,v 1.9 2011/03/30 11:12:30 angelos Exp $ - -EAPI="2" -inherit eutils fdo-mime flag-o-matic multilib 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-lang/python-2.4 - 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 -} - -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" - - 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" - prepalldocs -} - -pkg_postinst() { - 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() { - use gnome && fdo-mime_desktop_database_update -} diff --git a/sys-devel/distcc/distcc-3.2_rc1.ebuild b/sys-devel/distcc/distcc-3.2_rc1.ebuild new file mode 100644 index 000000000000..dc4df55459b0 --- /dev/null +++ b/sys-devel/distcc/distcc-3.2_rc1.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/distcc-3.2_rc1.ebuild,v 1.1 2011/10/28 05:41:06 matsuu Exp $ + +EAPI="3" +PYTHON_DEPEND="2:2.4" + +inherit autotools eutils fdo-mime flag-o-matic multilib python toolchain-funcs + +MY_P="${P/_}" +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/${MY_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 crossdev gnome gssapi 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 + ) + gssapi? ( net-libs/libgssglue ) + 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 )" + +S="${WORKDIR}/${MY_P}" + +DCCC_PATH="/usr/$(get_libdir)/distcc/bin" + +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}/${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" + + # Bugs #120001, #167844 and probably more. See patch for description. + use hardened && epatch "${FILESDIR}/distcc-hardened.patch" + + python_convert_shebangs -r $(python_get_version) . + sed -i \ + -e "/PATH/s:\$distcc_location:${EPREFIX}${DCCC_PATH}:" \ + -e "s:@PYTHON@:${EPREFIX}$(PYTHON -a):" \ + pump.in || die "sed failed" + + sed \ + -e "s:@EPREFIX@:${EPREFIX:-/}:" \ + -e "s:@libdir@:/usr/$(get_libdir):" \ + "${FILESDIR}/distcc-config-3.2_rc1" > "${T}/distcc-config" || die + + eaclocal -Im4 --output=aclocal.m4 + eautoconf +} + +src_configure() { + local myconf="--disable-Werror" + # 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) \ + --with-docdir="${EPREFIX}/usr/share/doc/${PF}" \ + ${myconf} || die "econf failed" +} + +src_install() { + emake DESTDIR="${D}" install || die + + dobin "${FILESDIR}/3.0/distcc-config" || die + + newinitd "${FILESDIR}/3.1/init" distccd || die + + cp "${FILESDIR}/3.0/conf" "${T}/distccd" || die + if use avahi; then + cat >> "${T}/distccd" <<-EOF + + # Enable zeroconf support in distccd + DISTCCD_OPTS="\${DISTCCD_OPTS} --zeroconf" + EOF + 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 + + python_mod_optimize include_server + use gnome && fdo-mime_desktop_database_update + + 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 "# echo 'FEATURES=\"\${FEATURES} distcc distcc-pump\"' >> /etc/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 + + python_mod_cleanup include_server + use gnome && fdo-mime_desktop_database_update +} diff --git a/sys-devel/distcc/files/distcc-3.2_rc1-freedesktop.patch b/sys-devel/distcc/files/distcc-3.2_rc1-freedesktop.patch new file mode 100644 index 000000000000..8f0d8d77a12b --- /dev/null +++ b/sys-devel/distcc/files/distcc-3.2_rc1-freedesktop.patch @@ -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 + diff --git a/sys-devel/distcc/files/distcc-3.2_rc1-gssapi.patch b/sys-devel/distcc/files/distcc-3.2_rc1-gssapi.patch new file mode 100644 index 000000000000..73551f8a7b80 --- /dev/null +++ b/sys-devel/distcc/files/distcc-3.2_rc1-gssapi.patch @@ -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) diff --git a/sys-devel/distcc/files/distcc-3.2_rc1-python.patch b/sys-devel/distcc/files/distcc-3.2_rc1-python.patch new file mode 100644 index 000000000000..409b5a19d321 --- /dev/null +++ b/sys-devel/distcc/files/distcc-3.2_rc1-python.patch @@ -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. diff --git a/sys-devel/distcc/files/distcc-config-3.2_rc1 b/sys-devel/distcc/files/distcc-config-3.2_rc1 new file mode 100644 index 000000000000..6d13810895f2 --- /dev/null +++ b/sys-devel/distcc/files/distcc-config-3.2_rc1 @@ -0,0 +1,181 @@ +#!/usr/bin/env python2 +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-devel/distcc/files/distcc-config-3.2_rc1,v 1.1 2011/10/28 05:41:06 matsuu Exp $ + +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)) diff --git a/sys-devel/distcc/metadata.xml b/sys-devel/distcc/metadata.xml index afc07f8d9406..f1a9c5ab6e93 100644 --- a/sys-devel/distcc/metadata.xml +++ b/sys-devel/distcc/metadata.xml @@ -9,4 +9,8 @@ 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> |