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: Tue, 02 Feb 2021 23:52:59
Message-Id: 1612309936.2e16d609e524e3101e898ca62492a893173b6f75.gyakovlev@gentoo
1 commit: 2e16d609e524e3101e898ca62492a893173b6f75
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Tue Feb 2 22:19:05 2021 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 2 23:52:16 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e16d609
7
8 dev-lang/rust-bin: bump to 1.49.0
9
10 Closes: https://bugs.gentoo.org/768351
11 Package-Manager: Portage-3.0.14, Repoman-3.0.2
12 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
13
14 dev-lang/rust-bin/Manifest | 14 +++
15 dev-lang/rust-bin/rust-bin-1.49.0.ebuild | 155 +++++++++++++++++++++++++++++++
16 2 files changed, 169 insertions(+)
17
18 diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest
19 index 0131be51c80..f93e96991e0 100644
20 --- a/dev-lang/rust-bin/Manifest
21 +++ b/dev-lang/rust-bin/Manifest
22 @@ -40,3 +40,17 @@ DIST rust-1.48.0-powerpc64le-unknown-linux-gnu.tar.xz 124335896 BLAKE2B fe95cb27
23 DIST rust-1.48.0-s390x-unknown-linux-gnu.tar.xz 127221600 BLAKE2B 08511be6aadc0feb36caa19df5914a207565eed3b4b3914cad7fc8f7170011a7431c14d50b1334f5d5e00b4c94e7e84ee59afad179286e889480cc9b21e1f402 SHA512 b2b1565f3b1cc0c3bf4aa06aba1da7df775c6e29c892ca7727d0e549f175b632080433be2586e799c5636231de6c678f0228dedee8358fbf167016a1f7d25389
24 DIST rust-1.48.0-x86_64-unknown-linux-gnu.tar.xz 155254844 BLAKE2B 37bce978eb297bb1732f9d513bb6fdcee4aefc42a578496a84b5f8abbb9f90f1c524c73f28c85f33c25a365bf5ba566253b1739009bb112c2e1d46a2ed978e10 SHA512 0784e156e70c47386abfa88ecfeb62b1109364459b1fee225de0749c30379c4eb443ff3ff7faa7dc1a6ff373bc6eb43997007f937889cb35daf940a74641753b
25 DIST rust-1.48.0-x86_64-unknown-linux-musl.tar.xz 168361012 BLAKE2B efeb9a9812f2fa2cbf1cfd963b5b714cf18d73ca9b7a3de4efa701acf7e2e8fc3b610cd90f7391b10bddd1c9d44b8b0aa910f58ce739750d4e910b063825dc28 SHA512 7188fb0b1bf6fd6ab320089cd17f334867baefec1a9c57a81e6cb729276456e56850938dbd0eafbc52375266a87392ad3045a4dbd2c41689bba6b0da152e4034
26 +DIST rust-1.49.0-aarch64-unknown-linux-gnu.tar.xz 179627172 BLAKE2B 911fc176a7161bf3ca1a6ec01ec38d4f1792b11feb3c24c9587f8feb2923b42aa97f0e3391449ee1189507b9bdc2ef16be8f064ac3161f73aba18fd7b11c8f5d SHA512 fa81b618359c2952de941e094eabfe2966e3c1a39a1b20452a77f1a68a54dde9cc5cade18db911cf448ffe947d934461ce752112bd9b5b5430e1fcdabbd8b56a
27 +DIST rust-1.49.0-arm-unknown-linux-gnueabi.tar.xz 172021916 BLAKE2B 69e80df9f8d582c8216adfcd27ce8a19a9af49f27423fc3ee478ccb8b60b489e36c1f38633c86c58a504b2110cebf4026dc418e55897caf60865c21209ea2366 SHA512 2ea1d8564577cb4f687384e0d933e6ed7e1e5c95aeb49410d660409a23867959bc175344fa00bdc342cf511ea867cb2d97507af117e7d5b34714e69d4b8ffaff
28 +DIST rust-1.49.0-arm-unknown-linux-gnueabihf.tar.xz 173557760 BLAKE2B 63c1815b3bfdcb5bf1c745bd8b85cee052b2c85f42a800166da6ee66374716e899919fac7b9c75d0a6b0ddc963e22e2b842ac382eca431433cb1ef4c1d568ad4 SHA512 9c4a49b8a3bf11d5e0f3d54032e2dfee8779f3fb68676a219c9b8e344539a3dd840d912167783f3fbaa3bd3fbf73b6bdd5afa9343c042a67496ab57c9a9ca96e
29 +DIST rust-1.49.0-armv7-unknown-linux-gnueabihf.tar.xz 176194076 BLAKE2B 1d2a1eca1d44d48cdd542411acc0f1a81767b6e62c744c800a840f3ecdcc060acd7552d342539230f85cf3e2771f8aa4a2c1ff88efaccf7021bbb2e0af71c222 SHA512 1cba85fc958371aeb1d521e8842ad576e65d244147e2c75c34eaa776552ed025434d10284fa976d901d6cede69f6db3e5fdd770005ca0b93bb5e3202b9f9392a
30 +DIST rust-1.49.0-i686-unknown-linux-gnu.tar.xz 201492368 BLAKE2B b666693ffd3468330c3aaabc81556d3f6c907e136f98edde9ea4605bd95a5750e57432a51e5eba0643a816b4281129f1cc295cf9821d5f285cdfd8cb3cb68c3f SHA512 b4d39cb234314f013969b5db3d365d21719d7a01f2dc0816e4f221c5e6d4abecd7f9e83f54b8640173d00d3e701cb3cbb61cef32f00db9356139005a1ce3bd19
31 +DIST rust-1.49.0-mips-unknown-linux-gnu.tar.xz 134041460 BLAKE2B 0e779b3494221f22529ba7a4b9e1098186965d36f7cb94b5d76c84bd4703c354ebc57aa03a58fe3b5592c1543ac6193575f9d443cd8fa663a69d9af1ae7d0b82 SHA512 9293814a64d7382f97beb137ccb8beeeb76ae5f71d6db7d2c70f3c643a877f5991c0abc2d53270bccaa6aa5c8de4f0e46fe4b92ad09e2253e5cd5487a3f46d6c
32 +DIST rust-1.49.0-mips64-unknown-linux-gnuabi64.tar.xz 143820152 BLAKE2B f22869487eac68f5ed698da1b05b1c53ae138cff79d2c5011008663b027858c5b91ce1b2f26924ecc17d13ca9559ff444e1b03a44a5b3b536e66753075c8d05a SHA512 ea1d90a388c44a2e5bd5f51dd5e8b95721e49c8284369cd638560e9c729c8a7c54ba6cccf55547f0b0b1731498623eaf743783cfd67e61c13f89f0ad9275c051
33 +DIST rust-1.49.0-mipsel-unknown-linux-gnu.tar.xz 140145252 BLAKE2B 5a26ca9e2af4a2d96c34da29e50c5c68b1fb0f2e6db20685853a4211042aee76f0f86b17c4697bcecce99de21ac7b60b055ed43cd2acf03dfa043eb5e3546692 SHA512 a2079d5068737cae36532c2922fc4aebf4aac723208804a128a1234ae78868f20a6559a967cf01a456ba7de2bf48ea3961fc9a31dd3bc45130b0de328a712295
34 +DIST rust-1.49.0-powerpc-unknown-linux-gnu.tar.xz 147163992 BLAKE2B 4822af4b54a22214425e0dd993081f0bc7b0ae0973c0e11d021a2a8671f05272b2cb6b3ca307eef9b3ad25db6a1eef7976f1e8e4ead8ac4c5226d9c7596c0f6d SHA512 905c624baccf0bbcd166407a8722909b2645c7e1993e80a37aa4cfe43d0dce5b92db2c5443295ecb79fa6c3c2cbe6e0e67ad7f8ba312075fb8960cbe50183a25
35 +DIST rust-1.49.0-powerpc64-unknown-linux-gnu.tar.xz 160585188 BLAKE2B f0e4a5da3767b1bfb633c899c1b9b2ee9725d8bea9154142037cbcc9212d67a364f0eb130ea4d2a4c62d0fe55a8d9d880faac2f6e167155a99a235f7ee28fc1d SHA512 36f94b0ae399f872a22c697225abcb35a893ae6e4ed369961edb693299cb58e294267b1d73a99555057618f179202a70ae2fdcff2b3bedbabf2774b3809a2a62
36 +DIST rust-1.49.0-powerpc64le-unknown-linux-gnu.tar.xz 169253520 BLAKE2B 4648467a84d7f81f63ddf610fce6e1e2388ce5c91a7ce73c8b8d054356bfcba379d4d0a543fdbc9bad9b689b10f8dffa4c145b83ff02ac1d77ede7f600bb5924 SHA512 c17eb27ec4dbcc56da3edffbc57e0edda99744d6a0d38369fa08af066894aeb13dd78c7b8055f2246fc3bf13c654842675ea4df44b7bc8852e0f9952acdf7e7c
37 +DIST rust-1.49.0-s390x-unknown-linux-gnu.tar.xz 170753008 BLAKE2B a81618240d86d4a70bd27f3e33caf0258868539b3b081a8f8f461a3debf82ab1493fea18dd5a32083d1f34db268f4bff471f5f45fb3d4910dd9559f227dc3aab SHA512 25259ea2e499c89459b14571e2c54f230d642af9cfe539dc2b8be15eff0e23b8c6e60af4c567bcbb6c6c185b4537eaab19c3395fce48b1f6e5ef1234efc31e3a
38 +DIST rust-1.49.0-x86_64-unknown-linux-gnu.tar.xz 144752500 BLAKE2B 188fafdbff02cbffae22e8a48d259119c59aa435252477ba3b4f4522cc00c90d9a242bd5ac76e8d8210bd032b8f78538e5f95606fe2c862ffd7477acdfb6e1a7 SHA512 c008aa50e17db6a0134fb85235a958258d345410f5063bc77175f7c28b2e35895427b9e68cd1ac9acb769769c83313cd59fe6465b453e891cf415a2514b7722d
39 +DIST rust-1.49.0-x86_64-unknown-linux-musl.tar.xz 217795696 BLAKE2B 264348951db96a9f046e4bec599b92a5ee6d185d961f833f8d2127c1ac4578b91401834d09b5eed421f03d14933ff3b2e85961ff09927d19bf6c701d80eb1b67 SHA512 be165de42e3acd50f6e6a21fe386ea2333fd0f19abedbb059d6eb8ce8c80a8e79257eab8a7775e3b72307596b52e803bd8c4c46330a6e66acbadbe2f63cea42a
40
41 diff --git a/dev-lang/rust-bin/rust-bin-1.49.0.ebuild b/dev-lang/rust-bin/rust-bin-1.49.0.ebuild
42 new file mode 100644
43 index 00000000000..fe9cd534f57
44 --- /dev/null
45 +++ b/dev-lang/rust-bin/rust-bin-1.49.0.ebuild
46 @@ -0,0 +1,155 @@
47 +# Copyright 1999-2021 Gentoo Authors
48 +# Distributed under the terms of the GNU General Public License v2
49 +
50 +EAPI=7
51 +
52 +inherit bash-completion-r1 rust-toolchain toolchain-funcs multilib-minimal
53 +
54 +MY_P="rust-${PV}"
55 +
56 +DESCRIPTION="Systems programming language from Mozilla"
57 +HOMEPAGE="https://www.rust-lang.org/"
58 +SRC_URI="$(rust_all_arch_uris ${MY_P})"
59 +
60 +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
61 +SLOT="stable"
62 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
63 +IUSE="clippy cpu_flags_x86_sse2 doc rls rustfmt"
64 +
65 +DEPEND=""
66 +RDEPEND=">=app-eselect/eselect-rust-20190311"
67 +
68 +REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
69 +
70 +QA_PREBUILT="
71 + opt/${P}/bin/.*
72 + opt/${P}/lib/.*.so
73 + opt/${P}/lib/rustlib/.*/bin/.*
74 + opt/${P}/lib/rustlib/.*/lib/.*
75 +"
76 +
77 +pkg_pretend() {
78 + if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
79 + die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
80 + fi
81 +}
82 +
83 +src_unpack() {
84 + default
85 + mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
86 +}
87 +
88 +multilib_src_install() {
89 + if multilib_is_native_abi; then
90 +
91 + # start native abi install
92 + pushd "${S}" >/dev/null || die
93 + local analysis std
94 + analysis="$(grep 'analysis' ./components)"
95 + std="$(grep 'std' ./components)"
96 + local components="rustc,cargo,${std}"
97 + use doc && components="${components},rust-docs"
98 + use clippy && components="${components},clippy-preview"
99 + use rls && components="${components},rls-preview,${analysis}"
100 + use rustfmt && components="${components},rustfmt-preview"
101 + ./install.sh \
102 + --components="${components}" \
103 + --disable-verify \
104 + --prefix="${ED}/opt/${P}" \
105 + --mandir="${ED}/opt/${P}/man" \
106 + --disable-ldconfig \
107 + || die
108 +
109 + local symlinks=(
110 + cargo
111 + rustc
112 + rustdoc
113 + rust-gdb
114 + rust-gdbgui
115 + rust-lldb
116 + )
117 +
118 + use clippy && symlinks+=( clippy-driver cargo-clippy )
119 + use rls && symlinks+=( rls )
120 + use rustfmt && symlinks+=( rustfmt cargo-fmt )
121 +
122 + einfo "installing eselect-rust symlinks and paths"
123 + local i
124 + for i in "${symlinks[@]}"; do
125 + # we need realpath on /usr/bin/* symlink return version-appended binary path.
126 + # so /usr/bin/rustc should point to /opt/rust-bin-<ver>/bin/rustc-<ver>
127 + local ver_i="${i}-bin-${PV}"
128 + ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
129 + dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
130 + done
131 +
132 + # symlinks to switch components to active rust in eselect
133 + dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
134 + dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
135 + dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
136 + dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
137 +
138 + cat <<-_EOF_ > "${T}/50${P}"
139 + LDPATH="${EPREFIX}/usr/lib/rust/lib"
140 + MANPATH="${EPREFIX}/usr/lib/rust/man"
141 + $(usex elibc_musl 'CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
142 + _EOF_
143 + doenvd "${T}/50${P}"
144 +
145 + # note: eselect-rust adds EROOT to all paths below
146 + cat <<-_EOF_ > "${T}/provider-${P}"
147 + /usr/bin/cargo
148 + /usr/bin/rustdoc
149 + /usr/bin/rust-gdb
150 + /usr/bin/rust-gdbgui
151 + /usr/bin/rust-lldb
152 + /usr/lib/rustlib
153 + /usr/lib/rust/lib
154 + /usr/lib/rust/man
155 + /usr/share/doc/rust
156 + _EOF_
157 +
158 + if use clippy; then
159 + echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
160 + echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
161 + fi
162 + if use rls; then
163 + echo /usr/bin/rls >> "${T}/provider-${P}"
164 + fi
165 + if use rustfmt; then
166 + echo /usr/bin/rustfmt >> "${T}/provider-${P}"
167 + echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
168 + fi
169 +
170 + insinto /etc/env.d/rust
171 + doins "${T}/provider-${P}"
172 + popd >/dev/null || die
173 + #end native abi install
174 +
175 + else
176 + local rust_target
177 + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
178 + dodir "/opt/${P}/lib/rustlib"
179 + cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
180 + "${ED}/opt/${P}/lib/rustlib" || die
181 + fi
182 +}
183 +
184 +pkg_postinst() {
185 + eselect rust update
186 +
187 + elog "Rust installs a helper script for calling GDB now,"
188 + elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
189 +
190 + if has_version app-editors/emacs; then
191 + elog "install app-emacs/rust-mode to get emacs support for rust."
192 + fi
193 +
194 + if has_version app-editors/gvim || has_version app-editors/vim; then
195 + elog "install app-vim/rust-vim to get vim support for rust."
196 + fi
197 +}
198 +
199 +pkg_postrm() {
200 + eselect rust cleanup
201 +}