bump(dev-libs/boost): sync with upstream

This commit is contained in:
David Michael 2017-05-03 22:50:17 -07:00
parent 50c528da1e
commit 37b8d6313b
44 changed files with 2747 additions and 2492 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,44 +1,16 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
AUX boost-1.48.0-disable_icu_rpath.patch 1073 SHA256 e1c947d20f0864e22f6dd2b091da6948bb51aec0d3323c37fe4264ddf57204b4 SHA512 efb62b65dbcb52258dcca074997a0380dfc52f48161777a8b6f9672179247e534e098784dcbb574826f495981fd2189290c7fe733d943bba2b668bb62ef50087 WHIRLPOOL 6f9a142e15bf3674114f2b07c8708055888e74cda4c3c775ca5470e8f54c921aa12660a1f905a370ec5f44f16b73f05025d3ff1ccad557d379ff55ad3ad0a8f0
AUX boost-1.48.0-disable_libboost_python3.patch 1509 SHA256 0b229762863b72a5faa39ea57538f757548abc492325e6458d3801fd49e4804e SHA512 5aa0eb72365a0674d7d654b924c3189501495c22cc1eb50dc1ce7aaee941ba418c17857475ebbcc4d8f8102100d889aa1c059e3782dbff9eb03ff101bea2ffbb WHIRLPOOL 5710ac3ecf1f6d18db0307f07c720d12646666ec83adde2b2464cb87c901d57088e98801720efb176420f9728967c8752382b15ca69f632b00852d51be412795
AUX boost-1.48.0-mpi_python3.patch 2549 SHA256 9120a660469fba15554e790150e03a665ea5497e94a79469053506147bd7dad1 SHA512 7c8aa497ceba42319194dd6400ea8af883656c79e4f697d87c5e825cfdef5733bce91c3e930b504b264cae80f582c85f2c2b29d5f8db11ebcabeb744c888096e WHIRLPOOL 1b740f102467c787bd45813ecf085297171892c1126675f1abd501c11dc9a56506d0cb32222239f4e4bb1e6913533b3884acd2a749633f781c53a6529106264c
AUX boost-1.48.0-no_strict_aliasing_python2.patch 741 SHA256 d11db74992a7a692f655b36c1cd78355fcec6703007fde522b6a82c88f171689 SHA512 cd06ba8bf5623a5ca590cbd024ba27fae14d1d2a193ccd4baf91b06c5d41b6442f40561fa49b5ba14deb0c156d5773fc4a15890a85b6cea35cab91d54e94aa6e WHIRLPOOL 1b5cce1374f56d702213d7479beb90d15413c90010442a37a46821f383afa371aac3de49e657e7623d6e9079d1e3b07353233aa40218b760042161effedd813a
AUX boost-1.48.0-python_linking.patch 1278 SHA256 5bb937bd4423e039aa406ee4a366c61542a8067ec96b22dbcc48e8826bb7b1f8 SHA512 d588d9391c654a0c3cd49078933563705da4157cd79929ac2ff2021a2e86eec1b87ed85f5ec6d2028b76974abe7e947bd379d78aa60d97da9dc23a6f74c77ec2 WHIRLPOOL 879318dd228ca01841dd3ef0d8020810357c4699fbd1d9f164b0db07319b599634bd823f0e06dd462157d81550bc9f101506d0a7469ad2352d4b1b366bb7fb00
AUX boost-1.51.0-respect_python-buildid.patch 1565 SHA256 a783cd262cfda7c0046a9a9f34dd91cdc48bc2442c4c466873e85ead818326bb SHA512 65a7456c63db5eeab862fdb6245ba3a26536e26b56be9ed7a502a3d5be91bc278cd4a22cf1c5a1d8917bdeaa6575cbf37a11bfc3e982272f56308117fd2b230e WHIRLPOOL fb430e9c5368540493e13fdadff94df426203c9e6776891a3fc421488266b39f7e5720e5f5d289665d62d753c9bce7a33198cf6e911d94961714c22d1452ac92
AUX boost-1.51.0-support_dots_in_python-buildid.patch 609 SHA256 189299e2ef3cde98584e60a5bdd8606894c19bceb0c4d40b38f04aae0aed0edd SHA512 0bf1e4cae598a098b8c252bab1938b29dd5d3ea19d9355156b14add27238e9359ad39a73d3afecb031efebd801215804ecebc11ca8fa6ac2b7b3c2f5ff9bc32f WHIRLPOOL ffc318bc06c33263906be6d0e565ef4c2e3fde9f6224cc5413c02cbe446d9f286c69153f4aee6f588472b058b9b4a37110b0be696bd22362989f1b6a8c8fc13e
AUX boost-1.52.0-locale-utf.patch 2062 SHA256 8212150730073ba5b08aa9808afcb45d5ce90109cfc1ba90d22a673418ea003c SHA512 641a56541efb51e7db66c6c9eac65f8e0e62b4ad2c1b792ea573ce86fc62cd94327be75d22b8fdb84128e792977a2b450681d729a85b143146dc79a007ecefc4 WHIRLPOOL 67cfd6bd4591c3dcc47ad06aaa634e9c1598e0214635a66a1e57fb933b025aebc05cf3ddadd7309fdab353daa7b7880e468874c958e641604d4a7e3fa986fd96
AUX boost-1.52.0-threads.patch 2089 SHA256 b59323cefaf4f89078db62b1ece2a6e3b2cf7e8861996c0e366bee4d4638bdb3 SHA512 c6b43e9d8bebbeeb89681ec2bca61c2d656b8b5b1d508c5cd7e545f8ff3ca9b2b3bdf5f66b33ae043548d74b58a9d49096e3c971cd4a1487ef7ee90a9473a92d WHIRLPOOL cf75f6f740a22b001466018e9fb90a75c6912f1723486bda1e53ae2af5eeca5dedec7d430755a0a26cb433ba9d1b56aaa449ed543356ebf2ac4c67c62899ee2c
AUX boost-1.52.0-tuple.patch 500 SHA256 dbf631c8c412ea12b3d63dd4b515e0d5f1383a13db18e13696bd33dee91645d7 SHA512 ed2790b35058a3bf91b49e5e1b61f1861e2ba8d8ec6f885e85d74d62e2182fd1768099660712a900e29a505fbf568f0235c748cca801ede836f67d2adbc6bcd1 WHIRLPOOL be88916331907ad528983e370619c9e734e122c7a1a0a2fb4a6df30f5ca9567884bfece928cab314ecdb425e6195a1b154a6c15722c6c860946ad356b4a4b502
AUX boost-1.53.0-glibc-2.18-compat.patch 949 SHA256 54e5e0000bcfb249a14cee584e371c9f3aeeed8502d57541dd3b37396265cabd SHA512 dedc12603968d123acdb59da11ce309847ac3d49a2105e5d36e4151944f7271d8f333e58fc9e3d7097849d21b8e5b8527ba70842b88eabcde1bed2889ef84471 WHIRLPOOL a1bac4865b632277ed82591263c24795b8f8edd6571c69a178fd15a06f8a94554c0ac144e53c06c13ce5e9336ed62a52cf7c228af5bf62792a4a4635f13fd8d2
AUX boost-1.53.0-library_status.patch 1907 SHA256 21a3137fcac21f734c7160264523f8699eb242a84a79dcc88cc937f0b1f87e67 SHA512 f5579a8650c24d2ace95e8d9aaff94325090577fa27fd7122309f5197373ff22352092671153c6e35057757fa07ef9c21ea5e0234fe1d5b467ef65cf5f2901c5 WHIRLPOOL 5a0962b007adbbfe85c33f03b9542d9ebf1ef649bf1d97f483cba5b0229cea0630c0ed7912bab8f04d8dd791b99cfd6e33e222d3a983e30852d7a10fd66a3dc7
AUX boost-1.48.0-disable_icu_rpath.patch 1077 SHA256 26aba4b06789cff12b3f96ae3c269db9aae3eabe1acb62035e3217c3b27a89aa SHA512 013503fd16bcb609c624c9952a5448e612b81150db9ce60b5a51acbb57b62ce1cf0e7c5dd4a58c110ca7895c86effef24d8fe55ea3f316c9e47d5c549a33180c WHIRLPOOL ae630623f7f3cf6bec63c63b01b2e58cce5e3aecfebcf54144a9f0130dae0c10a94f7f11cd29734e52df2741fb62ed72983a35e4c1b854cf7c939fed5477c616
AUX boost-1.48.0-disable_libboost_python3.patch 1513 SHA256 3e0d634e7a9c03c02986abc6fdb39532aa22e4cf5236a25946251e29e769b405 SHA512 9a2b189530af9fa149203f0621b171461f11212306aeb4d94075a2896ed97abb12d47e6bc0429814405829244604044c2101ad34686a10b12ebe3536b2289ed7 WHIRLPOOL d4ad2e099ea443600b493d4f97047002c5f6d1be6607b03de22bfbf3abcccb8abd452403714811aede72be6462154d324a31c7189de627998f432d96750d56cd
AUX boost-1.48.0-no_strict_aliasing_python2.patch 745 SHA256 f355100a66059afc1c50b243e800a31c1c876c112f5ec7b6efb3c3480aca492b SHA512 ad4c7b8ec59154e2e9588b72a23453f4dc915eecc87a065b10eccc6f713e4a55270f0766bad7766c53dfb934e4d94a25d006567c9e18d0e7dc32649f5a601296 WHIRLPOOL c19224ecf056cfe82762b37a901458def62497a6c555a7236eea04746739ace0c5a6b4835956cab909f9f2f72e346ce6084cfb8ab0e9ad3b9510935db1737308
AUX boost-1.48.0-python_linking.patch 1282 SHA256 11d283d41767253a9cae3ff2526ed829f6333158e9460ba42f1215746d3c240c SHA512 9aff888908476107bde818f306fafd855408d214dd13abd3406339b911ba3c56a7a76ac2a549c63be16ba73a86275860fc1bf78c2fd976c872772b4199ecedb6 WHIRLPOOL aa89c864b800ba29c77e0ef82d1dd50ed007b36c02c4e6a005ccdae0ddafaf0491cce37801f5e574fb2830669f57b28d82c19edb719dc847eab4fd53043ac999
AUX boost-1.51.0-respect_python-buildid.patch 1577 SHA256 8a029d597a233eb7efff3fc1fa8c622f6d616f35185cd7e531669b9915247de8 SHA512 bbe7e586a95c615d51612bf0404c07179b07c33a33e67957af5056ff80f44c620f81244d7fe30519f08f2d19e1d87f8fa09fa32c7f5d37f6f13de4590c050731 WHIRLPOOL 8aa6115b15c4402cadfc42b825a145a2b61892211031431def5452ca73ce441adba197690ff7a85cf13a831f8ae8b016b97611b1e164351eb0707597d99d2fd8
AUX boost-1.51.0-support_dots_in_python-buildid.patch 617 SHA256 7c4e5dd3e0e148fde5f3b008d08160ebd71250aaa01c5e685d667e0cc296a054 SHA512 667452299f96ac3008340f901c6a5355956676b10f82134e650f8c8e06e7c6f8814c2b92d07e958c31b11e013601c0b3ad4020cdc35bbd558761fcd33bb68b3c WHIRLPOOL 26ddfe5c9473ce704b6ca11b9380148028e6a05f5ec62fbf4363d4ced0533d68190d000e975e1151acce67eef3a8430f2dba35a31605a97ff500752d367fb0e9
AUX boost-1.55.0-context-x32.patch 1077 SHA256 1da4ff48b98416cac601c52594d4c4da3fb89d0a3e8908f119f05cc8ae76f9c7 SHA512 0e2e45abe5833396508666355e26bafe114fa4ada628b24d8d9953268edddcb2f8e3dcfe8bc7f27d6c1794418990dc9ef914c936dfa64ed6e5e647a40e3f8a73 WHIRLPOOL 0b7a3521a8ec513b833d0292fa3e3bcafc8232fa96d2e41afd25da8dc30bdb49ee4319c7c8555d95e7d3de55fc704d83e443ba49bf89d6961a3f5af73c024a71
AUX boost-1.55.0-tools-c98-compat.patch 680 SHA256 08192ebf36a3087d3bce31d7b78c29c6e38bca6e5164744878783f648024beec SHA512 fc132898d9ef1a9fab607f277003f86080306fd0f30f89ab0916eb4c3217b390f15cfa00d1e410e79080d469714866a417ba72a3c0727189e8425cd72a1d6a47 WHIRLPOOL 17eb9e80ae33ef9fa8e4c442c511e35d1f5c2ac5251462931e9fbbd53bb29ef5adf699680729af71ef4c12ec87c6d83c821a8e30a03f7f1abedc2207c3125c1c
AUX boost-1.56.0-build-auto_index-tool.patch 408 SHA256 36bbd2652654b48c27eb4297d06968c8bdcdf78eec34127d775fad2b9689ac2a SHA512 916d7060003bceb6ee345de5fad9a4f44ec43473b119bab4cc057360d07b7be89bdab5e9d393df28171a4d1679ac0a3089f2096d5a6554ee2e00bc0805d2cbe2 WHIRLPOOL 172059b31b9128cda03e9119f6deac1a0fde373542e96493156f6e3527c65c7ec8fe16611568b0aed07b2f5ffc3440462386d47557ef7e84d855c8df2acbbea8
AUX remove-toolset-1.48.0.patch 396 SHA256 59af4c05d71def0b14e22a7a5f756a054ca82e3f9686b7668335af7d9bed28fa SHA512 bbb01be2e4b4807eeb19faf13fc6c73e3cb8843953586312076a15c67ad5c5cac683fc3fb26f4e2902c60ab7930e83922f4d499756a85f78a20ac53399329f61 WHIRLPOOL 2490dac69a45b3f48e2513b4f21d75dc7cf5361411541dde96f027c66ca459df5390708902c86f11577d1129410f52d20de1ff275524fb51083a17eee6adc332
DIST boost_1_52_0.tar.bz2 54421709 SHA256 222b6afd7723f396f5682c20130314a10196d3999feab5ba920d2a6bf53bac92 SHA512 fc512d3bfa6a39a60fee548775c97239271cf757587b8df7ed739c800844a819a359dca172be0e69ad7752753753139bf11f0813d650066d58386662fe32842d WHIRLPOOL 73bbab4a1d2a652200f4b5e669440a2afcebcea96a1139ecc75213067ca32d5cadb0f060bb0ec2e29e9e31272fb7ec9d2cb960801032ee6c5dcb86564766411d
DIST boost_1_53_0.tar.bz2 55765258 SHA256 f88a041b01882b0c9c5c05b39603ec8383fb881f772f6f9e6e6fd0e0cddb9196 SHA512 8cd7806653cb6ea4a1c6862796ef698de5ae0bdbda96954fedbe090c59e3e6cb8f8d385df35183e9063ac4e2c2fccf10744516c47a994cde5f1d1cba1b07e522 WHIRLPOOL e8c5ed6b34dd5f68dc7e102a9e22b302616a65077d3f4af370ece6352b02a866e04294a4fc76bbd5555b6a4131f590e6455e6a74b5f12c4ffc2dd15af0bc8746
DIST boost_1_54_0.tar.bz2 57873778 SHA256 047e927de336af106a24bceba30069980c191529fd76b8dff8eb9a328b48ae1d SHA512 3467a2bb9b4797cadfc52150cb036939ef35263f421870897dbe9492d1504a714805668a193b0811fdaf39a3527ee693ff70da5b942d7ab11b307e2e693e1760 WHIRLPOOL dbe3cbecaccf86ca184cf73cff75c17d6307b680bab098e38a9efd24d17776481e597017fc9f8fc8f488495f315c6d2b14b9212c51cf98529c302482bf67e92a
DIST boost_1_55_0.tar.bz2 58146647 SHA256 fff00023dd79486d444c8e29922f4072e1d451fc5a4d2b6075852ead7f2b7b52 SHA512 dc606477f4c303e8f40de2586c16394b6d758e198b35bf3a7d3e576a2f49171aadc4f95e8d685fa731bc4e61e19869d5a24e1e816febfca9de078d66e096e041 WHIRLPOOL 6ae111d6a956651bd91914432b743faffeb466703191b05193db47f02fd3528a14ce200f26c1ab77bf2c68994eb5b135b0176f66a746964d334b4793ba113ad5
DIST boost_1_56_0.tar.bz2 94777674 SHA256 134732acaf3a6e7eba85988118d943f0fa6b7f0850f65131fff89823ad30ff1d SHA512 1ce9871c3a2519682538a5f1331938b948123432d99aea0ce026958cbebd25d84019a3a28c452724b9693df98a8d1264bb2d93d2fee508453f8b42836e67481e WHIRLPOOL e9e9bb965816b687141d55bc026e378a56ed577a2bf0bdad61a1736e7f11d1797e0cac0185a1fa25b6c4b9fe1f75cbb0bb73a5ea05e84d59385bb3b17a90fd12
DIST boost_1_57_0.tar.bz2 60821561 SHA256 910c8c022a33ccec7f088bd65d4f14b466588dda94ba2124e78b8c57db264967 SHA512 61881440fd89644c43c6e3bc6292e9fed75a6d3a76f98654b189d0ed4e1087d77b585884e882270c08bf9f7132b173bfc1fde05848e06aa78ba7f1008d10714d WHIRLPOOL ff092af332434082a774645a5eb42829cdbdac805ef86dccce8988542062901524bd4d5fc890e3a9c01f0a721047501e5d8b13d50ffa5368066c3438dcf719d6
EBUILD boost-1.52.0-r7.ebuild 10071 SHA256 8a8600c6c8d2215d1d06c54502d356a5c25082ea89383bb9159bbfe9d8f025f6 SHA512 e52568b9c21a6b8600c43c7a4aac2daa3d2886b27363b460dcdbf5e2a769c76ba898b2e0ad7c549b5f77e882d77cd46bb895ed4213b385bb1b1195fbc740aca9 WHIRLPOOL 3d9a9e0b71a8d0902255b624b2ddac7b36255eced24fcad6e86f9d3e7730917164ade36ec9ce3eff91da0bd647e4d69bad683f747186f03e33d4d71cf59532ee
EBUILD boost-1.53.0-r1.ebuild 10582 SHA256 1a20b104d5ee5b90b5dd355709cb28fcf4486a14c6e7fd5b5762975be5f3eff1 SHA512 8db1c43c04b89301c6dda86654c4d1420ecd4d401d8a1048e51ae714dd38445a71a13d77d40fa4d09ff273874cd198adc078f5b5897236f26d50b7223ddec5ff WHIRLPOOL 43536a631b4059b34253a97d4e69100731b67f7b2bdd29fdaba5616c8c659ecddc6dd76144ffdd0e532fc0e11b500fd6edb53edfff997af7c9c14f79a625b868
EBUILD boost-1.54.0-r1.ebuild 10602 SHA256 b7f96bd26221c2a890839378da8803d058bfef241e74dd7af900340336b58a24 SHA512 2d1a0c8e80f74030d9773049cb6e2082d2f5a9d6dd1512f8ee25904d331a72a733feec71b8554a4801558e508782c2d15598d3f31f523818061374dd8c25951d WHIRLPOOL b1ff7d73ed103922297c7af9db25545184e99bbafeb3ee40ce4bd458ea7cbdbaf4a460c37825e1551f15cda31e2c081cc93f8dd43923f6b5ad9aee01a03abd3f
EBUILD boost-1.55.0-r2.ebuild 11312 SHA256 2570e7d6d1ae6bd2b98ac35c8fb6fffff841a500d6829d5abf9f946b1b39dc10 SHA512 63ee682989487042f7371eaaf59666b99d0a4d6bb0cf97adb6fe5770aca29e61229f42af44a26ac751e214b02047e7a264404f717edc31f2cd483726c14dc995 WHIRLPOOL a139bec8af17a79ef3662106d7ebf8656391fa8063331d6a72d4289b3d0a6ebaaf1fd78d6c37eb093ef71f177c7839103490a46d5903ab845e63c0b378f01c5e
EBUILD boost-1.56.0-r1.ebuild 11857 SHA256 db3079b88c717a576589ffc2114939c6fbe62bfd44a47ff697daeea43b3934ba SHA512 35d27c24f73b05a36b66a3e392e9a6f5170971d792be6bce0f9022813d3f95ebe463e56d2ef14d4b946a34501293e70d29019347fe96fd729f50725304315263 WHIRLPOOL 0ff3ada64fd7686de936c891cb2e9ff74e1b31d59bd0fc6cd2e85c09410281bca080301411596ed695b7aada646e8e49e6a8f31b6e32544f9dd118f74387210d
EBUILD boost-1.57.0.ebuild 11854 SHA256 9e544f22ce30612be9c5264f30fce874f3dff569fe17ab6b48895f18e14b60d3 SHA512 f250657a1af67c7a7dfbeff32d3f82d0fd32a177055da71654f0d124eb53a57013ec75628e96d08a55396fb9c12a916195eadb04311a732aa37da4f9ae7c166e WHIRLPOOL a3084e0e71ada473992d7096bdbd54d2750eda6ab9fa3839de7f6fabf7022c5363a42b5fbb200abf901a218c0d58844e9de9580920299301ac47b19e17bf695f
MISC ChangeLog 59176 SHA256 285a52bae9f630829ff5191988d4d25a9b435cfd925e8a2c4b00c125c42c7c35 SHA512 2c35a9dca015eb37ae581d72c9394dca0fe12fb40458bd3a2b24f3da1296b7f77b861ea00423624e65a6bba7eb86826bdb93c29112c9c83abc0fb4d8828c06c6 WHIRLPOOL 326d741931ffa05d6c373ea89285e43f4d6df868a25c92849b95811bbe8e34ec127840765deeed50555367161a39fe85d5fb2ed1c97cea771e08e98637699232
MISC metadata.xml 1363 SHA256 81717d0ffd5ebadbe4b12d4a38b332f3128da205a46e3cfd201e91f6ad474d68 SHA512 162040a40e83cceacea3605d45bc846cbd721446949c66bd836ab54e113ada77f1f462c7e61d7e544bc073920475db6b81c104390d6c83aba7228d65ff270419 WHIRLPOOL be141d041846a3a79efb7579c3f842960afe27a6e29659bad88ae8e999aef30074d2ab23c9eb295152d88f75d80efc86fed1c08c11b4f3f0d5e866b6d3c4802c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVPjN0AAoJECo/aRed9267zR0H/3CET9ttEElduaCuZIjorOsp
MFSGr2/R2uduojaLqyxuZ/2l9RtAJMhiQ+c1jaMekZB8tNupslsLk18ooS8INDW2
TdXOsTZeGhfzMl4kH3Sez5eOSF2ZkROQEQV1Pz0joaVbuC84VUqcMl2DYR859sSI
EbIXsbxwwPyzIywG0krx/4YihDFxcxhu8jo+t5NdTE3cP2cJ3ASTOOZgARiJHilI
MBOaEQM+PUySDaMxNnDyAEgyv0m6CbjR2UmuStd4a8XDI0lQl+qkTaAGIVRBoSix
570i7FhoRC4vBjitkb+/5pXy8hq/h3i/bLwwt16O17tVkgMK+WU1BH8YFqDA7/Y=
=SIzI
-----END PGP SIGNATURE-----
AUX boost-1.56.0-build-auto_index-tool.patch 412 SHA256 02cbad68d52513860ffbdc2e56be1087dd0bd73423b9b51b122bdc015dbd4a4c SHA512 9fe245adddf76375d0ee8066952c46d229c9e37fdce83ff608fcc1fb5942b1c226a0fba6e28f859bbcd58863dc49a356f32c7fcc3b90baca4069c6bdc9c0f203 WHIRLPOOL 4a55212ce969b389c1288496448114b131c70c92f6a4e26c8667c0d24138cdd813026b3a19698667e5aa0418cca9f690820017de06a19376fd63e00898a1d555
AUX boost-1.63.0-fix-python.patch 4210 SHA256 7291f343d66c0493da130811e720d2e56b33b321b5b583d9aec1af79651e8c6b SHA512 0f390cae5a53f48f548e65149aaca4b1191ca6610863e7e471686556107c8ac398eb4bcad71a92849e941cad031cec9cbd543c646ee122238579ca881c420aad WHIRLPOOL 6bbf8a8cb0d3e431f3655b95d5262b9103c6da3259c7a884f45641b6401df06de81978433f9f5ea0411a445bdd1439dc72ed1f275ff21885cc74276e771643e8
DIST boost_1_62_0.tar.bz2 84513338 SHA256 36c96b0f6155c98404091d8ceb48319a28279ca0333fba1ad8611eb90afb2ca0 SHA512 5385ae3d5255a433a704169ad454d8dc2b0b5bcae3fb23defd6570df4ff7d845cf9fcbeebccdc1c5db0eec9f82ee3d90040de9507c8167467c635d3b215463be WHIRLPOOL 49c4558d5e6d72084f083a76217e3d97b504f112d7e4d228eded72dc49fa7e675ba943a9fc52a3c27d296ee689aee27d4566796c6eae71cf647430285777c0fb
DIST boost_1_63_0.tar.bz2 81984414 SHA256 beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0 SHA512 c915c5f5778dee49b8e9d0a40f37f90f56fb1fdb1d8ce92d97bf48bc7bc462212487badfe4bbe30b06196d1149cfb221da12ac54e97499b0d4cb6466813bb4ad WHIRLPOOL 28c241785097272a1e0952e529eef082444e4ef35a8d738161e4a491a986d75359d3afe888b2ea91a4a81b6ec7a5772ebea337c9d09377b43f6eed66cac90378
EBUILD boost-1.62.0-r1.ebuild 12708 SHA256 c6a95b6d650ece1ac0cb2173e41cb1334160a192ed1d81b423bf80fa8593bd30 SHA512 184f3410137d876afaf09a7090a35911c2e87884469c0c5ddc02627b4f88fc6188813a9c085127d745846b1355254553a2dc311373fbadd4f00c265913d4f946 WHIRLPOOL 33e9304cfe65ebe8bcebea796dbac41bf7e140b547ec9d5786648cb45a225ed46ef0256e27b200b666be864affe958caba16a5635d58ea51bf31d042cdb9b8a6
EBUILD boost-1.63.0.ebuild 12474 SHA256 5d0cd584190f4441d05bf0bea3f10cc176633506114e461a5fba96983b1a68c1 SHA512 106d2a09bd0aed68755aed40b36fd3f71e64a4ef795d2213e38bed787cc4387ca3db362a1a73c0ba4a7e3877e83d47a2db70a8e2b1c654e648981ca0c56b2007 WHIRLPOOL 7cac1cb05aa9109cbc2be04bc0332bd1190b91f8385d06cff1f9858fb38c79797d3097c8eb46aa0143272dcc3fa54a0f4033037d78f65b28150a71fa37b2d8cf
MISC ChangeLog 9975 SHA256 642cfd545560930656783f915297a280e467394d4d2c53a5f81485893701b6ed SHA512 36a87862bce59e58f7af6d02c6eca9fd9169ac7f4736417f64aa941141c800d80c8979c0ed4cd62e55a22f2bcd1a6803bc5daa8393c2f3e9f23060aefafa0c1b WHIRLPOOL e76c059fba7246adcb3e48d0b7f8b58f61ec4e1f95d82d7af4ba021e29fd1a34b9a95b415f7f98d6f03a0e86f549e22f2178ee36e14ace177d73e78d5c6c9697
MISC ChangeLog-2015 60992 SHA256 f3b1d8b8c4ad6bd080f9b3d18ccb1cc360d47864f4afc95992e171d475d682a1 SHA512 6f29b95e625e1a8a8a7ea2578f07b543329e007443f3b4926e07c913ab21336e1b1332084b090354dcd9899b6f0aa9012b92e0cb5e0457733da4a47da86a818f WHIRLPOOL e11113ea0a8eda558457c7018283f274d10df473c116da67126640d56b49107e05326e0a8a3ef4f9043a22e2fc91f151c1cbed71bfe41cac52f5467e12a7e1d8
MISC metadata.xml 1526 SHA256 f5787558fba8e3619029fd1b86b62171767b6eb817cd004732e8ac35fc3bb9fd SHA512 4ba131f2492ae41f642a28dd69e5bd1d5d79c013e42a6c18ba135b36d470990ea20c8aa7cec6e3cb1d6ea8d7f6b6a5b45efb4b3dcba198bcf43809eff0f65ae6 WHIRLPOOL 11ade1e1b81bfc061f45a2ad723e4d8e2fbac090eaff04f9b837fe68f2d891ab95d555068754a323ebfde253186deef79d18713be85e12c816d12c7773776903

