1 |
commit: 54b01724ac24fd743f7fa38552dd9f94672c8c45 |
2 |
Author: stefson <herrtimson <AT> yahoo <DOT> de> |
3 |
AuthorDate: Thu Sep 22 06:28:47 2016 +0000 |
4 |
Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Sep 22 06:47:18 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=54b01724 |
7 |
|
8 |
sys-devel/gcc: bump to gcc-4.9.4-r100, fixes bug #583266 |
9 |
|
10 |
Signed-off-by: Anthony G. Basile <blueness <AT> gentoo.org> |
11 |
|
12 |
sys-devel/gcc/Manifest | 2 + |
13 |
sys-devel/gcc/files/gcc-4.9.3-pr68470.patch | 58 +++++++++++++++++++++++++ |
14 |
sys-devel/gcc/gcc-4.9.4-r100.ebuild | 67 +++++++++++++++++++++++++++++ |
15 |
3 files changed, 127 insertions(+) |
16 |
|
17 |
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest |
18 |
index c733638..8ab3bd7 100644 |
19 |
--- a/sys-devel/gcc/Manifest |
20 |
+++ b/sys-devel/gcc/Manifest |
21 |
@@ -13,6 +13,7 @@ AUX gcc-4.8.3-secure-plt.patch 1866 SHA256 65c60adf4a4fcf4707e8acc51e4062124b742 |
22 |
AUX gcc-4.8.5-posix_memalign.patch 1114 SHA256 87370f7854063bcf5f57bff931684c228370668ccf5ecd8e36ea9cf7c7455b16 SHA512 27e1a29e039dcc4c5190416702d1d95d48fbaeaac6440d81584989fe71a12f7bf5a484241ced9aa82b9f050eb3be8786d9584ba5299d304e7ed30506755880bc WHIRLPOOL e5bfe16163580f1fba8d80fa80f1aed6c3d4f22e32e3eaf0234181c214b7885c40f20d9e794d76225ca2449c6c138f051ed14fdeaa7132f05c6ba6c786ada7e9 |
23 |
AUX gcc-4.9.3-musl-linker-path.patch 3556 SHA256 22228421551806b81a1d3aff438eecf4202f64844141863fb8e665ef3b5eb5fb SHA512 cf58b49311c1a7a4cbb04a2ffeccdaa278872512e67b72ebe292fa155f419dc6025d158b67d58265de67edbd18c6af67f28c6f6806b581a8fdb9015ad2ee0aa3 WHIRLPOOL c3d5e9c7fc64cd8a8bacca714da5881ee8d94585e0064f5e3965b20bfe23c48bbe8b0bc886cf291d616e51786e80d032c19bdce59a15fdb310546b61a0ab0886 |
24 |
AUX gcc-4.9.3-musl-res_state.patch 699 SHA256 822990f5075b65dc2d1c03722daa5a215301f9ec2c4323c10e80fff2fbd04e71 SHA512 93f59d16e026672051b5a65110f78ace0c91a4f1365b861e22741fbc42b92c4490e55068ae845bbcbb5af9221fb874e0b855a763189528a646e757b133117e28 WHIRLPOOL 98438e82aa8d387b5a96bc58d3a137766661cc53d7396165338448394c14996687626f46e9c93bcb6b2a2e422b97445f5097489616a0aff619cca01c8243a56a |
25 |
+AUX gcc-4.9.3-pr68470.patch 2053 SHA256 9ca76f063735fb87ee01aa9321f714a04db2dd394381c5a659f7081eec9b45e3 SHA512 5950b4782034add9ded16ab4b6d7b2d5e2bbda1a3ae7f465d50c6a95469359d287126c1a57ac9d8c6ea2c61d7b18ff880b2ac2b25eec48f038452f87f0e24393 WHIRLPOOL f216b046bfe55003af384b573ca0be977d310064f31fb9d8cc15badd6e4b4922b761004c02b44fe04460ece1f82d55eb5c35f09c006015b97cb7968347877dcf |
26 |
AUX gcc-4.9.3-secure-plt.patch 1478 SHA256 b9435e19c3193e872bfdce8f635755655cf6e88889c57d21c7afa118d7068e95 SHA512 95f04716bad41fe3f290d44d21d1dad35548b801b56de331acac8bdf56019583a04681418a805a0b4dbfe19e9b51cecceff984cea257be58d3e7780c6cfc58a5 WHIRLPOOL 8af1f0cfaf0e8197754d841d1cd2b25615968cc503344574cd9ec6b644804e029687a4ded18f6e1efd584c8c99277eceb6f1012c6519a2747bddc400d8909c1e |
27 |
AUX gcc-4.9.3-tree-vect-data-refs-correctness.patch 315 SHA256 904ae5ce2ecd5a2f7786c54d148a7562d0bb6f51fe60761038c2f57b8cf70356 SHA512 88d93c061ef72035522270ab60c8c2ec04e2fa2d69763f45b9eab0c37b19c23920484358d7556ad885775071ac04cf94684a2cd8ed93418d5f0c54ac3a045c9d WHIRLPOOL 2b9c281401abc111d53467c51b6238c6f4c430a73d8833f161766f973138ffe3b4fa1ffe5cc5813b5e2f8a81dee2cdcaaff2b9a8f8e13089f993f3ab3d69ccbd |
28 |
AUX gcc-6.1.0-musl-cpu.patch 1277 SHA256 6c7a28ccc5edc226fc6f3f6b9b0562fb873a9c88dfb25b608b5acd827f239c08 SHA512 b11c5933c02dda63b40273f6cee394d52c68265931817cfeea3645e971b9c822cc841242a7c74fcd07729171bc0723c2af0db21743bf92dd3dba3430ee6627a1 WHIRLPOOL e0f6068a8028052f88cef840026baa459ae77a43d9144258fe7739a80b5dade852a2aa640feb5bce51dd54d6d35e0c8df99a8c9bdc140f9ae473f16ffb2e9af7 |
29 |
@@ -63,6 +64,7 @@ EBUILD gcc-4.8.5-r99.ebuild 2139 SHA256 0b762e2fb8c2bf92488b598c01977b07a3786afe |
30 |
EBUILD gcc-4.8.5-r999.ebuild 2185 SHA256 7b8b261c0d3ea2e34a2f099b4f0a23a5bfd61e814dead44aeb4e45071be2c3f1 SHA512 e8f6e8bba4fd7818c30a555adcf25acbe818919c98204f91e27be04566aa267b9394547045e05e5486437853ceb1b75229d86089f69409a626a9e81e363c12db WHIRLPOOL 872e4f0e40e2b9a0a51002c64e682eca1990c2b968c8917b9a1a7c309075a048ceffd7925bf7f67cb3f304badbf29ee5e94772f5a86503e1e5e42fa7682fb87e |
31 |
EBUILD gcc-4.9.3-r99.ebuild 2195 SHA256 3f5be66ffc6fb064e14a24cb9005d1835685573f245ed1aa5143c5f5e7ba1a90 SHA512 c49043c69947bc37ab31142f51060ebc8d922bb13d4aae17957c60bb45e2494cba4724e8af3ac2f0d4f09ca4b3676645657a08b4893ca01175917bc07ce827d9 WHIRLPOOL 9b1bec2a6fe2ae003a94ba73bcf4b207db0f5a2988288820581508de7649d3e46a163852514755f49051be00fc43846844cd24cd1a8fe2462315ddeb53faf0a6 |
32 |
EBUILD gcc-4.9.3-r999.ebuild 1794 SHA256 514b9f6cddb5e6a43c53f866aa501812319bfccf7fb7713316563d55cb139aff SHA512 c7f4aad21658d6acb99f14b3b51707a74387206b9fc3629d962c755a7eb8a963b3df844ba60172305fc2e753fc7178d4723f02a487aeae643c85ff00062b4bd3 WHIRLPOOL c6372f1014c5b8d22023f04b7223db4ae5d898f450f3d5cf286ccd82553f916978fba8d0910dc72fd5cdd1d92ecce9749597b09e252a58ff898d3616221af685 |
33 |
+EBUILD gcc-4.9.4-r100.ebuild 2320 SHA256 62a7b580317230c294b8103b2acbfb5ca49afdaf1fd6f2fedbb778a02be65d13 SHA512 fcbc99e45c09a77a4869328df5136c9530297ea810baad10d28faaaab5ec15dcde2b105fe3b30a5190b86740b7bd962a302d9b4c8e65551f226fb2fd00eb4c2e WHIRLPOOL 6b73fa54aa7edc1e44a2b1bbb76f13e8135a21301a7203343e226b2112437749e12f5503a71f3cacc221ebda2d99c8db45b882d1cd014b8731acf3433f5c7c7b |
34 |
EBUILD gcc-4.9.4-r99.ebuild 2268 SHA256 fdb60343669f5a03820920f9ee06d54e42def02475613f3c0221e4234f7cfcc6 SHA512 3b8df38d0600b5e006293e69265f3e9603dab01e40ba5391fc8e517d185388c3fcbcff571a7babb729e19a86ea37fca5b45f800fbf856c4d2c01d3506c5c32b5 WHIRLPOOL 2ae8860e5106d4e4b3680a7a885bdb80e5c5381e9cd608a6f55f6fcb69c9407b675ea2d18a2e8960be4408dea35228c5bc80f14d27a68e1d53f2e4fbfefed0fd |
35 |
EBUILD gcc-6.1.0.ebuild 1076 SHA256 6d5acd2030e949af48922a3da83541c0720037212c71c1867e5de8373e8bc0b0 SHA512 7f4c657c930a7cb0cfdd34ff8fa811eb2e62834ed0ec094db6bbc5123ea8c86b72df1cf32d6660c0ef2dc3863276081665b95af0a1c47a1ba14802a5559e776d WHIRLPOOL 73f9a4277585013050291df58b6d0c7db7fa65baed51c0a1b9462c212281de9d98d50c63be9d703fd45efb61e596fb74861aa41e17f4ac1917adb4f44961c18a |
36 |
MISC metadata.xml 2039 SHA256 b200834baf1ac8adf966540ee7e50dbf1397248f08eeff35a8bde6bb16dbcc50 SHA512 b8fe281c88017b4d5d2ac05ea4e074d740b3943bc0d4cd361ec4f161f2549fb6401a2fa7881c06a4eae33ffd9755b6ebc4fa608654ec04838bff49ff22ee74a8 WHIRLPOOL e063f7657a00a1e675a57000fed2fac1c05e986488f3a705c95909ac7a2e74ca8f97c6fb8bfffdb81388a967228a78adbcfa93b166d4095aade5875aaf350fa0 |
37 |
|
38 |
diff --git a/sys-devel/gcc/files/gcc-4.9.3-pr68470.patch b/sys-devel/gcc/files/gcc-4.9.3-pr68470.patch |
39 |
new file mode 100644 |
40 |
index 0000000..f1a7464 |
41 |
--- /dev/null |
42 |
+++ b/sys-devel/gcc/files/gcc-4.9.3-pr68470.patch |
43 |
@@ -0,0 +1,58 @@ |
44 |
+diff --git a/gcc-4.9.3.orig/gcc/ipa-split.c b/gcc-4.9.3/gcc/ipa-split.c |
45 |
+index 0d1495d..688c954 100644 |
46 |
+--- a/gcc-4.9.3.orig/gcc/ipa-split.c |
47 |
++++ b/gcc-4.9.3/gcc/ipa-split.c |
48 |
+@@ -1122,7 +1122,6 @@ split_function (struct split_point *split_point) |
49 |
+ edge e; |
50 |
+ edge_iterator ei; |
51 |
+ tree retval = NULL, real_retval = NULL; |
52 |
+- bool split_part_return_p = false; |
53 |
+ gimple last_stmt = NULL; |
54 |
+ unsigned int i; |
55 |
+ tree arg, ddef; |
56 |
+@@ -1162,12 +1161,28 @@ split_function (struct split_point *split_point) |
57 |
+ args_to_pass.safe_push (arg); |
58 |
+ } |
59 |
+ |
60 |
+- /* See if the split function will return. */ |
61 |
++ /* See if the split function or the main part will return. */ |
62 |
++ bool main_part_return_p = false; |
63 |
++ bool split_part_return_p = false; |
64 |
+ FOR_EACH_EDGE (e, ei, return_bb->preds) |
65 |
+- if (bitmap_bit_p (split_point->split_bbs, e->src->index)) |
66 |
+- break; |
67 |
+- if (e) |
68 |
+- split_part_return_p = true; |
69 |
++ { |
70 |
++ if (bitmap_bit_p (split_point->split_bbs, e->src->index)) |
71 |
++ split_part_return_p = true; |
72 |
++ else |
73 |
++ main_part_return_p = true; |
74 |
++ } |
75 |
++ /* The main part also returns if we we split on a fallthru edge |
76 |
++ and the split part returns. */ |
77 |
++ if (split_part_return_p) |
78 |
++ FOR_EACH_EDGE (e, ei, split_point->entry_bb->preds) |
79 |
++ { |
80 |
++ if (! bitmap_bit_p (split_point->split_bbs, e->src->index) |
81 |
++ && single_succ_p (e->src)) |
82 |
++ { |
83 |
++ main_part_return_p = true; |
84 |
++ break; |
85 |
++ } |
86 |
++ } |
87 |
+ |
88 |
+ /* Add return block to what will become the split function. |
89 |
+ We do not return; no return block is needed. */ |
90 |
+@@ -1212,6 +1227,11 @@ split_function (struct split_point *split_point) |
91 |
+ else |
92 |
+ bitmap_set_bit (split_point->split_bbs, return_bb->index); |
93 |
+ |
94 |
++ /* If the main part doesn't return pretend the return block wasn't |
95 |
++ found for all of the following. */ |
96 |
++ if (! main_part_return_p) |
97 |
++ return_bb = EXIT_BLOCK_PTR_FOR_FN (cfun); |
98 |
++ |
99 |
+ /* If RETURN_BB has virtual operand PHIs, they must be removed and the |
100 |
+ virtual operand marked for renaming as we change the CFG in a way that |
101 |
+ tree-inline is not able to compensate for. |
102 |
|
103 |
diff --git a/sys-devel/gcc/gcc-4.9.4-r100.ebuild b/sys-devel/gcc/gcc-4.9.4-r100.ebuild |
104 |
new file mode 100644 |
105 |
index 0000000..902eceb |
106 |
--- /dev/null |
107 |
+++ b/sys-devel/gcc/gcc-4.9.4-r100.ebuild |
108 |
@@ -0,0 +1,67 @@ |
109 |
+# Copyright 1999-2016 Gentoo Foundation |
110 |
+# Distributed under the terms of the GNU General Public License v2 |
111 |
+# $Id$ |
112 |
+ |
113 |
+EAPI="5" |
114 |
+ |
115 |
+PATCH_VER="1.0" |
116 |
+UCLIBC_VER="1.0" |
117 |
+ |
118 |
+# Hardened gcc 4 stuff |
119 |
+PIE_VER="0.6.4" |
120 |
+SPECS_VER="0.2.0" |
121 |
+SPECS_GCC_VER="4.4.3" |
122 |
+# arch/libc configurations known to be stable with {PIE,SSP}-by-default |
123 |
+PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64" |
124 |
+PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64" |
125 |
+SSP_STABLE="amd64 x86 mips ppc ppc64 arm" |
126 |
+# uclibc need tls and nptl support for SSP support |
127 |
+# uclibc need to be >= 0.9.33 |
128 |
+SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm" |
129 |
+PIE_MUSL_STABLE="amd64 arm ppc mips x86" |
130 |
+SSP_MUSL_STABLE="amd64 arm ppc mips" |
131 |
+#end Hardened stuff |
132 |
+ |
133 |
+inherit eutils toolchain |
134 |
+ |
135 |
+KEYWORDS="~amd64 ~arm ~mips ~x86" |
136 |
+ |
137 |
+RDEPEND="" |
138 |
+DEPEND="${RDEPEND} |
139 |
+ elibc_glibc? ( >=sys-libs/glibc-2.8 ) |
140 |
+ >=${CATEGORY}/binutils-2.20" |
141 |
+ |
142 |
+if [[ ${CATEGORY} != cross-* ]] ; then |
143 |
+ PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )" |
144 |
+fi |
145 |
+ |
146 |
+src_prepare() { |
147 |
+ if has_version '<sys-libs/glibc-2.12' ; then |
148 |
+ ewarn "Your host glibc is too old; disabling automatic fortify." |
149 |
+ ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315" |
150 |
+ EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch" |
151 |
+ fi |
152 |
+ |
153 |
+ toolchain_src_prepare |
154 |
+ |
155 |
+ if use elibc_musl || [[ ${CATEGORY} = cross-*-musl ]]; then |
156 |
+ cd "${S}" |
157 |
+ sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in |
158 |
+ mv libstdc\+\+-v3/config/os/gnu-linux libstdc\+\+-v3/config/os/gnu-linux.org |
159 |
+ cp -r libstdc\+\+-v3/config/os/generic libstdc\+\+-v3/config/os/gnu-linux |
160 |
+ cp libstdc++-v3/config/os/gnu-linux.org/arm-eabi-extra.ver libstdc++-v3/config/os/gnu-linux/ |
161 |
+ mv libitm/config/linux/x86 libitm/config/linux/x86_glibc |
162 |
+ cp -r libitm/config/generic libitm/config/linux/x86 |
163 |
+ epatch "${FILESDIR}"/${PN}-4.9.3-musl-linker-path.patch |
164 |
+ epatch "${FILESDIR}"/${PN}-4.9.3-secure-plt.patch |
165 |
+ epatch "${FILESDIR}"/${PN}-4.9.3-musl-res_state.patch |
166 |
+ epatch "${FILESDIR}"/${PN}-4.8.3-musl-fix-libc5-assumption.patch |
167 |
+ epatch "${FILESDIR}"/${PN}-4.8.5-posix_memalign.patch |
168 |
+ epatch "${FILESDIR}"/${PN}-4.9.3-tree-vect-data-refs-correctness.patch |
169 |
+ epatch "${FILESDIR}"/${PN}-4.9.3-pr68470.patch |
170 |
+ fi |
171 |
+ |
172 |
+ use vanilla && return 0 |
173 |
+ #Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs. |
174 |
+ [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env-r1.patch |
175 |
+} |