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: Fri, 08 May 2020 07:01:41
Message-Id: 1588921280.4b1a65cb36674e5a0abfdd7803b073a33c87ea06.gyakovlev@gentoo
1 commit: 4b1a65cb36674e5a0abfdd7803b073a33c87ea06
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Fri May 8 06:23:52 2020 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Fri May 8 07:01:20 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b1a65cb
7
8 dev-lang/rust-bin: bump to 1.43.1
9
10 Package-Manager: Portage-2.3.99, Repoman-2.3.22
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.43.1.ebuild | 175 +++++++++++++++++++++++++++++++
15 2 files changed, 189 insertions(+)
16
17 diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest
18 index 2f9684c805a..5059b2f452f 100644
19 --- a/dev-lang/rust-bin/Manifest
20 +++ b/dev-lang/rust-bin/Manifest
21 @@ -40,3 +40,17 @@ DIST rust-1.43.0-powerpc64le-unknown-linux-gnu.tar.xz 111611976 BLAKE2B c3a730fc
22 DIST rust-1.43.0-s390x-unknown-linux-gnu.tar.xz 119622236 BLAKE2B 358ba8387bf19d0d2338a17ff8364b63a99f35de30e754af6279c9edf26d011cf0c833f4b24a7c715d4524f60dcf53721339c1c5ad7b3dc2a9f35bf38a82b33f SHA512 9202c0cca2feb03fec26c3fd1367f7f5ace3194c7f668753cffa23f7ced7f53291c64873de7dcc6d813ef2986f907191ee24e8a027cc83da36006f590660ffe1
23 DIST rust-1.43.0-x86_64-unknown-linux-gnu.tar.xz 112598556 BLAKE2B 4c5ca5dee24b5a3f48ade89c80e1fd0180d7dac5c8040b034a72bd165001b59f3da15d7ac6c234ca199240638c797e4d31e52e52cff9170ec5cc53f0959b1acd SHA512 3fb0630e76f78565cafa9882d1c09a2bb31d0de145748ba4506d7b6a5ea508c4fb533ac3f60df8335d9c4944ba8f028752441d3c3443e3990fe3cc4e676c1670
24 DIST rust-1.43.0-x86_64-unknown-linux-musl.tar.xz 100659284 BLAKE2B 4dbfcbf3526e3ec0a51eadb410876c27c110b59f18a54db30b358b5b2b61edaed907a4584bb0678e5754364f5fca6ca0f9f11f6a2099e9440f70731ddf31f251 SHA512 f1b449a8f0d585c648ec04723126865ddbcc1b101a2f38d53832e8f2bae0fbe3ab1751074511f5a053404bee06646cec5d32937cf6c32f9ccc022d04bd021cf0
25 +DIST rust-1.43.1-aarch64-unknown-linux-gnu.tar.xz 104148868 BLAKE2B ac5db9eb58c502253d001e0c93aef867bc584d045960a1d3c2caf6772a7c1f4fbad7da579d7c72b3376804f61f1332a54e9fc7099ba5f4a65f7e5435df28894a SHA512 b54fad5493344d2370bd77110f0ffb0231f41ab8aa9707e9303304957c5d9067dc83089432eb175605b78dc771dfcf7abfcce63d7fecdbb759dd224c17d12da0
26 +DIST rust-1.43.1-arm-unknown-linux-gnueabi.tar.xz 104779424 BLAKE2B 63c05d7403970bd4a237a6b690bcb8e78f310816a953af43da8d258a74102cd560c8674656c2036b1f391dc964ba6d2be2736bc10686c2365cc332b5c76a5502 SHA512 ea2eae6da6c757c07cf9631c706365c743c58f28b514444763ea70fed4c8fcefc5c36d55136afffc2f5e0d25e9b1fdf3243cb9def7e0f57e37b5a4783d44a61b
27 +DIST rust-1.43.1-arm-unknown-linux-gnueabihf.tar.xz 103569032 BLAKE2B fc94eeb777a72fcb1b2821b5d10bb9eaca535d76e8caee3d06aed989107460e00146516c5be5714e9739c49d5170809fc132624f9a035afba146db883346c57a SHA512 1c523dafceb29f916a192261f673048c8f781453bcee237e0e333d694d7d7b71735544906f2edea9e0a8a48fc66a478645ae8ae865a171f4f9a94f0d8e6800c1
28 +DIST rust-1.43.1-armv7-unknown-linux-gnueabihf.tar.xz 108430484 BLAKE2B a3c57930b4e7096f409a2129abef60fbdfadad59f29e428296f3151187eac286e82bdb2d0ca879db87563cdc707dbcabbb5e9048b54303653209b98268ab9cf3 SHA512 0812b3229dd47f1b5cadb49020e68d28b4267ac0489d0c2e448f21e3b0b6519bbf216ac9b20b747e035033842a6eb3b13a98706f2eddca2c088d9396dcb2c21e
29 +DIST rust-1.43.1-i686-unknown-linux-gnu.tar.xz 125731548 BLAKE2B 3a3278e409a69f3e8195bab39871b5594571c1c8f2ea2a5f8c9786a739f709381c13c1b2a3209ef62cb7c5b8aec47dd769cf3e658ed57e5037522759fa1a244e SHA512 c7423bccfb15f3df6043ec1d81203c9db9b3229dedd347cab09d3cc3b183f53aa0707f59964efccd63418e1c6ad21e7ee7dcc1495eda8c4ecb55ee8e6b3ac034
30 +DIST rust-1.43.1-mips-unknown-linux-gnu.tar.xz 95924004 BLAKE2B fc1da442dfaa535b81029ed40a85cd0d55766d84c34f0d97bf36376c44e44fd5305b429854b9c964515e10f83a06b36a6ad9daae5714e142491d99e58b1d0a07 SHA512 fe3b11e586d506dc917f0e04009a994a16575ac534a2716b49e66a0344060a26ee6c7e912b6cd7b5f010a97f59604515f899bc1b6c38f0ea86e8cecc20152dd6
31 +DIST rust-1.43.1-mips64-unknown-linux-gnuabi64.tar.xz 100980364 BLAKE2B 12439df511c3ad43ed24cb0e648a212314a747e203680929ed3e136505eb29af3dcb007162aaa337fbac56a9b1b8f1c405217756ec712c400bc0f4d9aefd64b8 SHA512 6c0d7f172e76e21596d305df7b1a38fde66a946972765de92ccc139cf8f2e8755864b7bd94328b9639023df6be51af08428f41ed78de4ba8d43620673b9f7ecb
32 +DIST rust-1.43.1-mipsel-unknown-linux-gnu.tar.xz 98512180 BLAKE2B b5e8cdf2b8d65cc39bfb325afda9ae75a360967a4f6f413f3b01257bc34130fcc873dc128a4e48bbcad774d69b9a4aae0d4a8182819a4411809af6a0c636b403 SHA512 cb01eac951384fbf2ead5b7d4acbf92485de0bbaa7e3a272a46a8934066d720d248a19a67ffc88b7b239c15478e8691b94302807dc7652e042c9b8edded6da12
33 +DIST rust-1.43.1-powerpc-unknown-linux-gnu.tar.xz 105007576 BLAKE2B 8392f36025ca91742fad9755c945b42e616272cc97c33087090c6462a5ba9f1de82a0167ed53568b5cdd4c593464ed2858811fd0c9ae8559a1cba37be6db5305 SHA512 d10da49f19b79f843ae369bdff3e5040b93934dc50dac3c09bd346c24dfa7394364da647c08206d5cef4c853b7e59d1062c16e6eeba0ffc01736eeba63dd3eb6
34 +DIST rust-1.43.1-powerpc64-unknown-linux-gnu.tar.xz 107189572 BLAKE2B ba561d45b8f9a7f446b17313d92db31b30a07d657dbc59667076ee216d66e4b2ec3811821bc6d1fde6bba811d2c46473c6e3bc06162fe4e1ffe040ad23542742 SHA512 695591807892c8f08801cd145ebc6a91ee4222000210baaaa0d6c8acf1ac6a96f4bf2566871def04d15a9965b7e3ea4287e37d7851fb14010518694d8ede75e6
35 +DIST rust-1.43.1-powerpc64le-unknown-linux-gnu.tar.xz 112921244 BLAKE2B 9fa67664fc90c1f6095d98b756cae747be2ad863b894b393d4e9ecc3a1bd527b0d26f1bae2988981b98d4d582d2b60a18c62b3db3b5fa017439e034f576e7582 SHA512 da447ec44ebf998290a73420437c8d434a6c196cfe1c3331a9adf40abf7acd97a231e352a8626bbfa961da8e0c4f450aa59d573254257f72cce4068eeb8112a1
36 +DIST rust-1.43.1-s390x-unknown-linux-gnu.tar.xz 119547480 BLAKE2B 8ce0d64e2d47f23cb927f3ea3a0f469e3cafc191ac1d47e580bce6cf0b35887484542f7d1b857d9bace5f696a072adb7e17e8c5f64af9bf1fbcc305707a15f9f SHA512 f087e50a91b1cc4a12bf15aea1cefbda9b89518febcecc0d56ea7d0a6a682be06cff7777d0a0b4812e96f3fb3295e7799bf200c1599c88cb7083a78d5002f14a
37 +DIST rust-1.43.1-x86_64-unknown-linux-gnu.tar.xz 112817212 BLAKE2B c6153889d9872ed5a60bfc43bc8c98e71654fffdd79ce775c3eb4376ed4714c5532e6aaecb769e447f3ae0bb7a11aed75754a5e879404742cb0813080dcf67eb SHA512 2fc573ca2826d9f03044f746ae4d7715b4e31b9ac933289607aa3449a538bb4dfd519540576a1d0d286c0d754a7ba6ce38beef6aded1090d3af3091b6ba2a9ee
38 +DIST rust-1.43.1-x86_64-unknown-linux-musl.tar.xz 103345832 BLAKE2B c16930854ea5e825e1338fdde3966e24d3505230891ab4e10160c5482298996768d8cee9890eadd486bfca41ebd5c9f38f7b7ead35a7848e59e409df8eaf9bdf SHA512 9f6ce2a5eaf98dc20b4ed88dbe60e8fb014ef3e7e82f5c31a28cf0f916d996271929cadeaf39a869f548aafb311f022acb408d51d4312c849c71843bc37ca202
39
40 diff --git a/dev-lang/rust-bin/rust-bin-1.43.1.ebuild b/dev-lang/rust-bin/rust-bin-1.43.1.ebuild
41 new file mode 100644
42 index 00000000000..b36387480c9
43 --- /dev/null
44 +++ b/dev-lang/rust-bin/rust-bin-1.43.1.ebuild
45 @@ -0,0 +1,175 @@
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 multilib-minimal
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 rustfmt"
63 +
64 +DEPEND=""
65 +RDEPEND=">=app-eselect/eselect-rust-20190311"
66 +
67 +REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
68 +
69 +QA_PREBUILT="
70 + opt/${P}/bin/*-${PV}
71 + opt/${P}/lib/*.so
72 + opt/${P}/lib/rustlib/*/bin/*
73 + opt/${P}/lib/rustlib/*/lib/*.so
74 + opt/${P}/lib/rustlib/*/lib/*.rlib*
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 std
94 + std="$(grep 'std' ./components)"
95 + local components="rustc,cargo,${std}"
96 + use doc && components="${components},rust-docs"
97 + use clippy && components="${components},clippy-preview"
98 + use rustfmt && components="${components},rustfmt-preview"
99 + ./install.sh \
100 + --components="${components}" \
101 + --disable-verify \
102 + --prefix="${ED}/opt/${P}" \
103 + --mandir="${ED}/opt/${P}/man" \
104 + --disable-ldconfig \
105 + || die
106 +
107 + local rustc=rustc-bin-${PV}
108 + local rustdoc=rustdoc-bin-${PV}
109 + local rustgdb=rust-gdb-bin-${PV}
110 + local rustgdbgui=rust-gdbgui-bin-${PV}
111 + local rustlldb=rust-lldb-bin-${PV}
112 +
113 + mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
114 + mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
115 + mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
116 + mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
117 + mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
118 +
119 + dosym "${rustc}" "/opt/${P}/bin/rustc"
120 + dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
121 + dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb"
122 + dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui"
123 + dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb"
124 +
125 + dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}"
126 + dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}"
127 + dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}"
128 + dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}"
129 + dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
130 +
131 + local cargo=cargo-bin-${PV}
132 + mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
133 + dosym "${cargo}" "/opt/${P}/bin/cargo"
134 + dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
135 +
136 + if use clippy; then
137 + local clippy_driver=clippy-driver-bin-${PV}
138 + local cargo_clippy=cargo-clippy-bin-${PV}
139 + mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
140 + mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
141 + dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
142 + dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
143 + dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
144 + dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}"
145 + fi
146 + if use rustfmt; then
147 + local rustfmt=rustfmt-bin-${PV}
148 + local cargo_fmt=cargo-fmt-bin-${PV}
149 + mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
150 + mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
151 + dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
152 + dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
153 + dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
154 + dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}"
155 + fi
156 +
157 + cat <<-EOF > "${T}"/50${P}
158 + LDPATH="/opt/${P}/lib"
159 + MANPATH="/opt/${P}/man"
160 + EOF
161 + doenvd "${T}"/50${P}
162 +
163 + # note: eselect-rust adds EROOT to all paths below
164 + cat <<-EOF > "${T}/provider-${P}"
165 + /usr/bin/rustdoc
166 + /usr/bin/rust-gdb
167 + /usr/bin/rust-gdbgui
168 + /usr/bin/rust-lldb
169 + EOF
170 + echo /usr/bin/cargo >> "${T}/provider-${P}"
171 + if use clippy; then
172 + echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
173 + echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
174 + fi
175 + if use rustfmt; then
176 + echo /usr/bin/rustfmt >> "${T}/provider-${P}"
177 + echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
178 + fi
179 +
180 + insinto /etc/env.d/rust
181 + doins "${T}/provider-${P}"
182 + popd >/dev/null || die
183 + #end native abi install
184 +
185 + else
186 + local rust_target
187 + rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
188 + dodir "/opt/${P}/lib/rustlib"
189 + cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
190 + "${ED}/opt/${P}/lib/rustlib" || die
191 + fi
192 +}
193 +
194 +pkg_postinst() {
195 + eselect rust update --if-unset
196 +
197 + elog "Rust installs a helper script for calling GDB now,"
198 + elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
199 +
200 + if has_version app-editors/emacs; then
201 + elog "install app-emacs/rust-mode to get emacs support for rust."
202 + fi
203 +
204 + if has_version app-editors/gvim || has_version app-editors/vim; then
205 + elog "install app-vim/rust-vim to get vim support for rust."
206 + fi
207 +
208 + if use elibc_musl; then
209 + ewarn "${PN} on *-musl targets is configured with crt-static"
210 + ewarn ""
211 + ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
212 + ewarn "to use it with portage, otherwise you may see failures like"
213 + ewarn "error: cannot produce proc-macro for serde_derive as the target "
214 + ewarn "x86_64-unknown-linux-musl does not support these crate types"
215 + fi
216 +}
217 +
218 +pkg_postrm() {
219 + eselect rust cleanup
220 +}