summaryrefslogtreecommitdiff
path: root/sys-devel/distcc
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-03-03 10:28:17 +0000
committerV3n3RiX <venerix@redcorelinux.org>2021-03-03 10:28:17 +0000
commitd99093fb4bb5652015c06274d64083daa2439e4f (patch)
treecf61513204d97974179580065e85df5c8009087c /sys-devel/distcc
parent463397cf1e064185110fe57c568d73f99a06f5d1 (diff)
gentoo resync : 03.03.2021
Diffstat (limited to 'sys-devel/distcc')
-rw-r--r--sys-devel/distcc/Manifest4
-rw-r--r--sys-devel/distcc/distcc-3.3.3-r1.ebuild195
-rw-r--r--sys-devel/distcc/distcc-3.3.3-r3.ebuild (renamed from sys-devel/distcc/distcc-3.3.3-r2.ebuild)4
-rw-r--r--sys-devel/distcc/files/distcc-3.3.3-no-rewrite-chost.patch28
4 files changed, 33 insertions, 198 deletions
diff --git a/sys-devel/distcc/Manifest b/sys-devel/distcc/Manifest
index 5dfa5475a35e..120d11890505 100644
--- a/sys-devel/distcc/Manifest
+++ b/sys-devel/distcc/Manifest
@@ -2,6 +2,7 @@ AUX distcc-3.0-xinetd.patch 558 BLAKE2B a381f2282c71f0eb28dc218cd57a2a914f02ffed
AUX distcc-3.2_rc1-socks5.patch 5462 BLAKE2B 5c18de909306bf0fa24690fae618c193396f5d27ef77cb9341bda69e3f8319f3b779c760af27cb19e9a6f88a46f02fe888d4bf4fbaef6419beae239964c4ee47 SHA512 707b6ad02bb7ff1507cfbfbb4cee673d5f0dc776006e9b7e801deabccf05c6057b33ea43c6a3ddd1756b8d07ff1d5e3087b635f15285195ba795b8679ebdc860
AUX distcc-3.3.2-freedesktop.patch 4210 BLAKE2B 7c1500df8cd8568d68c51a3d14eb7240f16adabf9c664b3295171901f4781a9d7b9b9510e577ca0b85abaf21b9783dd9fa98f351089dc98f52f6182bb841c658 SHA512 7454df35d134dff9f5640f7a1a4241b99fe4c6051682af185657837f25cb870c27885ec9be74b5f01075801542decb54daf7db5d80fbdbecf5c8c721a6ee4e7c
AUX distcc-3.3.3-gcc-10-fix.patch 1378 BLAKE2B 4c91ceddba6ed1745ab564a505e354e8b54b59cc73077ac74367e7dbac53aa0953c58a6fd4550253beb183081d739f0b52cdb9f89e376ee425d9d9d34e5ea72d SHA512 cf2ba6b3a840bde6acb4d389e5f8aec6413cc2608d4c9786f4bc6ea746966cbde7653cdfb92b21050f938c36fee2e43722f6b65204878fca1d72ffb6c07ba1e0
+AUX distcc-3.3.3-no-rewrite-chost.patch 895 BLAKE2B 6c8faa72b297403c493cf4ff35455344690e612afe3151d1ac30cc085b947c37eec5d95de8dec948f0f6912b5274306df1192098b54702750e02a4d1dbcf5a72 SHA512 42bc8067911da35c1b35ac03f9ad863201c20289ae3ee36f5d1bcde1ccf3e0190f7f2d089b3f1b076f2a901b806b59b982736f6fd3e10edbadd345364a08d354
AUX distcc-3.3.3-py38.patch 2129 BLAKE2B a81c190d73ddf8c679640696be9aa66bd0f3095c03af431864cc8e5cba2cf74d2525065c4bd53fc7258dcaeba5a7ed20995b11fe08c8b02164e3cfa520c83819 SHA512 958c099906be21d094bdda04445dbc5471d519e198d7f9c0d619f819978e57dee3ca664a2df048398e551a31cb107ffa7bdcd003ec0c979441440f8dcfb33dc1
AUX distcc-config 5218 BLAKE2B 41d483481e483217ed6313b4f82ed66c4f006070c269bc5ee1283db9c000d12ab29a90d1813df2a590f87c02520e312c35901a7d3f1364480b68bb02d668d51d SHA512 fe3dee7a89ec16e103b52d3555d483b42e4cbe716e3e77f792c543fb2c82eca5f6b8e0d2809f16c805d55263471108ff2dea1f4a5d55826f67f8b94239aca946
AUX distcc-hardened.patch 1084 BLAKE2B 4b78fce2ab19b3832006a8b0092d3d38df07ce8225eb367c90256a158a41121e09269cd4bf59a1fc450db58eafe09e757f6e3ca4ae074a4567676701228c8289 SHA512 d1150dc83bf89c332f8c0bd01e15f52f95d71868733bd2e5430a5377f1a4aaa2b5b6e0cd488d33d9b94ce18b0eeeadf4af719db536b001b50e4d482b35c7e057
@@ -10,6 +11,5 @@ AUX distccd.initd 374 BLAKE2B 48011f19225536311701250470011bc1c1be16f2400831964d
AUX distccd.service-1 234 BLAKE2B 0ab7f90e6f7274fd9fe72df6a58e5323b2d65e91ca8805c549f9f92fa41a3099ea3f0a422270ca0ffe37d682d435da513552e6b7c33617c767909577cc83f85a SHA512 c2aa1b5e0d34c6b8c20d3fb83b8328e6859cefc9f3f98130701f7448fe896f5c80e29091fc4bbab01d1f600c0258b790571d86e7057dc4cfe799b53aef92a1bc
AUX distccd.service.conf 186 BLAKE2B b3776e30ded7777be2610f07acec0f70a3cfb7718be149ad5bebd58538add7efead69368020c30610ec33a87ab4d3b3f0123d347f6d0d4abd74f3c714b039955 SHA512 19bf25757ba724ba4e728797b8c6fccabb8b95d2945f0e3c216303a04a4e7470507dcf8535657954f265ed5f067f32dcb3fb6558e9958a86de76b1e66e2b31b6
DIST distcc-3.3.3.tar.gz 1195666 BLAKE2B b393fdb20eb555dec794bf55c1287dd804a576e0a5db9f2fa84c3924a40185a193231aea807353918430297c9c83c7592aaaafd521cf73c92a72bf30b8a69caa SHA512 d5e7fc67f49ee640cef753038b5c0ebcbbac61c6ac29f20ee4736b045a89979ced765717c46383a4fadc50a4fe34e94e58e307509144414a9ca19eb4cc68a135
-EBUILD distcc-3.3.3-r1.ebuild 5718 BLAKE2B bc09ee4b3e3c2b9cd5a7e145f2e9446f619fa78cd9c860c110be1b8655d9222fc5fe74055fcd34a4cc0704b1fd0e782e7d44891a05414249bd639a74cae4b008 SHA512 b836dac5a178d77924aa7ae8ed444f494550a74f2becea56640f6bcddfe47e4795ed539dca4f6fdeb7fb56deef81d79ae09637481d114f77137b9949ec604d09
-EBUILD distcc-3.3.3-r2.ebuild 5303 BLAKE2B a4f9e69486d523a041b034602346221602ebafd515cc6114d00f40329596bab6851c74acc9b156731f8bf2f2d1eb4be8f8011cf24dfe30f9b46e851555b82e13 SHA512 a115d193c2800650abc2791bf7b128271143af32dfe208a1efdaa7a71f537cd42f04ec10f424cdf4e9ab42f4851d991de8825050318a1930a6fa60f0173f6fc3
+EBUILD distcc-3.3.3-r3.ebuild 5401 BLAKE2B 61b63122de2b0956e0ddd780a85ce0919ccc16efc5abd9aefe33029f1e745e6ba2d5121eec48ff9a2c719fad5c7e2709ded3fd85bd240f3ff8c4e40bd26e5807 SHA512 01d1f3236aeb626ee6b7d4a54ede4add9ae7b59b451090523395e9be2821266bf2b0ffcf096eb2694ba2cefd2f5cec710bd5c495866e834ecf866d5cd92b923e
MISC metadata.xml 459 BLAKE2B 8d2380ff1e55bf6e7201ea0ab2e4c6866b9c84c1eecef23470e9aa177279f94695c65c4d50cd5ffbb3d98c90ec9a712d9aed96c16238f2eb3c09d1bc5c6d4bae SHA512 dff25af7ec7895d4d2e3f3886614b227a9b62c4376d1736c61ce70e5cdae00124128ee78e89a31c9bc25cff3bc6c3826543ca8ebaf255a74c4611caabe9de1f8
diff --git a/sys-devel/distcc/distcc-3.3.3-r1.ebuild b/sys-devel/distcc/distcc-3.3.3-r1.ebuild
deleted file mode 100644
index 5bbe0b807af5..000000000000
--- a/sys-devel/distcc/distcc-3.3.3-r1.ebuild
+++ /dev/null
@@ -1,195 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-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="https://github.com/distcc/distcc"
-SRC_URI="https://github.com/distcc/distcc/releases/download/v${PV}/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-IUSE="gssapi gtk hardened ipv6 selinux xinetd zeroconf"
-
-CDEPEND="${PYTHON_DEPS}
- dev-libs/popt
- 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}
- dev-util/shadowman
- >=sys-devel/gcc-config-1.4.1
- selinux? ( sec-policy/selinux-distcc )
- xinetd? ( sys-apps/xinetd )"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-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"
- # backport py3.8 fixes
- eapply "${FILESDIR}/${P}-py38.patch"
- # gcc-10 fix, #707502
- eapply "${FILESDIR}/${P}-gcc-10-fix.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
-
- # TODO: gdb tests fail due to gdb failing to find .c file
- sed -i -e '/Gdb.*Case,/d' test/testdistcc.py || 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)
- --without-gnome
- $(use_with gssapi auth)
- $(use_with zeroconf avahi)
- )
-
- econf "${myconf[@]}"
-}
-
-src_test() {
- # sandbox breaks some tests, and hangs some too
- # retest once #590084 is fixed
- local -x SANDBOX_ON=0
- emake -j1 check
-}
-
-src_install() {
- # override GZIP_BIN to stop it from compressing manpages
- emake -j1 DESTDIR="${D}" GZIP_BIN=false install
- python_optimize
-
- newinitd "${FILESDIR}/distccd.initd" distccd
- systemd_newunit "${FILESDIR}/distccd.service-1" 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 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
-
- 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 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
-}
diff --git a/sys-devel/distcc/distcc-3.3.3-r2.ebuild b/sys-devel/distcc/distcc-3.3.3-r3.ebuild
index b35b55c2ca05..729f2211d694 100644
--- a/sys-devel/distcc/distcc-3.3.3-r2.ebuild
+++ b/sys-devel/distcc/distcc-3.3.3-r3.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://github.com/distcc/distcc/releases/download/v${PV}/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
IUSE="gssapi gtk hardened ipv6 selinux xinetd zeroconf"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
@@ -46,6 +46,8 @@ src_prepare() {
eapply "${FILESDIR}/${P}-py38.patch"
# gcc-10 fix, #707502
eapply "${FILESDIR}/${P}-gcc-10-fix.patch"
+ # unbreak CHOST prefix, https://bugs.gentoo.org/773652
+ eapply "${FILESDIR}/${P}-no-rewrite-chost.patch"
eapply_user
# Bugs #120001, #167844 and probably more. See patch for description.
diff --git a/sys-devel/distcc/files/distcc-3.3.3-no-rewrite-chost.patch b/sys-devel/distcc/files/distcc-3.3.3-no-rewrite-chost.patch
new file mode 100644
index 000000000000..dafaa90759b4
--- /dev/null
+++ b/sys-devel/distcc/files/distcc-3.3.3-no-rewrite-chost.patch
@@ -0,0 +1,28 @@
+From c2471d4cf3e2ef2556c150d52860b4e8f04e4994 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrjala@linux.intel.com>
+Date: Mon, 1 Mar 2021 22:13:36 +0200
+Subject: [PATCH] distcc: fix i686 cross compile
+
+[mgorny: disable toolchain prefix rewriting code that workarounds some
+ Debian invention and breaks everything else]
+
+---
+ src/compile.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/compile.c b/src/compile.c
+index 25df355..e5d655b 100644
+--- a/src/compile.c
++++ b/src/compile.c
+@@ -572,7 +572,7 @@ static int dcc_gcc_rewrite_fqn(char **argv)
+ if (!newcmd)
+ return -ENOMEM;
+
+- if ((t = strstr(target_with_vendor, "-pc-"))) {
++ if (0 && (t = strstr(target_with_vendor, "-pc-"))) {
+ memcpy(newcmd, target_with_vendor, t - target_with_vendor);
+ strcat(newcmd, t + strlen("-pc"));
+ } else
+--
+2.26.2
+