diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-04-28 09:54:45 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-04-28 09:54:45 +0100 |
commit | b7ebc951da8800f711142f69d9d958bde67a112d (patch) | |
tree | e318514216845acb8f2e49fff7a5cba4027e9d91 /sys-devel/distcc | |
parent | dc7cbdfa65fd814b3b9aa3c56257da201109e807 (diff) |
gentoo resync : 28.04.2019
Diffstat (limited to 'sys-devel/distcc')
-rw-r--r-- | sys-devel/distcc/Manifest | 6 | ||||
-rw-r--r-- | sys-devel/distcc/distcc-3.2_rc1-r5.ebuild | 196 | ||||
-rw-r--r-- | sys-devel/distcc/distcc-3.3.2-r4.ebuild | 200 | ||||
-rw-r--r-- | sys-devel/distcc/distcc-3.3.2-r5.ebuild | 2 | ||||
-rw-r--r-- | sys-devel/distcc/distcc-3.3.ebuild | 196 |
5 files changed, 2 insertions, 598 deletions
diff --git a/sys-devel/distcc/Manifest b/sys-devel/distcc/Manifest index e1c5e8dacb60..25e7971f53fa 100644 --- a/sys-devel/distcc/Manifest +++ b/sys-devel/distcc/Manifest @@ -18,10 +18,6 @@ AUX distccd.service-1 234 BLAKE2B 0ab7f90e6f7274fd9fe72df6a58e5323b2d65e91ca8805 AUX distccd.service.conf 186 BLAKE2B b3776e30ded7777be2610f07acec0f70a3cfb7718be149ad5bebd58538add7efead69368020c30610ec33a87ab4d3b3f0123d347f6d0d4abd74f3c714b039955 SHA512 19bf25757ba724ba4e728797b8c6fccabb8b95d2945f0e3c216303a04a4e7470507dcf8535657954f265ed5f067f32dcb3fb6558e9958a86de76b1e66e2b31b6 DIST distcc-3.2rc1.tar.bz2 609904 BLAKE2B e6b928f3b9231524d37bdf86b39cd6a3601b6cdb1e03d913ae562286794240b4dd364d5d01da2176f9bb440809b166b4b877443459751adf8bd3ecf92ceb8476 SHA512 98b2e8423d724bbb6a615d946d170441a8e293310785f867d7a277b318c043a37b0af39ae8ed1f7a0667803de9db1d1925199bad85130cf9bd9cb347635125ee DIST distcc-3.3.2.tar.gz 1008938 BLAKE2B e784002dffefd395b068d237a86203563fefc81e17a08c4d2e372eaaf62c5ac799011fc8633c8bfb717f0ebc8c8cb8b999c941e0f5f87c4077d031a9e5c4b138 SHA512 fdf11ed94ba50977b45e302179c5c4ba067cc3db37579cb8ed6d5b9487f8e3c89114f65af69333c38d374cf7634d7aef8d5a2d5c7fd8e9b1f4930c0897d6da10 -DIST distcc-3.3.tar.gz 1171281 BLAKE2B f637cacbfdaaca6efb56e912de55fcfa49e3fffcb8f34649e339f16376250e18a20d30281a46f207992c0b300c726427a3ad5a77bd8976d2993f8f49b9b6b970 SHA512 459c175c8ac905bc70299e77ac11b6d24782bd69c9152126249c9af8fbb4c269e6f7317b02abf50cf6cc0405dd0f887e803320e19dc528a19c4c488640c615dc EBUILD distcc-3.2_rc1-r4.ebuild 5603 BLAKE2B 92accfb9fbdec29da8376407a7ee9e67f387bbdf1c5f3da22707917c1f600b64613225536064518aeef0c65d82f7a29f1f8b26c7c47b1306aa80c395bbde5313 SHA512 1f2766a19aaf84f4c7d37fca9f85b2badda7fa0fac6e8f7d2c819b303f4edf6b399e89a93abeca868ea28511b2985791ec91c32db89cb05d04b1a2ce984e669b -EBUILD distcc-3.2_rc1-r5.ebuild 5365 BLAKE2B 7024c98de89530de80be0fc6538a7b59c127d337c26895576bce24e42ba349b8440de11f9fcc5ff357b955ca29856fb94b13db8440a5c15fe0aa248bd359b6f0 SHA512 489927c0eb49862dba56fad165a7940485184664a492a26ae34c830a561ee582778a6be0c5d5e41d98985f67b2330c182c3103fc2d75998261b5c8f8cc4bb867 -EBUILD distcc-3.3.2-r4.ebuild 5683 BLAKE2B e6b0b4b4944d0a968d39a80aef5bc57e747f0c773cc3439ed1a2ac719277e707f034abeb4310f826bfbe1d030b3e0204f18541f746aaf6765b4bfa88d4143614 SHA512 e7002f599531422a9e772f400841f45611b8d52813fa3a29fce7aafae5194649887a293843bfeb24e228c5eb9cfaaf233247476268276a727b0249c6b6888e30 -EBUILD distcc-3.3.2-r5.ebuild 5701 BLAKE2B 3b432c8e0b04beb02ff86571e8da665211c73652340fc391352e2b809491ae51b1a8455484840a7d27e4e924f17f10a7506a0086c01c6ad966abe128ba2cf12b SHA512 65fba6acc3b4195edfba00fe197790513f9a966c0b47dad042d2bf512b8f0df72992b08bc0aa2a456058d828b0284523a8a9bbba9e231d74cdb706ee0445db3e -EBUILD distcc-3.3.ebuild 5528 BLAKE2B 26d30e922367811a40608dd5899db748c82dc812e573bf56c309ae2853829dccee30f5b7028ad4190a8c32c03c65345b7f29349a614dd258848d4cf5235d686d SHA512 34ad7a871d175fb10aea3fa2b5da9d6ed32a2e6d4d015e3ad9228308c5b51453648748cfe1e865d7a0d07820204a823c3c3fa7953adc8ea3d8e62881eb580c51 +EBUILD distcc-3.3.2-r5.ebuild 5699 BLAKE2B a092083fcd8f89cfbf9217909947fb6a622772d538bac4a595d157fc24aadc168837fae3f37041c2e04a575dff0a9220198ce239d29f163f2398fc370ea55611 SHA512 54be7c94089d70eccb276d3de06972b53de02b0ce5d087fec06aed95db96e7e4b8cea367fc2ace9e89531f5846cd89b03cc1eb770fa89bc2acc8db06256e75ca MISC metadata.xml 686 BLAKE2B 149386337b838821ca538556fa2548b759ed09a5a99ff2de536390ba0a39f30c72722e88e0e413122df2d893a317a25eed5e43046a0721b960e0c0b5bfbd8c8e SHA512 22eacde5aeb935c963a80bf5d3a39e4db08ad2613232aabba2a109748b29169ffca04cf53f946a6110d3cf66358ec53e4a025cbbe12a84597ea3130475e9343d diff --git a/sys-devel/distcc/distcc-3.2_rc1-r5.ebuild b/sys-devel/distcc/distcc-3.2_rc1-r5.ebuild deleted file mode 100644 index b4598fc9c5b8..000000000000 --- a/sys-devel/distcc/distcc-3.2_rc1-r5.ebuild +++ /dev/null @@ -1,196 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -inherit autotools flag-o-matic python-single-r1 systemd toolchain-funcs user xdg-utils - -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" -IUSE="gnome gssapi gtk hardened ipv6 selinux xinetd zeroconf" - -RESTRICT="test" - -CDEPEND="${PYTHON_DEPS} - dev-libs/popt - 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 ) - zeroconf? ( >=net-dns/avahi-0.6[dbus] ) -" -DEPEND="${CDEPEND} - virtual/pkgconfig" -RDEPEND="${CDEPEND} - !net-misc/pump - dev-util/shadowman - >=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}" - -pkg_setup() { - enewuser distcc 240 -1 -1 daemon - python-single-r1_pkg_setup - - DCCC_PATH="/usr/$(get_libdir)/distcc/bin" - DISTCC_VERBOSE="0" -} - -src_prepare() { - eapply "${FILESDIR}/${PN}-3.0-xinetd.patch" - # bug #253786 - eapply "${FILESDIR}/${PN}-3.0-fix-fortify.patch" - # bug #255188 - eapply "${FILESDIR}/${PN}-3.2_rc1-freedesktop.patch" - # bug #258364 - eapply "${FILESDIR}/${PN}-3.2_rc1-python.patch" - # for net-libs/libgssglue - eapply "${FILESDIR}/${PN}-3.2_rc1-gssapi.patch" - # SOCKSv5 support needed for Portage, bug #537616 - eapply "${FILESDIR}/${PN}-3.2_rc1-socks5.patch" - eapply_user - - # Bugs #120001, #167844 and probably more. See patch for description. - use hardened && eapply "${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=\$(datadir)/doc/${PF}" - - # --disable-rfc2553 b0rked, bug #254176 - use ipv6 && myconf="${myconf} --enable-rfc2553" - - econf \ - $(use_with gtk) \ - $(use_with gnome) \ - $(use_with gssapi auth) \ - $(use_with zeroconf avahi) \ - ${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 zeroconf; then - cat >> "${T}/distccd" <<-EOF || die - - # Enable zeroconf support in distccd - DISTCCD_OPTS="\${DISTCCD_OPTS} --zeroconf" - EOF - - sed -i '/ExecStart/ s|$| --zeroconf|' "${D}$(systemd_get_systemunitdir)"/distccd.service || die - fi - doconfd "${T}/distccd" || die - - cat > "${T}/02distcc" <<-EOF || die - # 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 - - 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 - - insinto /usr/share/shadowman/tools - newins - distcc <<<"${EPREFIX}${DCCC_PATH}" - - rm -r "${ED}/etc/default" || die - rm "${ED}/etc/distcc/clients.allow" || die - rm "${ED}/etc/distcc/commands.allow.sh" || die -} - -pkg_postinst() { - if [[ ${ROOT} == / ]]; then - eselect compiler-shadow update distcc - fi - - use gnome && xdg_desktop_database_update - - elog - elog "Tips on using distcc with Gentoo can be found at" - elog "https://wiki.gentoo.org/wiki/Distcc" - elog - elog "distcc-pump is known to cause breakage with multiple packages." - elog "Do NOT enable it globally." - 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_prerm() { - if [[ -z ${REPLACED_BY_VERSION} && ${ROOT} == / ]]; then - eselect compiler-shadow remove distcc - fi -} - -pkg_postrm() { - use gnome && xdg_desktop_database_update -} diff --git a/sys-devel/distcc/distcc-3.3.2-r4.ebuild b/sys-devel/distcc/distcc-3.3.2-r4.ebuild deleted file mode 100644 index 9c94466284f4..000000000000 --- a/sys-devel/distcc/distcc-3.3.2-r4.ebuild +++ /dev/null @@ -1,200 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python3_{5,6} ) - -inherit autotools flag-o-matic python-single-r1 systemd \ - toolchain-funcs user xdg-utils prefix - -DESCRIPTION="Distribute compilation of C code across several machines on a network" -HOMEPAGE="http://distcc.org/" -SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" - -LICENSE="GPL-2+" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh ~sparc ~x86" -IUSE="gnome gssapi gtk hardened ipv6 selinux xinetd zeroconf" - -RESTRICT="test" - -CDEPEND="${PYTHON_DEPS} - dev-libs/popt - 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 ) - zeroconf? ( >=net-dns/avahi-0.6[dbus] ) -" -DEPEND="${CDEPEND} - sys-devel/autoconf-archive - sys-libs/binutils-libs - virtual/pkgconfig" -RDEPEND="${CDEPEND} - !net-misc/pump - dev-util/shadowman - >=sys-devel/gcc-config-1.4.1 - selinux? ( sec-policy/selinux-distcc ) - xinetd? ( sys-apps/xinetd )" - -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -S="${WORKDIR}/distcc" - -pkg_setup() { - enewuser distcc 240 -1 -1 daemon - python-single-r1_pkg_setup -} - -src_prepare() { - eapply "${FILESDIR}/${PN}-3.0-xinetd.patch" - # bug #255188 - eapply "${FILESDIR}/${PN}-3.3.2-freedesktop.patch" - # SOCKSv5 support needed for Portage, bug #537616 - eapply "${FILESDIR}/${PN}-3.2_rc1-socks5.patch" - # crash on missing directory - eapply "${FILESDIR}"/distcc-3.3.2-noexist-crash.patch - eapply_user - - # Bugs #120001, #167844 and probably more. See patch for description. - use hardened && eapply "${FILESDIR}/distcc-hardened.patch" - - sed -i \ - -e "/PATH/s:\$distcc_location:${EPREFIX}/usr/lib/distcc/bin:" \ - -e "s:@PYTHON@:${EPYTHON}:" \ - pump.in || die "sed failed" - - sed \ - -e "s:@EPREFIX@:${EPREFIX:-/}:" \ - -e "s:@libdir@:/usr/lib:" \ - "${FILESDIR}/distcc-config" > "${T}/distcc-config" || die - - hprefixify update-distcc-symlinks.py src/{serve,daemon}.c - python_fix_shebang update-distcc-symlinks.py "${T}/distcc-config" - eautoreconf -} - -src_configure() { - local myconf=( - --disable-Werror - --libdir=/usr/lib - $(use_enable ipv6 rfc2553) - $(use_with gtk) - $(use_with gnome) - $(use_with gssapi auth) - $(use_with zeroconf avahi) - ) - - econf "${myconf[@]}" -} - -src_install() { - # override GZIP_BIN to stop it from compressing manpages - emake DESTDIR="${D}" GZIP_BIN=false install - python_optimize - - newinitd "${FILESDIR}/distccd.initd" distccd - systemd_dounit "${FILESDIR}/distccd.service" - systemd_install_serviced "${FILESDIR}/distccd.service.conf" - - cp "${FILESDIR}/distccd.confd" "${T}/distccd" || die - if use zeroconf; then - cat >> "${T}/distccd" <<-EOF || die - - # Enable zeroconf support in distccd - DISTCCD_OPTS="\${DISTCCD_OPTS} --zeroconf" - EOF - - sed -i '/ExecStart/ s|$| --zeroconf|' "${D}$(systemd_get_systemunitdir)"/distccd.service || die - fi - doconfd "${T}/distccd" - - newenvd - 02distcc <<-EOF || die - # 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 - - keepdir /usr/lib/distcc - - dobin "${T}/distcc-config" - - 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 - fi - - if use xinetd; then - insinto /etc/xinetd.d - newins "doc/example/xinetd" distcc - fi - - insinto /usr/share/shadowman/tools - newins - distcc <<<"${EPREFIX}/usr/lib/distcc/bin" - newins - distccd <<<"${EPREFIX}/usr/lib/distcc" - - rm -r "${ED}/etc/default" || die - rm "${ED}/etc/distcc/clients.allow" || die - rm "${ED}/etc/distcc/commands.allow.sh" || die -} - -pkg_postinst() { - # remove the old paths when switching from libXX to lib - if [[ $(get_libdir) != lib && ${SYMLINK_LIB} != yes && \ - -d ${EROOT%/}/usr/$(get_libdir)/distcc ]]; then - rm -r -f "${EROOT%/}/usr/$(get_libdir)/distcc" || die - fi - - if [[ ${ROOT} == / ]]; then - eselect compiler-shadow update distcc - eselect compiler-shadow update distccd - fi - - use gnome && xdg_desktop_database_update - - elog - elog "Tips on using distcc with Gentoo can be found at" - elog "https://wiki.gentoo.org/wiki/Distcc" - elog - elog "distcc-pump is known to cause breakage with multiple packages." - elog "Do NOT enable it globally." - 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 "Since distcc-3.3, whitelist is used for what distccd could execute. The whilelist" - elog "has been generated by compiler-shadow distccd. To revert to the old behavior, " - elog "you need to pass --make-me-a-botnet to distccd in /etc/conf.d/distccd." - elog "Cf. https://github.com/distcc/distcc/pull/243." -} - -pkg_prerm() { - if [[ -z ${REPLACED_BY_VERSION} && ${ROOT} == / ]]; then - eselect compiler-shadow remove distcc - fi -} - -pkg_postrm() { - use gnome && xdg_desktop_database_update -} diff --git a/sys-devel/distcc/distcc-3.3.2-r5.ebuild b/sys-devel/distcc/distcc-3.3.2-r5.ebuild index 00c0908f20b6..ae95ed386c44 100644 --- a/sys-devel/distcc/distcc-3.3.2-r5.ebuild +++ b/sys-devel/distcc/distcc-3.3.2-r5.ebuild @@ -14,7 +14,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" LICENSE="GPL-2+" SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh ~sparc x86" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh ~sparc x86" IUSE="gnome gssapi gtk hardened ipv6 selinux xinetd zeroconf" RESTRICT="test" diff --git a/sys-devel/distcc/distcc-3.3.ebuild b/sys-devel/distcc/distcc-3.3.ebuild deleted file mode 100644 index 995a109a07be..000000000000 --- a/sys-devel/distcc/distcc-3.3.ebuild +++ /dev/null @@ -1,196 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python3_{5,6} ) - -inherit flag-o-matic python-single-r1 systemd toolchain-funcs user xdg-utils prefix - -MY_P="${P/_}" -DESCRIPTION="Distribute compilation of C code across several machines on a network" -HOMEPAGE="http://distcc.org/" -SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" - -LICENSE="GPL-2+" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -IUSE="gnome gssapi gtk hardened ipv6 selinux xinetd zeroconf" - -RESTRICT="test" - -CDEPEND="${PYTHON_DEPS} - dev-libs/popt - 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 ) - zeroconf? ( >=net-dns/avahi-0.6[dbus] ) -" -DEPEND="${CDEPEND} - sys-libs/binutils-libs - virtual/pkgconfig" -RDEPEND="${CDEPEND} - !net-misc/pump - dev-util/shadowman - >=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}" - -pkg_setup() { - enewuser distcc 240 -1 -1 daemon - python-single-r1_pkg_setup -} - -src_prepare() { - eapply "${FILESDIR}/${PN}-3.0-xinetd.patch" - # bug #255188 - eapply "${FILESDIR}/${PN}-3.2_rc1-freedesktop.patch" - # SOCKSv5 support needed for Portage, bug #537616 - eapply "${FILESDIR}/${PN}-3.2_rc1-socks5.patch" - eapply_user - - # Bugs #120001, #167844 and probably more. See patch for description. - use hardened && eapply "${FILESDIR}/distcc-hardened.patch" - - sed -i \ - -e "/PATH/s:\$distcc_location:${EPREFIX}/usr/lib/distcc/bin:" \ - -e "s:@PYTHON@:${EPYTHON}:" \ - pump.in || die "sed failed" - - sed \ - -e "s:@EPREFIX@:${EPREFIX:-/}:" \ - -e "s:@libdir@:/usr/lib:" \ - "${FILESDIR}/3.2/distcc-config" > "${T}/distcc-config" || die - - hprefixify update-distcc-symlinks.py src/{serve,daemon}.c -} - -src_configure() { - local myconf=( - --disable-Werror - $(use_with gtk) - $(use_with gnome) - $(use_with gssapi auth) - $(use_with zeroconf avahi) - ) - - # --disable-rfc2553 b0rked, bug #254176 - use ipv6 && myconf+=(--enable-rfc2553) - - econf "${myconf[@]}" -} - -src_install() { - # override GZIP_BIN to stop it from compressing manpages - emake DESTDIR="${D}" GZIP_BIN=false install - 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 zeroconf; then - cat >> "${T}/distccd" <<-EOF || die - - # Enable zeroconf support in distccd - DISTCCD_OPTS="\${DISTCCD_OPTS} --zeroconf" - EOF - - sed -i '/ExecStart/ s|$| --zeroconf|' "${D}$(systemd_get_systemunitdir)"/distccd.service || die - fi - doconfd "${T}/distccd" - - newenvd - 02distcc <<-EOF || die - # 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 - - keepdir /usr/lib/distcc - - dobin "${T}/distcc-config" - - 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 - fi - - if use xinetd; then - insinto /etc/xinetd.d - newins "doc/example/xinetd" distcc - fi - - insinto /usr/share/shadowman/tools - newins - distcc <<<"${EPREFIX}/usr/lib/distcc/bin" - newins - distccd <<<"${EPREFIX}/usr/lib/distcc" - - rm -r "${ED}/etc/default" || die - rm "${ED}/etc/distcc/clients.allow" || die - rm "${ED}/etc/distcc/commands.allow.sh" || die -} - -pkg_postinst() { - # remove the old paths when switching from libXX to lib - if [[ $(get_libdir) != lib && ${SYMLINK_LIB} != yes && \ - -d ${EROOT%/}/usr/$(get_libdir)/distcc ]]; then - rm -r -f "${EROOT%/}/usr/$(get_libdir)/distcc" || die - fi - - if [[ ${ROOT} == / ]]; then - eselect compiler-shadow update distcc - eselect compiler-shadow update distccd - fi - - use gnome && xdg_desktop_database_update - - elog - elog "Tips on using distcc with Gentoo can be found at" - elog "https://wiki.gentoo.org/wiki/Distcc" - elog - elog "distcc-pump is known to cause breakage with multiple packages." - elog "Do NOT enable it globally." - 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 "Since distcc-3.3, whitelist is used for what distccd could execute. The whilelist" - elog "has been generated by compiler-shadow distccd. To revert to the old behavior, " - elog "you need to pass --make-me-a-botnet to distccd in /etc/conf.d/distccd." - elog "Cf. https://github.com/distcc/distcc/pull/243." -} - -pkg_prerm() { - if [[ -z ${REPLACED_BY_VERSION} && ${ROOT} == / ]]; then - eselect compiler-shadow remove distcc - fi -} - -pkg_postrm() { - use gnome && xdg_desktop_database_update -} |