summaryrefslogtreecommitdiff
path: root/dev-lang/rust-bin
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-07-10 23:40:16 +0100
committerV3n3RiX <venerix@redcorelinux.org>2019-07-10 23:40:16 +0100
commit51af5f0eb4cddbe6aa7953717873691d77aae9ff (patch)
tree1541525274162b033ebbc3ed38abaf335fbbd49a /dev-lang/rust-bin
parent7014a5a3ea0feffab9701fdd6b64cc7667a985af (diff)
gentoo resync : 11.07.2019
Diffstat (limited to 'dev-lang/rust-bin')
-rw-r--r--dev-lang/rust-bin/Manifest18
-rw-r--r--dev-lang/rust-bin/rust-bin-1.34.2.ebuild31
-rw-r--r--dev-lang/rust-bin/rust-bin-1.35.0.ebuild25
-rw-r--r--dev-lang/rust-bin/rust-bin-1.36.0.ebuild158
4 files changed, 203 insertions, 29 deletions
diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest
index da62a4737e00..84fd19422bb2 100644
--- a/dev-lang/rust-bin/Manifest
+++ b/dev-lang/rust-bin/Manifest
@@ -24,6 +24,20 @@ DIST rust-1.35.0-powerpc64-unknown-linux-gnu.tar.xz 139462276 BLAKE2B b99ee8f5f0
DIST rust-1.35.0-powerpc64le-unknown-linux-gnu.tar.xz 143826544 BLAKE2B ff5f814515034b382faf40dc0d95623ec57c4f063ded1bb89364594736269744f5409c978de24fa29f6a061d1489179456a90847f5ce8de1f684df22fda68b75 SHA512 3b63dac50a92693d13066aa6e96de05fceb2da6c07834adfab8c12e6a78f59051dfa008062b1d2ad410a009e2164fc716d689231e552379e419161d1620d0066
DIST rust-1.35.0-s390x-unknown-linux-gnu.tar.xz 152808372 BLAKE2B 96a1e2b96b6a1faf5a3125494b17c4d5f95ea618a5ff8f7ddb7506ebef4fd6cf7f9a2ae961657b7b969a5f3cbc870c805c6634163e7f5fc71e058ea4528e19a0 SHA512 11539eb25e474bbaa8e57f21c3f64506859bc86baec74df24bb4aaf5361745840b82ff715fc54fbd6ba654a8f7fd4f064af0538b983dd489cd69498bd70d1bf7
DIST rust-1.35.0-x86_64-unknown-linux-gnu.tar.xz 161491264 BLAKE2B ed336829cfe4199750798352e4e338f307033ea0eb5db9ab68f9cf7465d86edbd1218d3e929c775822fd5db3d73a5d75c6e9b5ca45ed6b474bffe403f39f71a0 SHA512 49976ac2fbac5b1709c4a7f3785eb99ab827464ec4d99ee7190df16c3be23e98de606566b57df2231a15097c7fe984e0d19496ce7478ccc1f0f2c7aeb32ecb04
-EBUILD rust-bin-1.34.2.ebuild 5534 BLAKE2B 4d1f3d796fd88cefd636e2b8f6b7d7df44b4ee680837d41d3889dd5675bc6f301d96d4266d53ce8707e8e998aab43cead6542de32aa5e62b5a9c6c1bf98a225e SHA512 cf9589e45fbbbec01c77a0e49a61e56b09ece71a3d00d045854df776099ea8b60cf7e2af2371f5128918ad4c83b08b0d52bc0fa6aca02738bc5e5380f7f85c9b
-EBUILD rust-bin-1.35.0.ebuild 5154 BLAKE2B 854c0c2fab097a229e19ed660a4428c2eacdaadbca23316fa4fdf468d76eb6fe8a130462d5925e8c4e2bac87496805974744c756a06fb4fd9cd912765c62e5a9 SHA512 f5a0006b0c23443c5c8b4f680da3619126260933b56d14aa2c7946814e3f9b123afaca24aa8fc2f4795f5706ee30fd4d49d15894b7b87e10b20f8d896dafacd7
+DIST rust-1.36.0-aarch64-unknown-linux-gnu.tar.xz 139261576 BLAKE2B f8f0ac14c397253298bb321fef83e78fb839e647fa8a9ff891f16e3a1723e1ee69e59686357751b3b4c1a1d1e28632c2047be8795f8a27733ee4bbe8ff71e105 SHA512 77ffd9aa0dfdbb886a51c8d17e3e348c777226e859a48374dad8be20b9a3c7130c7f46d9173753e4ac4a264b45610767ba2625df4192773913892a13a255d3d6
+DIST rust-1.36.0-arm-unknown-linux-gnueabi.tar.xz 140294440 BLAKE2B 25d0ea284d20f93bc82618c61abcd4281835e914426e3e9998ff80d233af4cbb938c05bd3dc9422c3f212f24a08f6bea3f67691860acd8cce60d9f7015556381 SHA512 e1dd8200ade615bcedcc1372d4833c037435a47311ca8a20ebbf914d80add818bf70adadf2b6d33d5a4f04eb4994722978b6b3f83dc6a7cc3c98aea52f244405
+DIST rust-1.36.0-arm-unknown-linux-gnueabihf.tar.xz 140715096 BLAKE2B effed4996df93d2defa843b3356d80abb9a3a69990f5d6c7d6c38f18ad39d2b46618d64007014be931762ab31c2c46a747cc2705b3cd0ec66e7fa888ecfaf81a SHA512 dfabb476a1f31755eea4a0b976991ea083682463e4538f2b7f34dcfa4b6220b82d81fdf4c677294899d5cd740a8a3e012d1b0bb424ae529c05ce92802cf18959
+DIST rust-1.36.0-armv7-unknown-linux-gnueabihf.tar.xz 142315532 BLAKE2B bb6ca7c0af1691c82dd64fcd563573c815147457a69fd0ddef238db4bc5f0ccc7c7ea72429c9d7401db3d431674da70e86183ebad83e7153adad4287de385ac6 SHA512 b31e34f44df17d89f9f2a609a5b5b2320f43691e06ead257d893766abf8764a158adff0265dd60bf1f63dd98f0bf6bc64ae3b9e9f45200fbd7dfcaec3ba85d01
+DIST rust-1.36.0-i686-unknown-linux-gnu.tar.xz 182609496 BLAKE2B 8fa915670346e554f6a881a44bfac42a5ca565acc3426b35901952eae9ea36780181e7569c2db52688a28d680de6fd02764d93219fdf93e7adbba8b8de3b0e6a SHA512 34bcb93ec7a313a28ac20cd853e37419c4607f4035a367015826bd797401a2ada20ee99ae9028b6115c9db8aa1d4f74b74fb08ed09ab528d5946bc26c754b182
+DIST rust-1.36.0-mips-unknown-linux-gnu.tar.xz 134020892 BLAKE2B 0579a8f6ae590780a1bf8a79c6ece290262fedce30721dc4ce405f774d9ed4cda99680da0aed22050147478d2ad3fe391f028a6d1e05b47b509a33d6f1569090 SHA512 8163136f8621ff8b562e50123eef5903de3bf888a230fa83fcc6aa0fad9ea61e1a1cc2248479e6e0f82f0c25014207c7b7186177067a21721156c795d59e8188
+DIST rust-1.36.0-mips64-unknown-linux-gnuabi64.tar.xz 140200900 BLAKE2B e0e9d428d0af610d4dcf4ff38bafdb24001e6644dcad62af6b1782362520358411767b10740587e37dc1ffb85f4036495cdfdb15d68d387988df2512e9a78d05 SHA512 d3dcfef22fc2e130150c64aaeb13a96696c48353300049aca3ba42411548922945192847ba12834d21619d9db26a6628cea8417e3678e52f2742438b862f5d7a
+DIST rust-1.36.0-mipsel-unknown-linux-gnu.tar.xz 136390260 BLAKE2B 63e26f3a9563a065d086daa223b732ab0ab89b424cf3e764d93b56c9efe9d611c6565cf89b649819a71af2195f19c278824ee71e2985b20fe55f20e75b8b6be8 SHA512 c8f6538b677ab8b7154b7a7e07ead85a84ff08bc27d2150189e7597e1f9f30ac418d72684916dc85ae8ff95718ec17e289e1f813303e97cec59e63a7f5c1367b
+DIST rust-1.36.0-powerpc-unknown-linux-gnu.tar.xz 134270632 BLAKE2B 5466f797d778e2112a0aa53a05f6853d9baf261b1c9a53fd05ac4925b7eb85b7b0a3df02a8509f98b800e42ef2a5ec09cb176e0a5893fc5ee57d0805bcba621f SHA512 a02afacc01a92b5575e3526b3b9bfa149f86ec03b3601b269fe4cb05d8f4dfa24b62625737f8ffe67bfababbe791af1584f45979ef012004b7de7771f29a9edf
+DIST rust-1.36.0-powerpc64-unknown-linux-gnu.tar.xz 145880928 BLAKE2B 4922df3a7d7f2d77a3f3380ec4ae9a1e4062cc81abe16ccc978543e4c24c4415bc34db0831b73c078f1ebebb57cea81c600d4e320cb10a4c508a252169d6999b SHA512 20bdd2b427549c866343962abefc4ffc356a1cb6965c754f28f19b05c234cb9c0abccbce036013deba1dc7699c2889ec954fff2b944953385624be54ee7a733e
+DIST rust-1.36.0-powerpc64le-unknown-linux-gnu.tar.xz 149721676 BLAKE2B e00bcc60a89354f6d4b5c89feffe5fe6dd7bf25d8dd2db2878e7c12ffc484e9258f37d80bda2b12f3965d96c73f1a03b6adbd8c20176c383e04f1a229d47d000 SHA512 02f32b544b0a55ba6f6fc4852f18766107bc0ce2c50488db11605e8a10e5965dd44e8332905c00080b08576370f2f0297ecbe12ba9fe01b4c24cdb9fd03ad64f
+DIST rust-1.36.0-s390x-unknown-linux-gnu.tar.xz 159518028 BLAKE2B c5876ea15c9fa56a92b4c0bf2aab472b83381a7a31fbb207e4165fdc49fea2150dddd53cc771dbcb81b01fe43a3175df146d8645d04c556af3556822fc59bf25 SHA512 c637b8f50cbce3333280f43ce4b97d3f75ddae429ee34461837c3c3869e20aed8c5e76f7a58998f617dc0ffc2e6afd00908e5de05f4c7ed9a8c34d5dbc7ce916
+DIST rust-1.36.0-x86_64-unknown-linux-gnu.tar.xz 169600936 BLAKE2B 8bf075f2b5624e4716e3058512b85b70e72ec6f0c8ce8fc38857612b02aa5702a1bb447f13f882a1b96b1f32330d0a8f7f1f1db81827b51cb7429195e070a5a3 SHA512 3f14dda1e09ef8c8168600f4d70ba60cb2a1086ad9edb5eed708d0ffc16fdb9c582ce350a93afcd64b78f87737e37d4f099703835a1ec9837a5721c2335e17c7
+EBUILD rust-bin-1.34.2.ebuild 5612 BLAKE2B 773c5c632c9752ea2395852539380c77e8c94efda82529484e63bedbfd8830f68ac0dbebae74680af76fad3ebef70088b09d96e8fec75d16fe756f900115b8bc SHA512 4adeba33d77bb9c1e048a8565b035fb29100d21ab81cb068b93d969b27cb20ac631a12a1a9ba632cebc8dfe7ee4ce6684f0717e87573f9b90d74d410b239022a
+EBUILD rust-bin-1.35.0.ebuild 5228 BLAKE2B 4b252f3a7b14b078e88ffc6e7502353809f5725e09ca87499726ccd4844ebfef00296ad3353b047b9259c84f701b7a7937e266a45cc7981f22abc640ed5aeffa SHA512 fe14cef8eb6564201d1784618b436ebf27f23d445a39146d1aa0ebcd6d958c5ae97ee5954cbbb8d59b91bd8d4f9d9ccda26cf6db121e8c05e620173a54ba95a9
+EBUILD rust-bin-1.36.0.ebuild 5100 BLAKE2B dc636c7c3db969f5836bef453260e4535ac61b5156c1eba62c2051ca33b098fc7b19316ae95a9983e0f4b95170d1e309eabce393a2d7a19654694d0a2d336b80 SHA512 03ed9dd0a85b9dfb7574b3b02051406e4716cf142a8bc6fca19f84b9758a138b388078070d8a83aec1fb0a484fde9ef9e1b86d69b4d055913ba9dfa486e1e1a1
MISC metadata.xml 381 BLAKE2B 2a378d099ea6bb4ebe56493d1e7196c3207c54212e3c9ef8c0d020a360240cd3a5867b30e1fd3ac0a4da10de11ea6010677cbe63632e97a03ba480496a968cfe SHA512 573b793a11a2f3b7fee167fadc0c4135d16b9452642655fe3e217d6196b4f046afac281542ae361749d1d84c67a4cdd6b4944e364045d9e46e39d69b81fbc92c
diff --git a/dev-lang/rust-bin/rust-bin-1.34.2.ebuild b/dev-lang/rust-bin/rust-bin-1.34.2.ebuild
index 3d0796628f61..f7d54470c20f 100644
--- a/dev-lang/rust-bin/rust-bin-1.34.2.ebuild
+++ b/dev-lang/rust-bin/rust-bin-1.34.2.ebuild
@@ -56,8 +56,8 @@ src_install() {
./install.sh \
--components="${components}" \
--disable-verify \
- --prefix="${D}/opt/${P}" \
- --mandir="${D}/usr/share/${P}/man" \
+ --prefix="${ED}/opt/${P}" \
+ --mandir="${ED}/usr/share/${P}/man" \
--disable-ldconfig \
|| die
@@ -67,11 +67,11 @@ src_install() {
local rustgdbgui=rust-gdbgui-bin-${PV}
local rustlldb=rust-lldb-bin-${PV}
- mv "${D}/opt/${P}/bin/rustc" "${D}/opt/${P}/bin/${rustc}" || die
- mv "${D}/opt/${P}/bin/rustdoc" "${D}/opt/${P}/bin/${rustdoc}" || die
- mv "${D}/opt/${P}/bin/rust-gdb" "${D}/opt/${P}/bin/${rustgdb}" || die
- mv "${D}/opt/${P}/bin/rust-gdbgui" "${D}/opt/${P}/bin/${rustgdbgui}" || die
- mv "${D}/opt/${P}/bin/rust-lldb" "${D}/opt/${P}/bin/${rustlldb}" || die
+ mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
+ mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
+ mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
+ mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
+ mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
dosym "${rustc}" "/opt/${P}/bin/rustc"
dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
@@ -88,23 +88,23 @@ src_install() {
local cargo=cargo-bin-${PV}
# ugly hack for https://bugs.gentoo.org/679806
if use ppc64; then
- mv "${D}/opt/${P}/bin/cargo" "${D}/opt/${P}/bin/${cargo}".bin || die
- sed -i 's/getentropy/gEtEnTrOpY/g' "${D}/opt/${P}/bin/${cargo}".bin || die
- cat <<- 'EOF' > "${D}/opt/${P}/bin/${cargo}"
+ mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}".bin || die
+ sed -i 's/getentropy/gEtEnTrOpY/g' "${ED}/opt/${P}/bin/${cargo}".bin || die
+ cat <<- 'EOF' > "${ED}/opt/${P}/bin/${cargo}"
#!/bin/sh
OPENSSL_ppccap=0 $(realpath $0).bin "${@}"
EOF
fperms +x "/opt/${P}/bin/${cargo}"
else
- mv "${D}/opt/${P}/bin/cargo" "${D}/opt/${P}/bin/${cargo}" || die
+ mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
fi
dosym "${cargo}" "/opt/${P}/bin/cargo"
dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
if use clippy; then
local clippy_driver=clippy-driver-bin-${PV}
local cargo_clippy=cargo-clippy-bin-${PV}
- mv "${D}/opt/${P}/bin/clippy-driver" "${D}/opt/${P}/bin/${clippy_driver}" || die
- mv "${D}/opt/${P}/bin/cargo-clippy" "${D}/opt/${P}/bin/${cargo_clippy}" || die
+ mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
+ mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
@@ -113,8 +113,8 @@ src_install() {
if use rustfmt; then
local rustfmt=rustfmt-bin-${PV}
local cargo_fmt=cargo-fmt-bin-${PV}
- mv "${D}/opt/${P}/bin/rustfmt" "${D}/opt/${P}/bin/${rustfmt}" || die
- mv "${D}/opt/${P}/bin/cargo-fmt" "${D}/opt/${P}/bin/${cargo_fmt}" || die
+ mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
+ mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
@@ -127,6 +127,7 @@ src_install() {
EOF
doenvd "${T}"/50${P}
+ # note: eselect-rust adds EROOT to all paths below
cat <<-EOF > "${T}/provider-${P}"
/usr/bin/rustdoc
/usr/bin/rust-gdb
diff --git a/dev-lang/rust-bin/rust-bin-1.35.0.ebuild b/dev-lang/rust-bin/rust-bin-1.35.0.ebuild
index 3d416cb7b4ee..a8b9a6d4b6cc 100644
--- a/dev-lang/rust-bin/rust-bin-1.35.0.ebuild
+++ b/dev-lang/rust-bin/rust-bin-1.35.0.ebuild
@@ -56,8 +56,8 @@ src_install() {
./install.sh \
--components="${components}" \
--disable-verify \
- --prefix="${D}/opt/${P}" \
- --mandir="${D}/usr/share/${P}/man" \
+ --prefix="${ED}/opt/${P}" \
+ --mandir="${ED}/usr/share/${P}/man" \
--disable-ldconfig \
|| die
@@ -67,11 +67,11 @@ src_install() {
local rustgdbgui=rust-gdbgui-bin-${PV}
local rustlldb=rust-lldb-bin-${PV}
- mv "${D}/opt/${P}/bin/rustc" "${D}/opt/${P}/bin/${rustc}" || die
- mv "${D}/opt/${P}/bin/rustdoc" "${D}/opt/${P}/bin/${rustdoc}" || die
- mv "${D}/opt/${P}/bin/rust-gdb" "${D}/opt/${P}/bin/${rustgdb}" || die
- mv "${D}/opt/${P}/bin/rust-gdbgui" "${D}/opt/${P}/bin/${rustgdbgui}" || die
- mv "${D}/opt/${P}/bin/rust-lldb" "${D}/opt/${P}/bin/${rustlldb}" || die
+ mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
+ mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
+ mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
+ mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
+ mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
dosym "${rustc}" "/opt/${P}/bin/rustc"
dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
@@ -86,15 +86,15 @@ src_install() {
dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
local cargo=cargo-bin-${PV}
- mv "${D}/opt/${P}/bin/cargo" "${D}/opt/${P}/bin/${cargo}" || die
+ mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
dosym "${cargo}" "/opt/${P}/bin/cargo"
dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
if use clippy; then
local clippy_driver=clippy-driver-bin-${PV}
local cargo_clippy=cargo-clippy-bin-${PV}
- mv "${D}/opt/${P}/bin/clippy-driver" "${D}/opt/${P}/bin/${clippy_driver}" || die
- mv "${D}/opt/${P}/bin/cargo-clippy" "${D}/opt/${P}/bin/${cargo_clippy}" || die
+ mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
+ mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
@@ -103,8 +103,8 @@ src_install() {
if use rustfmt; then
local rustfmt=rustfmt-bin-${PV}
local cargo_fmt=cargo-fmt-bin-${PV}
- mv "${D}/opt/${P}/bin/rustfmt" "${D}/opt/${P}/bin/${rustfmt}" || die
- mv "${D}/opt/${P}/bin/cargo-fmt" "${D}/opt/${P}/bin/${cargo_fmt}" || die
+ mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
+ mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
@@ -117,6 +117,7 @@ src_install() {
EOF
doenvd "${T}"/50${P}
+ # note: eselect-rust adds EROOT to all paths below
cat <<-EOF > "${T}/provider-${P}"
/usr/bin/rustdoc
/usr/bin/rust-gdb
diff --git a/dev-lang/rust-bin/rust-bin-1.36.0.ebuild b/dev-lang/rust-bin/rust-bin-1.36.0.ebuild
new file mode 100644
index 000000000000..180b335fff90
--- /dev/null
+++ b/dev-lang/rust-bin/rust-bin-1.36.0.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit bash-completion-r1 rust-toolchain toolchain-funcs
+
+MY_P="rust-${PV}"
+
+DESCRIPTION="Systems programming language from Mozilla"
+HOMEPAGE="https://www.rust-lang.org/"
+SRC_URI="$(rust_all_arch_uris ${MY_P})"
+
+LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
+SLOT="stable"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
+
+DEPEND=""
+RDEPEND=">=app-eselect/eselect-rust-20190311
+ sys-libs/zlib
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ net-libs/libssh2
+ net-misc/curl[ssl]
+ !dev-lang/rust:0
+ !dev-util/cargo
+ rustfmt? ( !dev-util/rustfmt )"
+REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
+
+QA_PREBUILT="
+ opt/${P}/bin/*-${PV}
+ opt/${P}/lib/*.so
+ opt/${P}/lib/rustlib/*/bin/*
+ opt/${P}/lib/rustlib/*/lib/*.so
+ opt/${P}/lib/rustlib/*/lib/*.rlib*
+"
+
+pkg_pretend () {
+ if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
+ die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
+ fi
+}
+
+src_unpack() {
+ default
+ mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
+}
+
+src_install() {
+ local std=$(grep 'std' ./components)
+ local components="rustc,cargo,${std}"
+ use doc && components="${components},rust-docs"
+ use clippy && components="${components},clippy-preview"
+ use rustfmt && components="${components},rustfmt-preview"
+ ./install.sh \
+ --components="${components}" \
+ --disable-verify \
+ --prefix="${ED}/opt/${P}" \
+ --mandir="${ED}/usr/share/${P}/man" \
+ --disable-ldconfig \
+ || die
+
+ local rustc=rustc-bin-${PV}
+ local rustdoc=rustdoc-bin-${PV}
+ local rustgdb=rust-gdb-bin-${PV}
+ local rustgdbgui=rust-gdbgui-bin-${PV}
+ local rustlldb=rust-lldb-bin-${PV}
+
+ mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
+ mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
+ mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
+ mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
+ mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
+
+ dosym "${rustc}" "/opt/${P}/bin/rustc"
+ dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
+ dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb"
+ dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui"
+ dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb"
+
+ dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}"
+ dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}"
+ dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}"
+ dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}"
+ dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
+
+ local cargo=cargo-bin-${PV}
+ mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
+ dosym "${cargo}" "/opt/${P}/bin/cargo"
+ dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
+
+ if use clippy; then
+ local clippy_driver=clippy-driver-bin-${PV}
+ local cargo_clippy=cargo-clippy-bin-${PV}
+ mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
+ mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
+ dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
+ dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
+ dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
+ dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}"
+ fi
+ if use rustfmt; then
+ local rustfmt=rustfmt-bin-${PV}
+ local cargo_fmt=cargo-fmt-bin-${PV}
+ mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
+ mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
+ dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
+ dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
+ dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
+ dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}"
+ fi
+
+ cat <<-EOF > "${T}"/50${P}
+ LDPATH="/opt/${P}/lib"
+ MANPATH="/usr/share/${P}/man"
+ EOF
+ doenvd "${T}"/50${P}
+
+ # note: eselect-rust adds EROOT to all paths below
+ cat <<-EOF > "${T}/provider-${P}"
+ /usr/bin/rustdoc
+ /usr/bin/rust-gdb
+ /usr/bin/rust-gdbgui
+ /usr/bin/rust-lldb
+ EOF
+ echo /usr/bin/cargo >> "${T}/provider-${P}"
+ if use clippy; then
+ echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
+ fi
+ if use rustfmt; then
+ echo /usr/bin/rustfmt >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
+ fi
+ dodir /etc/env.d/rust
+ insinto /etc/env.d/rust
+ doins "${T}/provider-${P}"
+}
+
+pkg_postinst() {
+ eselect rust update --if-unset
+
+ elog "Rust installs a helper script for calling GDB now,"
+ elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
+
+ if has_version app-editors/emacs || has_version app-editors/emacs-vcs; then
+ elog "install app-emacs/rust-mode to get emacs support for rust."
+ fi
+
+ if has_version app-editors/gvim || has_version app-editors/vim; then
+ elog "install app-vim/rust-vim to get vim support for rust."
+ fi
+}
+
+pkg_postrm() {
+ eselect rust cleanup
+}