diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2018-01-01 21:44:53 +0100 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2018-01-01 21:45:37 +0100 |
commit | 58ab932cf383aefaab66263f659429889152d569 (patch) | |
tree | ffc9c6c4cf5324d759e23c7c78d4f5e7d1923fc6 | |
parent | mail-client/mailx: use https to make repoman happy (diff) | |
download | gentoo-58ab932cf383aefaab66263f659429889152d569.tar.gz gentoo-58ab932cf383aefaab66263f659429889152d569.tar.bz2 gentoo-58ab932cf383aefaab66263f659429889152d569.zip |
sys-libs/libstdc++-v3: Fix build with glibc-2.26, bug 637608
We need to patch conditionally since the patch breaks the build with
glibc-2.25.
Closes: https://bugs.gentoo.org/637608
Package-Manager: Portage-2.3.19, Repoman-2.3.6
-rw-r--r-- | sys-libs/libstdc++-v3/files/libstdc++-v3-3.3.6-glibc226.patch | 33 | ||||
-rw-r--r-- | sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild | 6 |
2 files changed, 38 insertions, 1 deletions
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 new file mode 100644 index 000000000000..a444da2d2bfc --- /dev/null +++ b/sys-libs/libstdc++-v3/files/libstdc++-v3-3.3.6-glibc226.patch @@ -0,0 +1,33 @@ +diff -ruN gcc-3.3.6.orig/gcc/config/i386/linux.h gcc-3.3.6/gcc/config/i386/linux.h +--- gcc-3.3.6.orig/gcc/config/i386/linux.h 2018-01-01 20:14:36.311860098 +0100 ++++ gcc-3.3.6/gcc/config/i386/linux.h 2018-01-01 20:16:05.912287579 +0100 +@@ -261,7 +261,7 @@ + siginfo_t *pinfo; \ + void *puc; \ + siginfo_t info; \ +- struct ucontext uc; \ ++ struct ucontext_t uc; \ + } *rt_ = (CONTEXT)->cfa; \ + sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \ + } \ +diff -ruN gcc-3.3.6.orig/gcc/config/i386/linux64.h gcc-3.3.6/gcc/config/i386/linux64.h +--- gcc-3.3.6.orig/gcc/config/i386/linux64.h 2018-01-01 20:14:36.271859907 +0100 ++++ gcc-3.3.6/gcc/config/i386/linux64.h 2018-01-01 20:16:05.912287579 +0100 +@@ -112,7 +112,7 @@ + if (*(unsigned char *)(pc_+0) == 0x48 \ + && *(unsigned long *)(pc_+1) == 0x050f0000000fc0c7) \ + { \ +- struct ucontext *uc_ = (CONTEXT)->cfa; \ ++ struct ucontext_t *uc_ = (CONTEXT)->cfa; \ + sc_ = (struct sigcontext *) &uc_->uc_mcontext; \ + } \ + else \ +@@ -182,7 +182,7 @@ + siginfo_t *pinfo; \ + void *puc; \ + siginfo_t info; \ +- struct ucontext uc; \ ++ struct ucontext_t uc; \ + } *rt_ = (CONTEXT)->cfa; \ + sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \ + } \ 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 index 53ec501f081d..c90cf870b492 100644 --- a/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild +++ b/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 inherit eutils flag-o-matic libtool multilib @@ -130,6 +130,10 @@ src_unpack() { unpack ${A} cd "${S}" EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch + + # bug 637608 + has_version '>=sys-libs/glibc-2.26' && epatch "${FILESDIR}/${P}-glibc226.patch" + elibtoolize --portage --shallow ./contrib/gcc_update --touch mkdir -p "${WORKDIR}"/build |