# ChangeLog for sys-devel/binutils-apple
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils-apple/ChangeLog,v 1.38 2015/01/31 02:33:23 patrick Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils-apple/ChangeLog,v 1.39 2015/02/03 21:12:23 grobian Exp $
+
+*binutils-apple-4.2-r1 (03 Feb 2015)
+*binutils-apple-4.3-r1 (03 Feb 2015)
+
+ 03 Feb 2015; Fabian Groffen <grobian@gentoo.org>
+ +binutils-apple-4.2-r1.ebuild, +binutils-apple-4.3-r1.ebuild,
+ +files/binutils-apple-4.2-globals-extern.patch, +files/ld64-127.2-Makefile,
+ +files/ld64-127.2-extraneous-headers.patch,
+ +files/ld64-127.2-thread_state.patch, +files/ld64-128.2-1010.patch,
+ +files/ld64-128.2-Makefile-2, -files/cctools-839-lto.patch:
+ Add fixed older versions for PPC and comparisons by Michael Weiser, bug
+ #538384
31 Jan 2015; Patrick Lauer <patrick@gentoo.org> binutils-apple-3.1.2.ebuild,
binutils-apple-3.2.6.ebuild, binutils-apple-3.2.ebuild,
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
AUX Makefile 246 SHA256 eadeb8c0339d90728868200ce7015fa643564e5f024db5ec8b602ec8318b3716 SHA512 f38baeb942ad678a02191d72d70f54303a7f2229abf702f328ff6381ce45a63eab214bc9ad72159dd7c6373aa2a2fab52b99794fb37f21101efe6f4fd8f548f7 WHIRLPOOL 1d04f586cbce3fa515651b8f5943230a7d1906614d138e31961016eaa275cca91a22115b6a6e93a9b2940a0fdd238e39453b8439c5344a9b704753eaab90d6cb
AUX binutils-apple-3.1.1-as-dir.patch 1531 SHA256 767b44fd052acdea83a55e80c6fccb413ba6044895414eb2f54086a09d1561ce SHA512 6a9c3749f8201e725827a71d5da5b311ab44c20ee11c635a7d2bc440365b8217a249e76531fc4622bb32467eb9eeee882243ced9adea597bcda57e3adac75ec0 WHIRLPOOL 64be761f779bd3ddb9f518455cee7ad0bf23de0aa7b645fcba8d73364363cfead1cf81c462076ed23d7b37aa85a3fab461b8eb8446d48f3ba210b63fbb533aa0
AUX binutils-apple-3.1.1-as.patch 2659 SHA256 56bacc3100fc2804d09368042f9e0389729762f84d3d5f674a0b43c76512286d SHA512 54cf9b7472e54ca1a5d45b7864f5593e59d0bf0a7a01f3f80ca7c1a73ab11bae14856e09c566de287eea516c09c0608ecf7f07d8890e5cd3c0ff5f2fba092c3a WHIRLPOOL 8aa3668860da12d1103a8acf1591c7a8d5ebc8a788ac263bfeec78cc44fc959ab52b5b2c7fc94551a6fc9716d8a38353c9c51716b26947ee0dcdc78e89f8a8f9
AUX binutils-apple-4.0-as.patch 2738 SHA256 b068f2a8bff9fb8f7dd92eb64c9587c9517ef51e682211f81b57e69b7e25fdef SHA512 7cc567e7ce6da8224c2a3d595e2c4080637ef92f4c85005c581ea7d69aba3872ed4956b5ff9ac6309d78de7d101a45bb9188925fd477c4840ce38b94126e732e WHIRLPOOL 5172ed18a33f5f7bbe282fa9f5c7c587cec49809371cf1149df487b5561e5d291a6b4f091c4355932aa3dc4a417ce8b95706ac9c377885f2fd077a5e2ccc29f7
AUX binutils-apple-4.0-no-oss-dir.patch 604 SHA256 fda851a89d86ecc4c90850b4d744daae478e2e55f83522d51a50c2a28f09223f SHA512 399a60fd1e9735d53e2cb48a234799b5b28bf5c82e149eb5a4f34eb2c8e84f8d71e9fa0e310e6c61053c6a3dbec052d8f1318c0544bd905fb7821c7e95c910ec WHIRLPOOL e59a6c50e0a833d915f5e4defe52ff0bb5bd696f2a463ea37e183ad8b5b765bde7a07e7f9c686c79af79a288a3ccf2a0bead3e505122b081eda37874eb4f39ff
AUX binutils-apple-4.2-as-dir.patch 1089 SHA256 d964d09b75265af6cc84bb9aa8e772c0d1655fc8d7e5ddef7155a4ef019be26a SHA512 c7fcd1ddd7052f2c4235b33cbaf793bcd5dbbc892005c852bafda32f5e1a6744f45ea7991ca13a76514798bc36222570bfcfde5cd3db60c9e7e03514593fa52e WHIRLPOOL 2e9b8a1da6f947a150f291dbd0b96679c782fa57a46cc65b55c6aa5c80c866842187566a05f695d4a9c402ddd069604bd479668c775fde8ccf76fd0130716ab5
+AUX binutils-apple-4.2-globals-extern.patch 1207 SHA256 00b4aa5b2ddbd999f54ba7c25b08c948814823fa2ecc39f3cd7ae6cec791999c SHA512 fa09bc1e1de6e78970f983905cead92df861e073413bc49bc3310bc66617ec92468aa9e2090ea0442db98afa61b6f82a1085a905ea0e33d1ed20ac2f0ed9de22 WHIRLPOOL 52cf5226ad6eec63e347855a9894d4296cc0031f2762ac8e55a21814077ab89458c0d53a2917222192c3ad7ef17cc913263f7a2e55e58f4009c468fe88b8f140
AUX binutils-apple-4.2-lto.patch 859 SHA256 c9f3e1b28740454c35034dc0ebd135fc7410f4799f0e077dafb0456c9c3acc4c SHA512 d0459a939b0ab68edb92b81a1711e1806f52e5989d8a9cd780b77c8df5ac055ae57ef74d2c43fa4c49d10f3a92464f782d93c73765e27dfe786f718c0aab135f WHIRLPOOL 46d92be5b8ebfc5bcfb8115d697483a15006cc0f9ffecf43645be40b0eb17d850530f253af1227d1587376160b75896d4803e1bfde39b7e914259f7fad3a1d7f
AUX binutils-apple-4.5-as.patch 2874 SHA256 137ebd95b664fdc9e57b05ab0da07890d8283ae856a6c1227a2f1c3e06352007 SHA512 9520e820ef9a66ddf4ab7c7c5825bb50c141d6298ad67bfb2609ba82bcf4aca63b0b477ab908b540734fdadb41478e8e2985588ba9e98d95ba92daf4e3ce1290 WHIRLPOOL 14d7f32372f5bc9173ed50d82da9e5eaaea480c3957e9180a65d510442da5baa24857125cb60b85db382f75a756824a35d11b006d8a79b38b4d4ab92048cfdc5
AUX binutils-apple-5.1-as-dir.patch 1244 SHA256 20538a6f6b0352732e38b4768e3c809df7a16999544d9a3175d724472a62eaaa SHA512 cd03ccd78b27f0415315fd4606070ac4944ac4cc8f27835ffc43ecd68c1b61ee129fb8c24c86302585305a0be6f57501650f6981d92420763b2094bcffa1c1fe WHIRLPOOL e42eb9824967fa9281260ab798d01657c296cd78d81e63fceab3be8d332f1bfe1dfb6e9f77bd18e735924b6c084ed9159bcbe08e6d4ccafc68dc49b796049278
AUX binutils-apple-5.1-ranlib.patch 498 SHA256 321ac2af5c55950bd4704c95952fa9fc8a727ce1cc440f09cd9ec8bdb8f7c895 SHA512 b65f779383402b5f348622bc2acc939dcc42f499a907bf57570dbd51468e81274e777f82bdcbec51f7c17546ab22d5be3cc59a218bc28370a6259dc89c446e94 WHIRLPOOL b073d29d922b266d8eca28c5ac40fc99e04e64cb61c0d78ebd9a3b72d25ece12c3e4798262f0bb9901b7a8c688adce1aaff76c0728ba533a4d95e8210aa251ae
AUX binutils-apple-5.1-strnlen.patch 1693 SHA256 a45d434699016fbb2763838e4aebd75528b74255ff49427f574da99b842652a3 SHA512 1199cd119b33d3c7f7b106bf40319785fdaa8dbf4f5ed6d59822e9e0b8a1a6c475f807e9c1abeee5bbfaf23023a9c56adb3825b0caf2478981fc907803c99b75 WHIRLPOOL 79076fa85242d995aa217ff12c6a70bba3c9169971b9f114627bf49cee4f47340a733261a47c535749b073e11ba817a1198c934606c979a5099a7fd4aababb5f
AUX cctools-839-intel-retf.patch 772 SHA256 8c8febf783f079beb33f770051491e0b8331ed466505b336cf80a7818da1a875 SHA512 d8fe1cfbe2b92ce2b6e52d5a9119459f4617fb82d0f28fdf6c4cdb7680342775f4c1b9499a7d125009501e56c4b272c4b8c8a0c46f64937479be6af7bb1bbdce WHIRLPOOL 93afe6e24365c401235fb97c7bba927eaf8f67859a36d7992ad6b8bb3ecf658794d68055e5640f6d5bec014e4b2f3c83942543dfe1c4ec1c6c5232562a6906f6
-AUX cctools-839-lto.patch 972 SHA256 d5aaa6aae2546aa5cd4527989056e8b154baf8126d28fc48e3eb10f4228e5d2f SHA512 4ad895d7dca6696db2800bb9c8d0e75114132f078e501459cbfebf077361e842161f929299a44926a5cfd43c02e7093d345579d7cf9316c1fbca5d5e5644fd72 WHIRLPOOL f54024e0e0bedfa76953dd3859e2a90414715514afe4019745df2e310169b2483a9f3acdcb25c90abf9c073fe7a7dc655812bf942bd515b50eb91431a5049326
AUX ld64-123.2-Makefile 1484 SHA256 7499f48f3a1c72e3f0483c3c8bc03dcd6082440bee2bc0017ae63740d37a5147 SHA512 1c042b96e3372628ba7ca59ca7b1bb008f9b2d4d9af35f2fcf8d1c494905b3c6f7564319d10aba9b5d702dab563d3c7f4eef0f6f125375aff9747d16c6bfec1e WHIRLPOOL ba8b397277f340975e609ace99d2bde3b990dbda45bd06203be34bc20850d804c365ad2fad026a550a4dd4c2ed6a87dc2d2a573c363c5240be1c7b6cca238156
AUX ld64-123.2-darwin8-no-mlong-branch-warning.patch 790 SHA256 d3d5750998000a5fe296efff3298c0096ebbd9118c637a67b070f93acadea4ef SHA512 045c61d1174d1ddf459523907e770b548353ae7e790a96da9fb117293472934d8d4d9b7a03e4f3941cf843df98fda24dc1af9cc9006fdc38e0fe8f67e32c3c85 WHIRLPOOL f502680734f5352d3619be8b1fd4daa1dff126f06088ec9b92c614af289d6bbd852c07d6a47c01a557c7e98fccc980e36096557d277a89f55421f142ed6b3c7e
AUX ld64-123.2-debug-backtrace.patch 338 SHA256 26b16aa555bb15dcb6d799785aed0d240e50cbe0a77968a2a4fe92623bd105ab SHA512 bd08dbe2889900f8be8bcb322f7f661e2ef54460d19d05a786da93df8afb5e35dbffd9d8e80bfe3aeeb6d3a961d032b9c599e87afb1461a57530551859e08091 WHIRLPOOL 019adbf9501413591569bcf9a2bb2aed1fb199825e799e57ce6e3d241a5fc4a435ce688276881afc5ec4bf932ca2b0076903a6f8dd5484d9ba3459c18c71a2f9
AUX ld64-123.2.1-lto.patch 6387 SHA256 5a8c0d0673a48db3cbb08c8234763bdb2149294cebc7707bf394461a73d9ae65 SHA512 1b21315913ce5107c28216412626595f01f5a9a85a6998b62be51424ea23b2b5ffe52036b44a1f5dac718f015899fe6a78a0f29f7e06a5d94f361164bcc88bf8 WHIRLPOOL 6e7fc637ac635045de626c43de7909f76bbd657625c5bbd9086f3acfe2f3cafd80d7bccc93494ce0411aedcf916093c836dc10b35226bb724bc1d6582d4f94ed
+AUX ld64-127.2-Makefile 1611 SHA256 37a39ac9248bb351872a9450a9d48ebe13cf9409474fe44252dfc6fc285a32f7 SHA512 3a8c151e94bbff8b337788d78db3b34aa35d6ee4fc72b107222c435b563871a001bf4c0385c906c85f8f4b15fab10a9838ffba11635238792d8e1a2d2686774e WHIRLPOOL 651c851e2f12ac7ddd3e74dad4f9e4e1ea01fb8eaaf164708a198851e9c2ce3d415dfa73b3b3a7ce7dbb9d782f7582500a2374dd1668ac3387bdae765a7a988d
+AUX ld64-127.2-extraneous-headers.patch 450 SHA256 b79a899d4fff6089d864e4ca2f3233aa74decbfd80301ed28eb8152bb97cabaf SHA512 10661bef55647ac45a6de8bb29ea37e3f12ac6fefc60e6415eac09c7722c413bf5d87a47f959aec955044331e54a35a0bd889fbb2aaefacd81cc9197f2d97baa WHIRLPOOL 85194d76fc704729ae869d595389e758ab4999a76dd1fd3fbda869872d4020e9b8c5cb94f09bede953e5f0814de8285aabad6875395779a8eba81abe1e8f7899
AUX ld64-127.2-lto.patch 5719 SHA256 20c4b5ffeaa052337220f6276548fbdf16071860c5cdc67b8697a1f41f130155 SHA512 02c320f1d2c2282de201b163bf7907ff7835d1269aece9b12a4fc6e2e729a45331dea7c7a89457a359813f151ce5b3cfaf13424ed6bc96cb2fbfefe7761f4abd WHIRLPOOL 8ec3a721a464fcda6b11983b8c74cd824caba76aaaa2306bdca67114e11c13f9b0d6282fc79a25603b10ec014eda171d6c3180996c89b4b6e07b7d1aa023bba2
AUX ld64-127.2-ppc-range-warning.patch 960 SHA256 1d99f4704580bd6f38cf205465ec19da09cc0e227167d72c2f595e905a9b0cac SHA512 6711c988bcd33542ea135f8ea51c75feb85071beea3ed19edb0a191213333f09d92245af4524cbb31209572fcc096d04771900f01e684545b6ae8b1f49467ea5 WHIRLPOOL 4acd8134fd4b4790941d3254d05a4ea4fcc7d62911d897cc437643839f40d6cddda69998765737db2afc267d0a0e8d6a23ef4a87fe97ca539b888474843c7734
+AUX ld64-127.2-thread_state.patch 466 SHA256 b21ce5c386889781fc4c443d625a7f65f296e67f2c0c609acb1bb7ab061fc256 SHA512 5c368c5a6fc141f148bd16977b311280f2f73b42dfa94ee6cfa68ae86bd83cf248db7889ca1079730b0c5598a16e4e2b0c3fe9e0b719881e68d720da277b0dfc WHIRLPOOL 32311ca63b4b3c12b09254b6253d567214a7c6487105340d957b1d90c79eb953f464befcd342ad2bdc7ddb8cc53b11f5b7f966456c918a343b265ba5615d1a44
+AUX ld64-128.2-1010.patch 748 SHA256 b060e0aed91830ac7fde8f707e5b0d14efbf08d59069d44dedd903d559c3c915 SHA512 bc5dd17389d26f69f063d814ac6e85fd075308d7a593d71aa1fce1c568169684adf1caa44f2bfe33298a399d430c6476195a223b7b7b71900a1ec6c878d7e389 WHIRLPOOL b5e6325034e5b577c09e8b9223efc5da9ab8463fe14ade14e4872836aa1457489450a33e910dabacd351ae4e3e0733865e4a0dc07427c58c633c4239c205d2fe
AUX ld64-128.2-Makefile 1479 SHA256 cee5859f106bbdc2f7621af94182a9254e55b83b5937d7932f0bf6338b19bb27 SHA512 1cb10fee52dcf35fb1cfccb25587d2653054019bd94df169107efae8b5b0b7be48a4c251ebbda91048f09157b0d7fc5c66966c4a7b41303afe43a17374ba3695 WHIRLPOOL 6cbce589abf993bc944fed345d721ae431f7e3eb6f6a288ffa1ce6345d0339fb6d819c18f7083a4a6f56eee44a58abd218ea740595425727e6658d440030333b
+AUX ld64-128.2-Makefile-2 1606 SHA256 dbeaba67d1c2a2c90657b9de362fd98c7dd290848bb915494b262aab23922ee7 SHA512 d91dc9d272237aa3e8324c586acfeebd4c69815f511d0d3ef763fd3b2d8994ffe28aae13151c0e3d479c7c530c995462f83941dc1e579852eb8f247c9fe54302 WHIRLPOOL 6dc7778b4000a9c079a2d01e5b8d3bd4133b90e49f434f1062caaeb8f1a01106e5c5b464dad6ee58ec0c89febf6a457a416a9dcce5f3ec8edd65c823d23dd8f8
AUX ld64-128.2-stdlib.patch 327 SHA256 265e0cea2fc6f922d7930568500cce0dd22594b35dd8d4c0e19d80fbe12f4800 SHA512 0a14955350232759a072f62d9cb8b253724a6256a483a590d0a6e538c9f185359f21b8d95d2b4f6109e9767c4431303ad35dd75a95a0860543ccf9786c0bbecd WHIRLPOOL cf127258aee4b194d94773e0cc6bd9e099ebe54340ecf43b0bdc9303df1388dd75233bab5e6ad7c1277a914491e1536e4e903a0c95407f2e788a6d22340c3c3b
AUX ld64-136-Makefile 1498 SHA256 169cbef0725c3606f816c92eae70c494396e99290bb333cea2a0f2fad0958f26 SHA512 9ae8dd09f9da4f793965e7b60e996924bea7ac57af3684d8b70fd765215f8853f36a2a16850d0821eb7a8cda136259b78595a0abbd63f1488ba0464b3b8c5a78 WHIRLPOOL 8cc95c3b0b927501581fc540458d4a2f4061b797439fd8db20b522174a0896188eed5f9464de165602b4de34be31a66c73dc9e97e7ad03f3fcbc14cb3e5ebd11
AUX ld64-136-compile_stubs.h 1633 SHA256 61abf5d0f806313f458b5106cc3a9fbad8998857d39dc5c291104ae76c55313a SHA512 e2dd58331ca503115f1c6a9c9958159ba902894318a7f672e58400aae1a4f1ee0736b7da679e493a94395ac9701d7c614a6aed28ae5482d019e264c0fa514000 WHIRLPOOL d64c297d00c7f54304fcfc23c246f33bcdcc441ab04e838cebf6a41c604daf71c06eb6c62daef36e35339f5dffd18e553dfec703fe75543f77ca755858d4aae4
EBUILD binutils-apple-3.1.2.ebuild 5289 SHA256 0a31bf755b37ed52a419835d9eec8d30f04b144636056099da8c5f6654b002ff SHA512 193e7de4616757bc1ad563db10fe0258946f46cedd9e6d373f43e734f2f8c95c55d454822117c65d2475b94cc406d3376279ae96920a414a7f1b2f8369cd324a WHIRLPOOL f7cd96e476d1f77c6acfe8679c18ff3c21744dcf9629bb5c8c3ef4bbe23395930e25f66c6204e64231b1bee5efc0a842eab5422eb695952ac7578d6c5bdafb9d
EBUILD binutils-apple-3.2.6.ebuild 6670 SHA256 ca78066436229a98e1e41086f6a1748bce194c34ea14b2ce1f6313a6f13f46f1 SHA512 835b719a1a94028672c29d2fa9357a7691f4011d542a2b9d5ffaed50e36d43db36ddaa5a856d681af441a13129799c11bd638e5bb099b21e1146871cbc5342b6 WHIRLPOOL 8dc06f087bb3ca607a821fc488a658560d1abbf35471021abb08da1d30ed6165c78cb4e27e27d85badbb9ecaa33f3706daa839faee7c31fc75516dcf673efdef
EBUILD binutils-apple-3.2.ebuild 5914 SHA256 64a69c51cebe16792e7de383107e3ff539ea7c9de8a5357d39648534361a012d SHA512 5809311b5988f3cbc81920a7b52cdc8507eeecb0244919c34e68db9bc8267393c1c3b03bfd0f14446af85a47540fa304c3dec54c0474f536adec696bd3568e0d WHIRLPOOL 6966ebcd42309802f2acd257109461cf1c88f4569cf025c4a6c6f0f6f5688dcdf248becff95109afc556995f6230f83958a920f1ba9b5ff7fd4b3fa521f3ccee
+EBUILD binutils-apple-4.2-r1.ebuild 9728 SHA256 aa8eaa1d031072aa92c566c934129e336bf14ceeed9b447d78ab5b266d545e96 SHA512 a4470f6bb0851e22cec4ad2ec0a69bfa042387884f673c3bb45795f82201141c9486bbc44f023c0ee7ef04f0063bbc2c47dad85e4c79276706bdc47eab22bb4d WHIRLPOOL 7b37183ace821250fa7651fbc5a0db58e61be1f96642bb248b2b6a5ca52e0eb67ad2daaefef66d3f0d4db8720cf147a7959bc12a030d2c76780ec218a007f163
EBUILD binutils-apple-4.2.ebuild 8744 SHA256 dc6a457f8916974209b0b7c733c0c2d2800268da41b4f3fba106410e612e7d7b SHA512 feaabec24e80246e058ca40f0c6f00745a1d70b2249eea2f8b3b640419584587afa51ea919172f0023ab6e3d1409c5076f0d2a3544e9fe679bf91585eba09042 WHIRLPOOL 15e11365b21095b52a915756800ba92a755fc4b6ff84af10999f55627e3fb139f54ccd3bb6d27c94354e25862c6e57b8a7fa96306129dd4a41715e680a12eca1
+EBUILD binutils-apple-4.3-r1.ebuild 9357 SHA256 6e2c7b73e1da185608ad994685c2fe85a727a5e26075de9211b431c5b2ded553 SHA512 537474a2e7dd0a794fe9d7b202e04bbc61b98f5e056ff6760dfe6ffaaf3981b81528386366002ce33f6d1e78570168b38f80e6cd72cbe7ec2c000de652a4534a WHIRLPOOL 1e2ec51eb3db468a46c342dd9b76f0353da0fd27a9f6f6738071167303ccd88c76f4641e2a22eabae5277699253d0e95160d19ac49dfe2eb91e348aaa78ed478
EBUILD binutils-apple-4.3.ebuild 8543 SHA256 b84402d9d8175779b15aeb1a029b8c74456c157b0e9e8358ea63c6464f39eec6 SHA512 161812b264eb95653f34115574c0fa11f2968e8949de826c353da76aa663d39aa981e146dc70b8b2aeb7416727f500537d2f3173974a5e64a21dbac2d9c0a1f4 WHIRLPOOL 56d9f3de5c95056c7170740b4bf1c651f47d97747e14110f773e9a08661e7d4fed8673723b72bcb8bc5275737b595a7a327cc1b3d9a7c2e86924fe33e462c830
EBUILD binutils-apple-5.1.ebuild 10969 SHA256 2fcf6d482172f479874c0f0f4ce678fe9acb5c3600992ecc52cccb564c995342 SHA512 45afb1df26edb3cd55a7e5e35053ea360a8b4427ee467ea9aff2096dbea77e0afe38045cd37296a693c3aad9b211dbe22ef438f0130f11aab807dc34cfd28b4f WHIRLPOOL 078d7114c4734280ae5830c9b9933af0b7f3e824b33a07fc7e9bf43bdc3e9ff0f6226cb94c6b6507af14a22359ed5c7477abf1af10dee9ea70ed8136181cd43c
EBUILD binutils-apple-6.1.ebuild 10873 SHA256 d00cc0ada1bd196d0a4c9510ee50c740bcc98da85a9cadafcb18ac13c820188f SHA512 307c0ca7a40993b2cfb6dfddbda9e1f87b19e5e6dc5c3a43acd6c8d82082c570843acb7b49b29b809705c4dd4f1b36a2fa5017716413856e05a49c86ee3c66d5 WHIRLPOOL 6d6f19f60e9578447cf1008803b30467da7dbfeeb097ddaa268b1e9c2a695a5934a982eee0e830b146c8297461d131649ecbdeee0b4ebea48d85674a30caa95e
-MISC ChangeLog 13109 SHA256 e99185b28bbbf152ca6fb12da2d5c7d979731b9b6cc368b55c935a0fc9295f9e SHA512 13e44fdd5ebd501ca8c0f8d0f176a8182f4446bab4435f819414854bfa5f4e5d0c189b3ad90042b5e85e24656363d0cf26d0ee19dd353f967f6238f2cd7159b7 WHIRLPOOL bb688a807a514fdc65344eec5797cebae12029e560c0a9def75e6101072db83b6fd79ea213f351ed84b542d78648c438f4c158069cc89d4ac38ba67413f5c981
+MISC ChangeLog 13640 SHA256 bf199729065c38f144ffe9d1b555d227f40dabcbc6f32eacd08d4dd08cf296cf SHA512 eabe363548f0644133e20861513b32adbfe526ec4f31bed0dd96786cff8c432598a8500b36ebd073da6661143081e35e405ae68ef62e2417f7a9c4aab7460844 WHIRLPOOL c8312fedc80c7cf484dc7350414634d320ec29a80db57f421f58161cdba76040e7f6857885f202eab0b95e66b44554af48348f724059a57fc42eaac5ebfb2fb4
MISC metadata.xml 302 SHA256 899f79a24a243a7aa89abd5513bf75a9af445051813ebe137320ddc27bb22849 SHA512 20531dd7fdd3e84f20b1151bbe85e148643f7b26cfd77fadf649cd2b5c3ef4b3beeaf99299f0eb671250762ad10094ecdc1ff22c0b2eac0f7cb9f8d90aa21bed WHIRLPOOL e441ebd6ca8a5b2cd44b8a55fecb33f4895c1016f3b62bfa13c0e1e6fecf15ce3f58aaab3f19ea231cdc67bad2bcda31aabe7973b19feca70cd9cf7c9d5c69a9
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iEYEAREIAAYFAlTRObkACgkQX3X2B8XHTokhXgCfeCaty5kGa4DA9T0isEQFwMF2
+tF8AnjnXqRQ0cYYZnDaM+hwQelAlrQhX
+=BvGY
+-----END PGP SIGNATURE-----
--- /dev/null
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils-apple/binutils-apple-4.2-r1.ebuild,v 1.1 2015/02/03 21:12:23 grobian Exp $
+
+EAPI="3"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+LD64=ld64-127.2
+CCTOOLS_VERSION=809
+CCTOOLS=cctools-${CCTOOLS_VERSION}
+CCTOOLS_HEADERS=cctools-855
+LIBUNWIND=libunwind-30
+DYLD=dyld-195.5
+
+DESCRIPTION="Darwin assembler as(1) and static linker ld(1), Xcode Tools ${PV}"
+HOMEPAGE="http://www.opensource.apple.com/darwinsource/"
+SRC_URI="http://www.opensource.apple.com/tarballs/ld64/${LD64}.tar.gz
+ http://www.opensource.apple.com/tarballs/cctools/${CCTOOLS}.tar.gz
+ http://www.opensource.apple.com/tarballs/cctools/${CCTOOLS_HEADERS}.tar.gz
+ http://www.opensource.apple.com/tarballs/libunwind/${LIBUNWIND}.tar.gz
+ http://www.opensource.apple.com/tarballs/dyld/${DYLD}.tar.gz"
+
+LICENSE="APSL-2"
+KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
+IUSE="lto test"
+
+RDEPEND="sys-devel/binutils-config
+ lto? ( sys-devel/llvm )
+ test? ( >=dev-lang/perl-5.8.8 )"
+DEPEND="${RDEPEND}
+ || ( >=sys-devel/gcc-apple-4.2.1 sys-devel/llvm )"
+
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
+ export CTARGET=${CATEGORY/cross-}
+ fi
+fi
+is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
+
+if is_cross ; then
+ SLOT="${CTARGET}-4"
+else
+ SLOT="4"
+fi
+
+LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
+INCPATH=${LIBPATH}/include
+DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
+if is_cross ; then
+ BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${PV}
+else
+ BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
+fi
+
+S=${WORKDIR}
+
+src_prepare() {
+ cd "${S}"/${LD64}/src
+ cp "${FILESDIR}"/ld64-127.2-Makefile Makefile
+ epatch "${FILESDIR}"/${LD64}-lto.patch
+ epatch "${FILESDIR}"/ld64-128.2-stdlib.patch
+ epatch "${FILESDIR}"/${LD64}-ppc-range-warning.patch
+ epatch "${FILESDIR}"/ld64-127.2-extraneous-headers.patch
+ epatch "${FILESDIR}"/ld64-241.9-register-names.patch
+ epatch "${FILESDIR}"/ld64-241.9-get-comm-align.patch
+ epatch "${FILESDIR}"/ld64-241.9-cc_md5.patch
+ epatch "${FILESDIR}"/ld64-128.2-1010.patch
+
+ # We used to use our own copy of lto.h, which doesn't require llvm
+ # build-env. Current versions of llvm provide
+ # $EPREFIX/usr/include/llvm-c/lto.h as well as
+ # $EPREFIX/usr/lib/libLTO.{so,dylib}, so we just use these.
+
+ # provide missing headers from libunwind and dyld
+ mkdir -p include/{mach,mach-o/arm} || die
+ # never present because it's private
+ cp ../../${DYLD}/include/mach-o/dyld_priv.h include/mach-o || die
+ # missing on <= 10.5
+ cp ../../${LIBUNWIND}/include/libunwind.h include/ || die
+ cp ../../${LIBUNWIND}/include/mach-o/compact_unwind_encoding.h include/mach-o || die
+ # missing on <= 10.4
+ cp ../../${DYLD}/include/mach-o/dyld_images.h include/mach-o || die
+ cp ../../${CCTOOLS}/include/mach-o/loader.h include/mach-o || die
+ # use copies from cctools because they're otherwise hidden in some SDK
+ cp ../../${CCTOOLS}/include/mach-o/arm/reloc.h include/mach-o/arm || die
+ # provide all required CPU_TYPEs on all platforms
+ cp ../../${CCTOOLS}/include/mach/machine.h include/mach/machine.h
+ # add alias for newer identifiers, because ld64 uses both but cctools
+ # header only defines the older
+ epatch "${FILESDIR}"/ld64-236.3-missing-cputypes.patch
+
+ # mimic OS X Leopard-style Availability.h macros for libunwind.h on
+ # older systems
+ [[ ${CHOST#*-darwin} -le 8 ]] && \
+ echo "#define __OSX_AVAILABLE_STARTING(x,y) " > include/Availability.h
+
+ local VER_STR="\"@(#)PROGRAM:ld PROJECT:${LD64} (Gentoo ${PN}-${PVR})\\n\""
+ echo "char ldVersionString[] = ${VER_STR};" > version.cpp
+
+ epatch "${FILESDIR}"/ld64-123.2-debug-backtrace.patch
+ if [[ ${CHOST} == powerpc*-darwin* ]] ; then
+ epatch "${FILESDIR}"/ld64-123.2-darwin8-no-mlong-branch-warning.patch
+ epatch "${FILESDIR}"/ld64-127.2-thread_state.patch
+ fi
+
+ cd "${S}"/${CCTOOLS}
+ epatch "${FILESDIR}"/${PN}-4.0-as.patch
+ epatch "${FILESDIR}"/${PN}-4.2-as-dir.patch
+ epatch "${FILESDIR}"/${PN}-3.2.3-ranlib.patch
+ epatch "${FILESDIR}"/${PN}-3.1.1-libtool-ranlib.patch
+ epatch "${FILESDIR}"/${PN}-3.1.1-nmedit.patch
+ epatch "${FILESDIR}"/${PN}-3.1.1-no-headers.patch
+ epatch "${FILESDIR}"/${PN}-4.0-no-oss-dir.patch
+ epatch "${FILESDIR}"/${PN}-4.2-lto.patch
+ epatch "${FILESDIR}"/${PN}-5.1-extraneous-includes.patch
+ epatch "${FILESDIR}"/${PN}-4.2-globals-extern.patch
+ cp ../${LD64}/src/other/prune_trie.h include/mach-o/ || die
+ # __darwin_i386_float_state missing on <= 10.4
+ cp -a ../${CCTOOLS_HEADERS}/include/mach/i386 include/mach
+
+ # do not build profileable libstuff to save compile time
+ sed -i -e "/^all:/s, profile , ," libstuff/Makefile
+
+ # Provide patched version information to the tools. This is normally
+ # done by the Makefile using vers_string. As an added benefit, the
+ # build will not fail on later OS Xes where that tool doesn't exist any
+ # more.
+
+ # Those tools don't even use their version information. Just make make
+ # happy.
+ touch {ar,gprof,otool}/vers.c
+
+ # for the others defining apple_version suffices nicely although the
+ # Makefile does a lot more.
+ VER_STR="${CCTOOLS} (Gentoo ${PN}-${PVR})"
+ echo "const char apple_version[] = \"${VER_STR}\";" \
+ >> as/apple_version.c || die
+ echo "const char apple_version[] = \"${VER_STR})\";" \
+ >> misc/vers.c || die
+ # the rest we don't even build
+
+ # clean up test suite
+ cd "${S}"/${LD64}/unit-tests/test-cases
+ local c
+
+ # we don't have llvm
+ ((++c)); rm -rf llvm-integration;
+
+ # we don't have dtrace
+ ((++c)); rm -rf dtrace-static-probes-coalescing;
+ ((++c)); rm -rf dtrace-static-probes;
+
+ # a file is missing
+ ((++c)); rm -rf eh-coalescing-r
+
+ # we don't do universal binaries
+ ((++c)); rm -rf blank-stubs;
+
+ # looks like a problem with apple's result-filter.pl
+ ((++c)); rm -rf implicit-common3;
+ ((++c)); rm -rf order_file-ans;
+
+ # TODO no idea what goes wrong here
+ ((++c)); rm -rf dwarf-debug-notes;
+
+ einfo "Deleted $c tests that were bound to fail"
+
+ cd "${S}"
+ ebegin "cleaning Makefiles from unwanted CFLAGS"
+ find . -name "Makefile" -print0 | xargs -0 sed \
+ -i \
+ -e 's/ -g / /g' \
+ -e 's/^G =.*$/G =/' \
+ -e 's/^OFLAG =.*$/OFLAG =/' \
+ -e 's/install -c -s/install/g'
+ eend $?
+}
+
+src_configure() {
+ CCTOOLS_LTO=
+ LD64_LTO=0
+ if use lto ; then
+ CCTOOLS_LTO="-DLTO_SUPPORT"
+ LD64_LTO=1
+ fi
+
+ # CPPFLAGS only affects ld64, cctools don't use 'em (which currently is
+ # what we want)
+ append-cppflags -DNDEBUG
+
+ CCTOOLS_OFLAG=
+ if [ ${CHOST#*-darwin} -le 8 ] ; then
+ # cctools expect to use UNIX03 struct member names.
+ # This is default on > 10.4. Activate it on <= 10.4 by defining
+ # __DARWIN_UNIX03 explicitly.
+ CCTOOLS_OFLAG="-D__DARWIN_UNIX03=1"
+ fi
+
+ cat <<EOF > ${LD64}/src/configure.h
+#define DEFAULT_MACOSX_MIN_VERSION "${MACOSX_DEPLOYMENT_TARGET}"
+EOF
+}
+
+compile_ld64() {
+ einfo "building ${LD64}"
+ cd "${S}"/${LD64}/src
+ emake \
+ LTO=${LD64_LTO} \
+ || die "emake failed for ld64"
+ use test && emake build_test
+}
+
+compile_cctools() {
+ einfo "building ${CCTOOLS}"
+ cd "${S}"/${CCTOOLS}
+ emake \
+ LIB_PRUNETRIE="-L../../${LD64}/src -lprunetrie" \
+ EFITOOLS= \
+ LTO="${CCTOOLS_LTO}" \
+ COMMON_SUBDIRS='libstuff ar misc otool' \
+ SUBDIRS_32= \
+ LEGACY= \
+ RC_CFLAGS="${CFLAGS}" \
+ OFLAG="${CCTOOLS_OFLAG}" \
+ || die "emake failed for the cctools"
+ cd "${S}"/${CCTOOLS}/as
+ emake \
+ BUILD_OBSOLETE_ARCH= \
+ RC_CFLAGS="-DASLIBEXECDIR=\"\\\"${EPREFIX}${LIBPATH}/\\\"\" ${CFLAGS}" \
+ OFLAG="${CCTOOLS_OFLAG}" \
+ || die "emake failed for as"
+}
+
+src_compile() {
+ compile_ld64
+ compile_cctools
+}
+
+install_ld64() {
+ exeinto ${BINPATH}
+ doexe "${S}"/${LD64}/src/{ld64,rebase,dyldinfo,unwinddump,ObjectDump}
+ dosym ld64 ${BINPATH}/ld
+ insinto ${DATAPATH}/man/man1
+ doins "${S}"/${LD64}/doc/man/man1/{ld,ld64,rebase}.1
+}
+
+install_cctools() {
+ cd "${S}"/${CCTOOLS}
+ emake install_all_but_headers \
+ EFITOOLS= \
+ COMMON_SUBDIRS='ar misc otool' \
+ SUBDIRS_32= \
+ DSTROOT=\"${D}\" \
+ BINDIR=\"${EPREFIX}\"${BINPATH} \
+ LOCBINDIR=\"${EPREFIX}\"${BINPATH} \
+ USRBINDIR=\"${EPREFIX}\"${BINPATH} \
+ LOCLIBDIR=\"${EPREFIX}\"${LIBPATH} \
+ MANDIR=\"${EPREFIX}\"${DATAPATH}/man/
+ cd "${S}"/${CCTOOLS}/as
+ emake install \
+ BUILD_OBSOLETE_ARCH= \
+ DSTROOT=\"${D}\" \
+ USRBINDIR=\"${EPREFIX}\"${BINPATH} \
+ LIBDIR=\"${EPREFIX}\"${LIBPATH} \
+ LOCLIBDIR=\"${EPREFIX}\"${LIBPATH}
+
+ cd "${ED}"${BINPATH}
+ insinto ${DATAPATH}/man/man1
+ local skips manpage
+ # ar brings an up-to-date manpage with it
+ skips=( ar )
+ for bin in *; do
+ for skip in ${skips[@]}; do
+ if [[ ${bin} == ${skip} ]]; then
+ continue 2;
+ fi
+ done
+ manpage=${S}/${CCTOOLS}/man/${bin}.1
+ if [[ -f "${manpage}" ]]; then
+ doins "${manpage}"
+ fi
+ done
+ insinto ${DATAPATH}/man/man5
+ doins "${S}"/${CCTOOLS}/man/*.5
+}
+
+src_test() {
+ if ! [ "${EPREFIX}"/usr/bin/clang ] ; then
+ einfo "Test suite only works properly with clang - please install"
+ return
+ fi
+
+ einfo "Running unit tests"
+ cd "${S}"/${LD64}/unit-tests/test-cases
+ # provide the new ld as a symlink to clang so that -ccc-install-dir
+ # will pick it up
+ ln -sfn ../../src/ld64 ld
+ # use our arch command because the System's will report i386 even for an
+ # x86_64 prefix
+ perl ../bin/make-recursive.pl \
+ BUILT_PRODUCTS_DIR="${S}"/${LD64}/src \
+ ARCH="$(arch)" \
+ LD="${S}"/${LD64}/src/ld64 \
+ CC="clang -ccc-install-dir $PWD" \
+ CXX="clang++ -ccc-install-dir $PWD" \
+ OTOOL="${S}"/${CCTOOLS}/otool/otool.NEW \
+ | perl ../bin/result-filter.pl
+}
+
+src_install() {
+ install_ld64
+ install_cctools
+
+ cd "${S}"
+ insinto /etc/env.d/binutils
+ cat <<-EOF > env.d
+ TARGET="${CHOST}"
+ VER="${PV}"
+ FAKE_TARGETS="${CHOST}"
+ EOF
+ newins env.d ${CHOST}-${PV}
+}
+
+pkg_postinst() {
+ binutils-config ${CHOST}-${PV}
+}
--- /dev/null
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils-apple/binutils-apple-4.3-r1.ebuild,v 1.1 2015/02/03 21:12:23 grobian Exp $
+
+EAPI="3"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+LD64=ld64-128.2
+CCTOOLS_VERSION=822
+CCTOOLS=cctools-${CCTOOLS_VERSION}
+CCTOOLS_HEADERS=cctools-855
+LIBUNWIND=libunwind-30
+DYLD=dyld-195.6
+
+DESCRIPTION="Darwin assembler as(1) and static linker ld(1), Xcode Tools ${PV}"
+HOMEPAGE="http://www.opensource.apple.com/darwinsource/"
+SRC_URI="http://www.opensource.apple.com/tarballs/ld64/${LD64}.tar.gz
+ http://www.opensource.apple.com/tarballs/cctools/${CCTOOLS}.tar.gz
+ http://www.opensource.apple.com/tarballs/cctools/${CCTOOLS_HEADERS}.tar.gz
+ http://www.opensource.apple.com/tarballs/libunwind/${LIBUNWIND}.tar.gz
+ http://www.opensource.apple.com/tarballs/dyld/${DYLD}.tar.gz"
+
+LICENSE="APSL-2"
+KEYWORDS="~x64-macos ~x86-macos"
+IUSE="lto test"
+
+RDEPEND="sys-devel/binutils-config
+ lto? ( sys-devel/llvm )
+ test? ( >=dev-lang/perl-5.8.8 )"
+DEPEND="${RDEPEND}
+ || ( >=sys-devel/gcc-apple-4.2.1 sys-devel/llvm )"
+
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
+ export CTARGET=${CATEGORY/cross-}
+ fi
+fi
+is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
+
+if is_cross ; then
+ SLOT="${CTARGET}-4"
+else
+ SLOT="4"
+fi
+
+LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
+INCPATH=${LIBPATH}/include
+DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
+if is_cross ; then
+ BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${PV}
+else
+ BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
+fi
+
+S=${WORKDIR}
+
+src_prepare() {
+ cd "${S}"/${LD64}/src
+ cp "${FILESDIR}"/ld64-128.2-Makefile-2 Makefile
+ epatch "${FILESDIR}"/ld64-127.2-lto.patch
+ epatch "${FILESDIR}"/ld64-128.2-stdlib.patch
+ epatch "${FILESDIR}"/ld64-241.9-register-names.patch
+ epatch "${FILESDIR}"/ld64-241.9-get-comm-align.patch
+ epatch "${FILESDIR}"/ld64-241.9-cc_md5.patch
+ epatch "${FILESDIR}"/ld64-128.2-1010.patch
+
+ # We used to use our own copy of lto.h, which doesn't require llvm
+ # build-env. Current versions of llvm provide
+ # $EPREFIX/usr/include/llvm-c/lto.h as well as
+ # $EPREFIX/usr/lib/libLTO.{so,dylib}, so we just use these.
+
+ # provide missing headers from libunwind and dyld
+ mkdir -p include/{mach,mach-o/arm} || die
+ # never present because it's private
+ cp ../../${DYLD}/include/mach-o/dyld_priv.h include/mach-o || die
+ # missing on <= 10.5
+ cp ../../${LIBUNWIND}/include/libunwind.h include/ || die
+ cp ../../${LIBUNWIND}/include/mach-o/compact_unwind_encoding.h include/mach-o || die
+ # missing on <= 10.4
+ cp ../../${DYLD}/include/mach-o/dyld_images.h include/mach-o || die
+ cp ../../${CCTOOLS}/include/mach-o/loader.h include/mach-o || die
+ # use copies from cctools because they're otherwise hidden in some SDK
+ cp ../../${CCTOOLS}/include/mach-o/arm/reloc.h include/mach-o/arm || die
+ # provide all required CPU_TYPEs on all platforms
+ cp ../../${CCTOOLS}/include/mach/machine.h include/mach/machine.h
+ # add alias for newer identifiers, because ld64 uses both but cctools
+ # header only defines the older
+ epatch "${FILESDIR}"/ld64-236.3-missing-cputypes.patch
+
+ # mimic OS X Leopard-style Availability.h macros for libunwind.h on
+ # older systems
+ [[ ${CHOST#*-darwin} -le 8 ]] && \
+ echo "#define __OSX_AVAILABLE_STARTING(x,y) " > include/Availability.h
+
+ local VER_STR="\"@(#)PROGRAM:ld PROJECT:${LD64} (Gentoo ${PN}-${PVR})\\n\""
+ echo "char ldVersionString[] = ${VER_STR};" > version.cpp
+
+ epatch "${FILESDIR}"/ld64-123.2-debug-backtrace.patch
+
+ cd "${S}"/${CCTOOLS}
+ epatch "${FILESDIR}"/${PN}-4.0-as.patch
+ epatch "${FILESDIR}"/${PN}-4.2-as-dir.patch
+ epatch "${FILESDIR}"/${PN}-3.2.3-ranlib.patch
+ epatch "${FILESDIR}"/${PN}-3.1.1-libtool-ranlib.patch
+ epatch "${FILESDIR}"/${PN}-3.1.1-nmedit.patch
+ epatch "${FILESDIR}"/${PN}-3.1.1-no-headers.patch
+ epatch "${FILESDIR}"/${PN}-4.0-no-oss-dir.patch
+ epatch "${FILESDIR}"/${PN}-4.2-lto.patch
+ epatch "${FILESDIR}"/${PN}-5.1-extraneous-includes.patch
+ cp ../${LD64}/src/other/prune_trie.h include/mach-o/ || die
+ # __darwin_i386_float_state missing on <= 10.4
+ cp -a ../${CCTOOLS_HEADERS}/include/mach/i386 include/mach
+
+ # do not build profileable libstuff to save compile time
+ sed -i -e "/^all:/s, profile , ," libstuff/Makefile
+
+ # cctools version is provided to make via RC_ProjectSourceVersion which
+ # generates and compiles it as apple_version[] into libstuff. From
+ # there it's picked up by the individual tools. Since
+ # RC_ProjectSourceVersion is also used as library version, we can't
+ # just append our local version info. So we hack the libstuff Makefile
+ # to include our Gentoo version.
+ sed -i -e "/cctools-.*(RC_ProjectSourceVersion).*OFILE_DIR/s,Version),Version) (Gentoo ${PN}-${PVR})," \
+ libstuff/Makefile
+
+ # clean up test suite
+ cd "${S}"/${LD64}/unit-tests/test-cases
+ local c
+
+ # we don't have llvm
+ ((++c)); rm -rf llvm-integration;
+
+ # we don't have dtrace
+ ((++c)); rm -rf dtrace-static-probes-coalescing;
+ ((++c)); rm -rf dtrace-static-probes;
+
+ # a file is missing
+ ((++c)); rm -rf eh-coalescing-r
+
+ # we don't do universal binaries
+ ((++c)); rm -rf blank-stubs;
+
+ # looks like a problem with apple's result-filter.pl
+ ((++c)); rm -rf implicit-common3;
+ ((++c)); rm -rf order_file-ans;
+
+ # TODO no idea what goes wrong here
+ ((++c)); rm -rf dwarf-debug-notes;
+
+ einfo "Deleted $c tests that were bound to fail"
+
+ cd "${S}"
+ ebegin "cleaning Makefiles from unwanted CFLAGS"
+ find . -name "Makefile" -print0 | xargs -0 sed \
+ -i \
+ -e 's/ -g / /g' \
+ -e 's/^G =.*$/G =/' \
+ -e 's/^OFLAG =.*$/OFLAG =/' \
+ -e 's/install -c -s/install/g'
+ eend $?
+}
+
+src_configure() {
+ CCTOOLS_LTO=
+ LD64_LTO=0
+ if use lto ; then
+ CCTOOLS_LTO="-DLTO_SUPPORT"
+ LD64_LTO=1
+ fi
+
+ # CPPFLAGS only affects ld64, cctools don't use 'em (which currently is
+ # what we want)
+ append-cppflags -DNDEBUG
+
+ CCTOOLS_OFLAG=
+ if [ ${CHOST#*-darwin} -le 8 ] ; then
+ # cctools expect to use UNIX03 struct member names.
+ # This is default on > 10.4. Activate it on <= 10.4 by defining
+ # __DARWIN_UNIX03 explicitly.
+ CCTOOLS_OFLAG="-D__DARWIN_UNIX03=1"
+ fi
+
+ cat <<EOF > ${LD64}/src/configure.h
+#define DEFAULT_MACOSX_MIN_VERSION "${MACOSX_DEPLOYMENT_TARGET}"
+EOF
+}
+
+compile_ld64() {
+ einfo "building ${LD64}"
+ cd "${S}"/${LD64}/src
+ emake \
+ LTO=${LD64_LTO} \
+ || die "emake failed for ld64"
+ use test && emake build_test
+}
+
+compile_cctools() {
+ einfo "building ${CCTOOLS}"
+ cd "${S}"/${CCTOOLS}
+ # -j1 because it fails too often with weird errors
+ emake \
+ LIB_PRUNETRIE="-L../../${LD64}/src -lprunetrie" \
+ EFITOOLS= \
+ LTO="${CCTOOLS_LTO}" \
+ COMMON_SUBDIRS='libstuff ar misc otool' \
+ SUBDIRS_32= \
+ LEGACY= \
+ RC_ProjectSourceVersion=${CCTOOLS_VERSION} \
+ RC_CFLAGS="${CFLAGS}" \
+ OFLAG="${CCTOOLS_OFLAG}" \
+ -j1 \
+ || die "emake failed for the cctools"
+ cd "${S}"/${CCTOOLS}/as
+ emake \
+ BUILD_OBSOLETE_ARCH= \
+ RC_ProjectSourceVersion=${CCTOOLS_VERSION} \
+ RC_CFLAGS="-DASLIBEXECDIR=\"\\\"${EPREFIX}${LIBPATH}/\\\"\" ${CFLAGS}" \
+ OFLAG="${CCTOOLS_OFLAG}" \
+ || die "emake failed for as"
+}
+
+src_compile() {
+ compile_ld64
+ compile_cctools
+}
+
+install_ld64() {
+ exeinto ${BINPATH}
+ doexe "${S}"/${LD64}/src/{ld64,rebase,dyldinfo,unwinddump,ObjectDump}
+ dosym ld64 ${BINPATH}/ld
+ insinto ${DATAPATH}/man/man1
+ doins "${S}"/${LD64}/doc/man/man1/{ld,ld64,rebase}.1
+}
+
+install_cctools() {
+ cd "${S}"/${CCTOOLS}
+ emake install_all_but_headers \
+ EFITOOLS= \
+ COMMON_SUBDIRS='ar misc otool' \
+ SUBDIRS_32= \
+ DSTROOT=\"${D}\" \
+ BINDIR=\"${EPREFIX}\"${BINPATH} \
+ LOCBINDIR=\"${EPREFIX}\"${BINPATH} \
+ USRBINDIR=\"${EPREFIX}\"${BINPATH} \
+ LOCLIBDIR=\"${EPREFIX}\"${LIBPATH} \
+ MANDIR=\"${EPREFIX}\"${DATAPATH}/man/
+ cd "${S}"/${CCTOOLS}/as
+ emake install \
+ BUILD_OBSOLETE_ARCH= \
+ DSTROOT=\"${D}\" \
+ USRBINDIR=\"${EPREFIX}\"${BINPATH} \
+ LIBDIR=\"${EPREFIX}\"${LIBPATH} \
+ LOCLIBDIR=\"${EPREFIX}\"${LIBPATH}
+
+ cd "${ED}"${BINPATH}
+ insinto ${DATAPATH}/man/man1
+ local skips manpage
+ # ar brings an up-to-date manpage with it
+ skips=( ar )
+ for bin in *; do
+ for skip in ${skips[@]}; do
+ if [[ ${bin} == ${skip} ]]; then
+ continue 2;
+ fi
+ done
+ manpage=${S}/${CCTOOLS}/man/${bin}.1
+ if [[ -f "${manpage}" ]]; then
+ doins "${manpage}"
+ fi
+ done
+ insinto ${DATAPATH}/man/man5
+ doins "${S}"/${CCTOOLS}/man/*.5
+}
+
+src_test() {
+ if ! [ "${EPREFIX}"/usr/bin/clang ] ; then
+ einfo "Test suite only works properly with clang - please install"
+ return
+ fi
+
+ einfo "Running unit tests"
+ cd "${S}"/${LD64}/unit-tests/test-cases
+ # provide the new ld as a symlink to clang so that -ccc-install-dir
+ # will pick it up
+ ln -sfn ../../src/ld64 ld
+ # use our arch command because the System's will report i386 even for an
+ # x86_64 prefix
+ perl ../bin/make-recursive.pl \
+ BUILT_PRODUCTS_DIR="${S}"/${LD64}/src \
+ ARCH="$(arch)" \
+ LD="${S}"/${LD64}/src/ld64 \
+ CC="clang -ccc-install-dir $PWD" \
+ CXX="clang++ -ccc-install-dir $PWD" \
+ OTOOL="${S}"/${CCTOOLS}/otool/otool.NEW \
+ | perl ../bin/result-filter.pl
+}
+
+src_install() {
+ install_ld64
+ install_cctools
+
+ cd "${S}"
+ insinto /etc/env.d/binutils
+ cat <<-EOF > env.d
+ TARGET="${CHOST}"
+ VER="${PV}"
+ FAKE_TARGETS="${CHOST}"
+ EOF
+ newins env.d ${CHOST}-${PV}
+}
+
+pkg_postinst() {
+ binutils-config ${CHOST}-${PV}
+}
--- /dev/null
+Externally referenced globals should be marked extern to avoid stuff like this happening:
+
+ld: warning: tentative definition of '_subsections_via_symbols' with size 16 from 'app.o' is being replaced by real definition of smaller size 4 from 'as.o'
+ld: warning: tentative definition of '_subsections_via_symbols' with size 16 from 'atof-ieee.o' is being replaced by real definition of smaller size 4 from 'as.o'
+...
+
+--- cctools-809/as/as.h.orig 2015-01-28 23:52:40.000000000 +0100
++++ cctools-809/as/as.h 2015-01-28 23:52:52.000000000 +0100
+@@ -179,7 +179,7 @@
+ extern char *specific_archflag;
+
+ /* TRUE if the .subsections_via_symbols directive was seen */
+-int subsections_via_symbols;
++extern int subsections_via_symbols;
+
+ /* -I path options for .includes */
+ struct directory_stack {
+--- cctools-809/as/arm.c.orig 2015-01-28 23:57:23.000000000 +0100
++++ cctools-809/as/arm.c 2015-01-28 23:57:35.000000000 +0100
+@@ -151,8 +151,7 @@
+ # define N_(String) (String)
+
+ /* STUFF FROM gas/as.h */
+-#define COMMON
+-COMMON subsegT now_subseg;
++extern subsegT now_subseg;
+
+ /* STUFF FROM gas/config/tc-arm.h */
+ #define ARM_FLAG_THUMB (1 << 0) /* The symbol is a Thumb symbol rather than an Arm symbol. */
+++ /dev/null
-Allow to fully disable LTO.
-
-diff --git a/libstuff/lto.c b/libstuff/lto.c
-index 6f5758d..5ba7996 100644
---- a/libstuff/lto.c
-+++ b/libstuff/lto.c
-@@ -381,4 +381,17 @@ void *mod)
- lto_dispose(mod);
- }
-
-+#else
-+
-+#include <stdlib.h>
-+
-+__private_extern__
-+int
-+is_llvm_bitcode(
-+ struct ofile *ofile,
-+ char *addr,
-+ size_t size)
-+{
-+ return 0;
-+}
- #endif /* LTO_SUPPORT */
-diff --git a/misc/libtool.c b/misc/libtool.c
-index f9c7557..ff829cc 100644
---- a/misc/libtool.c
-+++ b/misc/libtool.c
-@@ -1370,8 +1370,11 @@ void)
- }
- }
- }
-- else if(ofiles[i].arch_type == OFILE_Mach_O ||
-- ofiles[i].arch_type == OFILE_LLVM_BITCODE){
-+ else if(ofiles[i].arch_type == OFILE_Mach_O
-+#ifdef LTO_SUPPORT
-+ || ofiles[i].arch_type == OFILE_LLVM_BITCODE
-+#endif
-+ ){
- if(cmd_flags.ranlib == TRUE){
- error("for architecture: %s file: %s is not an "
- "archive (no processing done on this file)",
--- /dev/null
+CPPFLAGS += -Iinclude -Iabstraction -Ild -Ild/parsers -Iother -I.
+
+# some files generate warnings about applying offsetof to a non-POD type.
+# Upstream seems aware of that and ignores by setting
+# GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO in the xcode project.
+CXXFLAGS += -Wno-invalid-offsetof
+
+all: rebase unwinddump dyldinfo ld64 ObjectDump machocheck
+
+libprunetrie.a: other/PruneTrie.o other/prune_trie.h
+ $(AR) -s -r -c libprunetrie.a other/PruneTrie.o
+
+LD64LIBS=ld/parsers/archive_file.o ld/parsers/macho_relocatable_file.o \
+ ld/parsers/opaque_section_file.o \
+ ld/parsers/macho_dylib_file.o \
+ ld/passes/branch_island.o ld/passes/dylibs.o ld/passes/order_file.o \
+ ld/passes/branch_shim.o ld/passes/got.o ld/passes/tlvp.o \
+ ld/passes/compact_unwind.o ld/passes/huge.o \
+ ld/passes/dtrace_dof.o ld/passes/objc.o \
+ ld/passes/stubs/stubs.o \
+ ld/InputFiles.o ld/OutputFile.o ld/SymbolTable.o \
+ ld/Options.o ld/Resolver.o ld/debugline.o ld/ld.o
+
+ifeq ($(LTO),1)
+CPPFLAGS += -DLTO
+LTO_OBJ = ld/parsers/lto_file.o
+LIBLTO = -lLTO
+else
+LTO_OBJ =
+LIBLTO =
+endif
+
+ld64: libprunetrie.a version.o $(LD64LIBS) $(LTO_OBJ)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(LIBLTO) -o $@ $^
+
+rebase: other/rebase.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+
+dyldinfo: other/dyldinfo.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+
+unwinddump: other/unwinddump.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+
+ObjectDump: other/ObjectDump.o ld/debugline.o ld/parsers/macho_relocatable_file.o $(LTO_OBJ)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(LIBLTO) -o $@ $^
+
+machocheck: other/machochecker.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+
--- /dev/null
+Remove unused header that doesn't exist on older OS Xes.
+
+--- ld64-127.2/src/ld/parsers/libunwind/AddressSpace.hpp.orig 2015-01-27 23:24:49.000000000 +0100
++++ ld64-127.2/src/ld/parsers/libunwind/AddressSpace.hpp 2015-01-27 23:26:21.000000000 +0100
+@@ -37,7 +37,6 @@
+ #include <mach-o/getsect.h>
+ #include <mach-o/dyld_priv.h>
+ #include <mach/i386/thread_status.h>
+-#include <Availability.h>
+
+ #include "FileAbstraction.hpp"
+ #include "libunwind.h"
--- /dev/null
+Include thread_status.h so that __darwin_i386_thread_state_t is known and will
+not generate warnings that it's declared inside parameter list.
+
+--- ld64-127.2/src/ld/HeaderAndLoadCommands.hpp.orig 2015-01-28 00:32:55.000000000 +0100
++++ ld64-127.2/src/ld/HeaderAndLoadCommands.hpp 2015-01-28 00:27:51.000000000 +0100
+@@ -29,6 +29,7 @@
+ #include <limits.h>
+ #include <unistd.h>
+ #include <mach-o/loader.h>
++#include <mach/i386/thread_status.h>
+
+ #include <vector>
+
--- /dev/null
+Backport (just a diff really) of OS X 10.10 handling from 241.9.
+
+--- ld64-128.2/src/ld/Options.cpp 2015-01-30 17:16:48.000000000 +0100
++++ ld64-241.9/src/ld/Options.cpp 2015-01-30 17:11:57.000000000 +0100
+@@ -1241,7 +1348,14 @@
+ throw "-macosx_version_min argument missing";
+
+ if ( (strncmp(version, "10.", 3) == 0) && isdigit(version[3]) ) {
+- unsigned int minorVersion = version[3] - '0';
++ unsigned int minorVersion = 0;
++ for (int i=3; isdigit(version[i]); ++i) {
++ minorVersion = minorVersion*10 + (version[i] - '0');
++ }
++ if ( minorVersion > 255 ) {
++ warning("Mac OS X minor version > 255 in '%s'", version);
++ minorVersion = 255;
++ }
+ fMacVersionMin = (ld::MacVersionMin)(0x000A0000 | (minorVersion << 8));
+ }
+ else {
--- /dev/null
+CPPFLAGS += -Iinclude -Iabstraction -Ild -Ild/parsers -Iother -I.
+
+# some files generate warnings about applying offsetof to a non-POD type.
+# Upstream seems aware of that and ignores by setting
+# GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO in the xcode project.
+CXXFLAGS += -Wno-invalid-offsetof
+
+all: rebase unwinddump dyldinfo ld64 ObjectDump machocheck
+
+libprunetrie.a: other/PruneTrie.o other/prune_trie.h
+ $(AR) -s -r -c libprunetrie.a other/PruneTrie.o
+
+LD64LIBS=ld/parsers/archive_file.o ld/parsers/macho_relocatable_file.o \
+ ld/parsers/opaque_section_file.o \
+ ld/parsers/macho_dylib_file.o \
+ ld/passes/branch_island.o ld/passes/dylibs.o ld/passes/order.o \
+ ld/passes/branch_shim.o ld/passes/got.o ld/passes/tlvp.o \
+ ld/passes/compact_unwind.o ld/passes/huge.o \
+ ld/passes/dtrace_dof.o ld/passes/objc.o \
+ ld/passes/stubs/stubs.o \
+ ld/InputFiles.o ld/OutputFile.o ld/SymbolTable.o \
+ ld/Options.o ld/Resolver.o ld/debugline.o ld/ld.o
+
+ifeq ($(LTO),1)
+CPPFLAGS += -DLTO
+LTO_OBJ = ld/parsers/lto_file.o
+LIBLTO = -lLTO
+else
+LTO_OBJ =
+LIBLTO =
+endif
+
+ld64: libprunetrie.a version.o $(LD64LIBS) $(LTO_OBJ)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(LIBLTO) -o $@ $^
+
+rebase: other/rebase.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+
+dyldinfo: other/dyldinfo.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+
+unwinddump: other/unwinddump.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+
+ObjectDump: other/ObjectDump.o ld/debugline.o ld/parsers/macho_relocatable_file.o $(LTO_OBJ)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(LIBLTO) -o $@ $^
+
+machocheck: other/machochecker.o
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
+