diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-07-10 23:40:16 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-07-10 23:40:16 +0100 |
commit | 51af5f0eb4cddbe6aa7953717873691d77aae9ff (patch) | |
tree | 1541525274162b033ebbc3ed38abaf335fbbd49a /dev-lang/rust-bin | |
parent | 7014a5a3ea0feffab9701fdd6b64cc7667a985af (diff) |
gentoo resync : 11.07.2019
Diffstat (limited to 'dev-lang/rust-bin')
-rw-r--r-- | dev-lang/rust-bin/Manifest | 18 | ||||
-rw-r--r-- | dev-lang/rust-bin/rust-bin-1.34.2.ebuild | 31 | ||||
-rw-r--r-- | dev-lang/rust-bin/rust-bin-1.35.0.ebuild | 25 | ||||
-rw-r--r-- | dev-lang/rust-bin/rust-bin-1.36.0.ebuild | 158 |
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 +} |