View File

@ -1,352 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.52.0-r7.ebuild,v 1.14 2015/04/27 13:02:44 pinkbyte Exp $
EAPI="5"
PYTHON_COMPAT=( python{2_7,3_3} )
inherit eutils flag-o-matic multilib multiprocessing python-r1 toolchain-funcs versionator
MY_P=${PN}_$(replace_all_version_separators _)
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
MAJOR_V="$(get_version_component_range 1-2)"
SLOT="0/${MAJOR_V}"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
IUSE="debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="icu? ( >=dev-libs/icu-3.6:= )
!icu? ( virtual/libiconv )
mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) )
python? ( ${PYTHON_DEPS} )
app-arch/bzip2
sys-libs/zlib
!app-admin/eselect-boost"
DEPEND="${RDEPEND}
=dev-util/boost-build-1.52.0*"
REQUIRED_USE="mpi? ( threads )"
S="${WORKDIR}/${MY_P}"
create_user-config.jam() {
local compiler compiler_version compiler_executable
if [[ ${CHOST} == *-darwin* ]]; then
compiler="darwin"
compiler_version="$(gcc-fullversion)"
compiler_executable="$(tc-getCXX)"
else
compiler="gcc"
compiler_version="$(gcc-version)"
compiler_executable="$(tc-getCXX)"
fi
local mpi_configuration python_configuration
if use mpi; then
mpi_configuration="using mpi ;"
fi
if use python; then
python_configuration="using python : : ${PYTHON} ;"
fi
cat > user-config.jam << __EOF__
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CFLAGS}" <cxxflags>"${CXXFLAGS}" <linkflags>"${LDFLAGS}" ;
${mpi_configuration}
${python_configuration}
__EOF__
}
pkg_setup() {
# Bail out on unsupported build configuration, bug #456792
if [[ -f "${EROOT}etc/site-config.jam" ]]; then
grep -q gentoorelease "${EROOT}etc/site-config.jam" && grep -q gentoodebug "${EROOT}etc/site-config.jam" ||
(
eerror "You are using custom ${EROOT}etc/site-config.jam without defined gentoorelease/gentoodebug targets."
eerror "Boost can not be built in such configuration."
eerror "Please, either remove this file or add targets from ${EROOT}usr/share/boost-build/site-config.jam to it."
die
)
fi
}
src_prepare() {
epatch \
"${FILESDIR}/${PN}-1.48.0-mpi_python3.patch" \
"${FILESDIR}/${PN}-1.51.0-respect_python-buildid.patch" \
"${FILESDIR}/${PN}-1.51.0-support_dots_in_python-buildid.patch" \
"${FILESDIR}/${PN}-1.48.0-no_strict_aliasing_python2.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_libboost_python3.patch" \
"${FILESDIR}/${PN}-1.48.0-python_linking.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch" \
"${FILESDIR}/remove-toolset-1.48.0.patch" \
"${FILESDIR}/${PN}-1.52.0-tuple.patch" \
"${FILESDIR}/${P}-locale-utf.patch" \
"${FILESDIR}/${PN}-1.52.0-threads.patch" \
"${FILESDIR}/${PN}-1.53.0-glibc-2.18-compat.patch" # bug 482372
# Avoid a patch for now
for file in libs/context/src/asm/*.S; do
cat - >> $file <<EOF
#if defined(__linux__) && defined(__ELF__)
.section .note.GNU-stack,"",%progbits
#endif
EOF
done
epatch_user
}
ejam() {
echo b2 "$@"
b2 "$@"
}
src_configure() {
# Workaround for too many parallel processes requested, bug #506064
[ "$(makeopts_jobs)" -gt 64 ] && MAKEOPTS="${MAKEOPTS} -j64"
OPTIONS="$(usex debug gentoodebug gentoorelease) -j$(makeopts_jobs) -q -d+2 --user-config=${S}/user-config.jam"
if [[ ${CHOST} == *-darwin* ]]; then
# We need to add the prefix, and in two cases this exceeds, so prepare
# for the largest possible space allocation.
append-ldflags -Wl,-headerpad_max_install_names
fi
# bug 298489
if use ppc || use ppc64; then
[[ $(gcc-version) > 4.3 ]] && append-flags -mno-altivec
fi
# Do _not_ use C++11 yet, make sure to force GNU C++ 98 standard.
append-cxxflags -std=gnu++98
use icu && OPTIONS+=" -sICU_PATH=/usr"
use icu || OPTIONS+=" --disable-icu boost.locale.icu=off"
use mpi || OPTIONS+=" --without-mpi"
use python || OPTIONS+=" --without-python"
use nls || OPTIONS+=" --without-locale"
OPTIONS+=" pch=off --boost-build=/usr/share/boost-build --prefix=\"${D}usr\" --layout=system threading=$(usex threads multi single) link=$(usex static-libs shared,static shared) --without-context"
}
src_compile() {
export BOOST_ROOT="${S}"
PYTHON_DIRS=""
MPI_PYTHON_MODULE=""
building() {
create_user-config.jam
ejam ${OPTIONS} \
$(use python && echo --python-buildid=${EPYTHON#python}) \
|| die "Building of Boost libraries failed"
if use python; then
if [[ -z "${PYTHON_DIRS}" ]]; then
PYTHON_DIRS="$(find bin.v2/libs -name python | sort)"
else
if [[ "${PYTHON_DIRS}" != "$(find bin.v2/libs -name python | sort)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
local dir
for dir in ${PYTHON_DIRS}; do
mv ${dir} ${dir}-${EPYTHON} \
|| die "Renaming of '${dir}' to '${dir}-${EPYTHON}' failed"
done
if use mpi; then
if [[ -z "${MPI_PYTHON_MODULE}" ]]; then
MPI_PYTHON_MODULE="$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)"
if [[ "$(echo "${MPI_PYTHON_MODULE}" | wc -l)" -ne 1 ]]; then
die "Multiple mpi.so files found"
fi
else
if [[ "${MPI_PYTHON_MODULE}" != "$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
mv stage/lib/mpi.so stage/lib/mpi.so-${EPYTHON} \
|| die "Renaming of 'stage/lib/mpi.so' to 'stage/lib/mpi.so-${EPYTHON}' failed"
fi
fi
}
if use python; then
python_foreach_impl building
else
building
fi
if use tools; then
pushd tools > /dev/null || die
ejam ${OPTIONS} \
|| die "Building of Boost tools failed"
popd > /dev/null || die
fi
}
src_install () {
installation() {
create_user-config.jam
if use python; then
local dir
for dir in ${PYTHON_DIRS}; do
cp -pr ${dir}-${EPYTHON} ${dir} \
|| die "Copying of '${dir}-${EPYTHON}' to '${dir}' failed"
done
if use mpi; then
cp -p stage/lib/mpi.so-${EPYTHON} "${MPI_PYTHON_MODULE}" \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to '${MPI_PYTHON_MODULE}' failed"
cp -p stage/lib/mpi.so-${EPYTHON} stage/lib/mpi.so \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to 'stage/lib/mpi.so' failed"
fi
fi
ejam ${OPTIONS} \
--includedir="${D}usr/include" \
--libdir="${D}usr/$(get_libdir)" \
$(use python && echo --python-buildid=${EPYTHON#python}) \
install || die "Installation of Boost libraries failed"
if use python; then
rm -r ${PYTHON_DIRS} || die
# Move mpi.so Python module to Python site-packages directory.
# https://svn.boost.org/trac/boost/ticket/2838
if use mpi; then
local moddir=$(python_get_sitedir)/boost
dodir "${moddir}"
mv "${D}usr/$(get_libdir)/mpi.so" "${D}${moddir}" || die
cat << EOF > "${D}${moddir}/__init__.py" || die
import sys
if sys.platform.startswith('linux'):
import DLFCN
flags = sys.getdlopenflags()
sys.setdlopenflags(DLFCN.RTLD_NOW | DLFCN.RTLD_GLOBAL)
from . import mpi
sys.setdlopenflags(flags)
del DLFCN, flags
else:
from . import mpi
del sys
EOF
fi
python_optimize
fi
}
if use python; then
python_foreach_impl installation
else
installation
fi
if ! use python; then
rm -r "${D}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${D}"/usr/include/boost/locale || die
fi
rm -r "${D}"/usr/include/boost/context || die
if use doc; then
find libs/*/* -iname "test" -or -iname "src" | xargs rm -rf
dohtml \
-A pdf,txt,cpp,hpp \
*.{htm,html,png,css} \
-r doc
dohtml -A pdf,txt -r tools
insinto /usr/share/doc/${PF}/html
doins -r libs
doins -r more
# To avoid broken links
insinto /usr/share/doc/${PF}/html
doins LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
pushd "${D}usr/$(get_libdir)" > /dev/null || die
local ext=$(get_libname)
if use threads; then
local f
for f in *${ext}; do
dosym ${f} /usr/$(get_libdir)/${f/${ext}/-mt${ext}}
done
fi
popd > /dev/null || die
if use tools; then
dobin dist/bin/*
insinto /usr/share
doins -r dist/share/boostbook
fi
# boost's build system truely sucks for not having a destdir. Because for
# this reason we are forced to build with a prefix that includes the
# DESTROOT, dynamic libraries on Darwin end messed up, referencing the
# DESTROOT instread of the actual EPREFIX. There is no way out of here
# but to do it the dirty way of manually setting the right install_names.
if [[ ${CHOST} == *-darwin* ]]; then
einfo "Working around completely broken build-system(tm)"
local d
for d in "${ED}"usr/lib/*.dylib; do
if [[ -f ${d} ]]; then
# fix the "soname"
ebegin " correcting install_name of ${d#${ED}}"
install_name_tool -id "/${d#${D}}" "${d}"
eend $?
# fix references to other libs
refs=$(otool -XL "${d}" | \
sed -e '1d' -e 's/^\t//' | \
grep "^libboost_" | \
cut -f1 -d' ')
local r
for r in ${refs}; do
ebegin " correcting reference to ${r}"
install_name_tool -change \
"${r}" \
"${EPREFIX}/usr/lib/${r}" \
"${d}"
eend $?
done
fi
done
fi
}
pkg_preinst() {
# Yai for having symlinks that are nigh-impossible to remove without
# resorting to dirty hacks like these. Removes lingering symlinks
# from the slotted versions.
local symlink
for symlink in "${EROOT}usr/include/boost" "${EROOT}usr/share/boostbook"; do
[[ -L ${symlink} ]] && rm -f "${symlink}"
done
}
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
src_test() { :; }

View File

@ -1,9 +1,8 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.56.0-r1.ebuild,v 1.6 2015/04/08 17:51:55 mgorny Exp $
EAPI="5"
PYTHON_COMPAT=( python{2_7,3_3,3_4} )
PYTHON_COMPAT=( python{2_7,3_4} )
inherit eutils flag-o-matic multilib multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
@ -16,7 +15,7 @@ SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
@ -75,10 +74,19 @@ create_user-config.jam() {
fi
if python_bindings_needed; then
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
python_configuration="using python : : ${PYTHON} ;"
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
@ -113,7 +121,9 @@ src_prepare() {
"${FILESDIR}/${PN}-1.55.0-context-x32.patch" \
"${FILESDIR}/${PN}-1.55.0-tools-c98-compat.patch" \
"${FILESDIR}/${PN}-1.52.0-threads.patch" \
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch" \
"${FILESDIR}/${PN}-1.55.0-variadic-templates.patch" \
"${FILESDIR}/${PN}-1.56.0-atomic.patch"
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507

View File

@ -1,9 +1,8 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.57.0.ebuild,v 1.4 2015/04/08 17:51:55 mgorny Exp $
EAPI="5"
PYTHON_COMPAT=( python{2_7,3_3,3_4} )
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
inherit eutils flag-o-matic multilib multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
@ -20,8 +19,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~spa
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="abi_x86_32? ( !app-emulation/emul-linux-x86-cpplibs[-abi_x86_32(-)] )
icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
RDEPEND="icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
mpi? ( virtual/mpi[cxx,threads] )
python? ( ${PYTHON_DEPS} )
@ -75,10 +73,19 @@ create_user-config.jam() {
fi
if python_bindings_needed; then
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
python_configuration="using python : : ${PYTHON} ;"
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
@ -111,9 +118,9 @@ src_prepare() {
"${FILESDIR}/${PN}-1.48.0-python_linking.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch" \
"${FILESDIR}/${PN}-1.55.0-context-x32.patch" \
"${FILESDIR}/${PN}-1.55.0-tools-c98-compat.patch" \
"${FILESDIR}/${PN}-1.52.0-threads.patch" \
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch" \
"${FILESDIR}/${PN}-1.58.0-fix-non-constexpr-types-regression.patch"
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507
@ -254,6 +261,7 @@ multilib_src_install_all() {
if ! use context; then
rm -r "${ED}"/usr/include/boost/context || die
rm -r "${ED}"/usr/include/boost/coroutine || die
rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
fi
if use doc; then

View File

@ -1,11 +1,10 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.55.0-r2.ebuild,v 1.15 2015/04/16 12:55:41 zlogene Exp $
EAPI="5"
PYTHON_COMPAT=( python{2_7,3_3,3_4} )
EAPI="6"
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
inherit eutils flag-o-matic multilib multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
inherit eutils flag-o-matic multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
MY_P="${PN}_$(replace_all_version_separators _)"
MAJOR_V="$(get_version_component_range 1-2)"
@ -16,12 +15,11 @@ SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="abi_x86_32? ( !app-emulation/emul-linux-x86-cpplibs[-abi_x86_32(-)] )
icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
RDEPEND="icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
mpi? ( virtual/mpi[cxx,threads] )
python? ( ${PYTHON_DEPS} )
@ -75,7 +73,20 @@ create_user-config.jam() {
fi
if python_bindings_needed; then
python_configuration="using python : : ${PYTHON} ;"
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
cat > "${BOOST_ROOT}/user-config.jam" << __EOF__
@ -107,10 +118,13 @@ src_prepare() {
"${FILESDIR}/${PN}-1.48.0-python_linking.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch" \
"${FILESDIR}/${PN}-1.55.0-context-x32.patch" \
"${FILESDIR}/${PN}-1.55.0-tools-c98-compat.patch" \
"${FILESDIR}/${PN}-1.52.0-threads.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
epatch_user
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507
sed -i -e 's:wave/build//wave::' tools/Jamfile.v2 || die
eapply_user
multilib_copy_sources
}
@ -244,23 +258,20 @@ multilib_src_install_all() {
if ! use context; then
rm -r "${ED}"/usr/include/boost/context || die
rm -r "${ED}"/usr/include/boost/coroutine || die
rm -r "${ED}"/usr/include/boost/coroutine{,2} || die
rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
fi
if use doc; then
find libs/*/* -iname "test" -or -iname "src" | xargs rm -rf
dohtml \
-A pdf,txt,cpp,hpp \
*.{htm,html,png,css} \
-r doc
dohtml -A pdf,txt -r tools
insinto /usr/share/doc/${PF}/html
doins -r libs
doins -r more
find doc -name Jamfile.v2 -or -name build -or -name *.manifest | xargs rm -f
find tools -name Jamfile.v2 -or -name src -or -name *.cpp -or -name *.hpp | xargs rm -rf
docinto html
dodoc *.{htm,html,png,css}
dodoc -r doc libs more tools
# To avoid broken links
insinto /usr/share/doc/${PF}/html
doins LICENSE_1_0.txt
dodoc LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi

View File

@ -1,30 +1,30 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.53.0-r1.ebuild,v 1.8 2015/04/08 17:51:55 mgorny Exp $
EAPI="5"
PYTHON_COMPAT=( python{2_7,3_3} )
EAPI="6"
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
inherit eutils flag-o-matic multilib multiprocessing python-r1 toolchain-funcs versionator
inherit eutils flag-o-matic multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
MY_P=${PN}_$(replace_all_version_separators _)
MY_P="${PN}_$(replace_all_version_separators _)"
MAJOR_V="$(get_version_component_range 1-2)"
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
MAJOR_V="$(get_version_component_range 1-2)"
SLOT="0/${MAJOR_V}"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-fbsd ~x86-linux"
IUSE="debug doc icu +nls mpi python static-libs +threads tools"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
RDEPEND="icu? ( >=dev-libs/icu-3.6:= )
!icu? ( virtual/libiconv )
mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) )
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
mpi? ( virtual/mpi[cxx,threads] )
python? ( ${PYTHON_DEPS} )
app-arch/bzip2
sys-libs/zlib
app-arch/bzip2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
!app-admin/eselect-boost"
DEPEND="${RDEPEND}
=dev-util/boost-build-${MAJOR_V}*"
@ -34,6 +34,39 @@ REQUIRED_USE="
S="${WORKDIR}/${MY_P}"
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${PN}-1.51.0-respect_python-buildid.patch"
"${FILESDIR}/${PN}-1.51.0-support_dots_in_python-buildid.patch"
"${FILESDIR}/${PN}-1.48.0-no_strict_aliasing_python2.patch"
"${FILESDIR}/${PN}-1.48.0-disable_libboost_python3.patch"
"${FILESDIR}/${PN}-1.48.0-python_linking.patch"
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch"
"${FILESDIR}/${PN}-1.55.0-context-x32.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
"${FILESDIR}/${PN}-1.60.0-deprecated-header-ice_not.patch"
"${FILESDIR}/${PN}-1.60.0-auto-pointer-python.patch"
)
python_bindings_needed() {
multilib_is_native_abi && use python
}
tools_needed() {
multilib_is_native_abi && use tools
}
# MPI stuff is not ported on multilib yet, disabling it for non-native ABIs
mpi_needed() {
multilib_is_native_abi && use mpi
}
create_user-config.jam() {
local compiler compiler_version compiler_executable
@ -48,15 +81,28 @@ create_user-config.jam() {
fi
local mpi_configuration python_configuration
if use mpi; then
if mpi_needed; then
mpi_configuration="using mpi ;"
fi
if use python; then
python_configuration="using python : : ${PYTHON} ;"
if python_bindings_needed; then
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
cat > user-config.jam << __EOF__
cat > "${BOOST_ROOT}/user-config.jam" << __EOF__
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CFLAGS}" <cxxflags>"${CXXFLAGS}" <linkflags>"${LDFLAGS}" ;
${mpi_configuration}
${python_configuration}
@ -77,41 +123,26 @@ pkg_setup() {
}
src_prepare() {
epatch \
"${FILESDIR}/${PN}-1.48.0-mpi_python3.patch" \
"${FILESDIR}/${PN}-1.51.0-respect_python-buildid.patch" \
"${FILESDIR}/${PN}-1.51.0-support_dots_in_python-buildid.patch" \
"${FILESDIR}/${PN}-1.48.0-no_strict_aliasing_python2.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_libboost_python3.patch" \
"${FILESDIR}/${PN}-1.48.0-python_linking.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch"
epatch "${FILESDIR}/${PN}-1.53.0-library_status.patch" # bug 459112
epatch "${FILESDIR}/${PN}-1.53.0-glibc-2.18-compat.patch" # bug 482372
epatch "${FILESDIR}/${PN}-1.52.0-threads.patch"
default
# Avoid a patch for now
for file in libs/context/src/asm/*.S; do
cat - >> $file <<EOF
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507
sed -i -e 's:wave/build//wave::' tools/Jamfile.v2 || die
#if defined(__linux__) && defined(__ELF__)
.section .note.GNU-stack,"",%progbits
#endif
EOF
done
epatch_user
multilib_copy_sources
}
ejam() {
echo b2 "$@"
b2 "$@"
local b2_opts="--user-config=${BOOST_ROOT}/user-config.jam $@"
echo b2 ${b2_opts}
b2 ${b2_opts}
}
src_configure() {
# Workaround for too many parallel processes requested, bug #506064
[ "$(makeopts_jobs)" -gt 64 ] && MAKEOPTS="${MAKEOPTS} -j64"
OPTIONS="$(usex debug gentoodebug gentoorelease) -j$(makeopts_jobs) -q -d+2 --user-config=${S}/user-config.jam"
OPTIONS="$(usex debug gentoodebug gentoorelease) -j$(makeopts_jobs) -q -d+2"
if [[ ${CHOST} == *-darwin* ]]; then
# We need to add the prefix, and in two cases this exceeds, so prepare
@ -138,29 +169,39 @@ src_configure() {
use icu && OPTIONS+=" -sICU_PATH=${EPREFIX}/usr"
use icu || OPTIONS+=" --disable-icu boost.locale.icu=off"
use mpi || OPTIONS+=" --without-mpi"
use python || OPTIONS+=" --without-python"
mpi_needed || OPTIONS+=" --without-mpi"
use nls || OPTIONS+=" --without-locale"
use context || OPTIONS+=" --without-context --without-coroutine --without-coroutine2"
OPTIONS+=" pch=off --boost-build=${EPREFIX}/usr/share/boost-build --prefix=\"${ED}usr\" --layout=system threading=$(usex threads multi single) link=$(usex static-libs shared,static shared)"
OPTIONS+=" --without-context"
OPTIONS+=" pch=off"
OPTIONS+=" --boost-build=\"${EPREFIX}\"/usr/share/boost-build --prefix=\"${ED}usr\""
OPTIONS+=" --layout=system"
OPTIONS+=" threading=$(usex threads multi single) link=$(usex static-libs shared,static shared)"
[[ ${CHOST} == *-winnt* ]] && OPTIONS+=" -sNO_BZIP2=1"
}
src_compile() {
export BOOST_ROOT="${S}"
multilib_src_compile() {
local -x BOOST_ROOT="${BUILD_DIR}"
PYTHON_DIRS=""
MPI_PYTHON_MODULE=""
building() {
create_user-config.jam
ejam ${OPTIONS} \
$(use python && echo --python-buildid=${EPYTHON#python}) \
local PYTHON_OPTIONS
if python_bindings_needed; then
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
${OPTIONS} \
${PYTHON_OPTIONS} \
|| die "Building of Boost libraries failed"
if use python; then
if python_bindings_needed; then
if [[ -z "${PYTHON_DIRS}" ]]; then
PYTHON_DIRS="$(find bin.v2/libs -name python | sort)"
else
@ -175,7 +216,7 @@ src_compile() {
|| die "Renaming of '${dir}' to '${dir}-${EPYTHON}' failed"
done
if use mpi; then
if mpi_needed; then
if [[ -z "${MPI_PYTHON_MODULE}" ]]; then
MPI_PYTHON_MODULE="$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)"
if [[ "$(echo "${MPI_PYTHON_MODULE}" | wc -l)" -ne 1 ]]; then
@ -192,52 +233,90 @@ src_compile() {
fi
fi
}
if use python; then
if python_bindings_needed; then
python_foreach_impl building
else
building
fi
if use tools; then
if tools_needed; then
pushd tools > /dev/null || die
ejam ${OPTIONS} \
ejam \
${OPTIONS} \
${PYTHON_OPTIONS} \
|| die "Building of Boost tools failed"
popd > /dev/null || die
fi
}
src_install () {
multilib_src_install_all() {
if ! use python; then
rm -r "${ED}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${ED}"/usr/include/boost/locale || die
fi
if ! use context; then
rm -r "${ED}"/usr/include/boost/context || die
rm -r "${ED}"/usr/include/boost/coroutine{,2} || die
rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
fi
if use doc; then
find libs/*/* -iname "test" -or -iname "src" | xargs rm -rf
find doc -name Jamfile.v2 -or -name build -or -name *.manifest | xargs rm -f
find tools -name Jamfile.v2 -or -name src -or -name *.cpp -or -name *.hpp | xargs rm -rf
docinto html
dodoc *.{htm,html,png,css}
dodoc -r doc libs more tools
# To avoid broken links
dodoc LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
}
multilib_src_install() {
local -x BOOST_ROOT="${BUILD_DIR}"
installation() {
create_user-config.jam
if use python; then
local PYTHON_OPTIONS
if python_bindings_needed; then
local dir
for dir in ${PYTHON_DIRS}; do
cp -pr ${dir}-${EPYTHON} ${dir} \
|| die "Copying of '${dir}-${EPYTHON}' to '${dir}' failed"
done
if use mpi; then
if mpi_needed; then
cp -p stage/lib/mpi.so-${EPYTHON} "${MPI_PYTHON_MODULE}" \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to '${MPI_PYTHON_MODULE}' failed"
cp -p stage/lib/mpi.so-${EPYTHON} stage/lib/mpi.so \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to 'stage/lib/mpi.so' failed"
fi
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam ${OPTIONS} \
ejam \
${OPTIONS} \
${PYTHON_OPTIONS} \
--includedir="${ED}usr/include" \
--libdir="${ED}usr/$(get_libdir)" \
$(use python && echo --python-buildid=${EPYTHON#python}) \
install || die "Installation of Boost libraries failed"
if use python; then
if python_bindings_needed; then
rm -r ${PYTHON_DIRS} || die
# Move mpi.so Python module to Python site-packages directory.
# https://svn.boost.org/trac/boost/ticket/2838
if use mpi; then
if mpi_needed; then
local moddir=$(python_get_sitedir)/boost
# moddir already includes eprefix
mkdir -p "${D}${moddir}" || die
@ -260,41 +339,12 @@ EOF
python_optimize
fi
}
if use python; then
if python_bindings_needed; then
python_foreach_impl installation
else
installation
fi
if ! use python; then
rm -r "${ED}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${ED}"/usr/include/boost/locale || die
fi
rm -r "${ED}"/usr/include/boost/context || die
rm -r "${ED}"/usr/include/boost/coroutine || die
if use doc; then
find libs/*/* -iname "test" -or -iname "src" | xargs rm -rf
dohtml \
-A pdf,txt,cpp,hpp \
*.{htm,html,png,css} \
-r doc
dohtml -A pdf,txt -r tools
insinto /usr/share/doc/${PF}/html
doins -r libs
doins -r more
# To avoid broken links
insinto /usr/share/doc/${PF}/html
doins LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
pushd "${ED}usr/$(get_libdir)" > /dev/null || die
local ext=$(get_libname)
@ -307,7 +357,7 @@ EOF
popd > /dev/null || die
if use tools; then
if tools_needed; then
dobin dist/bin/*
insinto /usr/share
@ -356,10 +406,3 @@ pkg_preinst() {
[[ -L ${symlink} ]] && rm -f "${symlink}"
done
}
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
src_test() { :; }

View File

@ -1,30 +1,30 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.54.0-r1.ebuild,v 1.8 2015/04/08 17:51:55 mgorny Exp $
EAPI="5"
PYTHON_COMPAT=( python{2_7,3_3} )
EAPI="6"
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
inherit eutils flag-o-matic multilib multiprocessing python-r1 toolchain-funcs versionator
inherit eutils flag-o-matic multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
MY_P=${PN}_$(replace_all_version_separators _)
MY_P="${PN}_$(replace_all_version_separators _)"
MAJOR_V="$(get_version_component_range 1-2)"
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
MAJOR_V="$(get_version_component_range 1-2)"
SLOT="0/${MAJOR_V}"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-fbsd ~x86-linux"
IUSE="debug doc icu +nls mpi python static-libs +threads tools"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
RDEPEND="icu? ( >=dev-libs/icu-3.6:= )
!icu? ( virtual/libiconv )
mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) )
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
mpi? ( >=virtual/mpi-2.0-r4[${MULTILIB_USEDEP},cxx,threads] )
python? ( ${PYTHON_DEPS} )
app-arch/bzip2
sys-libs/zlib
app-arch/bzip2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
!app-admin/eselect-boost"
DEPEND="${RDEPEND}
=dev-util/boost-build-${MAJOR_V}*"
@ -34,6 +34,32 @@ REQUIRED_USE="
S="${WORKDIR}/${MY_P}"
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${PN}-1.51.0-respect_python-buildid.patch"
"${FILESDIR}/${PN}-1.51.0-support_dots_in_python-buildid.patch"
"${FILESDIR}/${PN}-1.48.0-no_strict_aliasing_python2.patch"
"${FILESDIR}/${PN}-1.48.0-disable_libboost_python3.patch"
"${FILESDIR}/${PN}-1.48.0-python_linking.patch"
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch"
"${FILESDIR}/${PN}-1.55.0-context-x32.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
)
python_bindings_needed() {
multilib_is_native_abi && use python
}
tools_needed() {
multilib_is_native_abi && use tools
}
create_user-config.jam() {
local compiler compiler_version compiler_executable
@ -52,11 +78,24 @@ create_user-config.jam() {
mpi_configuration="using mpi ;"
fi
if use python; then
python_configuration="using python : : ${PYTHON} ;"
if python_bindings_needed; then
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
cat > user-config.jam << __EOF__
cat > "${BOOST_ROOT}/user-config.jam" << __EOF__
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CFLAGS}" <cxxflags>"${CXXFLAGS}" <linkflags>"${LDFLAGS}" ;
${mpi_configuration}
${python_configuration}
@ -77,41 +116,34 @@ pkg_setup() {
}
src_prepare() {
epatch \
"${FILESDIR}/${PN}-1.48.0-mpi_python3.patch" \
"${FILESDIR}/${PN}-1.51.0-respect_python-buildid.patch" \
"${FILESDIR}/${PN}-1.51.0-support_dots_in_python-buildid.patch" \
"${FILESDIR}/${PN}-1.48.0-no_strict_aliasing_python2.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_libboost_python3.patch" \
"${FILESDIR}/${PN}-1.48.0-python_linking.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch"
epatch "${FILESDIR}/${PN}-1.53.0-library_status.patch" # bug 459112
epatch "${FILESDIR}/${PN}-1.53.0-glibc-2.18-compat.patch" # bug 482372
epatch "${FILESDIR}/${PN}-1.52.0-threads.patch"
default
# Avoid a patch for now
for file in libs/context/src/asm/*.S; do
cat - >> $file <<EOF
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507
sed -i -e 's:wave/build//wave::' tools/Jamfile.v2 || die
#if defined(__linux__) && defined(__ELF__)
.section .note.GNU-stack,"",%progbits
#endif
EOF
done
epatch_user
multilib_copy_sources
}
ejam() {
echo b2 "$@"
b2 "$@"
local b2_opts=(
"--user-config=${BOOST_ROOT}/user-config.jam"
"$@"
)
echo b2 "${b2_opts[@]}"
b2 "${b2_opts[@]}"
}
src_configure() {
# Workaround for too many parallel processes requested, bug #506064
[ "$(makeopts_jobs)" -gt 64 ] && MAKEOPTS="${MAKEOPTS} -j64"
OPTIONS="$(usex debug gentoodebug gentoorelease) -j$(makeopts_jobs) -q -d+2 --user-config=${S}/user-config.jam"
OPTIONS=(
$(usex debug gentoodebug gentoorelease)
"-j$(makeopts_jobs)"
-q
-d+2
)
if [[ ${CHOST} == *-darwin* ]]; then
# We need to add the prefix, and in two cases this exceeds, so prepare
@ -136,31 +168,60 @@ src_configure() {
# Do _not_ use C++11 yet, make sure to force GNU C++ 98 standard.
append-cxxflags -std=gnu++98
use icu && OPTIONS+=" -sICU_PATH=${EPREFIX}/usr"
use icu || OPTIONS+=" --disable-icu boost.locale.icu=off"
use mpi || OPTIONS+=" --without-mpi"
use python || OPTIONS+=" --without-python"
use nls || OPTIONS+=" --without-locale"
use icu && OPTIONS+=(
"-sICU_PATH=${EPREFIX}/usr"
)
use icu || OPTIONS+=(
--disable-icu
boost.locale.icu=off
)
use mpi || OPTIONS+=(
--without-mpi
)
use nls || OPTIONS+=(
--without-locale
)
use context || OPTIONS+=(
--without-context
--without-coroutine
--without-coroutine2
)
OPTIONS+=" pch=off --boost-build=${EPREFIX}/usr/share/boost-build --prefix=\"${ED}usr\" --layout=system threading=$(usex threads multi single) link=$(usex static-libs shared,static shared)"
OPTIONS+=" --without-context --without-coroutine"
OPTIONS+=(
pch=off
--boost-build="${EPREFIX}"/usr/share/boost-build
--prefix="${ED}usr"
--layout=system
threading=$(usex threads multi single)
link=$(usex static-libs shared,static shared)
)
[[ ${CHOST} == *-winnt* ]] && OPTIONS+=" -sNO_BZIP2=1"
[[ ${CHOST} == *-winnt* ]] && OPTIONS+=(
-sNO_BZIP2=1
)
}
src_compile() {
export BOOST_ROOT="${S}"
multilib_src_compile() {
local -x BOOST_ROOT="${BUILD_DIR}"
PYTHON_DIRS=""
MPI_PYTHON_MODULE=""
building() {
create_user-config.jam
ejam ${OPTIONS} \
$(use python && echo --python-buildid=${EPYTHON#python}) \
local PYTHON_OPTIONS
if python_bindings_needed; then
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost libraries failed"
if use python; then
if python_bindings_needed; then
if [[ -z "${PYTHON_DIRS}" ]]; then
PYTHON_DIRS="$(find bin.v2/libs -name python | sort)"
else
@ -192,26 +253,60 @@ src_compile() {
fi
fi
}
if use python; then
if python_bindings_needed; then
python_foreach_impl building
else
building
fi
if use tools; then
if tools_needed; then
pushd tools > /dev/null || die
ejam ${OPTIONS} \
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost tools failed"
popd > /dev/null || die
fi
}
src_install () {
multilib_src_install_all() {
if ! use python; then
rm -r "${ED}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${ED}"/usr/include/boost/locale || die
fi
if ! use context; then
rm -r "${ED}"/usr/include/boost/context || die
rm -r "${ED}"/usr/include/boost/coroutine{,2} || die
rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
fi
if use doc; then
find libs/*/* -iname "test" -or -iname "src" | xargs rm -rf
find doc -name Jamfile.v2 -or -name build -or -name *.manifest | xargs rm -f
find tools -name Jamfile.v2 -or -name src -or -name *.cpp -or -name *.hpp | xargs rm -rf
docinto html
dodoc *.{htm,html,png,css}
dodoc -r doc libs more tools
# To avoid broken links
dodoc LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
}
multilib_src_install() {
local -x BOOST_ROOT="${BUILD_DIR}"
installation() {
create_user-config.jam
if use python; then
local PYTHON_OPTIONS
if python_bindings_needed; then
local dir
for dir in ${PYTHON_DIRS}; do
cp -pr ${dir}-${EPYTHON} ${dir} \
@ -224,15 +319,19 @@ src_install () {
cp -p stage/lib/mpi.so-${EPYTHON} stage/lib/mpi.so \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to 'stage/lib/mpi.so' failed"
fi
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam ${OPTIONS} \
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
--includedir="${ED}usr/include" \
--libdir="${ED}usr/$(get_libdir)" \
$(use python && echo --python-buildid=${EPYTHON#python}) \
install || die "Installation of Boost libraries failed"
if use python; then
if python_bindings_needed; then
rm -r ${PYTHON_DIRS} || die
# Move mpi.so Python module to Python site-packages directory.
@ -260,41 +359,12 @@ EOF
python_optimize
fi
}
if use python; then
if python_bindings_needed; then
python_foreach_impl installation
else
installation
fi
if ! use python; then
rm -r "${ED}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${ED}"/usr/include/boost/locale || die
fi
rm -r "${ED}"/usr/include/boost/context || die
rm -r "${ED}"/usr/include/boost/coroutine || die
if use doc; then
find libs/*/* -iname "test" -or -iname "src" | xargs rm -rf
dohtml \
-A pdf,txt,cpp,hpp \
*.{htm,html,png,css} \
-r doc
dohtml -A pdf,txt -r tools
insinto /usr/share/doc/${PF}/html
doins -r libs
doins -r more
# To avoid broken links
insinto /usr/share/doc/${PF}/html
doins LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
pushd "${ED}usr/$(get_libdir)" > /dev/null || die
local ext=$(get_libname)
@ -307,7 +377,7 @@ EOF
popd > /dev/null || die
if use tools; then
if tools_needed; then
dobin dist/bin/*
insinto /usr/share
@ -356,10 +426,3 @@ pkg_preinst() {
[[ -L ${symlink} ]] && rm -f "${symlink}"
done
}
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
src_test() { :; }

View File

@ -0,0 +1,433 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
inherit eutils flag-o-matic multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
MY_P="${PN}_$(replace_all_version_separators _)"
MAJOR_V="$(get_version_component_range 1-2)"
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
mpi? ( virtual/mpi[cxx,threads] )
python? ( ${PYTHON_DEPS} )
app-arch/bzip2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
!app-admin/eselect-boost"
DEPEND="${RDEPEND}
=dev-util/boost-build-${MAJOR_V}*"
REQUIRED_USE="
mpi? ( threads )
python? ( ${PYTHON_REQUIRED_USE} )"
S="${WORKDIR}/${MY_P}"
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${PN}-1.51.0-respect_python-buildid.patch"
"${FILESDIR}/${PN}-1.51.0-support_dots_in_python-buildid.patch"
"${FILESDIR}/${PN}-1.48.0-no_strict_aliasing_python2.patch"
"${FILESDIR}/${PN}-1.48.0-disable_libboost_python3.patch"
"${FILESDIR}/${PN}-1.48.0-python_linking.patch"
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch"
"${FILESDIR}/${PN}-1.55.0-context-x32.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
)
python_bindings_needed() {
multilib_is_native_abi && use python
}
tools_needed() {
multilib_is_native_abi && use tools
}
# MPI stuff is not ported on multilib yet, disabling it for non-native ABIs
mpi_needed() {
multilib_is_native_abi && use mpi
}
create_user-config.jam() {
local compiler compiler_version compiler_executable
if [[ ${CHOST} == *-darwin* ]]; then
compiler="darwin"
compiler_version="$(gcc-fullversion)"
compiler_executable="$(tc-getCXX)"
else
compiler="gcc"
compiler_version="$(gcc-version)"
compiler_executable="$(tc-getCXX)"
fi
local mpi_configuration python_configuration
if mpi_needed; then
mpi_configuration="using mpi ;"
fi
if python_bindings_needed; then
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
cat > "${BOOST_ROOT}/user-config.jam" << __EOF__
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CFLAGS}" <cxxflags>"${CXXFLAGS}" <linkflags>"${LDFLAGS}" ;
${mpi_configuration}
${python_configuration}
__EOF__
}
pkg_setup() {
# Bail out on unsupported build configuration, bug #456792
if [[ -f "${EROOT}etc/site-config.jam" ]]; then
grep -q gentoorelease "${EROOT}etc/site-config.jam" && grep -q gentoodebug "${EROOT}etc/site-config.jam" ||
(
eerror "You are using custom ${EROOT}etc/site-config.jam without defined gentoorelease/gentoodebug targets."
eerror "Boost can not be built in such configuration."
eerror "Please, either remove this file or add targets from ${EROOT}usr/share/boost-build/site-config.jam to it."
die
)
fi
}
src_prepare() {
default
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507
sed -i -e 's:wave/build//wave::' tools/Jamfile.v2 || die
multilib_copy_sources
}
ejam() {
local b2_opts=(
"--user-config=${BOOST_ROOT}/user-config.jam"
"$@"
)
echo b2 "${b2_opts[@]}"
b2 "${b2_opts[@]}"
}
src_configure() {
# Workaround for too many parallel processes requested, bug #506064
[ "$(makeopts_jobs)" -gt 64 ] && MAKEOPTS="${MAKEOPTS} -j64"
OPTIONS=(
$(usex debug gentoodebug gentoorelease)
"-j$(makeopts_jobs)"
-q
-d+2
)
if [[ ${CHOST} == *-darwin* ]]; then
# We need to add the prefix, and in two cases this exceeds, so prepare
# for the largest possible space allocation.
append-ldflags -Wl,-headerpad_max_install_names
elif [[ ${CHOST} == *-winnt* ]]; then
compiler=parity
if [[ $($(tc-getCXX) -v) == *trunk* ]]; then
compilerVersion=trunk
else
compilerVersion=$($(tc-getCXX) -v | sed '1q' \
| sed -e 's,\([a-z]*\) \([0-9]\.[0-9]\.[0-9][^ \t]*\) .*,\2,')
fi
compilerExecutable=$(tc-getCXX)
fi
# bug 298489
if use ppc || use ppc64; then
[[ $(gcc-version) > 4.3 ]] && append-flags -mno-altivec
fi
# Do _not_ use C++11 yet, make sure to force GNU C++ 98 standard.
append-cxxflags -std=gnu++98
use icu && OPTIONS+=(
"-sICU_PATH=${EPREFIX}/usr"
)
use icu || OPTIONS+=(
--disable-icu
boost.locale.icu=off
)
mpi_needed || OPTIONS+=(
--without-mpi
)
use nls || OPTIONS+=(
--without-locale
)
use context || OPTIONS+=(
--without-context
--without-coroutine
--without-coroutine2
)
OPTIONS+=(
pch=off
--boost-build="${EPREFIX}"/usr/share/boost-build
--prefix="${ED}usr"
--layout=system
threading=$(usex threads multi single)
link=$(usex static-libs shared,static shared)
)
[[ ${CHOST} == *-winnt* ]] && OPTIONS+=(
-sNO_BZIP2=1
)
}
multilib_src_compile() {
local -x BOOST_ROOT="${BUILD_DIR}"
PYTHON_DIRS=""
MPI_PYTHON_MODULE=""
building() {
create_user-config.jam
local PYTHON_OPTIONS
if python_bindings_needed; then
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost libraries failed"
if python_bindings_needed; then
if [[ -z "${PYTHON_DIRS}" ]]; then
PYTHON_DIRS="$(find bin.v2/libs -name python | sort)"
else
if [[ "${PYTHON_DIRS}" != "$(find bin.v2/libs -name python | sort)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
local dir
for dir in ${PYTHON_DIRS}; do
mv ${dir} ${dir}-${EPYTHON} \
|| die "Renaming of '${dir}' to '${dir}-${EPYTHON}' failed"
done
if mpi_needed; then
if [[ -z "${MPI_PYTHON_MODULE}" ]]; then
MPI_PYTHON_MODULE="$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)"
if [[ "$(echo "${MPI_PYTHON_MODULE}" | wc -l)" -ne 1 ]]; then
die "Multiple mpi.so files found"
fi
else
if [[ "${MPI_PYTHON_MODULE}" != "$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
mv stage/lib/mpi.so stage/lib/mpi.so-${EPYTHON} \
|| die "Renaming of 'stage/lib/mpi.so' to 'stage/lib/mpi.so-${EPYTHON}' failed"
fi
fi
}
if python_bindings_needed; then
python_foreach_impl building
else
building
fi
if tools_needed; then
pushd tools > /dev/null || die
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost tools failed"
popd > /dev/null || die
fi
}
multilib_src_install_all() {
if ! use python; then
rm -r "${ED}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${ED}"/usr/include/boost/locale || die
fi
if ! use context; then
rm -r "${ED}"/usr/include/boost/context || die
rm -r "${ED}"/usr/include/boost/coroutine{,2} || die
rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
fi
if use doc; then
find libs/*/* -iname "test" -or -iname "src" | xargs rm -rf
find doc -name Jamfile.v2 -or -name build -or -name *.manifest | xargs rm -f
find tools -name Jamfile.v2 -or -name src -or -name *.cpp -or -name *.hpp | xargs rm -rf
docinto html
dodoc *.{htm,html,png,css}
dodoc -r doc libs more tools
# To avoid broken links
dodoc LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
}
multilib_src_install() {
local -x BOOST_ROOT="${BUILD_DIR}"
installation() {
create_user-config.jam
local PYTHON_OPTIONS
if python_bindings_needed; then
local dir
for dir in ${PYTHON_DIRS}; do
cp -pr ${dir}-${EPYTHON} ${dir} \
|| die "Copying of '${dir}-${EPYTHON}' to '${dir}' failed"
done
if mpi_needed; then
cp -p stage/lib/mpi.so-${EPYTHON} "${MPI_PYTHON_MODULE}" \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to '${MPI_PYTHON_MODULE}' failed"
cp -p stage/lib/mpi.so-${EPYTHON} stage/lib/mpi.so \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to 'stage/lib/mpi.so' failed"
fi
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
--includedir="${ED}usr/include" \
--libdir="${ED}usr/$(get_libdir)" \
install || die "Installation of Boost libraries failed"
if python_bindings_needed; then
rm -r ${PYTHON_DIRS} || die
# Move mpi.so Python module to Python site-packages directory.
# https://svn.boost.org/trac/boost/ticket/2838
if mpi_needed; then
local moddir=$(python_get_sitedir)/boost
# moddir already includes eprefix
mkdir -p "${D}${moddir}" || die
mv "${ED}usr/$(get_libdir)/mpi.so" "${D}${moddir}" || die
cat << EOF > "${D}${moddir}/__init__.py" || die
import sys
if sys.platform.startswith('linux'):
import DLFCN
flags = sys.getdlopenflags()
sys.setdlopenflags(DLFCN.RTLD_NOW | DLFCN.RTLD_GLOBAL)
from . import mpi
sys.setdlopenflags(flags)
del DLFCN, flags
else:
from . import mpi
del sys
EOF
fi
python_optimize
fi
}
if python_bindings_needed; then
python_foreach_impl installation
else
installation
fi
pushd "${ED}usr/$(get_libdir)" > /dev/null || die
local ext=$(get_libname)
if use threads; then
local f
for f in *${ext}; do
dosym ${f} /usr/$(get_libdir)/${f/${ext}/-mt${ext}}
done
fi
popd > /dev/null || die
if tools_needed; then
dobin dist/bin/*
insinto /usr/share
doins -r dist/share/boostbook
fi
# boost's build system truely sucks for not having a destdir. Because for
# this reason we are forced to build with a prefix that includes the
# DESTROOT, dynamic libraries on Darwin end messed up, referencing the
# DESTROOT instread of the actual EPREFIX. There is no way out of here
# but to do it the dirty way of manually setting the right install_names.
if [[ ${CHOST} == *-darwin* ]]; then
einfo "Working around completely broken build-system(tm)"
local d
for d in "${ED}"usr/lib/*.dylib; do
if [[ -f ${d} ]]; then
# fix the "soname"
ebegin " correcting install_name of ${d#${ED}}"
install_name_tool -id "/${d#${D}}" "${d}"
eend $?
# fix references to other libs
refs=$(otool -XL "${d}" | \
sed -e '1d' -e 's/^\t//' | \
grep "^libboost_" | \
cut -f1 -d' ')
local r
for r in ${refs}; do
ebegin " correcting reference to ${r}"
install_name_tool -change \
"${r}" \
"${EPREFIX}/usr/lib/${r}" \
"${d}"
eend $?
done
fi
done
fi
}
pkg_preinst() {
# Yai for having symlinks that are nigh-impossible to remove without
# resorting to dirty hacks like these. Removes lingering symlinks
# from the slotted versions.
local symlink
for symlink in "${EROOT}usr/include/boost" "${EROOT}usr/share/boostbook"; do
[[ -L ${symlink} ]] && rm -f "${symlink}"
done
}

View File

@ -0,0 +1,444 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
inherit eutils flag-o-matic multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
MY_P="${PN}_$(replace_all_version_separators _)"
MAJOR_V="$(get_version_component_range 1-2)"
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="https://downloads.sourceforge.net/project/boost/${PN}/${PV}/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
mpi? ( >=virtual/mpi-2.0-r4[${MULTILIB_USEDEP},cxx,threads] )
python? ( ${PYTHON_DEPS} )
app-arch/bzip2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
!app-admin/eselect-boost"
DEPEND="${RDEPEND}
=dev-util/boost-build-${MAJOR_V}*"
REQUIRED_USE="
mpi? ( threads )
python? ( ${PYTHON_REQUIRED_USE} )"
S="${WORKDIR}/${MY_P}"
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${PN}-1.51.0-respect_python-buildid.patch"
"${FILESDIR}/${PN}-1.51.0-support_dots_in_python-buildid.patch"
"${FILESDIR}/${PN}-1.48.0-no_strict_aliasing_python2.patch"
"${FILESDIR}/${PN}-1.48.0-disable_libboost_python3.patch"
"${FILESDIR}/${PN}-1.48.0-python_linking.patch"
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch"
"${FILESDIR}/${PN}-1.55.0-context-x32.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
)
python_bindings_needed() {
multilib_is_native_abi && use python
}
tools_needed() {
multilib_is_native_abi && use tools
}
create_user-config.jam() {
local compiler compiler_version compiler_executable
if [[ ${CHOST} == *-darwin* ]]; then
compiler="darwin"
compiler_version="$(gcc-fullversion)"
compiler_executable="$(tc-getCXX)"
else
compiler="gcc"
compiler_version="$(gcc-version)"
compiler_executable="$(tc-getCXX)"
fi
local mpi_configuration python_configuration
if use mpi; then
mpi_configuration="using mpi ;"
fi
if python_bindings_needed; then
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
cat > "${BOOST_ROOT}/user-config.jam" << __EOF__ || die
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CFLAGS}" <cxxflags>"${CXXFLAGS}" <linkflags>"${LDFLAGS}" ;
${mpi_configuration}
${python_configuration}
__EOF__
}
pkg_setup() {
# Bail out on unsupported build configuration, bug #456792
if [[ -f "${EROOT%/}/etc/site-config.jam" ]]; then
grep -q gentoorelease "${EROOT%/}/etc/site-config.jam" && grep -q gentoodebug "${EROOT%/}/etc/site-config.jam" ||
(
eerror "You are using custom ${EROOT%/}/etc/site-config.jam without defined gentoorelease/gentoodebug targets."
eerror "Boost can not be built in such configuration."
eerror "Please, either remove this file or add targets from ${EROOT%/}/usr/share/boost-build/site-config.jam to it."
die
)
fi
}
src_prepare() {
default
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507
sed -i -e 's:wave/build//wave::' tools/Jamfile.v2 || die
multilib_copy_sources
}
ejam() {
local b2_opts=(
"--user-config=${BOOST_ROOT}/user-config.jam"
"$@"
)
echo b2 "${b2_opts[@]}"
b2 "${b2_opts[@]}"
}
src_configure() {
# Workaround for too many parallel processes requested, bug #506064
[[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64"
OPTIONS=(
$(usex debug gentoodebug gentoorelease)
"-j$(makeopts_jobs)"
-q
-d+2
)
if [[ ${CHOST} == *-darwin* ]]; then
# We need to add the prefix, and in two cases this exceeds, so prepare
# for the largest possible space allocation.
append-ldflags -Wl,-headerpad_max_install_names
elif [[ ${CHOST} == *-winnt* ]]; then
compiler=parity
if [[ $($(tc-getCXX) -v) == *trunk* ]]; then
compilerVersion=trunk
else
compilerVersion=$($(tc-getCXX) -v | sed '1q' \
| sed -e 's,\([a-z]*\) \([0-9]\.[0-9]\.[0-9][^ \t]*\) .*,\2,')
fi
compilerExecutable=$(tc-getCXX)
fi
# bug 298489
if use ppc || use ppc64; then
[[ $(gcc-version) > 4.3 ]] && append-flags -mno-altivec
fi
# Use C++14 globally as of 1.62
append-cxxflags -std=c++14
use icu && OPTIONS+=(
"-sICU_PATH=${EPREFIX}/usr"
)
use icu || OPTIONS+=(
--disable-icu
boost.locale.icu=off
)
use mpi || OPTIONS+=(
--without-mpi
)
use nls || OPTIONS+=(
--without-locale
)
use context || OPTIONS+=(
--without-context
--without-coroutine
--without-coroutine2
--without-fiber
)
use threads || OPTIONS+=(
--without-thread
)
OPTIONS+=(
pch=off
--boost-build="${EPREFIX}"/usr/share/boost-build
--prefix="${ED%/}/usr"
--layout=system
# building with threading=single is currently not possible
# https://svn.boost.org/trac/boost/ticket/7105
threading=multi
link=$(usex static-libs shared,static shared)
)
[[ ${CHOST} == *-winnt* ]] && OPTIONS+=(
-sNO_BZIP2=1
)
}
multilib_src_compile() {
local -x BOOST_ROOT="${BUILD_DIR}"
PYTHON_DIRS=""
MPI_PYTHON_MODULE=""
building() {
create_user-config.jam
local PYTHON_OPTIONS
if python_bindings_needed; then
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost libraries failed"
if python_bindings_needed; then
if [[ -z "${PYTHON_DIRS}" ]]; then
PYTHON_DIRS="$(find bin.v2/libs -name python | sort)"
else
if [[ "${PYTHON_DIRS}" != "$(find bin.v2/libs -name python | sort)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
local dir
for dir in ${PYTHON_DIRS}; do
mv ${dir} ${dir}-${EPYTHON} \
|| die "Renaming of '${dir}' to '${dir}-${EPYTHON}' failed"
done
if use mpi; then
if [[ -z "${MPI_PYTHON_MODULE}" ]]; then
MPI_PYTHON_MODULE="$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)"
if [[ "$(echo "${MPI_PYTHON_MODULE}" | wc -l)" -ne 1 ]]; then
die "Multiple mpi.so files found"
fi
else
if [[ "${MPI_PYTHON_MODULE}" != "$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
mv stage/lib/mpi.so stage/lib/mpi.so-${EPYTHON} \
|| die "Renaming of 'stage/lib/mpi.so' to 'stage/lib/mpi.so-${EPYTHON}' failed"
fi
fi
}
if python_bindings_needed; then
python_foreach_impl building
else
building
fi
if tools_needed; then
pushd tools >/dev/null || die
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost tools failed"
popd >/dev/null || die
fi
}
multilib_src_install_all() {
if ! use python; then
rm -r "${ED%/}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${ED%/}"/usr/include/boost/locale || die
fi
if ! use context; then
rm -r "${ED%/}"/usr/include/boost/context || die
rm -r "${ED%/}"/usr/include/boost/coroutine{,2} || die
rm "${ED%/}"/usr/include/boost/asio/spawn.hpp || die
fi
if use doc; then
# find extraneous files that shouldn't be installed
# as part of the documentation and remove them.
find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die
find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die
find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die
docinto html
dodoc *.{htm,html,png,css}
dodoc -r doc libs more tools
# To avoid broken links
dodoc LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
}
multilib_src_install() {
local -x BOOST_ROOT="${BUILD_DIR}"
installation() {
create_user-config.jam
local PYTHON_OPTIONS
if python_bindings_needed; then
local dir
for dir in ${PYTHON_DIRS}; do
cp -pr ${dir}-${EPYTHON} ${dir} \
|| die "Copying of '${dir}-${EPYTHON}' to '${dir}' failed"
done
if use mpi; then
cp -p stage/lib/mpi.so-${EPYTHON} "${MPI_PYTHON_MODULE}" \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to '${MPI_PYTHON_MODULE}' failed"
cp -p stage/lib/mpi.so-${EPYTHON} stage/lib/mpi.so \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to 'stage/lib/mpi.so' failed"
fi
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
--includedir="${ED%/}/usr/include" \
--libdir="${ED%/}/usr/$(get_libdir)" \
install || die "Installation of Boost libraries failed"
if python_bindings_needed; then
rm -r ${PYTHON_DIRS} || die
# Move mpi.so Python module to Python site-packages directory.
# https://svn.boost.org/trac/boost/ticket/2838
if use mpi; then
local moddir=$(python_get_sitedir)/boost
# moddir already includes eprefix
mkdir -p "${D}${moddir}" || die
mv "${ED%/}/usr/$(get_libdir)/mpi.so" "${D}${moddir}" || die
cat << EOF > "${D}${moddir}/__init__.py" || die
import sys
if sys.platform.startswith('linux'):
import DLFCN
flags = sys.getdlopenflags()
sys.setdlopenflags(DLFCN.RTLD_NOW | DLFCN.RTLD_GLOBAL)
from . import mpi
sys.setdlopenflags(flags)
del DLFCN, flags
else:
from . import mpi
del sys
EOF
fi
python_optimize
fi
}
if python_bindings_needed; then
python_foreach_impl installation
else
installation
fi
pushd "${ED%/}/usr/$(get_libdir)" >/dev/null || die
local ext=$(get_libname)
if use threads; then
local f
for f in *${ext}; do
dosym ${f} /usr/$(get_libdir)/${f/${ext}/-mt${ext}}
done
fi
popd >/dev/null || die
if tools_needed; then
dobin dist/bin/*
insinto /usr/share
doins -r dist/share/boostbook
fi
# boost's build system truely sucks for not having a destdir. Because for
# this reason we are forced to build with a prefix that includes the
# DESTROOT, dynamic libraries on Darwin end messed up, referencing the
# DESTROOT instread of the actual EPREFIX. There is no way out of here
# but to do it the dirty way of manually setting the right install_names.
if [[ ${CHOST} == *-darwin* ]]; then
einfo "Working around completely broken build-system(tm)"
local d
for d in "${ED%/}"/usr/lib/*.dylib; do
if [[ -f ${d} ]]; then
# fix the "soname"
ebegin " correcting install_name of ${d#${ED}}"
install_name_tool -id "/${d#${D}}" "${d}"
eend $?
# fix references to other libs
refs=$(otool -XL "${d}" | \
sed -e '1d' -e 's/^\t//' | \
grep "^libboost_" | \
cut -f1 -d' ')
local r
for r in ${refs}; do
ebegin " correcting reference to ${r}"
install_name_tool -change \
"${r}" \
"${EPREFIX}/usr/lib/${r}" \
"${d}"
eend $?
done
fi
done
fi
}
pkg_preinst() {
# Yai for having symlinks that are nigh-impossible to remove without
# resorting to dirty hacks like these. Removes lingering symlinks
# from the slotted versions.
local symlink
for symlink in "${EROOT%/}/usr/include/boost" "${EROOT%/}/usr/share/boostbook"; do
if [[ -L ${symlink} ]]; then
rm -f "${symlink}" || die
fi
done
# some ancient installs still have boost cruft lying around
# for unknown reasons, causing havoc for reverse dependencies
# Bug: 607734
rm -rf "${EROOT%/}"/usr/include/boost-1_[3-5]? || die
}

View File

@ -0,0 +1,440 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
inherit eutils flag-o-matic multiprocessing python-r1 toolchain-funcs versionator multilib-minimal
MY_P="${PN}_$(replace_all_version_separators _)"
MAJOR_V="$(get_version_component_range 1-2)"
DESCRIPTION="Boost Libraries for C++"
HOMEPAGE="http://www.boost.org/"
SRC_URI="https://downloads.sourceforge.net/project/boost/${PN}/${PV}/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
IUSE="context debug doc icu +nls mpi python static-libs +threads tools"
RDEPEND="icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
mpi? ( >=virtual/mpi-2.0-r4[${MULTILIB_USEDEP},cxx,threads] )
python? ( ${PYTHON_DEPS} )
app-arch/bzip2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
!app-admin/eselect-boost"
DEPEND="${RDEPEND}
=dev-util/boost-build-${MAJOR_V}*"
REQUIRED_USE="
mpi? ( threads )
python? ( ${PYTHON_REQUIRED_USE} )"
S="${WORKDIR}/${MY_P}"
# the tests will never fail because these are not intended as sanity
# tests at all. They are more a way for upstream to check their own code
# on new compilers. Since they would either be completely unreliable
# (failing for no good reason) or completely useless (never failing)
# there is no point in having them in the ebuild to begin with.
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch"
"${FILESDIR}/${PN}-1.55.0-context-x32.patch"
"${FILESDIR}/${PN}-1.56.0-build-auto_index-tool.patch"
"${FILESDIR}/${PN}-1.63.0-fix-python.patch"
)
python_bindings_needed() {
multilib_is_native_abi && use python
}
tools_needed() {
multilib_is_native_abi && use tools
}
create_user-config.jam() {
local compiler compiler_version compiler_executable
if [[ ${CHOST} == *-darwin* ]]; then
compiler="darwin"
compiler_version="$(gcc-fullversion)"
compiler_executable="$(tc-getCXX)"
else
compiler="gcc"
compiler_version="$(gcc-version)"
compiler_executable="$(tc-getCXX)"
fi
local mpi_configuration python_configuration
if use mpi; then
mpi_configuration="using mpi ;"
fi
if python_bindings_needed; then
# boost expects libpython$(pyver) and doesn't allow overrides
# and the build system is so creepy that it's easier just to
# provide a symlink (linker's going to use SONAME anyway)
# TODO: replace it with proper override one day
ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die
if tc-is-cross-compiler; then
python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;"
else
# note: we need to provide version explicitly because of
# a bug in the build system:
# https://github.com/boostorg/build/pull/104
python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;"
fi
fi
cat > "${BOOST_ROOT}/user-config.jam" << __EOF__ || die
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CFLAGS}" <cxxflags>"${CXXFLAGS}" <linkflags>"${LDFLAGS}" ;
${mpi_configuration}
${python_configuration}
__EOF__
}
pkg_setup() {
# Bail out on unsupported build configuration, bug #456792
if [[ -f "${EROOT%/}/etc/site-config.jam" ]]; then
grep -q gentoorelease "${EROOT%/}/etc/site-config.jam" && grep -q gentoodebug "${EROOT%/}/etc/site-config.jam" ||
(
eerror "You are using custom ${EROOT%/}/etc/site-config.jam without defined gentoorelease/gentoodebug targets."
eerror "Boost can not be built in such configuration."
eerror "Please, either remove this file or add targets from ${EROOT%/}/usr/share/boost-build/site-config.jam to it."
die
)
fi
}
src_prepare() {
default
# Do not try to build missing 'wave' tool, bug #522682
# Upstream bugreport - https://svn.boost.org/trac/boost/ticket/10507
sed -i -e 's:wave/build//wave::' tools/Jamfile.v2 || die
multilib_copy_sources
}
ejam() {
local b2_opts=(
"--user-config=${BOOST_ROOT}/user-config.jam"
"$@"
)
echo b2 "${b2_opts[@]}"
b2 "${b2_opts[@]}"
}
src_configure() {
# Workaround for too many parallel processes requested, bug #506064
[[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64"
OPTIONS=(
$(usex debug gentoodebug gentoorelease)
"-j$(makeopts_jobs)"
-q
-d+2
)
if [[ ${CHOST} == *-darwin* ]]; then
# We need to add the prefix, and in two cases this exceeds, so prepare
# for the largest possible space allocation.
append-ldflags -Wl,-headerpad_max_install_names
elif [[ ${CHOST} == *-winnt* ]]; then
compiler=parity
if [[ $($(tc-getCXX) -v) == *trunk* ]]; then
compilerVersion=trunk
else
compilerVersion=$($(tc-getCXX) -v | sed '1q' \
| sed -e 's,\([a-z]*\) \([0-9]\.[0-9]\.[0-9][^ \t]*\) .*,\2,')
fi
compilerExecutable=$(tc-getCXX)
fi
# bug 298489
if use ppc || use ppc64; then
[[ $(gcc-version) > 4.3 ]] && append-flags -mno-altivec
fi
# Use C++14 globally as of 1.62
append-cxxflags -std=c++14
use icu && OPTIONS+=(
"-sICU_PATH=${EPREFIX}/usr"
)
use icu || OPTIONS+=(
--disable-icu
boost.locale.icu=off
)
use mpi || OPTIONS+=(
--without-mpi
)
use nls || OPTIONS+=(
--without-locale
)
use context || OPTIONS+=(
--without-context
--without-coroutine
--without-coroutine2
--without-fiber
)
use threads || OPTIONS+=(
--without-thread
)
OPTIONS+=(
pch=off
--boost-build="${EPREFIX}"/usr/share/boost-build
--prefix="${ED%/}/usr"
--layout=system
# building with threading=single is currently not possible
# https://svn.boost.org/trac/boost/ticket/7105
threading=multi
link=$(usex static-libs shared,static shared)
)
[[ ${CHOST} == *-winnt* ]] && OPTIONS+=(
-sNO_BZIP2=1
)
}
multilib_src_compile() {
local -x BOOST_ROOT="${BUILD_DIR}"
PYTHON_DIRS=""
MPI_PYTHON_MODULE=""
building() {
create_user-config.jam
local PYTHON_OPTIONS
if python_bindings_needed; then
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost libraries failed"
if python_bindings_needed; then
if [[ -z "${PYTHON_DIRS}" ]]; then
PYTHON_DIRS="$(find bin.v2/libs -name python | sort)"
else
if [[ "${PYTHON_DIRS}" != "$(find bin.v2/libs -name python | sort)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
local dir
for dir in ${PYTHON_DIRS}; do
mv ${dir} ${dir}-${EPYTHON} \
|| die "Renaming of '${dir}' to '${dir}-${EPYTHON}' failed"
done
if use mpi; then
if [[ -z "${MPI_PYTHON_MODULE}" ]]; then
MPI_PYTHON_MODULE="$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)"
if [[ "$(echo "${MPI_PYTHON_MODULE}" | wc -l)" -ne 1 ]]; then
die "Multiple mpi.so files found"
fi
else
if [[ "${MPI_PYTHON_MODULE}" != "$(find bin.v2/libs/mpi/build/*/gentoo* -name mpi.so)" ]]; then
die "Inconsistent structure of build directories"
fi
fi
mv stage/lib/mpi.so stage/lib/mpi.so-${EPYTHON} \
|| die "Renaming of 'stage/lib/mpi.so' to 'stage/lib/mpi.so-${EPYTHON}' failed"
fi
fi
}
if python_bindings_needed; then
python_foreach_impl building
else
building
fi
if tools_needed; then
pushd tools >/dev/null || die
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
|| die "Building of Boost tools failed"
popd >/dev/null || die
fi
}
multilib_src_install_all() {
if ! use python; then
rm -r "${ED%/}"/usr/include/boost/python* || die
fi
if ! use nls; then
rm -r "${ED%/}"/usr/include/boost/locale || die
fi
if ! use context; then
rm -r "${ED%/}"/usr/include/boost/context || die
rm -r "${ED%/}"/usr/include/boost/coroutine{,2} || die
rm "${ED%/}"/usr/include/boost/asio/spawn.hpp || die
fi
if use doc; then
# find extraneous files that shouldn't be installed
# as part of the documentation and remove them.
find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die
find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die
find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die
docinto html
dodoc *.{htm,html,png,css}
dodoc -r doc libs more tools
# To avoid broken links
dodoc LICENSE_1_0.txt
dosym /usr/include/boost /usr/share/doc/${PF}/html/boost
fi
}
multilib_src_install() {
local -x BOOST_ROOT="${BUILD_DIR}"
installation() {
create_user-config.jam
local PYTHON_OPTIONS
if python_bindings_needed; then
local dir
for dir in ${PYTHON_DIRS}; do
cp -pr ${dir}-${EPYTHON} ${dir} \
|| die "Copying of '${dir}-${EPYTHON}' to '${dir}' failed"
done
if use mpi; then
cp -p stage/lib/mpi.so-${EPYTHON} "${MPI_PYTHON_MODULE}" \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to '${MPI_PYTHON_MODULE}' failed"
cp -p stage/lib/mpi.so-${EPYTHON} stage/lib/mpi.so \
|| die "Copying of 'stage/lib/mpi.so-${EPYTHON}' to 'stage/lib/mpi.so' failed"
fi
PYTHON_OPTIONS=" --python-buildid=${EPYTHON#python}"
else
PYTHON_OPTIONS=" --without-python"
fi
ejam \
"${OPTIONS[@]}" \
${PYTHON_OPTIONS} \
--includedir="${ED%/}/usr/include" \
--libdir="${ED%/}/usr/$(get_libdir)" \
install || die "Installation of Boost libraries failed"
if python_bindings_needed; then
rm -r ${PYTHON_DIRS} || die
# Move mpi.so Python module to Python site-packages directory.
# https://svn.boost.org/trac/boost/ticket/2838
if use mpi; then
local moddir=$(python_get_sitedir)/boost
# moddir already includes eprefix
mkdir -p "${D}${moddir}" || die
mv "${ED%/}/usr/$(get_libdir)/mpi.so" "${D}${moddir}" || die
cat << EOF > "${D}${moddir}/__init__.py" || die
import sys
if sys.platform.startswith('linux'):
import DLFCN
flags = sys.getdlopenflags()
sys.setdlopenflags(DLFCN.RTLD_NOW | DLFCN.RTLD_GLOBAL)
from . import mpi
sys.setdlopenflags(flags)
del DLFCN, flags
else:
from . import mpi
del sys
EOF
fi
python_optimize
fi
}
if python_bindings_needed; then
python_foreach_impl installation
else
installation
fi
pushd "${ED%/}/usr/$(get_libdir)" >/dev/null || die
local ext=$(get_libname)
if use threads; then
local f
for f in *${ext}; do
dosym ${f} /usr/$(get_libdir)/${f/${ext}/-mt${ext}}
done
fi
popd >/dev/null || die
if tools_needed; then
dobin dist/bin/*
insinto /usr/share
doins -r dist/share/boostbook
fi
# boost's build system truely sucks for not having a destdir. Because for
# this reason we are forced to build with a prefix that includes the
# DESTROOT, dynamic libraries on Darwin end messed up, referencing the
# DESTROOT instread of the actual EPREFIX. There is no way out of here
# but to do it the dirty way of manually setting the right install_names.
if [[ ${CHOST} == *-darwin* ]]; then
einfo "Working around completely broken build-system(tm)"
local d
for d in "${ED%/}"/usr/lib/*.dylib; do
if [[ -f ${d} ]]; then
# fix the "soname"
ebegin " correcting install_name of ${d#${ED}}"
install_name_tool -id "/${d#${D}}" "${d}"
eend $?
# fix references to other libs
refs=$(otool -XL "${d}" | \
sed -e '1d' -e 's/^\t//' | \
grep "^libboost_" | \
cut -f1 -d' ')
local r
for r in ${refs}; do
ebegin " correcting reference to ${r}"
install_name_tool -change \
"${r}" \
"${EPREFIX}/usr/lib/${r}" \
"${d}"
eend $?
done
fi
done
fi
}
pkg_preinst() {
# Yai for having symlinks that are nigh-impossible to remove without
# resorting to dirty hacks like these. Removes lingering symlinks
# from the slotted versions.
local symlink
for symlink in "${EROOT%/}/usr/include/boost" "${EROOT%/}/usr/share/boostbook"; do
if [[ -L ${symlink} ]]; then
rm -f "${symlink}" || die
fi
done
# some ancient installs still have boost cruft lying around
# for unknown reasons, causing havoc for reverse dependencies
# Bug: 607734
rm -rf "${EROOT%/}"/usr/include/boost-1_[3-5]? || die
}

View File

@ -1,5 +1,5 @@
--- libs/locale/build/Jamfile.v2
+++ libs/locale/build/Jamfile.v2
--- a/libs/locale/build/Jamfile.v2
+++ b/libs/locale/build/Jamfile.v2
@@ -58,8 +58,8 @@
if $(ICU_LINK)

View File

@ -1,5 +1,5 @@
--- libs/python/build/Jamfile.v2
+++ libs/python/build/Jamfile.v2
--- a/libs/python/build/Jamfile.v2
+++ b/libs/python/build/Jamfile.v2
@@ -39,23 +39,6 @@
PYTHON_ID = [ regex.replace $(python-id) "[*\\/:\"\']" "_" ] ;
}

View File

@ -1,95 +0,0 @@
https://svn.boost.org/trac/boost/ticket/4657
https://svn.boost.org/trac/boost/changeset/76290
--- libs/mpi/src/python/datatypes.cpp
+++ libs/mpi/src/python/datatypes.cpp
@@ -17,7 +17,9 @@
void export_datatypes()
{
+#if PY_MAJOR_VERSION < 3
register_serialized(long(0), &PyInt_Type);
+#endif
register_serialized(false, &PyBool_Type);
register_serialized(double(0.0), &PyFloat_Type);
}
--- libs/mpi/src/python/py_environment.cpp
+++ libs/mpi/src/python/py_environment.cpp
@@ -11,6 +11,9 @@
* This file reflects the Boost.MPI "environment" class into Python
* methods at module level.
*/
+
+#include <locale>
+#include <string>
#include <boost/python.hpp>
#include <boost/mpi.hpp>
@@ -50,11 +53,64 @@
// If anything changed, convert C-style argc/argv into Python argv
if (mpi_argv != my_argv)
+ {
+#if PY_MAJOR_VERSION >= 3
+
+ wchar_t **argv_copy = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc);
+ /* We need a second copy, as Python might modify the first one. */
+ wchar_t **argv_copy2 = (wchar_t **)PyMem_Malloc(sizeof(wchar_t*)*mpi_argc);
+
+ if (!argv_copy || !argv_copy2) {
+ fprintf(stderr, "out of memory\n");
+ return false;
+ }
+
+ std::locale mylocale;
+ mbstate_t mystate;
+
+ const std::codecvt<char, wchar_t, mbstate_t>& myfacet =
+ std::use_facet<std::codecvt<char, wchar_t, mbstate_t> >(mylocale);
+
+ for (int i = 0; i < mpi_argc; i++)
+ {
+ size_t length = strlen(mpi_argv[i]);
+
+ wchar_t *dest = (wchar_t *) PyMem_Malloc(sizeof(wchar_t) * (length + 1));
+
+ const char *from_next;
+ wchar_t *to_next;
+
+ std::codecvt<wchar_t,char,mbstate_t>::result myresult =
+ myfacet.out(mystate,
+ mpi_argv[i], mpi_argv[i] + length + 1, from_next,
+ dest, dest+length+1, to_next);
+
+ if (myresult != std::codecvt<wchar_t,char,mbstate_t>::ok )
+ {
+ fprintf(stderr, "failure translating argv\n");
+ return 1;
+ }
+
+ argv_copy2[i] = argv_copy[i] = dest;
+ if (!argv_copy[i])
+ return false;
+ }
+
+ PySys_SetArgv(mpi_argc, argv_copy);
+
+ for (int i = 0; i < mpi_argc; i++) {
+ PyMem_Free(argv_copy2[i]);
+ }
+ PyMem_Free(argv_copy);
+ PyMem_Free(argv_copy2);
+#else
PySys_SetArgv(mpi_argc, mpi_argv);
+#endif
+ }
- for (int arg = 0; arg < my_argc; ++arg)
- free(my_argv[arg]);
- delete [] my_argv;
+ for (int arg = 0; arg < mpi_argc; ++arg)
+ free(mpi_argv[arg]);
+ delete [] mpi_argv;
return true;
}

View File

@ -1,5 +1,5 @@
--- libs/python/build/Jamfile.v2
+++ libs/python/build/Jamfile.v2
--- a/libs/python/build/Jamfile.v2
+++ b/libs/python/build/Jamfile.v2
@@ -85,6 +85,12 @@
rule lib_boost_python ( is-py3 ? )
{

View File

@ -1,5 +1,5 @@
--- libs/python/build/Jamfile.v2
+++ libs/python/build/Jamfile.v2
--- a/libs/python/build/Jamfile.v2
+++ b/libs/python/build/Jamfile.v2
@@ -109,20 +109,7 @@
<link>static:<define>BOOST_PYTHON_STATIC_LIB
<define>BOOST_PYTHON_SOURCE

View File

@ -1,7 +1,7 @@
https://svn.boost.org/trac/boost/ticket/6286
--- boostcpp.jam
+++ boostcpp.jam
--- a/boostcpp.jam
+++ b/boostcpp.jam
@@ -99,13 +99,6 @@
BUILD_ID = [ regex.replace $(build-id) "[*\\/:.\"\' ]" _ ] ;
}
@ -16,8 +16,8 @@ https://svn.boost.org/trac/boost/ticket/6286
################################################################################
#
--- libs/mpi/build/Jamfile.v2
+++ libs/mpi/build/Jamfile.v2
--- a/libs/mpi/build/Jamfile.v2
+++ b/libs/mpi/build/Jamfile.v2
@@ -8,6 +8,8 @@
# Authors: Douglas Gregor
# Andrew Lumsdaine
@ -41,8 +41,8 @@ https://svn.boost.org/trac/boost/ticket/6286
rule tag ( name : type ? : property-set )
{
local result = $(name) ;
--- libs/python/build/Jamfile.v2
+++ libs/python/build/Jamfile.v2
--- a/libs/python/build/Jamfile.v2
+++ b/libs/python/build/Jamfile.v2
@@ -2,6 +2,8 @@
# Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

View File

@ -1,5 +1,5 @@
--- libs/mpi/build/Jamfile.v2
+++ libs/mpi/build/Jamfile.v2
--- a/libs/mpi/build/Jamfile.v2
+++ b/libs/mpi/build/Jamfile.v2
@@ -30,7 +30,7 @@
python-id = [ option.get "python-buildid" ] ;
if $(python-id)
@ -9,8 +9,8 @@
}
rule tag ( name : type ? : property-set )
--- libs/python/build/Jamfile.v2
+++ libs/python/build/Jamfile.v2
--- a/libs/python/build/Jamfile.v2
+++ b/libs/python/build/Jamfile.v2
@@ -36,7 +36,7 @@
python-id = [ option.get "python-buildid" ] ;
if $(python-id)

View File

@ -1,52 +0,0 @@
Index: boost/locale/utf.hpp
===================================================================
--- boost/locale/utf.hpp (revision 81589)
+++ boost/locale/utf.hpp (revision 81590)
@@ -219,16 +219,22 @@
if(BOOST_LOCALE_UNLIKELY(p==e))
return incomplete;
tmp = *p++;
+ if (!is_trail(tmp))
+ return illegal;
c = (c << 6) | ( tmp & 0x3F);
case 2:
if(BOOST_LOCALE_UNLIKELY(p==e))
return incomplete;
tmp = *p++;
+ if (!is_trail(tmp))
+ return illegal;
c = (c << 6) | ( tmp & 0x3F);
case 1:
if(BOOST_LOCALE_UNLIKELY(p==e))
return incomplete;
tmp = *p++;
+ if (!is_trail(tmp))
+ return illegal;
c = (c << 6) | ( tmp & 0x3F);
}
Index: libs/locale/test/test_codepage_converter.cpp
===================================================================
--- libs/locale/test/test_codepage_converter.cpp (revision 81589)
+++ libs/locale/test/test_codepage_converter.cpp (revision 81590)
@@ -140,6 +140,20 @@
TEST_TO("\xf8\x90\x80\x80\x80",illegal); // 400 0000
TEST_TO("\xfd\xbf\xbf\xbf\xbf\xbf",illegal); // 7fff ffff
+ std::cout << "-- Invalid trail" << std::endl;
+ TEST_TO("\xC2\x7F",illegal);
+ TEST_TO("\xdf\x7F",illegal);
+ TEST_TO("\xe0\x7F\x80",illegal);
+ TEST_TO("\xef\xbf\x7F",illegal);
+ TEST_TO("\xe0\x7F\x80",illegal);
+ TEST_TO("\xef\xbf\x7F",illegal);
+ TEST_TO("\xf0\x7F\x80\x80",illegal);
+ TEST_TO("\xf4\x7f\xbf\xbf",illegal);
+ TEST_TO("\xf0\x90\x7F\x80",illegal);
+ TEST_TO("\xf4\x8f\x7F\xbf",illegal);
+ TEST_TO("\xf0\x90\x80\x7F",illegal);
+ TEST_TO("\xf4\x8f\xbf\x7F",illegal);
+
std::cout << "-- Invalid length" << std::endl;
/// Test that this actually works

View File

@ -1,11 +0,0 @@
--- boost/signals2/detail/variadic_slot_invoker.hpp.org 2012-11-20 09:15:55.000000000 +0400
+++ boost/signals2/detail/variadic_slot_invoker.hpp 2012-11-20 09:19:56.000000000 +0400
@@ -20,7 +20,7 @@
// if compiler has std::tuple use it instead of boost::tuple
// because boost::tuple does not have variadic template support at present.
#ifdef BOOST_NO_CXX11_HDR_TUPLE
-#include <boost/tuple.hpp>
+#include <boost/tuple/tuple.hpp>
#define BOOST_SIGNALS2_TUPLE boost::tuple
#else
#include <tuple>

View File

@ -1,18 +0,0 @@
Patch for compatibility with glibc 2.18
Gentoo bugreport: https://bugs.gentoo.org/show_bug.cgi?id=482372
Upstream fix: https://svn.boost.org/trac/boost/changeset/84950
--- boost_1_53_0/boost/cstdint.hpp 2012-12-11 22:42:26.000000000 +0800
+++ boost_1_53_0.fix/boost/cstdint.hpp 2013-08-25 20:48:53.683000000 +0800
@@ -41,7 +41,10 @@
// so we disable use of stdint.h when GLIBC does not define __GLIBC_HAVE_LONG_LONG.
// See https://svn.boost.org/trac/boost/ticket/3548 and http://sources.redhat.com/bugzilla/show_bug.cgi?id=10990
//
-#if defined(BOOST_HAS_STDINT_H) && (!defined(__GLIBC__) || defined(__GLIBC_HAVE_LONG_LONG))
+#if defined(BOOST_HAS_STDINT_H) \
+ && (!defined(__GLIBC__) \
+ || defined(__GLIBC_HAVE_LONG_LONG) \
+ || (defined(__GLIBC__) && ((__GLIBC__ > 2) || ((__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 17)))))
// The following #include is an implementation artifact; not part of interface.
# ifdef __hpux

View File

@ -1,57 +0,0 @@
--- tools_orig/regression/src/library_status.cpp 2012-12-11 15:42:26.000000000 +0100
+++ tools/regression/src/library_status.cpp 2013-07-11 16:15:54.000000000 +0200
@@ -171,16 +171,17 @@
// find_element ------------------------------------------------------------//
+ struct element_equal {
+ const string & m_name;
+ element_equal(const string & name) :
+ m_name(name)
+ {}
+ bool operator()(const xml::element_ptr & xep) const {
+ return xep.get()->name == m_name;
+ }
+ };
+
xml::element_list::const_iterator find_element(
const xml::element & root, const string & name
){
- struct element_equal {
- const string & m_name;
- element_equal(const string & name) :
- m_name(name)
- {}
- bool operator()(const xml::element_ptr & xep) const {
- return xep.get()->name == m_name;
- }
- };
return std::find_if(
root.elements.begin(),
@@ -203,17 +204,18 @@
// attribute_value ----------------------------------------------------------//
+ struct attribute_equal {
+ const string & m_name;
+ attribute_equal(const string & name) :
+ m_name(name)
+ {}
+ bool operator()(const xml::attribute & a) const {
+ return a.name == m_name;
+ }
+ };
+
const string & attribute_value(
const xml::element & element,
const string & attribute_name
){
- struct attribute_equal {
- const string & m_name;
- attribute_equal(const string & name) :
- m_name(name)
- {}
- bool operator()(const xml::attribute & a) const {
- return a.name == m_name;
- }
- };
xml::attribute_list::const_iterator itr;
itr = std::find_if(

View File

@ -0,0 +1,37 @@
From eec808554936ae068b23df07ab54d4dc6302a695 Mon Sep 17 00:00:00 2001
From: jzmaddock <jzmaddock@gmail.com>
Date: Sat, 23 Aug 2014 09:38:02 +0100
Subject: [PATCH] Fix BOOST_NO_CXX11_VARIADIC_TEMPLATES definition - the
feature was introduced in GCC 4.4.
---
boost/config/compiler/gcc.hpp | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/boost/config/compiler/gcc.hpp b/boost/config/compiler/gcc.hpp
index f37159d..97d8a18 100644
--- a/boost/config/compiler/gcc.hpp
+++ b/boost/config/compiler/gcc.hpp
@@ -154,14 +154,6 @@
# define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
# define BOOST_NO_CXX11_RVALUE_REFERENCES
# define BOOST_NO_CXX11_STATIC_ASSERT
-
-// Variadic templates compiler:
-// http://www.generic-programming.org/~dgregor/cpp/variadic-templates.html
-# if defined(__VARIADIC_TEMPLATES) || (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4) && defined(__GXX_EXPERIMENTAL_CXX0X__))
-# define BOOST_HAS_VARIADIC_TMPL
-# else
-# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
-# endif
#endif
// C++0x features in 4.4.n and later
@@ -176,6 +168,7 @@
# define BOOST_NO_CXX11_DELETED_FUNCTIONS
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
# define BOOST_NO_CXX11_INLINE_NAMESPACES
+# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
#endif
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5)

View File

@ -0,0 +1,402 @@
Fixed in 1.57
commit 415db7054723291042e4ff1ffa8fdd5bc8b07163
Author: Andrey Semashev <andrey.semashev@gmail.com>
Date: Sat Sep 27 20:40:09 2014 +0400
Added support for extending operations to GCC atomic backend.
Fix for #10446. Some platforms (e.g. Raspberry Pi) only support atomic ops of some particular size but not less. Use extending arithmetic operations for these platforms. Also, make sure bools are always treated as 8-bit values, even if the actual type is larger. This makes its use in atomic<>, atomic_flag and lock pool more consistent.
diff --git a/include/boost/atomic/capabilities.hpp b/include/boost/atomic/capabilities.hpp
index 658dd22..05bbb0f 100644
--- a/include/boost/atomic/capabilities.hpp
+++ b/include/boost/atomic/capabilities.hpp
@@ -142,6 +142,7 @@
#define BOOST_ATOMIC_ADDRESS_LOCK_FREE BOOST_ATOMIC_POINTER_LOCK_FREE
#ifndef BOOST_ATOMIC_BOOL_LOCK_FREE
+// We store bools in 1-byte storage in all backends
#define BOOST_ATOMIC_BOOL_LOCK_FREE BOOST_ATOMIC_INT8_LOCK_FREE
#endif
diff --git a/include/boost/atomic/detail/atomic_template.hpp b/include/boost/atomic/detail/atomic_template.hpp
index 4fd6d79..bc3922a 100644
--- a/include/boost/atomic/detail/atomic_template.hpp
+++ b/include/boost/atomic/detail/atomic_template.hpp
@@ -234,7 +234,7 @@ class base_atomic< bool, int >
{
private:
typedef bool value_type;
- typedef atomics::detail::operations< storage_size_of< value_type >::value, false > operations;
+ typedef atomics::detail::operations< 1u, false > operations;
protected:
typedef value_type value_arg_type;
diff --git a/include/boost/atomic/detail/caps_gcc_atomic.hpp b/include/boost/atomic/detail/caps_gcc_atomic.hpp
index 8299ad0..f4e7a70 100644
--- a/include/boost/atomic/detail/caps_gcc_atomic.hpp
+++ b/include/boost/atomic/detail/caps_gcc_atomic.hpp
@@ -29,66 +29,48 @@
#define BOOST_ATOMIC_DETAIL_X86_HAS_CMPXCHG16B 1
#endif
-#if __GCC_ATOMIC_BOOL_LOCK_FREE == 2
-#define BOOST_ATOMIC_FLAG_LOCK_FREE 2
-#else
-#define BOOST_ATOMIC_FLAG_LOCK_FREE 0
-#endif
-#if __GCC_ATOMIC_CHAR_LOCK_FREE == 2
-#define BOOST_ATOMIC_CHAR_LOCK_FREE 2
-#else
-#define BOOST_ATOMIC_CHAR_LOCK_FREE 0
-#endif
-#if __GCC_ATOMIC_CHAR16_T_LOCK_FREE == 2
-#define BOOST_ATOMIC_CHAR16_T_LOCK_FREE 2
-#else
-#define BOOST_ATOMIC_CHAR16_T_LOCK_FREE 0
-#endif
-#if __GCC_ATOMIC_CHAR32_T_LOCK_FREE == 2
-#define BOOST_ATOMIC_CHAR32_T_LOCK_FREE 2
+#if defined(BOOST_ATOMIC_DETAIL_X86_HAS_CMPXCHG16B) && (defined(BOOST_HAS_INT128) || !defined(BOOST_NO_ALIGNMENT))
+#define BOOST_ATOMIC_INT128_LOCK_FREE 2
#else
-#define BOOST_ATOMIC_CHAR32_T_LOCK_FREE 0
+#define BOOST_ATOMIC_INT128_LOCK_FREE 0
#endif
-#if __GCC_ATOMIC_WCHAR_T_LOCK_FREE == 2
-#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE 2
+
+#if __GCC_ATOMIC_LLONG_LOCK_FREE == 2
+#define BOOST_ATOMIC_LLONG_LOCK_FREE 2
#else
-#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE 0
+#define BOOST_ATOMIC_LLONG_LOCK_FREE BOOST_ATOMIC_INT128_LOCK_FREE
#endif
-#if __GCC_ATOMIC_SHORT_LOCK_FREE == 2
-#define BOOST_ATOMIC_SHORT_LOCK_FREE 2
+
+#if __GCC_ATOMIC_LONG_LOCK_FREE == 2
+#define BOOST_ATOMIC_LONG_LOCK_FREE 2
#else
-#define BOOST_ATOMIC_SHORT_LOCK_FREE 0
+#define BOOST_ATOMIC_LONG_LOCK_FREE BOOST_ATOMIC_LLONG_LOCK_FREE
#endif
+
#if __GCC_ATOMIC_INT_LOCK_FREE == 2
#define BOOST_ATOMIC_INT_LOCK_FREE 2
#else
-#define BOOST_ATOMIC_INT_LOCK_FREE 0
-#endif
-#if __GCC_ATOMIC_LONG_LOCK_FREE == 2
-#define BOOST_ATOMIC_LONG_LOCK_FREE 2
-#else
-#define BOOST_ATOMIC_LONG_LOCK_FREE 0
+#define BOOST_ATOMIC_INT_LOCK_FREE BOOST_ATOMIC_LONG_LOCK_FREE
#endif
-#if __GCC_ATOMIC_LLONG_LOCK_FREE == 2
-#define BOOST_ATOMIC_LLONG_LOCK_FREE 2
+
+#if __GCC_ATOMIC_SHORT_LOCK_FREE == 2
+#define BOOST_ATOMIC_SHORT_LOCK_FREE 2
#else
-#define BOOST_ATOMIC_LLONG_LOCK_FREE 0
+#define BOOST_ATOMIC_SHORT_LOCK_FREE BOOST_ATOMIC_INT_LOCK_FREE
#endif
-#if defined(BOOST_ATOMIC_DETAIL_X86_HAS_CMPXCHG16B) && (defined(BOOST_HAS_INT128) || !defined(BOOST_NO_ALIGNMENT))
-#define BOOST_ATOMIC_INT128_LOCK_FREE 2
+
+#if __GCC_ATOMIC_CHAR_LOCK_FREE == 2
+#define BOOST_ATOMIC_CHAR_LOCK_FREE 2
#else
-#define BOOST_ATOMIC_INT128_LOCK_FREE 0
+#define BOOST_ATOMIC_CHAR_LOCK_FREE BOOST_ATOMIC_SHORT_LOCK_FREE
#endif
+
#if __GCC_ATOMIC_POINTER_LOCK_FREE == 2
#define BOOST_ATOMIC_POINTER_LOCK_FREE 2
#else
#define BOOST_ATOMIC_POINTER_LOCK_FREE 0
#endif
-#if __GCC_ATOMIC_BOOL_LOCK_FREE == 2
-#define BOOST_ATOMIC_BOOL_LOCK_FREE 2
-#else
-#define BOOST_ATOMIC_BOOL_LOCK_FREE 0
-#endif
+
#define BOOST_ATOMIC_INT8_LOCK_FREE BOOST_ATOMIC_CHAR_LOCK_FREE
@@ -128,6 +110,24 @@
#define BOOST_ATOMIC_INT64_LOCK_FREE 0
#endif
+
+#if __GCC_ATOMIC_WCHAR_T_LOCK_FREE == 2
+#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE 2
+#elif BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 8
+#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE BOOST_ATOMIC_INT64_LOCK_FREE
+#elif BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 4
+#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE BOOST_ATOMIC_INT32_LOCK_FREE
+#elif BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 2
+#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE BOOST_ATOMIC_INT16_LOCK_FREE
+#elif BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 1
+#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE BOOST_ATOMIC_INT8_LOCK_FREE
+#else
+#define BOOST_ATOMIC_WCHAR_T_LOCK_FREE 0
+#endif
+
+#define BOOST_ATOMIC_CHAR32_T_LOCK_FREE BOOST_ATOMIC_INT32_LOCK_FREE
+#define BOOST_ATOMIC_CHAR16_T_LOCK_FREE BOOST_ATOMIC_INT16_LOCK_FREE
+
#define BOOST_ATOMIC_THREAD_FENCE 2
#define BOOST_ATOMIC_SIGNAL_FENCE 2
diff --git a/include/boost/atomic/detail/ops_gcc_atomic.hpp b/include/boost/atomic/detail/ops_gcc_atomic.hpp
index 2297791..2e4c37b 100644
--- a/include/boost/atomic/detail/ops_gcc_atomic.hpp
+++ b/include/boost/atomic/detail/ops_gcc_atomic.hpp
@@ -24,6 +24,15 @@
#include <boost/atomic/detail/ops_cas_based.hpp>
#endif
+#if __GCC_ATOMIC_LLONG_LOCK_FREE != BOOST_ATOMIC_LLONG_LOCK_FREE || __GCC_ATOMIC_LONG_LOCK_FREE != BOOST_ATOMIC_LONG_LOCK_FREE ||\
+ __GCC_ATOMIC_INT_LOCK_FREE != BOOST_ATOMIC_INT_LOCK_FREE || __GCC_ATOMIC_SHORT_LOCK_FREE != BOOST_ATOMIC_SHORT_LOCK_FREE ||\
+ __GCC_ATOMIC_CHAR_LOCK_FREE != BOOST_ATOMIC_CHAR_LOCK_FREE || __GCC_ATOMIC_BOOL_LOCK_FREE != BOOST_ATOMIC_BOOL_LOCK_FREE ||\
+ __GCC_ATOMIC_WCHAR_T_LOCK_FREE != BOOST_ATOMIC_WCHAR_T_LOCK_FREE
+// There are platforms where we need to use larger storage types
+#include <boost/atomic/detail/int_sizes.hpp>
+#include <boost/atomic/detail/ops_extending_cas_based.hpp>
+#endif
+
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
@@ -154,73 +163,206 @@ struct gcc_atomic_operations
}
};
-#if BOOST_ATOMIC_INT8_LOCK_FREE > 0
+#if BOOST_ATOMIC_INT128_LOCK_FREE > 0
+#if defined(__clang__) && defined(BOOST_ATOMIC_DETAIL_X86_HAS_CMPXCHG16B)
+
+// Workaround for clang bug: http://llvm.org/bugs/show_bug.cgi?id=19149
+// Clang 3.4 does not implement 128-bit __atomic* intrinsics even though it defines __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16
template< bool Signed >
-struct operations< 1u, Signed > :
- public gcc_atomic_operations< typename make_storage_type< 1u, Signed >::type >
+struct operations< 16u, Signed > :
+ public cas_based_operations< gcc_dcas_x86_64< Signed > >
{
};
+
+#else
+
+template< bool Signed >
+struct operations< 16u, Signed > :
+ public gcc_atomic_operations< typename make_storage_type< 16u, Signed >::type >
+{
+};
+
+#endif
#endif
-#if BOOST_ATOMIC_INT16_LOCK_FREE > 0
+
+#if BOOST_ATOMIC_INT64_LOCK_FREE > 0
+#if defined(__clang__) && defined(BOOST_ATOMIC_DETAIL_X86_HAS_CMPXCHG8B)
+
+// Workaround for clang bug http://llvm.org/bugs/show_bug.cgi?id=19355
template< bool Signed >
-struct operations< 2u, Signed > :
- public gcc_atomic_operations< typename make_storage_type< 2u, Signed >::type >
+struct operations< 8u, Signed > :
+ public cas_based_operations< gcc_dcas_x86< Signed > >
+{
+};
+
+#elif (BOOST_ATOMIC_DETAIL_SIZEOF_LLONG == 8 && __GCC_ATOMIC_LLONG_LOCK_FREE != BOOST_ATOMIC_LLONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_LONG == 8 && __GCC_ATOMIC_LONG_LOCK_FREE != BOOST_ATOMIC_LONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_INT == 8 && __GCC_ATOMIC_INT_LOCK_FREE != BOOST_ATOMIC_INT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_SHORT == 8 && __GCC_ATOMIC_SHORT_LOCK_FREE != BOOST_ATOMIC_SHORT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 8 && __GCC_ATOMIC_WCHAR_T_LOCK_FREE != BOOST_ATOMIC_WCHAR_T_LOCK_FREE)
+
+#define BOOST_ATOMIC_DETAIL_INT64_EXTENDED
+
+template< bool Signed >
+struct operations< 8u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 16u, Signed >::type >, 8u, Signed >
{
};
+
+#else
+
+template< bool Signed >
+struct operations< 8u, Signed > :
+ public gcc_atomic_operations< typename make_storage_type< 8u, Signed >::type >
+{
+};
+
+#endif
#endif
#if BOOST_ATOMIC_INT32_LOCK_FREE > 0
+#if (BOOST_ATOMIC_DETAIL_SIZEOF_LLONG == 4 && __GCC_ATOMIC_LLONG_LOCK_FREE != BOOST_ATOMIC_LLONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_LONG == 4 && __GCC_ATOMIC_LONG_LOCK_FREE != BOOST_ATOMIC_LONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_INT == 4 && __GCC_ATOMIC_INT_LOCK_FREE != BOOST_ATOMIC_INT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_SHORT == 4 && __GCC_ATOMIC_SHORT_LOCK_FREE != BOOST_ATOMIC_SHORT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 4 && __GCC_ATOMIC_WCHAR_T_LOCK_FREE != BOOST_ATOMIC_WCHAR_T_LOCK_FREE)
+
+#define BOOST_ATOMIC_DETAIL_INT32_EXTENDED
+
+#if !defined(BOOST_ATOMIC_DETAIL_INT64_EXTENDED)
+
+template< bool Signed >
+struct operations< 4u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 8u, Signed >::type >, 4u, Signed >
+{
+};
+
+#else // !defined(BOOST_ATOMIC_DETAIL_INT64_EXTENDED)
+
+template< bool Signed >
+struct operations< 4u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 16u, Signed >::type >, 4u, Signed >
+{
+};
+
+#endif // !defined(BOOST_ATOMIC_DETAIL_INT64_EXTENDED)
+
+#else
+
template< bool Signed >
struct operations< 4u, Signed > :
public gcc_atomic_operations< typename make_storage_type< 4u, Signed >::type >
{
};
+
+#endif
#endif
-#if BOOST_ATOMIC_INT64_LOCK_FREE > 0
-#if defined(__clang__) && defined(BOOST_ATOMIC_DETAIL_X86_HAS_CMPXCHG8B)
+#if BOOST_ATOMIC_INT16_LOCK_FREE > 0
+#if (BOOST_ATOMIC_DETAIL_SIZEOF_LLONG == 2 && __GCC_ATOMIC_LLONG_LOCK_FREE != BOOST_ATOMIC_LLONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_LONG == 2 && __GCC_ATOMIC_LONG_LOCK_FREE != BOOST_ATOMIC_LONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_INT == 2 && __GCC_ATOMIC_INT_LOCK_FREE != BOOST_ATOMIC_INT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_SHORT == 2 && __GCC_ATOMIC_SHORT_LOCK_FREE != BOOST_ATOMIC_SHORT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 2 && __GCC_ATOMIC_WCHAR_T_LOCK_FREE != BOOST_ATOMIC_WCHAR_T_LOCK_FREE)
+
+#define BOOST_ATOMIC_DETAIL_INT16_EXTENDED
+
+#if !defined(BOOST_ATOMIC_DETAIL_INT32_EXTENDED)
-// Workaround for clang bug http://llvm.org/bugs/show_bug.cgi?id=19355
template< bool Signed >
-struct operations< 8u, Signed > :
- public cas_based_operations< gcc_dcas_x86< Signed > >
+struct operations< 2u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 4u, Signed >::type >, 2u, Signed >
+{
+};
+
+#elif !defined(BOOST_ATOMIC_DETAIL_INT64_EXTENDED)
+
+template< bool Signed >
+struct operations< 2u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 8u, Signed >::type >, 2u, Signed >
{
};
#else
template< bool Signed >
-struct operations< 8u, Signed > :
- public gcc_atomic_operations< typename make_storage_type< 8u, Signed >::type >
+struct operations< 2u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 16u, Signed >::type >, 2u, Signed >
+{
+};
+
+#endif
+
+#else
+
+template< bool Signed >
+struct operations< 2u, Signed > :
+ public gcc_atomic_operations< typename make_storage_type< 2u, Signed >::type >
{
};
#endif
#endif
-#if BOOST_ATOMIC_INT128_LOCK_FREE > 0
-#if defined(__clang__) && defined(BOOST_ATOMIC_DETAIL_X86_HAS_CMPXCHG16B)
+#if BOOST_ATOMIC_INT8_LOCK_FREE > 0
+#if (BOOST_ATOMIC_DETAIL_SIZEOF_LLONG == 1 && __GCC_ATOMIC_LLONG_LOCK_FREE != BOOST_ATOMIC_LLONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_LONG == 1 && __GCC_ATOMIC_LONG_LOCK_FREE != BOOST_ATOMIC_LONG_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_INT == 1 && __GCC_ATOMIC_INT_LOCK_FREE != BOOST_ATOMIC_INT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_SHORT == 1 && __GCC_ATOMIC_SHORT_LOCK_FREE != BOOST_ATOMIC_SHORT_LOCK_FREE) ||\
+ (BOOST_ATOMIC_DETAIL_SIZEOF_WCHAR_T == 1 && __GCC_ATOMIC_WCHAR_T_LOCK_FREE != BOOST_ATOMIC_WCHAR_T_LOCK_FREE) ||\
+ (__GCC_ATOMIC_CHAR_LOCK_FREE != BOOST_ATOMIC_CHAR_LOCK_FREE) ||\
+ (__GCC_ATOMIC_BOOL_LOCK_FREE != BOOST_ATOMIC_BOOL_LOCK_FREE)
+
+#if !defined(BOOST_ATOMIC_DETAIL_INT16_EXTENDED)
-// Workaround for clang bug: http://llvm.org/bugs/show_bug.cgi?id=19149
-// Clang 3.4 does not implement 128-bit __atomic* intrinsics even though it defines __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16
template< bool Signed >
-struct operations< 16u, Signed > :
- public cas_based_operations< gcc_dcas_x86_64< Signed > >
+struct operations< 1u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 2u, Signed >::type >, 1u, Signed >
+{
+};
+
+#elif !defined(BOOST_ATOMIC_DETAIL_INT32_EXTENDED)
+
+template< bool Signed >
+struct operations< 1u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 4u, Signed >::type >, 1u, Signed >
+{
+};
+
+#elif !defined(BOOST_ATOMIC_DETAIL_INT64_EXTENDED)
+
+template< bool Signed >
+struct operations< 1u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 8u, Signed >::type >, 1u, Signed >
{
};
#else
template< bool Signed >
-struct operations< 16u, Signed > :
- public gcc_atomic_operations< typename make_storage_type< 16u, Signed >::type >
+struct operations< 1u, Signed > :
+ public extending_cas_based_operations< gcc_atomic_operations< typename make_storage_type< 16u, Signed >::type >, 1u, Signed >
+{
+};
+
+#endif
+
+#else
+
+template< bool Signed >
+struct operations< 1u, Signed > :
+ public gcc_atomic_operations< typename make_storage_type< 1u, Signed >::type >
{
};
#endif
#endif
+#undef BOOST_ATOMIC_DETAIL_INT16_EXTENDED
+#undef BOOST_ATOMIC_DETAIL_INT32_EXTENDED
+#undef BOOST_ATOMIC_DETAIL_INT64_EXTENDED
+
BOOST_FORCEINLINE void thread_fence(memory_order order) BOOST_NOEXCEPT
{
__atomic_thread_fence(atomics::detail::convert_memory_order_to_gcc(order));

View File

@ -1,8 +1,8 @@
Build auto_index tool with USE="tools"
Gentoo bug report: https://bugs.gentoo.org/show_bug.cgi?id=529066
--- tools/Jamfile.v2.orig 2014-12-24 12:57:32.290880067 +0300
+++ tools/Jamfile.v2 2014-12-24 12:58:38.403883250 +0300
--- a/tools/Jamfile.v2.orig 2014-12-24 12:57:32.290880067 +0300
+++ b/tools/Jamfile.v2 2014-12-24 12:58:38.403883250 +0300
@@ -20,6 +20,7 @@
use-project /boost/regression : regression/build ;

View File

@ -0,0 +1,233 @@
diff --git a/boost/fusion/adapted/struct/detail/define_struct.hpp b/boost/fusion/adapted/struct/detail/define_struct.hpp
index 2554292..ce3737e 100644
--- a/boost/fusion/adapted/struct/detail/define_struct.hpp
+++ b/boost/fusion/adapted/struct/detail/define_struct.hpp
@@ -69,7 +69,7 @@
ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
template<typename Seq> \
- BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
self_type& \
operator=(Seq const& seq) \
{ \
@@ -128,7 +128,7 @@
ATTRIBUTE_TUPEL_SIZE, \
ATTRIBUTES_SEQ) \
\
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
NAME() \
: BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
@@ -137,7 +137,7 @@
ATTRIBUTES_SEQ) \
{} \
\
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
NAME(self_type const& other_self) \
: BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
@@ -147,7 +147,7 @@
{} \
\
template<typename Seq> \
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
NAME(Seq const& seq \
BOOST_PP_IF( \
BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(ATTRIBUTES_SEQ)), \
@@ -167,7 +167,7 @@
#define BOOST_FUSION_DEFINE_STRUCT_CTOR_1( \
NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
explicit \
NAME(boost::call_traits< \
BOOST_PP_TUPLE_ELEM( \
@@ -180,7 +180,7 @@
#define BOOST_FUSION_DEFINE_TPL_STRUCT_CTOR_1( \
TEMPLATE_PARAMS_SEQ, NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
explicit \
NAME(typename boost::call_traits< \
typename boost::fusion::detail::get_first_arg< \
@@ -217,7 +217,7 @@
#define BOOST_FUSION_DEFINE_TPL_STRUCT_CTOR_N( \
TEMPLATE_PARAMS_SEQ, NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
NAME(BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
BOOST_FUSION_DEFINE_TPL_STRUCT_CTOR_ARG_I, \
@@ -245,7 +245,7 @@
#define BOOST_FUSION_DEFINE_STRUCT_CTOR_N( \
NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
NAME(BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
BOOST_FUSION_DEFINE_STRUCT_CTOR_ARG_I, \
diff --git a/boost/fusion/adapted/struct/detail/define_struct_inline.hpp b/boost/fusion/adapted/struct/detail/define_struct_inline.hpp
index a5a3ae0..a037ffe 100644
--- a/boost/fusion/adapted/struct/detail/define_struct_inline.hpp
+++ b/boost/fusion/adapted/struct/detail/define_struct_inline.hpp
@@ -66,7 +66,7 @@
#define BOOST_FUSION_IGNORE_2(ARG1, ARG2)
#define BOOST_FUSION_MAKE_COPY_CONSTRUCTOR(NAME, ATTRIBUTES_SEQ) \
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
NAME(BOOST_PP_SEQ_FOR_EACH_I( \
BOOST_FUSION_MAKE_CONST_REF_PARAM, \
~, \
@@ -337,7 +337,7 @@
typedef boost::mpl::int_<N> index; \
typedef boost_fusion_detail_Seq sequence_type; \
\
- BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED \
+ BOOST_FUSION_GPU_ENABLED \
BOOST_FUSION_ITERATOR_NAME(NAME)(boost_fusion_detail_Seq& seq) \
: seq_(seq) \
BOOST_FUSION_DEFINE_ITERATOR_WKND_INIT_LIST_ENTRIES( \
diff --git a/libs/fusion/test/sequence/adapt_struct.cpp b/libs/fusion/test/sequence/adapt_struct.cpp
index c0cd304..121827f 100644
--- a/libs/fusion/test/sequence/adapt_struct.cpp
+++ b/libs/fusion/test/sequence/adapt_struct.cpp
@@ -67,6 +67,17 @@ namespace ns
foo foo_;
int y;
};
+
+
+ // Testing non-constexpr compatible types
+ struct employee {
+ std::string name;
+ std::string nickname;
+
+ employee(std::string name, std::string nickname)
+ : name(name), nickname(nickname)
+ {}
+ };
}
#if BOOST_PP_VARIADICS
@@ -96,6 +107,13 @@ namespace ns
y
)
+ BOOST_FUSION_ADAPT_STRUCT(
+ ns::employee,
+ name,
+ nickname
+ )
+
+
#else // BOOST_PP_VARIADICS
BOOST_FUSION_ADAPT_STRUCT(
@@ -123,6 +141,12 @@ namespace ns
(BOOST_FUSION_ADAPT_AUTO, y)
)
+ BOOST_FUSION_ADAPT_STRUCT(
+ ns::employee,
+ (std::string, name)
+ (BOOST_FUSION_ADAPT_AUTO, nickname)
+ )
+
#endif
int
@@ -224,6 +248,15 @@ main()
BOOST_TEST(v2 >= v1);
}
+ {
+ ns::employee emp("John Doe", "jdoe");
+ std::cout << at_c<0>(emp) << std::endl;
+ std::cout << at_c<1>(emp) << std::endl;
+
+ fusion::vector<std::string, std::string> v1("John Doe", "jdoe");
+ BOOST_TEST(emp == v1);
+ }
+
return boost::report_errors();
}
diff --git a/libs/fusion/test/sequence/define_struct.cpp b/libs/fusion/test/sequence/define_struct.cpp
index 795fdf6..63b5a19 100644
--- a/libs/fusion/test/sequence/define_struct.cpp
+++ b/libs/fusion/test/sequence/define_struct.cpp
@@ -26,6 +26,14 @@ BOOST_FUSION_DEFINE_STRUCT(
BOOST_FUSION_DEFINE_STRUCT(BOOST_PP_EMPTY(), s, (int, m))
+// Testing non-constexpr compatible types
+BOOST_FUSION_DEFINE_STRUCT(
+ (ns),
+ employee,
+ (std::string, name)
+ (std::string, nickname)
+)
+
int
main()
{
@@ -100,6 +108,14 @@ main()
BOOST_TEST(p == make_vector(3,5));
}
+ {
+ ns::employee emp = make_list("John Doe", "jdoe");
+ std::cout << at_c<0>(emp) << std::endl;
+ std::cout << at_c<1>(emp) << std::endl;
+
+ BOOST_TEST(emp == make_vector("John Doe", "jdoe"));
+ }
+
return boost::report_errors();
}
diff --git a/libs/fusion/test/sequence/define_struct_inline.cpp b/libs/fusion/test/sequence/define_struct_inline.cpp
index e849ce9..d34a142 100644
--- a/libs/fusion/test/sequence/define_struct_inline.cpp
+++ b/libs/fusion/test/sequence/define_struct_inline.cpp
@@ -41,6 +41,13 @@ namespace ns
BOOST_FUSION_DEFINE_STRUCT_INLINE(s, (int, m))
BOOST_FUSION_DEFINE_STRUCT_INLINE(empty_struct, )
+
+ // Testing non-constexpr compatible types
+ BOOST_FUSION_DEFINE_STRUCT_INLINE(
+ employee,
+ (std::string, name)
+ (std::string, nickname)
+ )
}
template <typename Point>
@@ -128,6 +135,17 @@ main()
{
run_test<cls::point>(); // test with non-template enclosing class
run_test<tpl_cls<>::point>(); // test with template enclosing class
+
+ {
+ using namespace boost::fusion;
+
+ ns::employee emp = make_list("John Doe", "jdoe");
+ std::cout << at_c<0>(emp) << std::endl;
+ std::cout << at_c<1>(emp) << std::endl;
+
+ BOOST_TEST(emp == make_vector("John Doe", "jdoe"));
+ }
+
return boost::report_errors();
}

View File

@ -0,0 +1,42 @@
From f2c465ffa508459216f7093bf95ba001ad994206 Mon Sep 17 00:00:00 2001
From: vslashg <veloso@verylowsodium.com>
Date: Mon, 29 Feb 2016 13:33:35 -0500
Subject: [PATCH] Fix auto-pointer registration in Boost Python 1.60.
The conditional instantiation magic of maybe_register_pointer_to_python() assumes that use_value_holder and use_back_reference will be one of the boost::mpl::bool_ types, but this assumption is no longer true in Boost 1.60, where they can be standard library bool wrappers instead.
Explicitly defining these types as mpl::bool_ classes fixes https://github.com/boostorg/python/issues/56.
---
boost/python/object/class_metadata.hpp | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/boost/python/object/class_metadata.hpp b/boost/python/object/class_metadata.hpp
index c71cf67..5009c17 100644
--- a/boost/python/object/class_metadata.hpp
+++ b/boost/python/object/class_metadata.hpp
@@ -164,7 +164,7 @@ struct class_metadata
>::type held_type;
// Determine if the object will be held by value
- typedef is_convertible<held_type*,T*> use_value_holder;
+ typedef mpl::bool_<is_convertible<held_type*,T*>::value> use_value_holder;
// Compute the "wrapped type", that is, if held_type is a smart
// pointer, we're talking about the pointee.
@@ -175,10 +175,12 @@ struct class_metadata
>::type wrapped;
// Determine whether to use a "back-reference holder"
- typedef mpl::or_<
- has_back_reference<T>
- , is_same<held_type_arg,T>
- , is_base_and_derived<T,wrapped>
+ typedef mpl::bool_<
+ mpl::or_<
+ has_back_reference<T>
+ , is_same<held_type_arg,T>
+ , is_base_and_derived<T,wrapped>
+ >::value
> use_back_reference;
// Select the holder.

View File

@ -0,0 +1,42 @@
From: jzmaddock <john@johnmaddock.co.uk>
Date: Tue, 21 Jul 2015 18:54:48 +0100
Subject: [PATCH] Remove deprecated type_traits usage.
---
include/boost/graph/adjacency_matrix.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/boost/graph/adjacency_matrix.hpp b/include/boost/graph/adjacency_matrix.hpp
index b1078d9..ade7351 100644
--- a/boost/graph/adjacency_matrix.hpp
+++ b/boost/graph/adjacency_matrix.hpp
@@ -443,7 +443,7 @@ namespace boost {
// graph type. Instead, use directedS, which also provides the
// functionality required for a Bidirectional Graph (in_edges,
// in_degree, etc.).
- BOOST_STATIC_ASSERT(type_traits::ice_not<(is_same<Directed, bidirectionalS>::value)>::value);
+ BOOST_STATIC_ASSERT(!(is_same<Directed, bidirectionalS>::value));
typedef typename mpl::if_<is_directed,
bidirectional_tag, undirected_tag>::type
From: Vladimir Prus <vladimir.prus@gmail.com>
Date: Mon, 7 Dec 2015 13:55:07 +0300
Subject: [PATCH] Add missing include of <list>.
Thanks to Amit Prakash Ambasta for the report.
---
include/boost/graph/r_c_shortest_paths.hpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/boost/graph/r_c_shortest_paths.hpp b/include/boost/graph/r_c_shortest_paths.hpp
index afa50cf..7e490fc 100644
--- a/boost/graph/r_c_shortest_paths.hpp
+++ b/boost/graph/r_c_shortest_paths.hpp
@@ -11,6 +11,7 @@
#include <map>
#include <queue>
#include <vector>
+#include <list>
#include <boost/graph/graph_traits.hpp>
#include <boost/graph/iteration_macros.hpp>

View File

@ -0,0 +1,138 @@
--- a/boostcpp.jam
+++ b/boostcpp.jam
@@ -104,7 +104,7 @@
python-id = [ option.get "python-buildid" ] ;
if $(python-id)
{
- PYTHON_ID = [ regex.replace $(python-id) [*\\/:.\"\'] _ ] ;
+ PYTHON_ID = [ regex.replace $(python-id) [*\\/:\"\'] _ ] ;
}
--- a/libs/python/build/Jamfile
+++ b/libs/python/build/Jamfile
@@ -30,22 +30,6 @@
;
}
-rule find-py3-version
-{
- local versions = [ feature.values python ] ;
- local py3ver ;
- for local v in $(versions)
- {
- if $(v) >= 3.0
- {
- py3ver = $(v) ;
- }
- }
- return $(py3ver) ;
-}
-
-py3-version = [ find-py3-version ] ;
-
project boost/python
: source-location ../src
;
@@ -53,10 +37,16 @@
rule cond ( test ? : yes * : no * ) { if $(test) { return $(yes) ; } else { return $(no) ; } }
rule unless ( test ? : yes * : no * ) { if ! $(test) { return $(yes) ; } else { return $(no) ; } }
-rule lib_boost_python ( is-py3 ? )
+rule lib_boost_python
{
+ local python_major_version = [ MATCH "^([^.]+)" : [ feature.values python ] ] ;
+ local python2 ;
+ if $(python_major_version) = 2
+ {
+ python2 = true ;
+ }
- lib [ cond $(is-py3) : boost_python3 : boost_python ]
+ lib boost_python
: # sources
numeric.cpp
list.cpp
@@ -90,20 +80,9 @@
: # requirements
<link>static:<define>BOOST_PYTHON_STATIC_LIB
<define>BOOST_PYTHON_SOURCE
+ [ cond $(python2) : <cxxflags>-fno-strict-aliasing ]
- # On Windows, all code using Python has to link to the Python
- # import library.
- #
- # On *nix we never link libboost_python to libpython. When
- # extending Python, all Python symbols are provided by the
- # Python interpreter executable. When embedding Python, the
- # client executable is expected to explicitly link to
- # /python//python (the target representing libpython) itself.
- #
- # python_for_extensions is a target defined by Boost.Build to
- # provide the Python include paths, and on Windows, the Python
- # import library, as usage requirements.
- [ cond [ python.configured ] : <library>/python//python_for_extensions ]
+ [ cond [ python.configured ] : <library>/python//python ]
# we prevent building when there is no python available
# as it's not possible anyway, and to cause dependents to
@@ -112,7 +91,6 @@
<dependency>config-warning
<python-debugging>on:<define>BOOST_DEBUG_PYTHON
- [ cond $(is-py3) : <python>$(py3-version) ]
-<tag>@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag
<tag>@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).python-tag
@@ -125,51 +103,8 @@
;
}
-rule lib_boost_numpy ( is-py3 ? )
-{
- numpy-include = [ python.numpy-include ] ;
- lib [ cond $(is-py3) : boost_numpy3 : boost_numpy ]
- : # sources
- numpy/dtype.cpp
- numpy/matrix.cpp
- numpy/ndarray.cpp
- numpy/numpy.cpp
- numpy/scalars.cpp
- numpy/ufunc.cpp
- : # requirements
- [ cond [ python.numpy ] : <library>/python//python_for_extensions ]
- [ unless [ python.numpy ] : <build>no ]
- <include>$(numpy-include)
- <library>boost_python
- <python-debugging>on:<define>BOOST_DEBUG_PYTHON
- [ cond $(is-py3) : <python>$(py3-version) ]
-
- -<tag>@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag
- <tag>@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).python-tag
-
- : # default build
- <link>shared
- : # usage requirements
- <python-debugging>on:<define>BOOST_DEBUG_PYTHON
- ;
-}
-
libraries = boost_python ;
-libraries3 = boost_python3 ;
-if [ python.numpy ]
-{
- libraries += boost_numpy ;
- libraries3 += boost_numpy3 ;
-}
lib_boost_python ;
-lib_boost_numpy ;
-
-if $(py3-version)
-{
- lib_boost_python yes ;
- lib_boost_numpy yes ;
- libraries += $(libraries3) ;
-}
boost-install $(libraries) ;

View File

@ -1,11 +0,0 @@
--- boostcpp.jam
+++ boostcpp.jam
@@ -377,7 +377,7 @@
if $(layout) = versioned
{
result = [ common.format-name
- <base> <toolset> <threading> <runtime> -$(BOOST_VERSION_TAG)
+ <base> <threading> <runtime> -$(BOOST_VERSION_TAG)
-$(BUILD_ID)
: $(name) : $(type) : $(property-set) ] ;
}

View File

@ -1,38 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>cpp</herd>
<maintainer type="project">
<email>cpp@gentoo.org</email>
<name>Gentoo C++ Project</name>
</maintainer>
<maintainer type="project">
<email>office@gentoo.org</email>
<description>Please CC on stabilisation bugs</description>
</maintainer>
<use>
<flag name='context'>
Build and install the Boost.Context library and all other
Boostlibraries that depends on it
</flag>
<flag name='tools'>
Build and install the boost tools (bcp, quickbook, inspect,
wave)
</flag>
<flag name='debug' restrict='&lt;dev-libs/boost-1.50.0-r3'>
Build and install debug versions of the Boost libraries. These
libraries are not used by default, and should not be used unless
you're developing against Boost.
</flag>
<flag name='debug' restrict='&gt;dev-libs/boost-1.52.0-r2'>
Build and install only the debug version of the Boost
libraries. Only enable this flag if you're developing against
boost.
</flag>
<flag name='threads'>
Build multi-thread-compatible libraries instead of
single-threaded only.
</flag>
<flag name='nls'>
Build libboost_locale. This library requires compatible C
library interfaces, which might not be provided by uClibc or
other embedded libraries.
</flag>
<flag name='doc'>
Install the full API documentation documentation. This takes
over 200MB of extra disk space.
</flag>
<flag name="context">Build and install the Boost.Context (and Boost.Fiber) library and all other Boost libraries that depend on it</flag>
<flag name="tools">Build and install the boost tools (bcp, quickbook, inspect, wave)</flag>
<flag name="debug" restrict="&lt;dev-libs/boost-1.50.0-r3">Build and install debug versions of the Boost libraries. These libraries are not used by default, and should not be used unless you're developing against Boost.</flag>
<flag name="debug" restrict="&gt;dev-libs/boost-1.52.0-r2">Build and install only the debug version of the Boost libraries. Only enable this flag if you're developing against boost.</flag>
<flag name="threads">Build multi-thread-compatible libraries instead of single-threaded only.</flag>
<flag name="nls">Build libboost_locale. This library requires compatible C library interfaces, which might not be provided by uClibc or other embedded libraries.</flag>
<flag name="doc">Install the full API documentation documentation. This takes over 200MB of extra disk space.</flag>
</use>
<upstream>
<remote-id type="sourceforge">boost</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,14 +0,0 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:= ) !icu? ( virtual/libiconv ) mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) app-arch/bzip2 sys-libs/zlib !app-admin/eselect-boost =dev-util/boost-build-1.52.0*
DESCRIPTION=Boost Libraries for C++
EAPI=5
HOMEPAGE=http://www.boost.org/
IUSE=debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7
KEYWORDS=alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:= ) !icu? ( virtual/libiconv ) mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) app-arch/bzip2 sys-libs/zlib !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads )
SLOT=0/1.52
SRC_URI=mirror://sourceforge/boost/boost_1_52_0.tar.bz2
_eclasses_=eutils ea170b525f6a38a006be05c9d9429f13 flag-o-matic f3d2dfb12521ff699df43be5d9a51dc4 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing eb9be4b678c4e71f3f530a767df31912 python-r1 dcd61d7a5c283f18cfe763552b09eb88 python-utils-r1 d275302cd06aedef2ba08f81f3104206 toolchain-funcs 1b1da0c45c555989dc5d832b54880783 versionator 99ae9d758cbe7cfed19170e7d48f5a9c
_md5_=d3bef878cc89e145dff5d2f0ca7e5453

View File

@ -1,14 +0,0 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:= ) !icu? ( virtual/libiconv ) mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) app-arch/bzip2 sys-libs/zlib !app-admin/eselect-boost =dev-util/boost-build-1.53*
DESCRIPTION=Boost Libraries for C++
EAPI=5
HOMEPAGE=http://www.boost.org/
IUSE=debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7
KEYWORDS=~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-fbsd ~x86-linux
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:= ) !icu? ( virtual/libiconv ) mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) app-arch/bzip2 sys-libs/zlib !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 ) )
SLOT=0/1.53
SRC_URI=mirror://sourceforge/boost/boost_1_53_0.tar.bz2
_eclasses_=eutils ea170b525f6a38a006be05c9d9429f13 flag-o-matic f3d2dfb12521ff699df43be5d9a51dc4 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing eb9be4b678c4e71f3f530a767df31912 python-r1 dcd61d7a5c283f18cfe763552b09eb88 python-utils-r1 d275302cd06aedef2ba08f81f3104206 toolchain-funcs 1b1da0c45c555989dc5d832b54880783 versionator 99ae9d758cbe7cfed19170e7d48f5a9c
_md5_=79095bdf82917e21c7e66e1d114380a8

View File

@ -1,14 +0,0 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:= ) !icu? ( virtual/libiconv ) mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) app-arch/bzip2 sys-libs/zlib !app-admin/eselect-boost =dev-util/boost-build-1.54*
DESCRIPTION=Boost Libraries for C++
EAPI=5
HOMEPAGE=http://www.boost.org/
IUSE=debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7
KEYWORDS=~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-fbsd ~x86-linux
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:= ) !icu? ( virtual/libiconv ) mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) app-arch/bzip2 sys-libs/zlib !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 ) )
SLOT=0/1.54
SRC_URI=mirror://sourceforge/boost/boost_1_54_0.tar.bz2
_eclasses_=eutils ea170b525f6a38a006be05c9d9429f13 flag-o-matic f3d2dfb12521ff699df43be5d9a51dc4 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing eb9be4b678c4e71f3f530a767df31912 python-r1 dcd61d7a5c283f18cfe763552b09eb88 python-utils-r1 d275302cd06aedef2ba08f81f3104206 toolchain-funcs 1b1da0c45c555989dc5d832b54880783 versionator 99ae9d758cbe7cfed19170e7d48f5a9c
_md5_=0f5a5f322f3b968f8b48474e335f3fa7

