Gentoo Archives: gentoo-commits

From: "Andreas Hüttel" <dilfridge@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/libstdc++-v3/files/, sys-libs/libstdc++-v3/
Date: Mon, 01 Jan 2018 20:45:59
Message-Id: 1514839537.58ab932cf383aefaab66263f659429889152d569.dilfridge@gentoo
1 commit: 58ab932cf383aefaab66263f659429889152d569
2 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 1 20:44:53 2018 +0000
4 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 1 20:45:37 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58ab932c
7
8 sys-libs/libstdc++-v3: Fix build with glibc-2.26, bug 637608
9
10 We need to patch conditionally since the patch breaks the build with
11 glibc-2.25.
12
13 Closes: https://bugs.gentoo.org/637608
14 Package-Manager: Portage-2.3.19, Repoman-2.3.6
15
16 .../files/libstdc++-v3-3.3.6-glibc226.patch | 33 ++++++++++++++++++++++
17 sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild | 6 +++-
18 2 files changed, 38 insertions(+), 1 deletion(-)
19
20 diff --git a/sys-libs/libstdc++-v3/files/libstdc++-v3-3.3.6-glibc226.patch b/sys-libs/libstdc++-v3/files/libstdc++-v3-3.3.6-glibc226.patch
21 new file mode 100644
22 index 00000000000..a444da2d2bf
23 --- /dev/null
24 +++ b/sys-libs/libstdc++-v3/files/libstdc++-v3-3.3.6-glibc226.patch
25 @@ -0,0 +1,33 @@
26 +diff -ruN gcc-3.3.6.orig/gcc/config/i386/linux.h gcc-3.3.6/gcc/config/i386/linux.h
27 +--- gcc-3.3.6.orig/gcc/config/i386/linux.h 2018-01-01 20:14:36.311860098 +0100
28 ++++ gcc-3.3.6/gcc/config/i386/linux.h 2018-01-01 20:16:05.912287579 +0100
29 +@@ -261,7 +261,7 @@
30 + siginfo_t *pinfo; \
31 + void *puc; \
32 + siginfo_t info; \
33 +- struct ucontext uc; \
34 ++ struct ucontext_t uc; \
35 + } *rt_ = (CONTEXT)->cfa; \
36 + sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \
37 + } \
38 +diff -ruN gcc-3.3.6.orig/gcc/config/i386/linux64.h gcc-3.3.6/gcc/config/i386/linux64.h
39 +--- gcc-3.3.6.orig/gcc/config/i386/linux64.h 2018-01-01 20:14:36.271859907 +0100
40 ++++ gcc-3.3.6/gcc/config/i386/linux64.h 2018-01-01 20:16:05.912287579 +0100
41 +@@ -112,7 +112,7 @@
42 + if (*(unsigned char *)(pc_+0) == 0x48 \
43 + && *(unsigned long *)(pc_+1) == 0x050f0000000fc0c7) \
44 + { \
45 +- struct ucontext *uc_ = (CONTEXT)->cfa; \
46 ++ struct ucontext_t *uc_ = (CONTEXT)->cfa; \
47 + sc_ = (struct sigcontext *) &uc_->uc_mcontext; \
48 + } \
49 + else \
50 +@@ -182,7 +182,7 @@
51 + siginfo_t *pinfo; \
52 + void *puc; \
53 + siginfo_t info; \
54 +- struct ucontext uc; \
55 ++ struct ucontext_t uc; \
56 + } *rt_ = (CONTEXT)->cfa; \
57 + sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \
58 + } \
59
60 diff --git a/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild b/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild
61 index 53ec501f081..c90cf870b49 100644
62 --- a/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild
63 +++ b/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild
64 @@ -1,4 +1,4 @@
65 -# Copyright 1999-2017 Gentoo Foundation
66 +# Copyright 1999-2018 Gentoo Foundation
67 # Distributed under the terms of the GNU General Public License v2
68
69 inherit eutils flag-o-matic libtool multilib
70 @@ -130,6 +130,10 @@ src_unpack() {
71 unpack ${A}
72 cd "${S}"
73 EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
74 +
75 + # bug 637608
76 + has_version '>=sys-libs/glibc-2.26' && epatch "${FILESDIR}/${P}-glibc226.patch"
77 +
78 elibtoolize --portage --shallow
79 ./contrib/gcc_update --touch
80 mkdir -p "${WORKDIR}"/build