Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions dev-lang/rust-bin/Manifest
Original file line number Diff line number Diff line change
@@ -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
12 changes: 12 additions & 0 deletions dev-lang/rust-bin/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>nielson2@yandex.com</email>
<name>Steffen Kuhn</name>
</maintainer>
<use>
<flag name="clippy">Install clippy component</flag>
<flag name="rustfmt">Install rustfmt component</flag>
</use>
</pkgmetadata>
115 changes: 115 additions & 0 deletions dev-lang/rust-bin/rust-bin-1.34.2.ebuild
Original file line number Diff line number Diff line change
@@ -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
}
118 changes: 118 additions & 0 deletions dev-lang/rust-bin/rust-bin-1.37.0.ebuild
Original file line number Diff line number Diff line change
@@ -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
}