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.geiss...@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);