1 |
commit: 1fa4138518bb8f46774b8a1bb77dbe7f78215faa |
2 |
Author: Jory Pratt <anarchy <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Apr 6 20:22:54 2019 +0000 |
4 |
Commit: Jory Pratt <anarchy <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Apr 6 20:23:37 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=1fa41385 |
7 |
|
8 |
sys-devel/gcc: 8.3.0-r1 update along with toolchain.eclass updates |
9 |
|
10 |
Signed-off-by: Jory Pratt <anarchy <AT> gentoo.org> |
11 |
|
12 |
eclass/toolchain.eclass | 56 ++++++++++++++++++++++----------------- |
13 |
sys-devel/gcc/Manifest | 1 + |
14 |
sys-devel/gcc/gcc-8.3.0-r1.ebuild | 28 ++++++++++++++++++++ |
15 |
3 files changed, 61 insertions(+), 24 deletions(-) |
16 |
|
17 |
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass |
18 |
index 5411381..be94db8 100644 |
19 |
--- a/eclass/toolchain.eclass |
20 |
+++ b/eclass/toolchain.eclass |
21 |
@@ -2,7 +2,7 @@ |
22 |
# Distributed under the terms of the GNU General Public License v2 |
23 |
|
24 |
# Maintainer: Toolchain Ninjas <toolchain@g.o> |
25 |
-# @SUPPORTED_EAPIS: 5 |
26 |
+# @SUPPORTED_EAPIS: 5 6 |
27 |
|
28 |
DESCRIPTION="The GNU Compiler Collection" |
29 |
HOMEPAGE="https://gcc.gnu.org/" |
30 |
@@ -26,7 +26,7 @@ FEATURES=${FEATURES/multilib-strict/} |
31 |
|
32 |
case ${EAPI:-0} in |
33 |
0|1|2|3|4*) die "Need to upgrade to at least EAPI=5" ;; |
34 |
- 5*) inherit eapi7-ver ;; |
35 |
+ 5*|6) inherit eapi7-ver ;; |
36 |
*) die "I don't speak EAPI ${EAPI}." ;; |
37 |
esac |
38 |
EXPORT_FUNCTIONS pkg_pretend pkg_setup src_unpack src_prepare src_configure \ |
39 |
@@ -138,16 +138,23 @@ else |
40 |
fi |
41 |
IUSE="${GCC_EBUILD_TEST_FLAG} vanilla +nls +nptl" |
42 |
|
43 |
+TC_FEATURES=() |
44 |
+ |
45 |
+tc_has_feature() { |
46 |
+ has "$1" "${TC_FEATURES[@]}" |
47 |
+} |
48 |
+ |
49 |
if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then |
50 |
- IUSE+=" altivec debug +cxx +fortran" |
51 |
+ IUSE+=" altivec debug +cxx +fortran" TC_FEATURES+=(fortran) |
52 |
[[ -n ${PIE_VER} ]] && IUSE+=" nopie" |
53 |
[[ -n ${HTB_VER} ]] && IUSE+=" boundschecking" |
54 |
[[ -n ${D_VER} ]] && IUSE+=" d" |
55 |
[[ -n ${SPECS_VER} ]] && IUSE+=" nossp" |
56 |
tc_version_is_at_least 3 && IUSE+=" doc hardened multilib objc" |
57 |
- tc_version_is_between 3 7 && IUSE+=" awt gcj" |
58 |
+ tc_version_is_between 3 7 && IUSE+=" awt gcj" TC_FEATURES+=(gcj) |
59 |
tc_version_is_at_least 3.3 && IUSE+=" pgo" |
60 |
- tc_version_is_at_least 4.0 && IUSE+=" objc-gc" |
61 |
+ tc_version_is_at_least 4.0 && |
62 |
+ IUSE+=" objc-gc" TC_FEATURES+=(objc-gc) |
63 |
tc_version_is_between 4.0 4.9 && IUSE+=" mudflap" |
64 |
tc_version_is_at_least 4.1 && IUSE+=" libssp objc++" |
65 |
tc_version_is_at_least 4.2 && IUSE+=" +openmp" |
66 |
@@ -156,13 +163,15 @@ if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then |
67 |
# Note: while <=gcc-4.7 also supported graphite, it required forked ppl |
68 |
# versions which we dropped. Since graphite was also experimental in |
69 |
# the older versions, we don't want to bother supporting it. #448024 |
70 |
- tc_version_is_at_least 4.8 && IUSE+=" graphite +sanitize" |
71 |
+ tc_version_is_at_least 4.8 && |
72 |
+ IUSE+=" graphite +sanitize" TC_FEATURES+=(graphite) |
73 |
tc_version_is_between 4.9 8 && IUSE+=" cilk" |
74 |
tc_version_is_at_least 4.9 && IUSE+=" +vtv" |
75 |
tc_version_is_at_least 5.0 && IUSE+=" jit mpx" |
76 |
tc_version_is_at_least 6.0 && IUSE+=" +pie +ssp +pch" |
77 |
# systemtap is a gentoo-specific switch: bug #654748 |
78 |
- tc_version_is_at_least 8.0 && IUSE+=" systemtap" |
79 |
+ tc_version_is_at_least 8.0 && |
80 |
+ IUSE+=" systemtap" TC_FEATURES+=(systemtap) |
81 |
fi |
82 |
|
83 |
SLOT="${GCC_CONFIG_VER}" |
84 |
@@ -178,20 +187,20 @@ if tc_version_is_at_least 4 ; then |
85 |
GMP_MPFR_DEPS=">=dev-libs/gmp-4.3.2:0= >=dev-libs/mpfr-2.4.2:0=" |
86 |
if tc_version_is_at_least 4.3 ; then |
87 |
RDEPEND+=" ${GMP_MPFR_DEPS}" |
88 |
- elif in_iuse fortran ; then |
89 |
+ elif tc_has_feature fortran ; then |
90 |
RDEPEND+=" fortran? ( ${GMP_MPFR_DEPS} )" |
91 |
fi |
92 |
fi |
93 |
|
94 |
tc_version_is_at_least 4.5 && RDEPEND+=" >=dev-libs/mpc-0.8.1:0=" |
95 |
|
96 |
-if in_iuse objc-gc ; then |
97 |
+if tc_has_feature objc-gc ; then |
98 |
if tc_version_is_at_least 7 ; then |
99 |
RDEPEND+=" objc-gc? ( >=dev-libs/boehm-gc-7.4.2 )" |
100 |
fi |
101 |
fi |
102 |
|
103 |
-if in_iuse graphite ; then |
104 |
+if tc_has_feature graphite ; then |
105 |
if tc_version_is_at_least 5.0 ; then |
106 |
RDEPEND+=" graphite? ( >=dev-libs/isl-0.14:0= )" |
107 |
elif tc_version_is_at_least 4.8 ; then |
108 |
@@ -212,7 +221,7 @@ DEPEND="${RDEPEND} |
109 |
>=sys-devel/autogen-5.5.4 |
110 |
)" |
111 |
|
112 |
-if in_iuse gcj ; then |
113 |
+if tc_has_feature gcj ; then |
114 |
GCJ_DEPS=">=media-libs/libart_lgpl-2.1" |
115 |
GCJ_GTK_DEPS=" |
116 |
x11-base/xorg-proto |
117 |
@@ -227,7 +236,7 @@ if in_iuse gcj ; then |
118 |
DEPEND+=" gcj? ( awt? ( ${GCJ_GTK_DEPS} ) ${GCJ_DEPS} )" |
119 |
fi |
120 |
|
121 |
-if in_iuse systemtap ; then |
122 |
+if tc_has_feature systemtap ; then |
123 |
# gcc needs sys/sdt.h headers on target |
124 |
DEPEND+=" systemtap? ( dev-util/systemtap )" |
125 |
fi |
126 |
@@ -380,7 +389,7 @@ get_gcc_src_uri() { |
127 |
[[ -n ${D_VER} ]] && \ |
128 |
GCC_SRC_URI+=" d? ( mirror://sourceforge/dgcc/gdc-${D_VER}-src.tar.bz2 )" |
129 |
|
130 |
- if in_iuse gcj ; then |
131 |
+ if tc_has_feature gcj ; then |
132 |
if tc_version_is_at_least 4.5 ; then |
133 |
GCC_SRC_URI+=" gcj? ( ftp://sourceware.org/pub/java/ecj-4.5.jar )" |
134 |
elif tc_version_is_at_least 4.3 ; then |
135 |
@@ -526,7 +535,12 @@ toolchain_src_prepare() { |
136 |
do_gcc_HTB_patches |
137 |
do_gcc_PIE_patches |
138 |
do_gcc_CYGWINPORTS_patches |
139 |
- epatch_user |
140 |
+ |
141 |
+ case ${EAPI:-0} in |
142 |
+ 5*) epatch_user;; |
143 |
+ 6) eapply_user ;; |
144 |
+ *) die "Update toolchain_src_prepare() for ${EAPI}." ;; |
145 |
+ esac |
146 |
|
147 |
if ( tc_version_is_at_least 4.8.2 || use_if_iuse hardened ) && ! use vanilla ; then |
148 |
make_gcc_hard |
149 |
@@ -1090,9 +1104,6 @@ toolchain_src_configure() { |
150 |
*-elf|*-eabi) |
151 |
confgcc+=( --with-newlib ) |
152 |
;; |
153 |
- *-musl*) |
154 |
- confgcc+=( --enable-__cxa_atexit ) |
155 |
- ;; |
156 |
*-gnu*) |
157 |
confgcc+=( |
158 |
--enable-__cxa_atexit |
159 |
@@ -1734,7 +1745,8 @@ gcc_do_make() { |
160 |
toolchain_src_test() { |
161 |
if use ${GCC_EBUILD_TEST_FLAG} ; then |
162 |
cd "${WORKDIR}"/build |
163 |
- emake -k check |
164 |
+ # enable verbose test run and result logging |
165 |
+ emake -k check RUNTESTFLAGS='-a -v' |
166 |
fi |
167 |
} |
168 |
|
169 |
@@ -2443,17 +2455,13 @@ hardened_gcc_is_stable() { |
170 |
if [[ $1 == "pie" ]] ; then |
171 |
if [[ ${CTARGET} == *-uclibc* ]] ; then |
172 |
tocheck=${PIE_UCLIBC_STABLE} |
173 |
- elif [[ ${CTARGET} == *-musl* ]] ; then |
174 |
- tocheck=${PIE_MUSL_STABLE} |
175 |
- elif [[ ${CTARGET} == *-gnu* ]] ; then |
176 |
+ else |
177 |
tocheck=${PIE_GLIBC_STABLE} |
178 |
fi |
179 |
elif [[ $1 == "ssp" ]] ; then |
180 |
if [[ ${CTARGET} == *-uclibc* ]] ; then |
181 |
tocheck=${SSP_UCLIBC_STABLE} |
182 |
- elif [[ ${CTARGET} == *-musl* ]] ; then |
183 |
- tocheck=${SSP_MUSL_STABLE} |
184 |
- elif [[ ${CTARGET} == *-gnu* ]] ; then |
185 |
+ elif [[ ${CTARGET} == *-gnu* ]] ; then |
186 |
tocheck=${SSP_STABLE} |
187 |
fi |
188 |
else |
189 |
|
190 |
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest |
191 |
index 506226f..66937be 100644 |
192 |
--- a/sys-devel/gcc/Manifest |
193 |
+++ b/sys-devel/gcc/Manifest |
194 |
@@ -11,4 +11,5 @@ DIST gcc-8.2.0-patches-1.6.tar.bz2 17138 BLAKE2B edbeba9c41972836de072955c0db514 |
195 |
DIST gcc-8.2.0-patches-1.7.tar.bz2 18166 BLAKE2B 2aff918d253d76c9b7d76b2d82e85c42f2ab8717e73831965b3a0fcc92b1ceacd7aa0b433dd0c180ad16906cfe059c020b256d01271ef95a6e56b08d41f4acfe SHA512 5110b610a4c9116ecd91490f66e570c09217c6b4d18bf46af5e1a51ed043df188ce313bdae6ba670b8800842387c98c1b83b7e1e0c396cbce71e6726d81f589c |
196 |
DIST gcc-8.2.0.tar.xz 63460876 BLAKE2B c5372b0bdfcd2729577dca287b294623b78c583491998404eb307768c573618bdaaedb7d9ae0e39ba41a62a14b9525dff0e3083285754b7f5bb9987ecf635185 SHA512 64898a165f67e136d802a92e7633bf1b06c85266027e52127ea025bf5fc2291b5e858288aac0bdba246e6cdf7c6ec88bc8e0e7f3f6f1985f4297710cafde56ed |
197 |
DIST gcc-8.3.0-patches-1.0.tar.bz2 12278 BLAKE2B 793465c5de0af850c7f3017b3011e68f3bd1664e6ce3500a3dc3003d37c03fe81857698957770a135eadd395a7767fa804d354ecdcdeb1d83623280ca569d4ec SHA512 0efadd2481713992807fed2683666f1094b3757674754601c079569f3ef70cd7aed3cefc9f815f4e59a21d37e4e940c122df714e16f3878a5f966450c4273669 |
198 |
+DIST gcc-8.3.0-patches-1.1.tar.bz2 14430 BLAKE2B c702fbdb18c3c952cdb9adead3a193c948d78a4cb4b041beaa51a06b907fd357bb10a2f8d47d55978ebb08590fd7c9a6ec3df8e7a007173e20a55d251d947c72 SHA512 9e2284f597bab6f78ca24ead358b1f50495aefc9e0a416ace24c94723db7b2fb82d48426876138d00c82bcaf9c2f8b4674885988448dcf16dee1b764face9af4 |
199 |
DIST gcc-8.3.0.tar.xz 63694700 BLAKE2B 71df2ff5bd6874d57519c2e9af6b22152c8c4d7fab906a5f427b41bc4e8e742127592a8684120d9d3c9ce6241439531850be08ec0a4f29dbfdee95435655fdca SHA512 1811337ae3add9680cec64968a2509d085b6dc5b6783fc1e8c295e3e47416196fd1a3ad8dfe7e10be2276b4f62c357659ce2902f239f60a8648548231b4b5802 |
200 |
|
201 |
diff --git a/sys-devel/gcc/gcc-8.3.0-r1.ebuild b/sys-devel/gcc/gcc-8.3.0-r1.ebuild |
202 |
new file mode 100644 |
203 |
index 0000000..115bd4f |
204 |
--- /dev/null |
205 |
+++ b/sys-devel/gcc/gcc-8.3.0-r1.ebuild |
206 |
@@ -0,0 +1,28 @@ |
207 |
+# Copyright 1999-2019 Gentoo Authors |
208 |
+# Distributed under the terms of the GNU General Public License v2 |
209 |
+ |
210 |
+EAPI="5" |
211 |
+ |
212 |
+PATCH_VER="1.1" |
213 |
+ |
214 |
+inherit toolchain |
215 |
+ |
216 |
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~x86" |
217 |
+ |
218 |
+RDEPEND="" |
219 |
+DEPEND="${RDEPEND} |
220 |
+ elibc_glibc? ( >=sys-libs/glibc-2.13 ) |
221 |
+ >=${CATEGORY}/binutils-2.20" |
222 |
+ |
223 |
+if [[ ${CATEGORY} != cross-* ]] ; then |
224 |
+ PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )" |
225 |
+fi |
226 |
+ |
227 |
+src_prepare() { |
228 |
+ toolchain_src_prepare |
229 |
+ |
230 |
+ if use elibc_musl || [[ ${CATEGORY} = cross-*-musl* ]]; then |
231 |
+ epatch "${FILESDIR}"/6.3.0/cpu_indicator.patch |
232 |
+ epatch "${FILESDIR}"/7.1.0/posix_memalign.patch |
233 |
+ fi |
234 |
+} |