View File

@ -1,15 +0,0 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=abi_x86_32? ( !app-emulation/emul-linux-x86-cpplibs[-abi_x86_32(-)] ) icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.55*
DESCRIPTION=Boost Libraries for C++
EAPI=5
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux
LICENSE=Boost-1.0
RDEPEND=abi_x86_32? ( !app-emulation/emul-linux-x86-cpplibs[-abi_x86_32(-)] ) icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 ) )
RESTRICT=test
SLOT=0/1.55.0
SRC_URI=mirror://sourceforge/boost/boost_1_55_0.tar.bz2
_eclasses_=eutils ea170b525f6a38a006be05c9d9429f13 flag-o-matic f3d2dfb12521ff699df43be5d9a51dc4 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multilib-build 8fe2e81aeb36cdf8a6cc5f50443879cc multilib-minimal 0224dee31c0f98405d572e14ad6dee65 multiprocessing eb9be4b678c4e71f3f530a767df31912 python-r1 dcd61d7a5c283f18cfe763552b09eb88 python-utils-r1 d275302cd06aedef2ba08f81f3104206 toolchain-funcs 1b1da0c45c555989dc5d832b54880783 versionator 99ae9d758cbe7cfed19170e7d48f5a9c
_md5_=a1803e96a9fc399af11951c9ac7ec06c

View File

@ -4,12 +4,12 @@ DESCRIPTION=Boost Libraries for C++
EAPI=5
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
KEYWORDS=alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=abi_x86_32? ( !app-emulation/emul-linux-x86-cpplibs[-abi_x86_32(-)] ) icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 ) )
RESTRICT=test
SLOT=0/1.56.0
SRC_URI=mirror://sourceforge/boost/boost_1_56_0.tar.bz2
_eclasses_=eutils ea170b525f6a38a006be05c9d9429f13 flag-o-matic f3d2dfb12521ff699df43be5d9a51dc4 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multilib-build 8fe2e81aeb36cdf8a6cc5f50443879cc multilib-minimal 0224dee31c0f98405d572e14ad6dee65 multiprocessing eb9be4b678c4e71f3f530a767df31912 python-r1 dcd61d7a5c283f18cfe763552b09eb88 python-utils-r1 d275302cd06aedef2ba08f81f3104206 toolchain-funcs 1b1da0c45c555989dc5d832b54880783 versionator 99ae9d758cbe7cfed19170e7d48f5a9c
_md5_=684002501bb102d38ded9b6969a4cfe2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=c98f16e1a14c91b7896126079bf6dd83

View File

@ -1,15 +0,0 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=abi_x86_32? ( !app-emulation/emul-linux-x86-cpplibs[-abi_x86_32(-)] ) icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.57*
DESCRIPTION=Boost Libraries for C++
EAPI=5
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=abi_x86_32? ( !app-emulation/emul-linux-x86-cpplibs[-abi_x86_32(-)] ) icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 ) )
RESTRICT=test
SLOT=0/1.57.0
SRC_URI=mirror://sourceforge/boost/boost_1_57_0.tar.bz2
_eclasses_=eutils ea170b525f6a38a006be05c9d9429f13 flag-o-matic f3d2dfb12521ff699df43be5d9a51dc4 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multilib-build 8fe2e81aeb36cdf8a6cc5f50443879cc multilib-minimal 0224dee31c0f98405d572e14ad6dee65 multiprocessing eb9be4b678c4e71f3f530a767df31912 python-r1 dcd61d7a5c283f18cfe763552b09eb88 python-utils-r1 d275302cd06aedef2ba08f81f3104206 toolchain-funcs 1b1da0c45c555989dc5d832b54880783 versionator 99ae9d758cbe7cfed19170e7d48f5a9c
_md5_=d66f957fa3d6f0b22d5d4c72f4b34ce4

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.58*
DESCRIPTION=Boost Libraries for C++
EAPI=5
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 ) )
RESTRICT=test
SLOT=0/1.58.0
SRC_URI=mirror://sourceforge/boost/boost_1_58_0.tar.bz2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=e0390d141834c01470184c95e3cf271a

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.59*
DESCRIPTION=Boost Libraries for C++
EAPI=6
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 ) )
RESTRICT=test
SLOT=0/1.59.0
SRC_URI=mirror://sourceforge/boost/boost_1_59_0.tar.bz2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=6f45cd8483776ace3ea2fe8ced29ae8e

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.60*
DESCRIPTION=Boost Libraries for C++
EAPI=6
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 ) )
RESTRICT=test
SLOT=0/1.60.0
SRC_URI=mirror://sourceforge/boost/boost_1_60_0.tar.bz2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=6f06a7aa3339db80d41b4e8cc38e8ee4

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.61*
DESCRIPTION=Boost Libraries for C++
EAPI=6
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( virtual/mpi[cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 ) )
RESTRICT=test
SLOT=0/1.61.0
SRC_URI=mirror://sourceforge/boost/boost_1_61_0.tar.bz2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=412b2e2143ccec2186ae6b778aaf086c

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( >=virtual/mpi-2.0-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.61*
DESCRIPTION=Boost Libraries for C++
EAPI=6
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( >=virtual/mpi-2.0-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 ) )
RESTRICT=test
SLOT=0/1.61.0
SRC_URI=mirror://sourceforge/boost/boost_1_61_0.tar.bz2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=35f5917dfba777af69e6128ab0a3f373

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( >=virtual/mpi-2.0-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.62*
DESCRIPTION=Boost Libraries for C++
EAPI=6
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( >=virtual/mpi-2.0-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 ) )
RESTRICT=test
SLOT=0/1.62.0
SRC_URI=https://downloads.sourceforge.net/project/boost/boost/1.62.0/boost_1_62_0.tar.bz2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=acd730e6f2b1eb0ae59d18106e3aacd7

