dev-util/cargo: add cargo ebuild for building rust packages

Cargo is the standard build system and package manager of the rust
ecosystem. Adding it here is essential to our packages that use rust.

This CL includes an ebuild for cargo and an eclass for all packages that
make use of cargo, including cargo itself. These files are taken from
upstream portage with necessary deviations annotated.

TEST=sudo emerge cargo, cargo should be on $PATH
BUG=None

Change-Id: Iaa276c51a07dfc89370d910e2c359e42eefca85b
Reviewed-on: https://chromium-review.googlesource.com/506888
Commit-Ready: Zach Reizner <zachr@chromium.org>
Tested-by: Zach Reizner <zachr@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
diff --git a/dev-util/cargo/Manifest b/dev-util/cargo/Manifest
new file mode 100644
index 0000000..91483b9
--- /dev/null
+++ b/dev-util/cargo/Manifest
@@ -0,0 +1,76 @@
+DIST advapi32-sys-0.2.0.crate 7217 SHA256 e06588080cb19d0acb6739808aafa5f26bfb2ca015b2b6370028b44cf7cb8a9a SHA512 8e6bc75fcb2b91d2b8fe281d165aa8281c8ecca9ba09552f5e4cdbadc03b91db5a98789233c4dc858ee9cf8a3488f28af5a742dac50b44f6397fd14478b77618 WHIRLPOOL 30da033ae33a8d6e350bf49e8e525a984d3c18abe7356660f1d2d1e9cbb1dcbae3ac86bfd1469058358889bbeb900fa5dd5be4a6e337005657a82adedc60b1a7
+DIST aho-corasick-0.5.3.crate 252052 SHA256 ca972c2ea5f742bfce5687b9aef75506a764f61d37f8f649047846a9686ddb66 SHA512 cc297b4882b869919edf9023ee2bd7100eb48709f6e7076fd26d1701dab3d8aa2cfb03752a764877cd92177ab7a4ce3dcdae76d16965eca2ff53667832afda31 WHIRLPOOL 93651414398a02de849aa0b1dd8319678e20df385643422da751e38388afe60ae305f197a68cf2b9d1d6e39ef56c54979b6290a2c82555eb811839acffb72531
+DIST bitflags-0.1.1.crate 8719 SHA256 2a6577517ecd0ee0934f48a7295a89aaef3e6dfafeac404f94c0b3448518ddfe SHA512 aa85c6adda0e9d192f2ae817e3c727167bac8609eb85c8153d99bb42d990de3f931e890924841ca11ba8dbd1413d1c5bf20acd584d182292e8828ed56fcedc18 WHIRLPOOL c93a45bb238b32e551dee23f9023db97eab10c2418a59dd9e3c44ca8cf7c8916de90ffbb5e84b7bff4863ce7a71de54e9fa760967989be906a90bec509a2956a
+DIST bitflags-0.7.0.crate 10851 SHA256 aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d SHA512 fdfe472c26e5486d1a3f1bfe5a27d26678781235c6e14b49bdb75388359cb78841f38d794fc4557548581a80a10b715d8840182c9ca3316049984a6b9f35b3c0 WHIRLPOOL 60551486cd6688c78ecd0ac40ca39b1f3d75537dd96ec32e9882e205bfe2062de939a129777d66f8c269c8a71e2f2aa240e015c0b3bfa51adbad478024e296d4
+DIST bufstream-0.1.2.crate 7477 SHA256 7b48dbe2ff0e98fa2f03377d204a9637d3c9816cd431bfe05a8abbd0ea11d074 SHA512 ddbb8597cd430111e58facfc30e6cf93bce174b09a8f7eeaf7d7062dc856137dbd238a0c7794336d9a2b7d0a1859dc8b8d225116c0c57591106dc6f2e1adc0a9 WHIRLPOOL 7a5bac1c3309d6f5d9dad3a21a7fa146815d2b35444dc356ade49f6f05df2896ee0d88570ac3964939db20633651721e41d7757060b9a5c1b2c5878e68c5adfe
+DIST cargo-0.17.0.tar.gz 638004 SHA256 fc689ca7a09f1e6a1c31e69f0e2616a93576a68e0e1d7f0ae4c0d3301ff21ff8 SHA512 5ea9a382ab48ee714b5cd1412f11ae72c6065913e2ce56cf84fe43f9061fd383f32c16a6525e5400f3fec9c10eaa3e7a149b026ae9c64af0955e91678b032650 WHIRLPOOL 33b8c75db79356020c3809f23d4a78f656d6c86e0be24affd9b7d0b09e6bf529f8f2606642be665f1eca59ba89438cb8f22009bdfdae2cc0a34ee6d661c79dab
+DIST cargo-snapshot-amd64-2016-09-01.tar.gz 4453020 SHA256 365e5cad79512d244b8ced32f8e5b86a710fc6c17f0d0f5f744b8058ef6dc756 SHA512 a87cd21e5be8f7dc580e1d0b78a2ca57b98c8cf09d5d1517a7422448b5e27e6af82ad61d2170b39c2265fd02078ceb9714bd6e79116a30d9cdeefdfe97eceeac WHIRLPOOL 8f7ac8c98a79f59635bcfa3f9872495b0476bb3e9997d09d404169c12cc43f2aa810eeba8b55247abed7cb1c6b4526d9f9ba0f757427f02a15c59e9061b4380d
+DIST cargo-snapshot-x86-2016-09-01.tar.gz 4145052 SHA256 764617ab0a46edfaf5d714488fdb8283edaf9bff96e7132844d14d44c14e69cb SHA512 8f8715c117f7e54101db7dabef12a0a69696a3b173789e4b1c05f578d785ee4f77ecf9f9076d0caf74e1f0effe6c68304280afdd4013e9d8f840b7e090e6c137 WHIRLPOOL de900c1b213e46b28e651d73fb5be13fdf5a28b588ddfdf2ddee3051f94cbe86df1652a7e5a714e76e6d9846fa17094feec6456b27da075d92d7faa1ecb40877
+DIST cargotest-0.1.0.crate 335 SHA256 9f159eae7986fc918c85a308f9389aacaf569d78e0431e777376432d7aa4ddd5 SHA512 d96dfc584dd6c0ed05b609d4fc4375af4950e37d41493113d2693c5180ebb11987c4f7e3fe9e5ccb4b71f37b3afe3bcc646f92ad325ed5fd1df92ac5b095dde8 WHIRLPOOL 21331acc22c77610fded8b48f0e38502f63b7fd7a33daea02d4bd00022ccc59238d5d909ff25fd22a984fb4f7bb39a41abec83244a9f3500c853b3411b714d3a
+DIST cfg-if-0.1.0.crate 2758 SHA256 de1e760d7b6535af4241fca8bd8adf68e2e7edacc6b29f5d399050c5e48cf88c SHA512 d2f10ae39a7fe712cd9d228e3b5a96448acaeab3b92d1b97229d54e5201237b9434ceecb1f38f1ebc1f678da5cfc33aa46c810f422f68a21aa341666c27572fb WHIRLPOOL 8a57a78a8e4a72c3321cf8ac97c2b50f18eb4ed35b2e3c22ca06b5f8031eadccce015237ac846ce78ecf9414632b75a04b168993439d1469eb928d4d05c843e5
+DIST cmake-0.1.19.crate 11698 SHA256 8ebde6558caa6cf9bffe5750c66c517e7f9d470d59fcd48b0acbc0a02d62a82a SHA512 85c73b5e36e58f75b58a853275e30afce4c12fbaeca9532bd01f90465ad928bcb565b793e7de21154e794c604d5abb99e5b269542e4a1fd6b3724037b49f8520 WHIRLPOOL d972f4e3a9f7c0017e53154c0bed67f6c49d69a2992e7bd469252400dbd062b893896acc71c5bacf854a682a0744d933a52eab243414d006d24f0873797fea91
+DIST crates-io-0.6.0.crate 3387 SHA256 14982f07738e88d42b575b67b8a902da50473efdcb30b9c43a27e08f399a1943 SHA512 225c0582e2ff28fc7a31a3c5d89f6731cab0593cc9adf2897a1a0f6a8436f58a32d46976241b813ff84de5cbc30e505812b7536df7766dfadfd5f0452626b5c3 WHIRLPOOL 2946deaa0186db87a20064c50c9c870cdf8ef9cf9a358b8fba4b56965f9c252d9b92d2861a54e86ddec00d163bfee0cb7812b92bee4d188181231fcd510365ee
+DIST crossbeam-0.2.10.crate 32993 SHA256 0c5ea215664ca264da8a9d9c3be80d2eaf30923c259d03e870388eb927508f97 SHA512 cdefcda7626c08ca59bdf5581e0e8d3e6367081089cc32dad6e84b5f643c7cbc5b08ce47034dd925fe2f5e2dfcfd18afb51fba511265ee3598fc1844838948f2 WHIRLPOOL 764f0a48c300a587ea56b5f0f7f55d40d8330d0148cd309599b3794d8c28399531b52641a58cd65eb9fb0107ede1a2e7f119c562d4781dee3a8c360b0a5af73e
+DIST curl-0.4.1.crate 53884 SHA256 8fd5a1fdcebdb1a59578c5583e66ffed2d13850eac4f51ff730edf6dd6111eac SHA512 357689f9927b57341324948d4e7f9216f9a21fbbf12b864122509a11565fae4b33498b75b85c0b45566d6b2a432905f140c57889a5e4fd8c154b3fb36e81f284 WHIRLPOOL da72959d9a8aefe5ac1a9b1b2939fa67fbb93fb01a4471efecd3085e8eba61c56018bc5a866d6db3a1f78ef1eb426890cb691dd28bcf5e4212fd68e76fb2f891
+DIST curl-sys-0.3.6.crate 3196287 SHA256 218a149208e1f4e5f7e20f1d0ed1e9431a086a6b4333ff95dba82237be9c283a SHA512 10d5308e60be5c08cf4a61cc991648278f832bb9630a3c84fa0f389c53835ed99b74ce89a99ae3ed092685a80f0d50276faea4a42bd2bfb16cc536b6f0b7293f WHIRLPOOL 2a09bb0e2975af780ed37248b46750c7630974e577da4aa9c199a86c02cb1cef8e775a366924a584715029713c15b9bb2f3d3059666c5fe2acf9c83f356ca204
+DIST docopt-0.6.86.crate 41141 SHA256 4a7ef30445607f6fc8720f0a0a2c7442284b629cf0d049286860fae23e71c4d9 SHA512 f79132ff3d49ad3a4eb37179a8369def367d39110829e673d926d1ba252a63c6f8241e8889895d6cac68af2543de176255a8641e49958746dd729837c54d0da0 WHIRLPOOL df303cfbcbe1ee0e967225cf05250ddf42f5773a89dbc5063a6a4c2e1d36ca5ec003fb39ac85a28669f7da4db3cbc9f648cc2489e203912e817d5905e1462935
+DIST env_logger-0.3.5.crate 5950 SHA256 15abd780e45b3ea4f76b4e9a26ff4843258dd8a3eed2775a0e7368c2e7936c2f SHA512 9650ba32bfaa8c013c04cf2eb68378874fed53a178332151bec8d7ac832ab2884f91fdc39c372d3c1677954b073212654fb570da1f3c708e4d5a25910d6c1181 WHIRLPOOL 21b4c81d96e5a8ccbda8491df42db9144acf41f4a25b1f510d8af7d46c931a28e089615692d46d9eb73c511a9cacfb59a15a5647ed1eea6d17ef9a973d99f5a5
+DIST error-chain-0.7.2.crate 17208 SHA256 318cb3c71ee4cdea69fdc9e15c173b245ed6063e1709029e8fd32525a881120f SHA512 7a29d11b57a8c88d8ea347f80f71f9c4ce0b022fcd563f3ced973d6e008f1c0ffcb958bac4108cb02739547a334d6473d7aa20f66feabf06c68f82dab23e1de4 WHIRLPOOL 703381dd5de1ddcc917220b896ebcdfad1664f8371ea5f2103b02b64a32b3d1c594b60b02c1da0011db58fe9c35cb77dcf2323d2f089f3d9bcee5da10ce9460f
+DIST filetime-0.1.10.crate 8884 SHA256 5363ab8e4139b8568a6237db5248646e5a8a2f89bd5ccb02092182b11fd3e922 SHA512 19245d71f60f144828adb6f9336adc5371e559decc8740338122327d28b7c548d011d9e6454b12475f0eb2db7dacdb1e2bfbef01311f59e8338f44d27c3345eb WHIRLPOOL 2af8d65033a9cef609d6688a32953c8ec9ac591ed6c357b62f86a028124d1a0c50199daadf839079771c00b4201971bacecc3928094fd77f9d4c872be8e01c10
+DIST flate2-0.2.14.crate 46692 SHA256 3eeb481e957304178d2e782f2da1257f1434dfecbae883bafb61ada2a9fea3bb SHA512 efe87214a33557ba7f3c255de21f8e556402f947bf7fdff36d4fa98999811bf92efcffdfb53bb1612a8c995673ef423d66906f740875b2213a2fb78306ed0340 WHIRLPOOL f287cd8904600e80337895cf91d705053a9b4a810c199444cdf50b18c45d1fdbb295b31fde7309caf64ed7b91775bfbbcaafdfc026e59f1b11bd82f7c6317d90
+DIST fs2-0.3.0.crate 11874 SHA256 640001e1bd865c7c32806292822445af576a6866175b5225aa2087ca5e3de551 SHA512 00423172c7bfceae2c6e769c414d460d61a763d533073cbffcaac60979493b00d19dff3b8191c4ef97c87a4f860dd11fb4f0aafd730a6a3655665a9f1d83c0d8 WHIRLPOOL e29563d93b92aa2b0bd584c8f2bb1f482d6d942434b129ad79f777692776ac907e475f6ecf805e5f23ffacd7c58ca8f7861a2553fc92b53ecd177b8a174843d7
+DIST gcc-0.3.39.crate 24744 SHA256 771e4a97ff6f237cf0f7d5f5102f6e28bb9743814b6198d684da5c58b76c11e0 SHA512 7e253d1e1cf4b86b3ddb463975411473525ba3d8f2417b68fef07fe686c08452657a432aaab1ee05b37d73273544b3e3f97c41fdc1c2c2c505766554e04327f0 WHIRLPOOL 71a07a816a699e087753c199543d344cf6e7e54340c78f7baf926a9efff35b30d8de477a50140bb9fe26018229fce9f73fba201360b091d0b3c72e67d54a1c94
+DIST gdi32-sys-0.2.0.crate 7643 SHA256 0912515a8ff24ba900422ecda800b52f4016a56251922d397c576bf92c690518 SHA512 009f51899ecf9c8a6c688c3b087c294482c9d4c09b9c2b7fd5d949ed269bed9dea7ab5ff95ba9524c3402e4299d944205187f99ce0d0300a1646ff021030f19c WHIRLPOOL f7a8005023ee0cf45af76580acb0960680694a3481c8ee2a6d78278f438fe35a245672854720984c7a1c6b81152bd1f705a78f4c554aced34ad81f882c0305b6
+DIST git2-0.6.3.crate 126947 SHA256 0534ca86640c6a3a0687cc6bee9ec4032509a0d112d97e8241fa6b7e075f6119 SHA512 c78bdd853bbeb24d8e730c48f335ca9bb79d7930a83a52cf3d769b4a9feee418d4885aa1da59c966bcfec5e6280a0854235a2042c94ac11d65832d72524cf6a0 WHIRLPOOL 57cb17d1cf6c9ac2e39b7eb719d388aaeeb19860dd8ad346aa020ce126b5156585ee71ada2117af65ff09d711e67b327fb96194198d262a1dd84f88e2d029ada
+DIST git2-curl-0.7.0.crate 4097 SHA256 68676bc784bf0bef83278898929bf64a251e87c0340723d0b93fa096c9c5bf8e SHA512 b6adfbe6f75afa1fcbbc0a38f9dd13db87bde6e81eb6403a3f47c4d25a26301677614af82f1c7cb4a4a2122910e0f6450d7555f2bbe9ac97dc1da1243eeeaf0e WHIRLPOOL ee024c845de6171b657d74b69b576279dce07a7402d4c6ea13d49e034ff8f8e388edbd20bea075f06b38a365d3fa377dec58e88b8acdaec35a0feca313ba553f
+DIST glob-0.2.11.crate 18065 SHA256 8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb SHA512 91a1a751bc4ed3b13154aa056180f2b8123c33627cbe972bdd7986fb0b6f1ef90e59abd4128d6e4db5e69523d757440c7df9b9721a61f5ea5a091ffc9843e10e WHIRLPOOL 5f9b80d74ffcda693a008367d73fa0646b1dd73068fcd0075227d15c9bfcc86a05fe8a34163fe9d12806ef10d35f27649459ae05de71abd3a044f99baae041d1
+DIST hamcrest-0.1.1.crate 9217 SHA256 bf088f042a467089e9baa4972f57f9247e42a0cc549ba264c7a04fbb8ecb89d4 SHA512 6d6557cec99f482d6a738835d32504252e0a666c1318f6f0ac0f811afa7c087c048960ecd2fad22b403fae9a00b06f742de643a7b5ded1f816c118272232ec2d WHIRLPOOL 463d49d5403692dbe6d604bffdf689069e7998aa21e8658c8478adb9a8c4aa3019e063278694aa8eca98773162f90a1da126b962a487d8bd99f32048fef939b6
+DIST idna-0.1.0.crate 234027 SHA256 1053236e00ce4f668aeca4a769a09b3bf5a682d802abd6f3cb39374f6b162c11 SHA512 a3bdcd7934c8f2823e8be7b467a829334ab53c71e225f2ae73b379db6bf47c8c8fb28d30900eb18c7ce79e9d9780d45babff3d7e77c20640001e6f6ad93b2424 WHIRLPOOL 9bfe69ec718606736b4844a6884872dfb2cf608b3a21494016abbcb44d08400c489a8f51f142b6892501073d3d67b634d6ab593c0282032f5be3ccbbc517db0f
+DIST kernel32-sys-0.2.2.crate 24537 SHA256 7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d SHA512 682bc7c629aefd035966a2873518fd60719121cca7d63d89d6c97ff5306f24d8b5055a3c91b4eedaec22b1d5dd3fb8b48ff7341a05bbd72d86e06c422dab473b WHIRLPOOL 036baa6611f13d76692a5c032e7e8e8b5a82e12bdf13d5a2cdcf4d33020b003c941331f0c8aa774e7f7cc7b36ad7403bb2cbdecb739d7645cff66aeecd59b09f
+DIST lazy_static-0.2.2.crate 5026 SHA256 6abe0ee2e758cd6bc8a2cd56726359007748fbf4128da998b65d0b70f881e19b SHA512 d151405da0ff2305cb9556325c783c3214f57f7d905a9de9e41aabfcfa3921a402957b71e48b307feff4c34372e04075864d3eef3b44098df3f8015264eead09 WHIRLPOOL b228bfb5f3a7e65d6d68e6f1c74138c615fcb8c0412c90472db2888fe55bd98b1a8e5c5ba0e77b10f72a351c182743faca943194fc6780f93a0c6d0b4ae54196
+DIST libc-0.2.18.crate 114209 SHA256 a51822fc847e7a8101514d1d44e354ba2ffa7d4c194dcab48870740e327cac70 SHA512 d99e0db6fcc6538ee88109c2857a9e24641326c399f604d9704b9fc9e1d3e79eec8dfb10291499b1900a9a40f0d3d00f50d4709808683032f10fc3bdddebc2bf WHIRLPOOL d1a0129f1c752560f041700a547ba674484c9fef63f55e31001465ce9d3c83ee38e48c04663741dffdd865878ae4ad26b04e6718baf5f22e393e1b888d6907b0
+DIST libgit2-sys-0.6.6.crate 4216277 SHA256 c7a4e33e9f8b8883c1a5898e72cdc63c00c4f2265283651533b00373094e901c SHA512 6cbef4a910a752b9ad4489f45f0d04ae15a68d647f054352896d0aa50513ad1f13bd02902caa814ff8aa2331d9c786aa200ba384ed3239bcee52678d4e928e61 WHIRLPOOL 9397a45aa8313fc213468e252aabd373d5a88c88313d0b777426c502948c52ac3d0739ded4882262adb5f7d075218e7f5f4c7cf60c7cf5cc33ba133dee614f30
+DIST libssh2-sys-0.2.5.crate 412200 SHA256 91e135645c2e198a39552c8c7686bb5b83b1b99f64831c040a6c2798a1195934 SHA512 31a8861c34acf105678febf41fa4f9418a9f280fe36f5282a079dd4cf379c08339148a655aa26916e0aba00fd906e302ebd94d9920b934ae4dda930a2e23f0ac WHIRLPOOL 2b400855e4e195624d85d7d62c1c12f45a153fc75934f749ea199fcbf07fd51ab0bd111045cdf9049eac77ba2d412ee06de09d82ebd36e28961e4d992d8aea75
+DIST libz-sys-1.0.13.crate 602795 SHA256 e5ee912a45d686d393d5ac87fac15ba0ba18daae14e8e7543c63ebf7fb7e970c SHA512 13fd5c8be6acb39c47d1596b2aafe6e6ac576345d74b7d121681dcfbe30bcf585bf096ebb4cd62dd0805aea959ef5eaf4fafe72efbd7302810c366d0279fe730 WHIRLPOOL 809eb8e057c67db912159ab5502ebb8b3131ff7861ba7f0015563c38a1622f0981a5975bc9b2808347a080e9a791d8d0d6edaa2b726e4e12f4c2aac2548a5c0d
+DIST log-0.3.6.crate 16110 SHA256 ab83497bf8bf4ed2a74259c1c802351fcd67a65baa86394b6ba73c36f4838054 SHA512 f2e5526a2613f70301a607cbc79213a946a6039f85473f9de28ceb2f3b464be61a584f34ca6381e077d8bf6ac751c93011087d1723649c0d7722281f1a2b7174 WHIRLPOOL 18ef70829fae28a19e545479f4fd6f181d5dbd67ea17dadfa5b8ecdb8437c04f07036de5c2d5421bec4f783ba9b6390e833d624506bdbe99d1b0c47624082bab
+DIST matches-0.1.4.crate 1530 SHA256 efd7622e3022e1a6eaa602c4cea8912254e5582c9c692e9167714182244801b1 SHA512 a0248296a155fd3132150dcd95d3e51b62cf7b99a8530f0c2ea34455a224613bd7a2d1803fbbe1627aedf826e82e746495df319b62f1189e361c9fa1cd8a380e WHIRLPOOL 06386045c0bc87da223f0590c01225b4b811c9921a3107cbd924fd0caca33d53f5278b7378438c9951f5ba037f533e05ef00a6b056f417d5d0118c4a7174fb42
+DIST memchr-0.1.11.crate 6977 SHA256 d8b629fb514376c675b98c1421e80b151d3817ac42d7c667717d282761418d20 SHA512 96bbdb69913966326acba4bb82b8dfe0516edba225ac38b3355d60a2337ca620807750682fff3de7a2a38a7f70f0db7d8c1638701aacca7ab4c14098ba0fbcab WHIRLPOOL af0984d7e8084cc1aef94e486506a0fad9ec81d7be505233343e9fdad2ef0627a4d33bf99c2923959f9604326713ea24a01e2581aaa91249574b6c6d1a6d01a3
+DIST metadeps-1.1.1.crate 2767 SHA256 829fffe7ea1d747e23f64be972991bc516b2f1ac2ae4a3b33d8bea150c410151 SHA512 fec3e82e44854b6dc4f4322727f33f2afc5e676c5fee728f299240c3eb40595bed5a46afe75f51fa7f6a32f97e12bfddd04bed92981d7ccaf9d26400b72f0dea WHIRLPOOL 4363326ee702fc1c8af2b3f4a72ee09d06491e1f1d70fc4ae8623d6df66c780660fc093697da9822891f2cc6613305db5f463b158be5f48a264d3cd9051cbb3c
+DIST miniz-sys-0.1.7.crate 53361 SHA256 9d1f4d337a01c32e1f2122510fed46393d53ca35a7f429cb0450abaedfa3ed54 SHA512 30fbd5a040cc55642a023ac45915081af5b91c7929e1d5c27f15aec6fbd714886d17b8d41396ab13329f150288fae52a1ec21e41fc3e660fb1a6bd388b38b028 WHIRLPOOL ef69781aa8ccbcce8b5ba8519233a1fcc47b9459b21a9fd1d4e48d5ac58496e5eb382b94b5b671e152531293c74121ae0ceb46ab38dbdca2377a63cf52ebea31
+DIST miow-0.1.3.crate 18874 SHA256 d5bfc6782530ac8ace97af10a540054a37126b63b0702ddaaa243b73b5745b9a SHA512 e1e8be24dc4dc81a52f94d7b779d9ae3950ea5a5f74d1b64ecaa04e556c5f1a8a84058bb3388836369e15c44621f5193003499420cce3098503c47da1b374392 WHIRLPOOL c99dbaa1595a39ce5fcac846f03f30cb311db80719214dd57ead611fe2b680ff58f178219a3b4e1f9b6a43d894793b7bba4a59f0f1c926bdb5a8b5ea66cf2822
+DIST net2-0.2.26.crate 18489 SHA256 5edf9cb6be97212423aed9413dd4729d62b370b5e1c571750e882cebbbc1e3e2 SHA512 60c6c3b0b9dbfd844c7b52565bf3ed4977394be6396c19aa872d9377bf1961ae3e2cdf87da3822a81d78d453369d740b0477dc48ee62834bd6be4ead6cc92fb7 WHIRLPOOL e0272f280970e9f140fafffaf4883eacfb85d4d371b4f1ff14fd5e668d10b14d051d3b588cbebe9166c327cea2dd0163503ebe4244ba393bd4d0864bbc0ccac9
+DIST num-0.1.36.crate 30018 SHA256 bde7c03b09e7c6a301ee81f6ddf66d7a28ec305699e3d3b056d2fc56470e3120 SHA512 4af505c3a9b8e5343a1c565274da2ee529a418a72f4fddf6bfe2abe57180cc5e261c817f5b9d7a7c23cf73119121c149865d02a1e817cd2e5ce82369f6b4ab96 WHIRLPOOL 497da5b269ba0645c03df3a1138b917695058a39c896fdcd9e3387813f5ee2541c1976af3748abdac6495fe2ba9d6fefeab75894d35978179258c619715dd781
+DIST num-bigint-0.1.35.crate 31261 SHA256 88b14378471f7c2adc5262f05b4701ef53e8da376453a8d8fee48e51db745e49 SHA512 41a89872223bae94b7225937d816bde6ff7d46af2d69077b2da79cbfcbf9491a3f58ee8c6218315b67b760baa85d57c1040e3896ca6a3d6caf1014b7c9ff6c09 WHIRLPOOL fdad7aaebf71902d960564ec00eb02d6cd4289d9af43cea3166777b20fae6d4078b0cfc03db92d338d9203ba97f0e6c19974ada8157310a9e59a5e384eafe3b1
+DIST num-complex-0.1.35.crate 8114 SHA256 f0c78e054dd19c3fd03419ade63fa661e9c49bb890ce3beb4eee5b7baf93f92f SHA512 fa6d8de041e4b02813da69ae844389ba422badabfd2396f11716286edf1ba566d3d59e002e7215eb2156d74e1942c2435117054a0d9cac23c00e7285c438aa49 WHIRLPOOL 0c3abf0a916e51757b3053fe4c60a09cd5f3114cc80a76a9e21f808207aa8319cfec1625d82274928deba29c9998c20dc13d2a8875cf822e4bff2a9e6ab59be9
+DIST num-integer-0.1.32.crate 4312 SHA256 fb24d9bfb3f222010df27995441ded1e954f8f69cd35021f6bef02ca9552fb92 SHA512 a1e413aa7881928b848630f2125fc1053a085027b04df7493a33cc711549d84e0ee250f6425b978054c486bf3c532fe04beca191d1729ecccc751b59bdc6ba6b WHIRLPOOL 4c82ae27c0ef1ffba20be79e4e8dc97abc282980d8cae7440d80029029b2d09c4ca6dd8b35c8a2b74935059e13f67f053ef7d7694c4e0203a9e4dc3fc04be052
+DIST num-iter-0.1.32.crate 2896 SHA256 287a1c9969a847055e1122ec0ea7a5c5d6f72aad97934e131c83d5c08ab4e45c SHA512 ab13228dd619c68c8c2fcf8aababd1b4a9726f126837a83e0e0694a93a3d2cb77620f923d629bc464bdc311084b36ce6248770b965f6a6bc0694a8f6ab6d4cd1 WHIRLPOOL a59cb1f53e7b8f58fa8ec52d5d24b0cb19ae1552051cb60bd2a843d16a70f2d581095f6c9bb7650c24f6107dd177934df54f7a0db5102889b032f2de73bd0b66
+DIST num-rational-0.1.35.crate 7759 SHA256 54ff603b8334a72fbb27fe66948aac0abaaa40231b3cecd189e76162f6f38aaf SHA512 2bbf05b3ba1a3e98d857ba005cf2aca1f1f2e40961902fea7600cb90ae6e9b5626eb2419f214d4cd07794d6cd5df49a6ba1808fb43f2d3db40089f91a785ddcf WHIRLPOOL f3b75dcc4625b322336986d917b01d0dd811ead255b18f94ff0407fdae6147284b8e0d308b5cd25a80de8b44a0bb736b340dcb7fdced3c5b6a81b8315a843b6d
+DIST num-traits-0.1.36.crate 15071 SHA256 a16a42856a256b39c6d3484f097f6713e14feacd9bfb02290917904fae46c81c SHA512 b1d81ecb12e5894ce0508f0a23f98ad36f321a8571264753087703defcb905d982394c924e21c1da025a43e5bc964ad6d59d605d7c8a2a50addeb89fb93fdebf WHIRLPOOL 964dd256ef028b2ff6e21b70f2bcca2bc60f24854b7a5438f62a9aa69b5e5c0c5bed74f2526939545fb303c7e024911576cc8c3ec37abd923179cab93e64cb51
+DIST num_cpus-1.1.0.crate 6381 SHA256 8890e6084723d57d0df8d2720b0d60c6ee67d6c93e7169630e4371e88765dcad SHA512 31999bdbda7e1ca02a4a276a47f4b61e56dbb8987747de7b6850d5c9f21e0b8c541b5fa9fd07203c8790e6bcc6ffcf9167270dd2fc9716396b8d3cb2b88bebf1 WHIRLPOOL 3006f0b30a90218aacaf9004ab68dd306ceec22caa1ab5ccb01fa9a4b1a9ef998da3bddd3514466d8d5529a74a2870a9190415460f390987694253acc93f1d0c
+DIST openssl-0.9.6.crate 86211 SHA256 0c00da69323449142e00a5410f0e022b39e8bbb7dc569cee8fc6af279279483c SHA512 dacd50f81e6509e7508a1a74b949b13f3500ab2774c306d4b46a2b48b70c7a3edc41ca321b299be56491469e87bbec5a19320b89f1ae426ef30058b480c111c9 WHIRLPOOL 0c1e6b6338466c049d59514ccd2289ae062cff6aec428f4e02a9c4d5362ea6322ef2e96faf098991859465ea253419ce48541c06e7d528bca276218457d30373
+DIST openssl-probe-0.1.0.crate 5638 SHA256 756d49c8424483a3df3b5d735112b4da22109ced9a8294f1f5cdf80fb3810919 SHA512 044a4fd477420a511a01971b3e0373971b7c06f4a8e3f039745a71b84c652048437260d608997ee2499e0afb886e8dc637e9086545075eb3ea6979967d937c10 WHIRLPOOL 3865605b22292d5d65a279cc649c56dff90648802f73cc72bad8e34dcd0a3b43f14b443980d08a5cd13b6c86b1d24dae2f67f8b966c4d5652712f8e2a13430b2
+DIST openssl-sys-0.9.6.crate 28093 SHA256 b1482f9a06f56c906007e17ea14d73d102210b5d27bc948bf5e175f493f3f7c3 SHA512 b7f3b7a0e0b7cb34c7b1f65efc32738ccf40a2ab93782722a5655cfdb0e2feb566e1a53c8121c6d2e16794f26e817aac1455a39f8c422616fb4660478b339d8d WHIRLPOOL 1b9c5025d0b0b6b2eb3a0b570ceb9c42c7f86bfef3e57c0e3429caeeddc041919118d95d981fa1a4e5065e6701dc609633b021fda317a47838842894fb7a9223
+DIST pkg-config-0.3.8.crate 10814 SHA256 8cee804ecc7eaf201a4a207241472cc870e825206f6c031e3ee2a72fa425f2fa SHA512 a58102ea0c6063c53e45e2f5005888fcac7a8e27dceeae4fae8d672ed0690f062386fe175c968b17c127b622b80fd319448faf9fe8ba3422e24f6fa17e8ccb77 WHIRLPOOL b8921e822910523910fb1e9437dedecf55f640bec605f96cade50783f58ace3f8931d76f5a573b3c0ebd5f4134268d17eb7dcff134accf88a880b9064e67680e
+DIST psapi-sys-0.1.0.crate 973 SHA256 abcd5d1a07d360e29727f757a9decb3ce8bc6e0efa8969cfaad669a8317a2478 SHA512 512ac5b4f71b46aa74a856844a43092d236eab95eef7f6913e04553c9f699a3d36e4449fe6f1718426bc7d89787d891a066b315646a57961efe8b0de59ad8557 WHIRLPOOL 3e897e4406b038acde39f21bffde14f33d08dc4fc6ac0048354d3bd7b435d7c48e21647804f65eb8f0997ee3631146e9d2ef10634895ecc819527b155ff01d73
+DIST rand-0.3.14.crate 54768 SHA256 2791d88c6defac799c3f20d74f094ca33b9332612d9aef9078519c82e4fe04a5 SHA512 f727b61f29567b7f322bb9500f01c81588b3681c379f366ef80792ea80c200747b136389a91e32bcff346b24894e7f015090c86960c74b72ced3187a709dfbee WHIRLPOOL 9a8c22f6e0dc63853b8acdbd5e4de1e668de25617f7ec9ecbd2c8727d8cc1a71fdbf99aa247c0141e58a23c6e7fc431b66921c38d46062a0149c750e0c8bbb02
+DIST regex-0.1.80.crate 185806 SHA256 4fd4ace6a8cf7860714a2c2280d6c1f7e6a413486c13298bbc86fd3da019402f SHA512 a160d80f4ac9f1e17d1debe163584f2c6c2ba7a8c49c34a7e11ed945614fe1923714880515a31a1501566e254edad23be40307b452f9216915fa03d3dfaebda0 WHIRLPOOL d49c2d648518ced6e1c2a115c5066351be0c68913187259d0e233cab3061aa2673ea8099d2595f2cf038b8103549ba781cbc28b0c798ed25338469e45fbe8c2b
+DIST regex-syntax-0.3.9.crate 117427 SHA256 f9ec002c35e86791825ed294b50008eea9ddfc8def4420124fbc6b08db834957 SHA512 85513709816b148a163b73495b1e0100203da6c37d50a7d64368efb82fdac45fdd083d31bce4b193e1aa5926943e5278eaec5b23b174c425b5954d7b716fa506 WHIRLPOOL 7ee6a7b16911662acf6da0735216cf3d9236e20deffc01f52c2374af4077e22099bb48b0a8fe809fc2f690c858b47d631a605f617139030c5b5c2426ed4387eb
+DIST rustc-serialize-0.3.21.crate 45393 SHA256 bff9fc1c79f2dec76b253273d07682e94a978bd8f132ded071188122b2af9818 SHA512 c49d89841b983bbe3a121187146452f83ea196064c25b94777b0a282a4b79c5ee99fe45c8bfd897d0832e8bb508c1f1c0fb9cfb7e5f6b81633cbf821ea0d54f3 WHIRLPOOL 56513fe21b3fd1978879580070cfe99eab48d98a506dfae56d252e99834d01b3ae21d8f7565b65ea4ee4d5bfa05a794ca931add15599b8f799d6fa2fddbb925f
+DIST semver-0.5.1.crate 15586 SHA256 ae2ff60ecdb19c255841c066cbfa5f8c2a4ada1eb3ae47c77ab6667128da71f5 SHA512 bd96a216dec5d6007f2536979d24b7c4f81b29ccec8e588bbe796f34e6842102175a47d72f3fc8b96c51f9ede0968edd2c647fd1176eddfa26c8789d8d7f8318 WHIRLPOOL 9332c70567962635ee9000ad65cecbc7f67978a57e111a45f3eb62296de252b020c1dd8adbff92feb6c4d66332f73d514b3607bbc79e6a144149abb884290592
+DIST semver-parser-0.6.1.crate 4860 SHA256 e88e43a5a74dd2a11707f9c21dfd4a423c66bd871df813227bb0a3e78f3a1ae9 SHA512 25324af886c06889c16acc3f99aeb85eaab07ac851d398a07742bfdb970c2dd71b0a24dd4feba8004a529a0f541c97e3571540194870fbaac44a31adc5103f49 WHIRLPOOL 90ada03a6f32d21634154c12b27d790e5a9ae0aa1eff03ccba92868425f90fe23e1ace4f9500bc1c6c93daff44eceb193df20ca2b2f03eb7e5d09dcd9e3f30e6
+DIST shell-escape-0.1.3.crate 6441 SHA256 dd5cc96481d54583947bfe88bf30c23d53f883c6cd0145368b69989d97b84ef8 SHA512 d5a8bfc9074163396e7362f9a3b57374bda3fc4635b8adadeb24610d14b051cc55cd8a9ec3ccc71b107cce57b262e2605f7c88a9cb21da4e442fe207e3397b97 WHIRLPOOL cf2ae13252712e92735cdcb141940162bd334241b6ba7ba0270c5736be15cc0e3c7a8767902ba7d65b1b5892244e7eef96db87b2b7ef3647a2d52fa2535bcda1
+DIST strsim-0.5.1.crate 598561 SHA256 50c069df92e4b01425a8bf3576d5d417943a6a7272fbabaf5bd80b1aaa76442e SHA512 34b298df18d71121d515545e3ed0f52130366b6d3ddb1075736754f736ec40438c9d3ded75f675904a9d72e2efb88ee9462211e212a6ce10d210797c91724ae5 WHIRLPOOL 77ce40b5f23f2eb92d2d65f0f7f1a8d3952bee65ed0d493f855583d36625fb58a90334a5e23c15f650600cdeab0b23f13959eabbcd3b25a25947696e9d973e6e
+DIST tar-0.4.9.crate 36838 SHA256 0c9048e27119ff1fcf5b0e147ca0936d911b607d87440b042d4ecaa111b523ee SHA512 d74b493b2e903aa2b7bc954edeb53b9aa459622eb305b2b3fd50a3754137485f8748f9d8c978d47589d0c6c8ae6536e828b4a63165314e9028bfb9aca3d3248c WHIRLPOOL 3b902160bc8c695649a6cec79ff86af60ff2e8ae9eb0e175122f80dba6af8eafe0b515761adfa874a6dccda61d0918362348058c36d3374c994c617f348a6f37
+DIST tempdir-0.3.5.crate 10605 SHA256 87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6 SHA512 5ef3cb15064fc51ab2b371f8a48694205ad831fdcd11ff0fd6be85708a8ee955c82c3cbf926360fabc2cac91528a1db90f8425090bb361fa192c8ce9b1e1f0ab WHIRLPOOL f3e3e70e9f0f5d9eb38e0b33b5f58f480d321ee5feb8bf682f7a6b80b433a3740594393f3d5c13d7dcb1f733dfa31fec338b321955f2b631ec4c4dacb56c23b4
+DIST term-0.4.4.crate 35853 SHA256 3deff8a2b3b6607d6d7cc32ac25c0b33709453ca9cceac006caac51e963cf94a SHA512 df99c7273ca6f97ec3d9206f98601540d26370124a7a5404cc072bf2e6621bc48fa74101e60f29bea10869278401193648e253fc2029f4cf8e3c8303625b11f7 WHIRLPOOL 57de8f4d686d6806fd18a3de9ead347d2c4c8b63af5175d3c2df4e894ffe13b62caa93774bd320e3d2c42108849012071bce8c07414856af8374884661bd164a
+DIST thread-id-2.0.0.crate 6108 SHA256 a9539db560102d1cef46b8b78ce737ff0bb64e7e18d35b2a5688f7d097d0ff03 SHA512 9fc73cb13dd70f6f323161667f7a253b48c4e11d074457fa033b3617dcaf7ba9aa95f12801c4c045e7e9c07dd4b63a83f79701b489a9d97aefde07970064d9b0 WHIRLPOOL 88a26709bb3a6b27ab102e4414d25f20361ad92be89662c59c14ceed8a84eb17249ece8f250fb082e85acb75835ea81d1f5b62358e57e1bb1bfb96dac5d6e1f4
+DIST thread_local-0.2.7.crate 10954 SHA256 8576dbbfcaef9641452d5cf0df9b0e7eeab7694956dd33bb61515fb8f18cfdd5 SHA512 adc9be75120fd9e27429d0116cc6774a519ed9a2348db122ea90864947e4c1e1c98aeef740e7f8d28861b1db0f4a9340e58e13c1b3ece1fb3320058ea7a47b35 WHIRLPOOL 5988b0a217254ee39387b34dcadd9f44243a2403fabb33b3ce56415910b27e0ff887ec209af1f25e40ed4f3646e840a903f156c5546b20b640aa44463adca44b
+DIST toml-0.2.1.crate 47258 SHA256 736b60249cb25337bc196faa43ee12c705e426f3d55c214d73a4e7be06f92cb4 SHA512 e802d66d207debc8f5d7655c0eb797fe09125d5e85fcf4cc8c3088d9811b141f8db40b9a95f76df271a9d32640a8e59f1e9520da670f0a994bc73994552cf4bc WHIRLPOOL 861e11d6516b0df336c8054093da769ca13beb745dcda190e629a3227bd50edfaee3e4b8367a430be285be877bc52ce2d2c74a562c1c2b23f39cd907a18b1588
+DIST unicode-bidi-0.2.3.crate 1744003 SHA256 c1f7ceb96afdfeedee42bade65a0d585a6a0106f681b6749c8ff4daa8df30b3f SHA512 fb067746b4788c7110bc2687850dc11183c7e596453b42c0c4764c59c1686faf4d03a52b6c147c6578d88b8a2f3f1257d88010874b6ff0bb942b41e055c00a08 WHIRLPOOL cea3be7073b65971b303213f2eec72035c80b65bc306231e2af067ec58cfab3ce2d2a1b38a2e4a5a537a94e7458573b1cc7cc8b44aa3b62a2595ffc532343b11
+DIST unicode-normalization-0.1.2.crate 612931 SHA256 26643a2f83bac55f1976fb716c10234485f9202dcd65cfbdf9da49867b271172 SHA512 b6dc4316a875de59ee00f89ac0e9b255d0111dc2e2e45395ed726282502ab7b6cfcd56acff7f409b97a2f36d5278e16936359791be6bc8fba1213ca6c8a888df WHIRLPOOL 89b477db1efd9ff153140c485cce0d4c0457ccf30fa8ad765fe14a27e94f8506521b64dbbee7b300da2786e139738583ce255b78192534d63aac9d2fd833cc92
+DIST url-1.2.3.crate 68790 SHA256 48ccf7bd87a81b769cf84ad556e034541fb90e1cd6d4bc375c822ed9500cd9d7 SHA512 6415f77b2226c79a340bc6f1061b835700a3ed9cfac4d5357ae8de947131c79d9a87150a59178c2fc8101b642d884c4ef4fecf657b3f89220aec130cae7c822f WHIRLPOOL a9223ac74bfbec538da4ca0f1c5df0add8933b123fed263e30add8c106608704990e5d9064821c79fa05f6ac4e0e9965ede2b8894ecdd57fa02a4955e666e132
+DIST user32-sys-0.2.0.crate 10624 SHA256 4ef4711d107b21b410a3a974b1204d9accc8b10dad75d8324b5d755de1617d47 SHA512 75fa43621acff70425ca40a132a25fc67923526c895c51edb6b49ef507d1d461383e1d92b5dbb5c5aee9207cc76b9a9e43d27efa0b65476bc5ae0c122a2dcc19 WHIRLPOOL 38379a094f27223281e0c0d300a552ab4bac3b03e3f12ccf4d22c092e19b2b1478cd67ea1a5000015b19679b3cbc0af352724c7413aba0b92dfb6197e04ac936
+DIST utf8-ranges-0.1.3.crate 8422 SHA256 a1ca13c08c41c9c3e04224ed9ff80461d97e121589ff27c753a16cb10830ae0f SHA512 84bd9b67c423923b856452e113f0d786ac438bc7f9b4d4d9f31f6f91f141a8ac4c93f45f722ac5a8a4bac8eac0e355fe7db1eebc62391709326e9817eda8c374 WHIRLPOOL 05b6f88e1ba81a2139d38d0feb60781976859adfc46731ef322a552b17db71e0bf61c6626432812fb2e0ca45ce10a5438d9dcf218a962ef7415187adaa0280fa
+DIST winapi-0.2.8.crate 455145 SHA256 167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a SHA512 115e6f027cdd4a56f77ca24f4ab249d2a6cac1e1f955c826a9b6ee05db4861790a533f5e674aebbb540370fff52ed41618c2cd7c906e73200e92df213109cebe WHIRLPOOL 3dce71a6927320e3882ba60a24630a9ba8d123b73d8da6b9330e422580af9d9b0a96748d7368767e3712185877ddec6978b924d40428341c4de19b76ed375af4
+DIST winapi-build-0.1.1.crate 669 SHA256 2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc SHA512 8b0a239e205a5368892f41c870a8a7ea16e3468c364b03382bef7fa3a2e7159b09c07661e95b1227578f6d72c14879daa4444b28c51ae20ef15d985d59ca5a77 WHIRLPOOL 036080513776fe806cc9dd68bbf5b797776b98ca9fdceaa4bd77c87c66d2e5bd0eec8b0e7f0100dab8f2ced754da058f67e651002c786b4992c2be416a5d52ff
+DIST ws2_32-sys-0.2.1.crate 4697 SHA256 d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e SHA512 18356861fc595efe7d0180afb8ce7649da35a4f9ba456271d2068679ab258a861af32a2e016e241fbfbf5f6ef0eb33127b26eabfc11428af39506538faa4821f WHIRLPOOL fd144081dc48c18ca407c1af08411d3aecf99cec42d27a3b7825d16f91f15be96ab66b79c62083520fae6988af76dfc20fe028416f84cfb5a0e1de9bfa4ba107
diff --git a/dev-util/cargo/cargo-0.17.0.ebuild b/dev-util/cargo/cargo-0.17.0.ebuild
new file mode 100644
index 0000000..994d68d
--- /dev/null
+++ b/dev-util/cargo/cargo-0.17.0.ebuild
@@ -0,0 +1,179 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CARGO_SNAPSHOT_DATE="2016-09-01"
+CRATES="
+advapi32-sys-0.2.0
+aho-corasick-0.5.3
+bitflags-0.1.1
+bitflags-0.7.0
+bufstream-0.1.2
+cargotest-0.1.0
+cfg-if-0.1.0
+cmake-0.1.19
+crates-io-0.6.0
+crossbeam-0.2.10
+curl-0.4.1
+curl-sys-0.3.6
+docopt-0.6.86
+env_logger-0.3.5
+error-chain-0.7.2
+filetime-0.1.10
+flate2-0.2.14
+fs2-0.3.0
+gcc-0.3.39
+gdi32-sys-0.2.0
+git2-0.6.3
+git2-curl-0.7.0
+glob-0.2.11
+hamcrest-0.1.1
+idna-0.1.0
+kernel32-sys-0.2.2
+lazy_static-0.2.2
+libc-0.2.18
+libgit2-sys-0.6.6
+libssh2-sys-0.2.5
+libz-sys-1.0.13
+log-0.3.6
+matches-0.1.4
+memchr-0.1.11
+metadeps-1.1.1
+miniz-sys-0.1.7
+miow-0.1.3
+net2-0.2.26
+num-0.1.36
+num-bigint-0.1.35
+num-complex-0.1.35
+num-integer-0.1.32
+num-iter-0.1.32
+num-rational-0.1.35
+num-traits-0.1.36
+num_cpus-1.1.0
+openssl-0.9.6
+openssl-probe-0.1.0
+openssl-sys-0.9.6
+pkg-config-0.3.8
+psapi-sys-0.1.0
+rand-0.3.14
+regex-0.1.80
+regex-syntax-0.3.9
+rustc-serialize-0.3.21
+semver-0.5.1
+semver-parser-0.6.1
+shell-escape-0.1.3
+strsim-0.5.1
+tar-0.4.9
+tempdir-0.3.5
+term-0.4.4
+thread-id-2.0.0
+thread_local-0.2.7
+toml-0.2.1
+unicode-bidi-0.2.3
+unicode-normalization-0.1.2
+url-1.2.3
+user32-sys-0.2.0
+utf8-ranges-0.1.3
+winapi-0.2.8
+winapi-build-0.1.1
+ws2_32-sys-0.2.1
+"
+
+inherit cargo bash-completion-r1
+
+DESCRIPTION="The Rust's package manager"
+HOMEPAGE="http://crates.io"
+SRC_URI="https://github.com/rust-lang/cargo/archive/${PV}.tar.gz -> ${P}.tar.gz
+	$(cargo_crate_uris ${CRATES})
+	x86?   (
+		https://static.rust-lang.org/cargo-dist/${CARGO_SNAPSHOT_DATE}/cargo-nightly-i686-unknown-linux-gnu.tar.gz ->
+		cargo-snapshot-x86-${CARGO_SNAPSHOT_DATE}.tar.gz
+	)
+	amd64? (
+		https://static.rust-lang.org/cargo-dist/${CARGO_SNAPSHOT_DATE}/cargo-nightly-x86_64-unknown-linux-gnu.tar.gz ->
+		cargo-snapshot-amd64-${CARGO_SNAPSHOT_DATE}.tar.gz
+	)"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE="libressl"
+
+COMMON_DEPEND="sys-libs/zlib
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:0= )
+	net-libs/http-parser"
+RDEPEND="${COMMON_DEPEND}
+	!dev-util/cargo-bin
+	net-misc/curl[ssl]"
+DEPEND="${COMMON_DEPEND}
+	>=dev-lang/rust-1.9.0:stable
+	dev-util/cmake
+	sys-apps/coreutils
+	sys-apps/diffutils
+	sys-apps/findutils
+	sys-apps/sed"
+
+src_configure() {
+	# Cargo only supports these GNU triples:
+	# - Linux: <arch>-unknown-linux-gnu
+	# - MacOS: <arch>-apple-darwin
+	# - Windows: <arch>-pc-windows-gnu
+	# where <arch> could be 'x86_64' (amd64) or 'i686' (x86)
+	use amd64 && CTARGET="x86_64-unknown-linux-gnu"
+	use x86 && CTARGET="i686-unknown-linux-gnu"
+
+	# NOTE: 'disable-nightly' is used by crates (such as 'matches') to entirely
+	# skip their internal libraries that make use of unstable rustc features.
+	# Don't use 'enable-nightly' with a stable release of rustc as DEPEND,
+	# otherwise you could get compilation issues.
+	# see: github.com/gentoo/gentoo-rust/issues/13
+	local myeconfargs=(
+		--host=${CTARGET}
+		--build=${CTARGET}
+		--target=${CTARGET}
+		--cargo="${WORKDIR}"/${P}/target/snapshot/bin/cargo
+		--enable-optimize
+#		--release-channel stable
+		--disable-verify-install
+		--disable-debug
+		--disable-cross-tests
+	)
+	econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+	# Building sources
+	export CARGO_HOME="${ECARGO_HOME}"
+	emake VERBOSE=1 PKG_CONFIG_PATH=""
+
+	# Building HTML documentation
+	# disabled because einstalldocs only works on EAPI=6
+	# use doc && emake doc
+}
+
+src_install() {
+	emake prepare-image-${CTARGET} IMGDIR_${CTARGET}="${ED}/usr"
+
+	# Install HTML documentation
+	# Disabled for ChromeOS because this is an EAPI=6 feature
+	#use doc && HTML_DOCS=("target/doc")
+	#einstalldocs
+
+	dobashcomp "${ED}"/usr/etc/bash_completion.d/cargo
+	rm -rf "${ED}"/usr/etc || die
+}
+
+src_test() {
+	# Running unit tests
+	# NOTE: by default 'make test' uses the copy of cargo (v0.0.1-pre-nighyly)
+	# from the installer snapshot instead of the version just built, so the
+	# ebuild needs to override the value of CFG_LOCAL_CARGO to avoid false
+	# positives from unit tests.
+	emake test \
+		CFG_ENABLE_OPTIMIZE=1 \
+		VERBOSE=1 \
+		CFG_LOCAL_CARGO="${WORKDIR}"/${P}/target/${CTARGET}/release/cargo
+}
diff --git a/eclass/cargo.eclass b/eclass/cargo.eclass
new file mode 100644
index 0000000..88e1372
--- /dev/null
+++ b/eclass/cargo.eclass
@@ -0,0 +1,132 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: cargo.eclass
+# @MAINTAINER:
+# rust@gentoo.org
+# @AUTHOR:
+# Doug Goldstein <cardoe@gentoo.org>
+# @BLURB: common functions and variables for cargo builds
+
+if [[ -z ${_CARGO_ECLASS} ]]; then
+_CARGO_ECLASS=1
+
+case ${EAPI} in
+	6) : ;;
+	5) : ;; # addition to the upstream version because we don't have EAPI=6
+	*) die "EAPI=${EAPI:-0} is not supported" ;;
+esac
+
+EXPORT_FUNCTIONS src_unpack src_compile src_install
+
+IUSE="${IUSE} debug"
+
+[[ ${CATEGORY}/${PN} != dev-util/cargo ]] && DEPEND=">=dev-util/cargo-0.13.0"
+
+ECARGO_HOME="${WORKDIR}/cargo_home"
+ECARGO_VENDOR="${ECARGO_HOME}/gentoo"
+
+# @FUNCTION: cargo_crate_uris
+# @DESCRIPTION:
+# Generates the URIs to put in SRC_URI to help fetch dependencies.
+cargo_crate_uris() {
+	for crate in $*; do
+		local name version url
+		name="${crate%-*}"
+		version="${crate##*-}"
+		url="https://crates.io/api/v1/crates/${name}/${version}/download -> ${crate}.crate"
+		echo $url
+	done
+}
+
+# @FUNCTION: cargo_src_unpack
+# @DESCRIPTION:
+# Unpacks the package and the cargo registry
+cargo_src_unpack() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	mkdir -p "${ECARGO_VENDOR}" || die
+	mkdir -p "${S}" || die
+
+	local archive
+	for archive in ${A}; do
+		case "${archive}" in
+			*.crate)
+				ebegin "Loading ${archive} into Cargo registry"
+				tar -xf "${DISTDIR}"/${archive} -C "${ECARGO_VENDOR}/" || die
+				# generate sha256sum of the crate itself as cargo needs this
+				shasum=$(sha256sum "${DISTDIR}"/${archive} | cut -d ' ' -f 1)
+				pkg=$(basename ${archive} .crate)
+				cat <<- EOF > ${ECARGO_VENDOR}/${pkg}/.cargo-checksum.json
+				{
+					"package": "${shasum}",
+					"files": {}
+				}
+				EOF
+				# if this is our target package we need it in ${WORKDIR} too
+				# to make ${S} (and handle any revisions too)
+				if [[ ${P} == ${pkg}* ]]; then
+					tar -xf "${DISTDIR}"/${archive} -C "${WORKDIR}" || die
+				fi
+				eend $?
+				;;
+			cargo-snapshot*)
+				ebegin "Unpacking ${archive}"
+				mkdir -p "${S}"/target/snapshot
+				tar -xzf "${DISTDIR}"/${archive} -C "${S}"/target/snapshot --strip-components 2 || die
+				# cargo's makefile needs this otherwise it will try to
+				# download it
+				touch "${S}"/target/snapshot/bin/cargo || die
+				eend $?
+				;;
+			*)
+				unpack ${archive}
+				;;
+		esac
+	done
+
+	cargo_gen_config
+}
+
+# @FUNCTION: cargo_gen_config
+# @DESCRIPTION:
+# Generate the $CARGO_HOME/config necessary to use our local registry
+cargo_gen_config() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	cat <<- EOF > ${ECARGO_HOME}/config
+	[source.gentoo]
+	directory = "${ECARGO_VENDOR}"
+
+	[source.crates-io]
+	replace-with = "gentoo"
+	local-registry = "/nonexistant"
+	EOF
+}
+
+# @FUNCTION: cargo_src_compile
+# @DESCRIPTION:
+# Build the package using cargo build
+cargo_src_compile() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	export CARGO_HOME="${ECARGO_HOME}"
+
+	cargo build -v $(usex debug "" --release) \
+		|| die "cargo build failed"
+}
+
+# @FUNCTION: cargo_src_install
+# @DESCRIPTION:
+# Installs the binaries generated by cargo
+cargo_src_install() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	cargo install --root="${D}/usr" $(usex debug --debug "") \
+		|| die "cargo install failed"
+	rm -f "${D}/usr/.crates.toml"
+
+	[ -d "${S}/man" ] && doman "${S}/man" || return 0
+}
+
+fi