diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest new file mode 100644 index 0000000000..903ed456a2 --- /dev/null +++ b/dev-lang/rust-bin/Manifest @@ -0,0 +1,5 @@ +DIST rust-1.34.2-armv7a-unknown-linux-musleabihf.tar.xz 99282200 BLAKE2B d441a0e7dc75f049fb84c13aba5c9a802e4a85428beeb586cd09946c547b72666833e1fef887af93b437c790597768a8e16f20a0e7e00860478e2329942a72b5 SHA512 ba647279cd987b5511d867f5f2a1035ba3b032300ce6854ae5ca826a51b9c250375b8dec069b295f5ac4a7f56bb5494006cb7edb28a89c5a1a3db6163a825c8a +DIST rust-1.34.2-x86_64-gentoo-linux-musl.tar.xz 110896508 BLAKE2B b58fca41e0b55aa002d54dd55ffc6322289c59f170fb2364932935d5a2378ba75e29623d286d2377c40c77c1549f76b4ccae5eda8c68473273417c86549a5c23 SHA512 109a675bff911abef4edea314249f994edd5c048d2d14ce610ce872953b47f71140a11b3f06f13e03abbd19d77376a8399848d9778a34790e87c9c3e4227c621 +DIST rust-1.37.0-armv7a-unknown-linux-musleabihf.tar.xz 118986736 BLAKE2B 2e31c88943c49ef6cd45a3e836f375b2c4f4140b47ae3b3f671b9ac34d57538b898c7cf3900c7aeee6784a144cc3c14732bce8c3fcc033b47f1a484e0f980ac0 SHA512 e95e2601d3f3cd94eefea8ae4b88e85392731d2133939e94eb81d201d6ae4fb868651b0af3cea384122434090a0a21bca69524f09dafcd2c778d181a40dd08c6 +DIST rust-1.37.0-i686-gentoo-linux-musl.tar.xz 132558604 BLAKE2B 50b02fe1e6cf3276711b7d726cc2cf359d5f4123795b3323087adb1d23dd6da172ec5a8d124067edb95db9864e672f9ac6f845919c70791cb6760a9d472fb967 SHA512 fbd5ae8297258ec7f8b91e7afdee1b90962e24a03ef3bbfc0a694e8f4a1fb45e3eb869c61f239b3cdac20342570aae21d1aa87607a151f6fb1a510fecce5ea45 +DIST rust-1.37.0-x86_64-gentoo-linux-musl.tar.xz 129991444 BLAKE2B e135a4325be4536cefdac0aef3e3f7b43de012a670f0aec9c11a8ff76206487917806b95bcf0d536629f8ec774d241d494c2f6760bcc4918ed6127066ec75ab9 SHA512 a5ac56105eea8509a77d6238f851fa13d3d40200bc20115cdaf5d4a9501582b3f785967a02b6cbf6f95ead3e7cd879b2cd76ca9f0f29c60f8d169e2f25cf6876 diff --git a/dev-lang/rust-bin/metadata.xml b/dev-lang/rust-bin/metadata.xml new file mode 100644 index 0000000000..1821db8d03 --- /dev/null +++ b/dev-lang/rust-bin/metadata.xml @@ -0,0 +1,12 @@ + + + + + nielson2@yandex.com + Steffen Kuhn + + + Install clippy component + Install rustfmt component + + diff --git a/dev-lang/rust-bin/rust-bin-1.34.2.ebuild b/dev-lang/rust-bin/rust-bin-1.34.2.ebuild new file mode 100644 index 0000000000..aaa5d62628 --- /dev/null +++ b/dev-lang/rust-bin/rust-bin-1.34.2.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils bash-completion-r1 versionator toolchain-funcs + +MY_P="rust-${PV}" + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" +SRC_URI="amd64? ( https://portage.smaeul.xyz/distfiles/${MY_P}-x86_64-gentoo-linux-musl.tar.xz ) + arm? ( https://portage.smaeul.xyz/distfiles/${MY_P}-armv7a-unknown-linux-musleabihf.tar.xz )" + +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" +SLOT="stable" +KEYWORDS="~amd64" +IUSE="doc" + +DEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 + sys-libs/zlib + net-libs/libssh2 + net-misc/curl[ssl] + sys-devel/llvm:8 + !dev-lang/rust:0 +" +RDEPEND="${DEPEND}" + +QA_PREBUILT=" + opt/${P}/bin/rustc-bin-${PV} + opt/${P}/bin/rustdoc-bin-${PV} + opt/${P}/lib/*.so + opt/${P}/lib/rustlib/*/lib/*.so + opt/${P}/lib/rustlib/*/lib/*.rlib* +" + +src_unpack() { + default + + local postfix + use amd64 && postfix=x86_64-gentoo-linux-musl + use arm && postfix=armv7a-unknown-linux-musleabihf + + mv "${WORKDIR}/${MY_P}-${postfix}" "${S}" || die +} + +src_install() { + local std=$(grep 'std' ./components) + local components="rustc,${std},cargo" + use doc && components="${components},rust-docs" + ./install.sh \ + --components="${components}" \ + --disable-verify \ + --prefix="${D}/opt/${P}" \ + --mandir="${D}/usr/share/${P}/man" \ + --disable-ldconfig \ + || die + + rm -r "${D}/usr/share/${P}/man" || die + rm -r "${D}/opt/${P}/share/doc" || die + + local rustc=rustc-bin-${PV} + local rustdoc=rustdoc-bin-${PV} + local rustgdb=rust-gdb-bin-${PV} + local cargo=cargo-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 + + 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/${cargo}" "/usr/bin/${cargo}" + +# dosym "/opt/${P}/share/zsh/site-functions/_cargo" /usr/share/zsh/site-functions/_cargo +# newbashcomp "${D}/opt/${P}/etc/bash_completion.d/cargo" cargo + + cat <<-EOF > "${T}"/50${P} + LDPATH="/opt/${P}/lib" + MANPATH="/usr/share/${P}/man" + EOF + doenvd "${T}"/50${P} + + cat <<-EOF > "${T}/provider-${P}" + /usr/bin/rustdoc + /usr/bin/rust-gdb + EOF + 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 + + if has_version 'app-shells/zsh'; then + elog "install app-shells/rust-zshcomp to get zsh completion for rust." + fi +} + +pkg_postrm() { + eselect rust unset --if-invalid +} diff --git a/dev-lang/rust-bin/rust-bin-1.37.0.ebuild b/dev-lang/rust-bin/rust-bin-1.37.0.ebuild new file mode 100644 index 0000000000..c52ea907b2 --- /dev/null +++ b/dev-lang/rust-bin/rust-bin-1.37.0.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils bash-completion-r1 versionator toolchain-funcs + +MY_P="rust-${PV}" + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" +SRC_URI="amd64? ( https://portage.smaeul.xyz/distfiles/${MY_P}-x86_64-gentoo-linux-musl.tar.xz ) + arm? ( https://portage.smaeul.xyz/distfiles/${MY_P}-armv7a-unknown-linux-musleabihf.tar.xz ) + x86? ( https://portage.smaeul.xyz/distfiles/${MY_P}-i686-gentoo-linux-musl.tar.xz ) " + +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" +SLOT="stable" +KEYWORDS="~amd64" +IUSE="doc extended" + +DEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 + sys-libs/zlib + net-libs/libssh2 + net-misc/curl[ssl] + sys-libs/libssp_nonshared + sys-devel/llvm:8 + !dev-lang/rust:0 +" +RDEPEND="${DEPEND}" + +QA_PREBUILT=" + opt/${P}/bin/rustc-bin-${PV} + opt/${P}/bin/rustdoc-bin-${PV} + opt/${P}/lib/*.so + opt/${P}/lib/rustlib/*/lib/*.so + opt/${P}/lib/rustlib/*/lib/*.rlib* +" + +src_unpack() { + default + + local postfix + use amd64 && postfix=x86_64-gentoo-linux-musl + use arm && postfix=armv7a-unknown-linux-musleabihf + use x86 && postfix=i686-gentoo-linux-musl + + mv "${WORKDIR}/${MY_P}-${postfix}" "${S}" || die +} + +src_install() { + local std=$(grep 'std' ./components) + local components="rustc,${std},cargo" + use doc && components="${components},rust-docs" + ./install.sh \ + --components="${components}" \ + --disable-verify \ + --prefix="${D}/opt/${P}" \ + --mandir="${D}/usr/share/${P}/man" \ + --disable-ldconfig \ + || die + + rm -r "${D}/usr/share/${P}/man" || die + rm -r "${D}/opt/${P}/share/doc" || die + + local rustc=rustc-bin-${PV} + local rustdoc=rustdoc-bin-${PV} + local rustgdb=rust-gdb-bin-${PV} + local cargo=cargo-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 + + 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/${cargo}" "/usr/bin/${cargo}" + +# dosym "/opt/${P}/share/zsh/site-functions/_cargo" /usr/share/zsh/site-functions/_cargo +# newbashcomp "${D}/opt/${P}/etc/bash_completion.d/cargo" cargo + + cat <<-EOF > "${T}"/50${P} + LDPATH="/opt/${P}/lib" + MANPATH="/usr/share/${P}/man" + EOF + doenvd "${T}"/50${P} + + cat <<-EOF > "${T}/provider-${P}" + /usr/bin/rustdoc + /usr/bin/rust-gdb + EOF + 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 + + if has_version 'app-shells/zsh'; then + elog "install app-shells/rust-zshcomp to get zsh completion for rust." + fi +} + +pkg_postrm() { + eselect rust unset --if-invalid +}