Gentoo Archives: gentoo-commits

From: Georgy Yakovlev <gyakovlev@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/rust-bin/
Date: Thu, 30 Jan 2020 19:24:54
Message-Id: 1580411819.fc2c2d9d8829017cc9d6e3fb6c4b8881e290e7f4.gyakovlev@gentoo
1 commit: fc2c2d9d8829017cc9d6e3fb6c4b8881e290e7f4
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Thu Jan 30 17:23:16 2020 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Thu Jan 30 19:16:59 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fc2c2d9d
7
8 dev-lang/rust-bin: bump to 1.41.0
9
10 Package-Manager: Portage-2.3.86, Repoman-2.3.20
11 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
12
13 dev-lang/rust-bin/Manifest | 14 +++
14 dev-lang/rust-bin/rust-bin-1.41.0.ebuild | 167 +++++++++++++++++++++++++++++++
15 2 files changed, 181 insertions(+)
16
17 diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest
18 index a7608c361ad..c12f94d65b4 100644
19 --- a/dev-lang/rust-bin/Manifest
20 +++ b/dev-lang/rust-bin/Manifest
21 @@ -54,3 +54,17 @@ DIST rust-1.40.0-powerpc64le-unknown-linux-gnu.tar.xz 87972788 BLAKE2B ad1e460db
22 DIST rust-1.40.0-s390x-unknown-linux-gnu.tar.xz 95398844 BLAKE2B e897ac3e1f46a63c7ad14e0e5229b7028ac325256e084439bcad0ced631eb26d50ca72710c46e59accb0e3d0574d08a9c15455be59a8d78173387d35ddd3bed7 SHA512 e71d3a1d85975653b6d972a4854c9e53be7f2d093a601145261c97f7917f869399fbc6322a04f63b782a5a28b91c3be40041a8c77367d19dec8d0e857cbbef14
23 DIST rust-1.40.0-x86_64-unknown-linux-gnu.tar.xz 110186516 BLAKE2B ad89d8cecbd565b23c98ec095bad218de971cb4bb89924bbcb012df6c9ecf0db2b50d624abdf6b050fe1f5067aea9311dc01852950a5ca5e993e99f913fc5dbc SHA512 11a2ad1d8b9e91cbe9ee6a1954d46ac75eeaa83f0c2425a8ad70d191727b02e86ead33d6464222effca6f5134c31a165801a854aa57bdb5f12944d605de3c1d1
24 DIST rust-1.40.0-x86_64-unknown-linux-musl.tar.xz 96869284 BLAKE2B 61cdf2eab51455e377e079e7013959ee51358c9846f8442f81a3240062af573f452a0f5f007e63cbbcdd0db98ac22ab0d4f3006f6ef30327b609d303410cba8c SHA512 3e6d7cf7b24c09d13266e06f20ab317c5ffb68de3242719c71e95c3d778269c4076e06badfb488e8fc223b822246ebbeb888d4168ddf6e2401793e23e77810bb
25 +DIST rust-1.41.0-aarch64-unknown-linux-gnu.tar.xz 96574096 BLAKE2B 1cd5e5c2cc9a53344e46f2bc88894346669f7395959e5beea921be1765d0c71fe2bd8f6cbf31bca91fef391e2e35dd8d477432d0a9e4c23b147ab9982b74870e SHA512 e96e17045fee7056c5cad764d77c79a995c0f969a12d7c0b8eb8e55235bd72d97fd6836c8ee283f09ab1447bf0ae931766db5db0703fb8d5ac647556c417c254
26 +DIST rust-1.41.0-arm-unknown-linux-gnueabi.tar.xz 99328148 BLAKE2B cf8426b77db7bcb310a0cf95322371b79df22f5f1c048675f460bd8eaac4d2a2e84ce0fc478287fc140fdfee54bcd7eb903be9aa37d59e9a6b562b3997533fcf SHA512 6a0a96967094ac9502c880158b163f2e33134bc849ffb01ef88dfed22d96483d82166e695ca21d9e9e96e56e5c83ede5dba9573f3225a3418c71e625f8e98470
27 +DIST rust-1.41.0-arm-unknown-linux-gnueabihf.tar.xz 99310972 BLAKE2B dfdb003e95034fe72287a0c2527e9a7b5c02cf3682263c225037e86a0d5a71250f067f757e0b099c4b8a639993ba9e9353562d64b750ceb31d67f98c9a8835d9 SHA512 3da429f804dd5c61375bedd06f1e6262b44dbed487644aeebadc0ea3438584855d48c67c75021e551e5527465213a9699ce4a8595f93c8ef3df2ed4bbd9b8c76
28 +DIST rust-1.41.0-armv7-unknown-linux-gnueabihf.tar.xz 103804972 BLAKE2B 7ecb1800f144f8ee0fa020b28cd5087cf20cb6583fcd334f0d07ab722a5cd078a4a94649e464c6778222ba197aec95154ed6ebdbff76aa83067695439bd4a255 SHA512 b699eb497145e36fbda283abd2881b0e879bc6713b170be04be3919fb2064153779e4535c6a513c667a79b6aa21c775dbd479af131db1a55c7caa4504e808fbd
29 +DIST rust-1.41.0-i686-unknown-linux-gnu.tar.xz 120547488 BLAKE2B cf5b240c6f116f4d54092c9d466e2eb8408584f3fb4b0759601ad0bcba59ff3d639debca1cc45ce490964a09b02a071fea0d2cbcac0f3a5ac0bbb5aedef6d6af SHA512 b9541e07bd92b9135c538e0d8d3b47577fd4a7019a7ba4ce99a85c568a724b9a31f76d8b547e944818f215af8f8347a7674f14b4e61b2f5fc09b83595415583b
30 +DIST rust-1.41.0-mips-unknown-linux-gnu.tar.xz 90976844 BLAKE2B eef629a270e53299df4a3e2beef6962c028e1c1380c86264ac72d80b3837e7ef44100ab6484b9f9bdc5e4415ce9897bdb14d9643d164ec3c2eb12825a8833bc3 SHA512 823d2f8ccd70b9f1506134d027972ae021aa2867ac53d2e8d77deaac2ab55310c5c6978ad17f259d82adfe79ed4973029052407e3412f30988d890e20745b812
31 +DIST rust-1.41.0-mips64-unknown-linux-gnuabi64.tar.xz 98858296 BLAKE2B 57c73264a8a82d32854fba3d3283b53068c4200b54b0cf90d7e185cec6392fef26a1128079f5c056ae5cf77d86a3cd25c2d96d089de60e5a43fc3f312f099f32 SHA512 4c67f719b4d6573d5a48b31922c76bf475ee025fcc66b23fcda1a5713da1fd02aac9d407af703af017b2ff9d76822d3ab3f452fb2081a52a6610cdc61bfd6b39
32 +DIST rust-1.41.0-mipsel-unknown-linux-gnu.tar.xz 92840348 BLAKE2B 6a94aa8999eaffcff1788d60b196a432840850383bb2b3530cc2097b1533ff139ae4ce47aff15e85352682e869c24f8680dd5126f37ba31f6b49562ccf74ce94 SHA512 e3ff18a44a79f7d1625ecd20963e9831d30d5eccb0b41f09cdceb1306671e53b9519c399a25b9d71890c1d2cd490b4bcdc59fc92b38db8f4f25e28cada5ce45c
33 +DIST rust-1.41.0-powerpc-unknown-linux-gnu.tar.xz 98469628 BLAKE2B f7b7cad2b7f702b5a67309bdae3ac94b3118c05e9a429ebeec22312ac8bd37d268f6e9f23acc59f35e89664d01fecc9216739346fa395d688e3266d994aaa961 SHA512 4af61af924dc103ee582b273cb7e4d66f45b8ea3955b90f3c59a11b2d057eba5ac915a33579761053b4f22216dc56de1ae4984ce3ddb789189a787888ec45306
34 +DIST rust-1.41.0-powerpc64-unknown-linux-gnu.tar.xz 104761152 BLAKE2B ff05e6ba0fd4a2bf74d01c459ad73c17503cf6fa877989130b0949e67300dfaa8f5a16be7e56c594d38aa1df680775fadc556686f7dd89630528a0db38e36339 SHA512 0c40a966ab9d8b485cc8e542b74fc7fec74e00f409744be79d38bddeff74b12e6a130fead8f13531210d123fd95be1fc476434cf26cedf25f74774de8fff42ee
35 +DIST rust-1.41.0-powerpc64le-unknown-linux-gnu.tar.xz 110799904 BLAKE2B c89548ec66be561fccca42922e418ba8bb952bd5848f69ad4606bf388076b1b0bb9d04bc7181792f1df3e9cf8d9014abe08fdc0a65eb8a73c0ccb79f6e3324b0 SHA512 5b9faee91ae2f4c472ba3155149ac9e3a300a149209e62393502a2d69730cba0361e4ddcbb0d5f1d3c26a93b7ebe1fc497d8573bad049e492156ca743603ef06
36 +DIST rust-1.41.0-s390x-unknown-linux-gnu.tar.xz 115153476 BLAKE2B 1646b42f5a2001f63b653c59d5e30d1b6c9f3a8c2d2d07a779cc530242fee1f5e92ae8dc1af2a81c57f93d615ad519d40ec6f5ceea79e56048ccae7a37d4a5ba SHA512 458b9877bf2569e6e3a0a6692228d4dda68506336587880f6a51254bab5cbb60c5f82673b0d44842137a426411f25146c08447f22e1a5b883dee99f52e30aeb0
37 +DIST rust-1.41.0-x86_64-unknown-linux-gnu.tar.xz 111122952 BLAKE2B e1380cf72c8db8279c7b0d4349f09efb040117b1ca70ed599cd5197c6c8a257a846213db372e5b2df93ee266124a8a410e348dc8d5502a537a9b86159afe7bbb SHA512 1f08ba8b82ee17e4ae8130a092913767bd448a580efa4eb06ca2c926234efc72d9b73e2b846102296b80e324697c0ac6f5d3768fbd159d49d248f307efc244ff
38 +DIST rust-1.41.0-x86_64-unknown-linux-musl.tar.xz 96497736 BLAKE2B 3a193cc6d607891c2c7800498dc499d13bc50ce1249cb553271ab3eef69ea8e309f5048bfca9470c61056469a933824527002d5cc3f10f2ef1aea5519226710a SHA512 bcffacbb48b1d76cbf2951e7233951d6d58c4696f13b3ae616ca661bd8c20ebefd9420c494327d91999b76a34a6afe957281187e8fb5ce9cb968a3cfa8c23ea8
39
40 diff --git a/dev-lang/rust-bin/rust-bin-1.41.0.ebuild b/dev-lang/rust-bin/rust-bin-1.41.0.ebuild
41 new file mode 100644
42 index 00000000000..b35a773f3c2
43 --- /dev/null
44 +++ b/dev-lang/rust-bin/rust-bin-1.41.0.ebuild
45 @@ -0,0 +1,167 @@
46 +# Copyright 1999-2020 Gentoo Authors
47 +# Distributed under the terms of the GNU General Public License v2
48 +
49 +EAPI=7
50 +
51 +inherit bash-completion-r1 rust-toolchain toolchain-funcs
52 +
53 +MY_P="rust-${PV}"
54 +
55 +DESCRIPTION="Systems programming language from Mozilla"
56 +HOMEPAGE="https://www.rust-lang.org/"
57 +SRC_URI="$(rust_all_arch_uris ${MY_P})"
58 +
59 +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
60 +SLOT="stable"
61 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
62 +IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
63 +
64 +DEPEND=""
65 +RDEPEND=">=app-eselect/eselect-rust-20190311
66 + sys-libs/zlib
67 + !libressl? ( dev-libs/openssl:0= )
68 + libressl? ( dev-libs/libressl:0= )
69 + net-libs/libssh2
70 + net-misc/curl[ssl]
71 + !dev-lang/rust:0
72 + !dev-util/cargo
73 + rustfmt? ( !dev-util/rustfmt )"
74 +REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
75 +
76 +QA_PREBUILT="
77 + opt/${P}/bin/*-${PV}
78 + opt/${P}/lib/*.so
79 + opt/${P}/lib/rustlib/*/bin/*
80 + opt/${P}/lib/rustlib/*/lib/*.so
81 + opt/${P}/lib/rustlib/*/lib/*.rlib*
82 +"
83 +
84 +pkg_pretend () {
85 + if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
86 + die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
87 + fi
88 +}
89 +
90 +src_unpack() {
91 + default
92 + mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
93 +}
94 +
95 +src_install() {
96 + local std=$(grep 'std' ./components)
97 + local components="rustc,cargo,${std}"
98 + use doc && components="${components},rust-docs"
99 + use clippy && components="${components},clippy-preview"
100 + use rustfmt && components="${components},rustfmt-preview"
101 + ./install.sh \
102 + --components="${components}" \
103 + --disable-verify \
104 + --prefix="${ED}/opt/${P}" \
105 + --mandir="${ED}/usr/share/${P}/man" \
106 + --disable-ldconfig \
107 + || die
108 +
109 + local rustc=rustc-bin-${PV}
110 + local rustdoc=rustdoc-bin-${PV}
111 + local rustgdb=rust-gdb-bin-${PV}
112 + local rustgdbgui=rust-gdbgui-bin-${PV}
113 + local rustlldb=rust-lldb-bin-${PV}
114 +
115 + mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
116 + mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
117 + mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
118 + mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
119 + mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
120 +
121 + dosym "${rustc}" "/opt/${P}/bin/rustc"
122 + dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
123 + dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb"
124 + dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui"
125 + dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb"
126 +
127 + dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}"
128 + dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}"
129 + dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}"
130 + dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}"
131 + dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
132 +
133 + local cargo=cargo-bin-${PV}
134 + mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
135 + dosym "${cargo}" "/opt/${P}/bin/cargo"
136 + dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
137 +
138 + if use clippy; then
139 + local clippy_driver=clippy-driver-bin-${PV}
140 + local cargo_clippy=cargo-clippy-bin-${PV}
141 + mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
142 + mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
143 + dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
144 + dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
145 + dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
146 + dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}"
147 + fi
148 + if use rustfmt; then
149 + local rustfmt=rustfmt-bin-${PV}
150 + local cargo_fmt=cargo-fmt-bin-${PV}
151 + mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
152 + mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
153 + dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
154 + dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
155 + dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
156 + dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}"
157 + fi
158 +
159 + cat <<-EOF > "${T}"/50${P}
160 + LDPATH="/opt/${P}/lib"
161 + MANPATH="/usr/share/${P}/man"
162 + EOF
163 + doenvd "${T}"/50${P}
164 +
165 + # note: eselect-rust adds EROOT to all paths below
166 + cat <<-EOF > "${T}/provider-${P}"
167 + /usr/bin/rustdoc
168 + /usr/bin/rust-gdb
169 + /usr/bin/rust-gdbgui
170 + /usr/bin/rust-lldb
171 + EOF
172 + echo /usr/bin/cargo >> "${T}/provider-${P}"
173 + if use clippy; then
174 + echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
175 + echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
176 + fi
177 + if use rustfmt; then
178 + echo /usr/bin/rustfmt >> "${T}/provider-${P}"
179 + echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
180 + fi
181 + dodir /etc/env.d/rust
182 + insinto /etc/env.d/rust
183 + doins "${T}/provider-${P}"
184 +}
185 +
186 +pkg_postinst() {
187 + eselect rust update --if-unset
188 +
189 + elog "Rust installs a helper script for calling GDB now,"
190 + elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
191 +
192 + if has_version app-editors/emacs; then
193 + elog "install app-emacs/rust-mode to get emacs support for rust."
194 + fi
195 +
196 + if has_version app-editors/gvim || has_version app-editors/vim; then
197 + elog "install app-vim/rust-vim to get vim support for rust."
198 + fi
199 +
200 + if use elibc_musl; then
201 + ewarn "${PN} on *-musl targets is configured with crt-static"
202 + ewarn ""
203 + ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
204 + ewarn "to use it with portage, otherwise you may see failures like"
205 + ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
206 + ewarn "x86_64-unknown-linux-musl does not support these crate types"
207 + fi
208 +}
209 +
210 +pkg_postrm() {
211 + eselect rust cleanup
212 +}