View File

@ -0,0 +1,15 @@
DEFINED_PHASES=compile configure install preinst prepare setup test
DEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( >=virtual/mpi-2.0-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,python_targets_python3_6(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost =dev-util/boost-build-1.63*
DESCRIPTION=Boost Libraries for C++
EAPI=6
HOMEPAGE=http://www.boost.org/
IUSE=context debug doc icu +nls mpi python static-libs +threads tools python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 python_targets_python3_6 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt
LICENSE=Boost-1.0
RDEPEND=icu? ( >=dev-libs/icu-3.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) !icu? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) mpi? ( >=virtual/mpi-2.0-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,cxx,threads] ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,python_targets_python3_6(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-)] ) app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] !app-admin/eselect-boost
REQUIRED_USE=mpi? ( threads ) python? ( || ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 python_targets_python3_6 ) )
RESTRICT=test
SLOT=0/1.63.0
SRC_URI=https://downloads.sourceforge.net/project/boost/boost/1.63.0/boost_1_63_0.tar.bz2
_eclasses_=epatch 8233751dc5105a6ae8fcd86ce2bb0247 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 9c113d6a64826c40154cad7be15d95ea flag-o-matic 61cad4fb5d800b29d484b27cb033f59b ltprune 2770eed66a9b8ef944714cd0e968182e multibuild 72647e255187a1fadc81097b3657e5c3 multilib 0236be304ee52e7f179ed2f337075515 multilib-build eed53a6313267c9fbcd35fc384bd0087 multilib-minimal 9139c3a57e077cb8e0d0f73ceb080b89 multiprocessing 284a473719153462f3e974d86c8cb81c python-r1 0c067f080a047742ffac024b16895b45 python-utils-r1 c11fc374357e6ad9ddfe2e9f931e4d29 toolchain-funcs 6eb35f81556258a4bc9182ad3dfd58ee versionator c80ccf29e90adea7c5cae94b42eb76d0
_md5_=accc3a735cced1aabd14edd830029ff8