public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/distcc/files/, sys-devel/distcc/
@ 2020-02-10 16:07 Lars Wendler
  0 siblings, 0 replies; 5+ messages in thread
From: Lars Wendler @ 2020-02-10 16:07 UTC (permalink / raw
  To: gentoo-commits

commit:     866ab4db4fbdb6a2768152e82137edc6e4a9c9bc
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 10 16:05:26 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Feb 10 16:06:56 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=866ab4db

sys-devel/distcc: Revbump adding TMPDIR handling to init script

With kind permission from mgorny
Committed straight to stable as we don't change upstream default
without action from the user

Package-Manager: Portage-2.3.88, Repoman-2.3.20
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-devel/distcc/{distcc-3.3.3.ebuild => distcc-3.3.3-r1.ebuild} | 0
 sys-devel/distcc/files/distccd.confd                             | 5 +++++
 sys-devel/distcc/files/distccd.initd                             | 4 +++-
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/sys-devel/distcc/distcc-3.3.3.ebuild b/sys-devel/distcc/distcc-3.3.3-r1.ebuild
similarity index 100%
rename from sys-devel/distcc/distcc-3.3.3.ebuild
rename to sys-devel/distcc/distcc-3.3.3-r1.ebuild

diff --git a/sys-devel/distcc/files/distccd.confd b/sys-devel/distcc/files/distccd.confd
index bc08d40777d..736527a4a89 100644
--- a/sys-devel/distcc/files/distccd.confd
+++ b/sys-devel/distcc/files/distccd.confd
@@ -35,3 +35,8 @@ DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.0.0/24"
 # set this for niceness
 # Default is 15
 DISTCCD_OPTS="${DISTCCD_OPTS} -N 15"
+
+# By default distccd stores temporary files in /tmp
+# Make sure to give distcc user write permission to
+# the given TMPDIR
+#TMPDIR="/tmp"

diff --git a/sys-devel/distcc/files/distccd.initd b/sys-devel/distcc/files/distccd.initd
index 7673ff2cf42..963f7b74c12 100644
--- a/sys-devel/distcc/files/distccd.initd
+++ b/sys-devel/distcc/files/distccd.initd
@@ -1,5 +1,5 @@
 #!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 depend() {
@@ -11,3 +11,5 @@ command="${DISTCCD_EXEC:-usr/bin/distccd}"
 command_args="--user distcc --daemon --no-detach ${DISTCCD_OPTS}"
 command_background="true"
 pidfile="/run/${RC_SVCNAME}.pid"
+
+export TMPDIR="${TMPDIR:-/tmp}"


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-devel/distcc/files/, sys-devel/distcc/
@ 2020-05-31  9:44 Michał Górny
  0 siblings, 0 replies; 5+ messages in thread
From: Michał Górny @ 2020-05-31  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     d8b0e7c0e5c4d7c2a26f70492c959d2b910eb3b7
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun May 31 09:33:12 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun May 31 09:44:08 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d8b0e7c0

sys-devel/distcc: Port to py38&39

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-devel/distcc/distcc-3.3.3-r1.ebuild        |  4 +-
 sys-devel/distcc/files/distcc-3.3.3-py38.patch | 53 ++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 1 deletion(-)

diff --git a/sys-devel/distcc/distcc-3.3.3-r1.ebuild b/sys-devel/distcc/distcc-3.3.3-r1.ebuild
index d7992e1b301..3ab5ecab6d3 100644
--- a/sys-devel/distcc/distcc-3.3.3-r1.ebuild
+++ b/sys-devel/distcc/distcc-3.3.3-r1.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=6
 
-PYTHON_COMPAT=( python3_{6,7} )
+PYTHON_COMPAT=( python3_{6,7,8,9} )
 
 inherit autotools flag-o-matic python-single-r1 systemd \
 	toolchain-funcs user xdg-utils prefix
@@ -53,6 +53,8 @@ src_prepare() {
 	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"
 	eapply_user
 
 	# Bugs #120001, #167844 and probably more. See patch for description.

diff --git a/sys-devel/distcc/files/distcc-3.3.3-py38.patch b/sys-devel/distcc/files/distcc-3.3.3-py38.patch
new file mode 100644
index 00000000000..1ba5fee7d87
--- /dev/null
+++ b/sys-devel/distcc/files/distcc-3.3.3-py38.patch
@@ -0,0 +1,53 @@
+From c52a023b8a17e4346c66a8fddee69b40b327eae7 Mon Sep 17 00:00:00 2001
+From: MartB <mart.b@outlook.de>
+Date: Thu, 28 Nov 2019 21:00:59 +0100
+Subject: [PATCH] Replace time.clock() with time.perf_counter()
+
+.clock() got removed in python 3.8 and was marked as deprecated since 3.3
+(https://github.com/python/cpython/pull/13270)
+---
+ include_server/parse_file.py | 4 ++--
+ include_server/statistics.py | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/include_server/parse_file.py b/include_server/parse_file.py
+index d1dcc74..f5d78b7 100755
+--- a/include_server/parse_file.py
++++ b/include_server/parse_file.py
+@@ -272,7 +272,7 @@ def Parse(self, filepath, symbol_table):
+ 
+     assert isinstance(filepath, str)
+     self.filepath = filepath
+-    parse_file_start_time = time.clock()
++    parse_file_start_time = time.perf_counter()
+     statistics.parse_file_counter += 1
+ 
+     includepath_map_index = self.includepath_map.Index
+@@ -338,6 +338,6 @@ def Parse(self, filepath, symbol_table):
+                       expr_includes, next_includes)
+ 
+ 
+-    statistics.parse_file_total_time += time.clock() - parse_file_start_time
++    statistics.parse_file_total_time += time.perf_counter() - parse_file_start_time
+ 
+     return (quote_includes, angle_includes, expr_includes, next_includes)
+diff --git a/include_server/statistics.py b/include_server/statistics.py
+index 9677af3..7bc9cb8 100755
+--- a/include_server/statistics.py
++++ b/include_server/statistics.py
+@@ -62,13 +62,13 @@ def StartTiming():
+   global start_time, translation_unit_counter
+   """Mark the start of a request to find an include closure."""
+   translation_unit_counter += 1
+-  start_time = time.clock()
++  start_time = time.perf_counter()
+ 
+ 
+ def EndTiming():
+   """Mark the end of an include closure calculation."""
+   global translation_unit_time, min_time, max_time, total_time
+-  translation_unit_time = time.clock() - start_time
++  translation_unit_time = time.perf_counter() - start_time
+   min_time = min(translation_unit_time, min_time)
+   max_time = max(translation_unit_time, max_time)
+   total_time += translation_unit_time


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-devel/distcc/files/, sys-devel/distcc/
@ 2020-05-31 12:47 Joonas Niilola
  0 siblings, 0 replies; 5+ messages in thread
From: Joonas Niilola @ 2020-05-31 12:47 UTC (permalink / raw
  To: gentoo-commits

commit:     1b76343af3ea4da0cf9dba731990a57c38a8cb85
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Sun May 31 11:04:37 2020 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sun May 31 12:46:33 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1b76343a

sys-devel/distcc: gcc-10 fix from upstream

Closes: https://bugs.gentoo.org/707502
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/16029

 sys-devel/distcc/distcc-3.3.3-r1.ebuild            |  2 ++
 .../distcc/files/distcc-3.3.3-gcc-10-fix.patch     | 28 ++++++++++++++++++++++
 2 files changed, 30 insertions(+)

diff --git a/sys-devel/distcc/distcc-3.3.3-r1.ebuild b/sys-devel/distcc/distcc-3.3.3-r1.ebuild
index e3911a71f50..700f331aa62 100644
--- a/sys-devel/distcc/distcc-3.3.3-r1.ebuild
+++ b/sys-devel/distcc/distcc-3.3.3-r1.ebuild
@@ -48,6 +48,8 @@ src_prepare() {
 	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.

diff --git a/sys-devel/distcc/files/distcc-3.3.3-gcc-10-fix.patch b/sys-devel/distcc/files/distcc-3.3.3-gcc-10-fix.patch
new file mode 100644
index 00000000000..2c0bce6c82b
--- /dev/null
+++ b/sys-devel/distcc/files/distcc-3.3.3-gcc-10-fix.patch
@@ -0,0 +1,28 @@
+From 377969cc762569f4a5ec409a1e7ad6a7be3e51b3 Mon Sep 17 00:00:00 2001
+From: Romain Geissler <romain.geissler@amadeus.com>
+Date: Mon, 27 Jan 2020 09:28:43 +0000
+Subject: [PATCH] Fix build with gcc 10 which defaults to -fno-common (cf
+ https://gcc.gnu.org/gcc-10/porting_to.html)
+
+This fixes the following link error I see when I use the latest gcc 10
+git branch:
+/opt/1A/toolchain/x86_64-v20.0.7/lib/gcc/x86_64-1a-linux-gnu/10.0.1/../../../../x86_64-1a-linux-gnu/bin/ld: src/serve.o:(.bss+0x0): multiple definition of `stats_text'; src/prefork.o:(.bss+0x0): first defined here
+/opt/1A/toolchain/x86_64-v20.0.7/lib/gcc/x86_64-1a-linux-gnu/10.0.1/../../../../x86_64-1a-linux-gnu/bin/ld: src/stats.o:(.data+0x20): multiple definition of `stats_text'; src/prefork.o:(.bss+0x0): first defined here
+collect2: error: ld returned 1 exit status
+---
+ src/stats.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/stats.h b/src/stats.h
+index 9bde285..74d4690 100644
+--- a/src/stats.h
++++ b/src/stats.h
+@@ -33,7 +33,7 @@ enum stats_e { STATS_TCP_ACCEPT, STATS_REJ_BAD_REQ, STATS_REJ_OVERLOAD,
+                 STATS_COMPILE_OK, STATS_COMPILE_ERROR, STATS_COMPILE_TIMEOUT,
+                 STATS_CLI_DISCONN, STATS_OTHER, STATS_ENUM_MAX };
+ 
+-const char *stats_text[20];
++extern const char *stats_text[20];
+ 
+ int  dcc_stats_init(void);
+ void dcc_stats_init_kid(void);


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-devel/distcc/files/, sys-devel/distcc/
@ 2023-09-27  4:27 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2023-09-27  4:27 UTC (permalink / raw
  To: gentoo-commits

commit:     a43ee9d85165ae7913807d321bf3e73c32fd3247
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 27 04:26:27 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep 27 04:26:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a43ee9d8

sys-devel/distcc: backport CHOST rewriting fix (deux)

Closes: https://bugs.gentoo.org/773652
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-devel/distcc/distcc-3.4-r3.ebuild              | 186 +++++++++++++++++++++
 .../distcc/files/distcc-3.4-rewrite-chost.patch    |  79 +++++++++
 2 files changed, 265 insertions(+)

diff --git a/sys-devel/distcc/distcc-3.4-r3.ebuild b/sys-devel/distcc/distcc-3.4-r3.ebuild
new file mode 100644
index 000000000000..df8124e492d9
--- /dev/null
+++ b/sys-devel/distcc/distcc-3.4-r3.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit autotools flag-o-matic prefix python-single-r1 systemd
+
+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 ~riscv ~s390 ~sparc ~x86"
+IUSE="gssapi gtk hardened ipv6 selinux xinetd zeroconf"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}
+	dev-libs/popt
+	gssapi? ( net-libs/libgssglue )
+	gtk? ( x11-libs/gtk+:3 )
+	zeroconf? ( >=net-dns/avahi-0.6[dbus] )
+"
+DEPEND="${RDEPEND}
+	sys-libs/binutils-libs"
+BDEPEND="
+	sys-devel/autoconf-archive
+	virtual/pkgconfig"
+RDEPEND+="
+	acct-user/distcc
+	dev-util/shadowman
+	>=sys-devel/gcc-config-1.4.1
+	selinux? ( sec-policy/selinux-distcc )
+	xinetd? ( sys-apps/xinetd )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-3.0-xinetd.patch"
+	# SOCKSv5 support needed for Portage, bug #537616
+	"${FILESDIR}/${PN}-3.2_rc1-socks5.patch"
+	"${FILESDIR}/${PN}-3.4-pump-tests.patch"
+	"${FILESDIR}/${P}-fix-dcc_gcc_rewrite_fqn-corruption.patch"
+	"${FILESDIR}/${P}-rewrite-chost.patch"
+)
+
+src_prepare() {
+	default
+
+	# 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() {
+	# https://github.com/distcc/distcc/issues/454
+	append-cppflags -DPY_SSIZE_T_CLEAN
+
+	local myconf=(
+		--disable-Werror
+		--libdir="${EPREFIX}"/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 [[ -z ${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
+}
+
+pkg_prerm() {
+	if [[ -z ${REPLACED_BY_VERSION} && -z ${ROOT} ]]; then
+		eselect compiler-shadow remove distcc
+	fi
+}

diff --git a/sys-devel/distcc/files/distcc-3.4-rewrite-chost.patch b/sys-devel/distcc/files/distcc-3.4-rewrite-chost.patch
new file mode 100644
index 000000000000..05db9691bbbe
--- /dev/null
+++ b/sys-devel/distcc/files/distcc-3.4-rewrite-chost.patch
@@ -0,0 +1,79 @@
+https://bugs.gentoo.org/773652
+https://github.com/distcc/distcc/issues/440
+https://github.com/distcc/distcc/commit/850db9eec0d5dd7f47ade8ffca91b679081f6d85
+
+From 850db9eec0d5dd7f47ade8ffca91b679081f6d85 Mon Sep 17 00:00:00 2001
+From: Alexey Sheplyakov <asheplyakov@altlinux.org>
+Date: Sun, 11 Jul 2021 18:57:00 +0400
+Subject: [PATCH] Improved cross-rewriting on non-x86 systems
+
+Unfortunately autoconf and GCC don't agree on the system name:
+
+- On arm (aarch64): `GNU_HOST` is `aarch64-unknown-linux-gnu`,
+  and GCC triple is `aarch64-linux-gnu` instead.
+- On rpm-based x86_64 distros: `GNU_HOST` is `x86_64-pc-linux-gnu`,
+  and GCC triple is `x86_64-redhat-linux`
+
+Therefore ask the compiler (when running distcc configure script)
+how to correctly identify it.
+
+Closes: #440
+ALTBUG: 40425
+--- a/configure.ac
++++ b/configure.ac
+@@ -547,6 +547,22 @@ AC_SUBST(CPPFLAGS)
+ AC_SUBST(POPT_INCLUDES)
+ AC_SUBST(BUILD_POPT)
+ AC_SUBST(GNOME_BIN)
++
++
++# Sometimes canonical triples as used by configure differ from GCC ones
++# x86: configure: x86_64-pc-linux-gnu, GCC: x86_64-linux-gnu
++# ALT Linux: configure: ${arch}-alt-linux-gnu, GCC: ${arch}-alt-linux
++# Therefore ask the compiler for its triple
++if test "x${GCC}" = xyes ; then
++	native_compiler_triple=`$CC -dumpmachine`
++fi
++if test "x$native_compiler_triple" = "x"; then
++	native_compiler_triple="$host"
++fi
++AC_MSG_NOTICE([Native compiler triple: $native_compiler_triple])
++
++AC_DEFINE_UNQUOTED(NATIVE_COMPILER_TRIPLE, ["$native_compiler_triple"], [Native compiler triple])
++
+ AC_DEFINE_UNQUOTED(GNU_HOST, ["$host"], [Your gnu-style host triple])
+ # The '.stamp-conf' files force creation of the containing directories in the
+ # build tree.
+--- a/src/compile.c
++++ b/src/compile.c
+@@ -549,7 +549,7 @@ static void dcc_rewrite_generic_compiler(char **argv)
+ static void dcc_add_clang_target(char **argv)
+ {
+         /* defined by autoheader */
+-    const char *target = GNU_HOST;
++    const char *target = NATIVE_COMPILER_TRIPLE;
+ 
+     if (strcmp(argv[0], "clang") == 0 || strncmp(argv[0], "clang-", strlen("clang-")) == 0 ||
+         strcmp(argv[0], "clang++") == 0 || strncmp(argv[0], "clang++-", strlen("clang++-")) == 0)
+@@ -577,7 +577,7 @@ static void dcc_add_clang_target(char **argv)
+ static int dcc_gcc_rewrite_fqn(char **argv)
+ {
+         /* defined by autoheader */
+-    const char *target_with_vendor = GNU_HOST;
++    const char *target_with_vendor = NATIVE_COMPILER_TRIPLE;
+     char *newcmd, *t, *path;
+     int pathlen = 0;
+     int newcmd_len = 0;
+@@ -595,11 +595,7 @@ static int dcc_gcc_rewrite_fqn(char **argv)
+         return -ENOMEM;
+     memset(newcmd, 0, newcmd_len);
+ 
+-    if ((t = strstr(target_with_vendor, "-pc-"))) {
+-        memcpy(newcmd, target_with_vendor, t - target_with_vendor);
+-        strcat(newcmd, t + strlen("-pc"));
+-    } else
+-        strcpy(newcmd, target_with_vendor);
++    strcpy(newcmd, target_with_vendor);
+ 
+ 
+     strcat(newcmd, "-");


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-devel/distcc/files/, sys-devel/distcc/
@ 2024-10-12 15:54 Mike Gilbert
  0 siblings, 0 replies; 5+ messages in thread
From: Mike Gilbert @ 2024-10-12 15:54 UTC (permalink / raw
  To: gentoo-commits

commit:     80781de2c71054bccb012c1ef2acf5dc7f079f6a
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 10 17:18:56 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat Oct 12 15:53:36 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80781de2

sys-devel/distcc: move masquerade links to /usr/lib/distcc

This matches the path used internally by distcc.
We provide a symlink at /usr/lib/distcc/bin for backward compat.

Bug: https://bugs.gentoo.org/650986
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-devel/distcc/distcc-3.4-r5.ebuild   | 16 ++++++++++------
 sys-devel/distcc/files/distcc-config-r1 |  6 +++---
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/sys-devel/distcc/distcc-3.4-r5.ebuild b/sys-devel/distcc/distcc-3.4-r5.ebuild
index 720b8cf870d1..c9317d52aec3 100644
--- a/sys-devel/distcc/distcc-3.4-r5.ebuild
+++ b/sys-devel/distcc/distcc-3.4-r5.ebuild
@@ -57,8 +57,7 @@ src_prepare() {
 
 	sed \
 		-e "s:@EPREFIX@:${EPREFIX:-/}:" \
-		-e "s:@libdir@:/usr/lib:" \
-		"${FILESDIR}/distcc-config" > "${T}/distcc-config" || die
+		"${FILESDIR}/distcc-config-r1" > "${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
@@ -152,15 +151,21 @@ src_install() {
 	fi
 
 	insinto /usr/share/shadowman/tools
-	newins - distcc <<<"${EPREFIX}/usr/lib/distcc/bin"
-	# Dummy symlinks to distccd to satisfy command whitelist, bug 650986
-	newins - distccd <<<"${EPREFIX}/usr/lib/distcc"
+	newins - distcc <<<"${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_preinst() {
+	# Compatibility symlink for Portage
+	dosym . /usr/lib/distcc/bin
+	if [[ -e ${EROOT}/usr/lib/distcc/bin && ! -L ${EROOT}/usr/lib/distcc/bin ]]; then
+		rm -rf "${EROOT}"/usr/lib/distcc/bin || die
+	fi
+}
+
 pkg_postinst() {
 	# remove the old paths when switching from libXX to lib
 	if [[ $(get_libdir) != lib && ${SYMLINK_LIB} != yes && \
@@ -170,7 +175,6 @@ pkg_postinst() {
 
 	if [[ -z ${ROOT} ]]; then
 		eselect compiler-shadow update distcc
-		eselect compiler-shadow update distccd
 	fi
 
 	elog

diff --git a/sys-devel/distcc/files/distcc-config-r1 b/sys-devel/distcc/files/distcc-config-r1
index 974620d107fb..e58a173f9d2e 100644
--- a/sys-devel/distcc/files/distcc-config-r1
+++ b/sys-devel/distcc/files/distcc-config-r1
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 2003-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 import os, re, signal, subprocess, sys
@@ -24,7 +24,7 @@ cmdline=[]
 eprefix = '@EPREFIX@'
 bindir = os.path.join(eprefix, 'usr', 'bin')
 sbindir = os.path.join(eprefix, 'usr', 'sbin')
-libdir = os.path.join(eprefix, '@libdir@')
+libdir = os.path.join(eprefix, 'usr', 'lib')
 sysconfdir = os.path.join(eprefix, 'etc')
 
 gcc_config = os.path.join(bindir, 'gcc-config')
@@ -33,7 +33,7 @@ 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')
+dccc_dir = os.path.join(libdir, 'distcc')
 
 def exithandler(foo,bar):
 	os.kill(0,signal.SIGKILL)


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-10-12 15:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-27  4:27 [gentoo-commits] repo/gentoo:master commit in: sys-devel/distcc/files/, sys-devel/distcc/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-10-12 15:54 Mike Gilbert
2020-05-31 12:47 Joonas Niilola
2020-05-31  9:44 Michał Górny
2020-02-10 16:07 Lars Wendler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox