summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstefson <herrtimson@yahoo.de>2018-06-01 06:46:09 +0200
committerDoug Goldstein <cardoe@gentoo.org>2018-06-01 14:27:31 -0500
commit9ee31dd3cc686a9c33af709d99e203be4a20e5c5 (patch)
tree6fd11e65ee2e12801276b0fe8899366c8155d505 /dev-lang/rust-bin
parentnet-misc/omnisync: New package (diff)
downloadgentoo-9ee31dd3cc686a9c33af709d99e203be4a20e5c5.tar.gz
gentoo-9ee31dd3cc686a9c33af709d99e203be4a20e5c5.tar.bz2
gentoo-9ee31dd3cc686a9c33af709d99e203be4a20e5c5.zip
dev-lang/rust-bin: enable arm hard- and softfloat
Diffstat (limited to 'dev-lang/rust-bin')
-rw-r--r--dev-lang/rust-bin/Manifest6
-rw-r--r--dev-lang/rust-bin/rust-bin-1.25.0.ebuild22
-rw-r--r--dev-lang/rust-bin/rust-bin-1.26.0.ebuild22
3 files changed, 48 insertions, 2 deletions
diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest
index 5125e6ff68b9..743cdd568518 100644
--- a/dev-lang/rust-bin/Manifest
+++ b/dev-lang/rust-bin/Manifest
@@ -1,4 +1,10 @@
+DIST rust-1.25.0-arm-unknown-linux-gnueabi.tar.gz 152771389 BLAKE2B b163a41846233f08ba34ba325058843141b285758eede668e84d32751ace27d4b36fc5e8f963e1d13da1b46ae7cb48944987acc7ff36ced300bee154c7b22e68 SHA512 33a7bb3ed7a0b5b85e5dc0438ff620b67bc7bfe4d5e35bdcc9207a5dddf017a588a7de4877c4f1784f22f1d6e503ddd24d57f3d3af94d4bf00c781d4c378bb5f
+DIST rust-1.25.0-arm-unknown-linux-gnueabihf.tar.gz 152774994 BLAKE2B 438fc55edcf80f1f292765c7d062c7c2e282c7798d0ca7312557262a7474f60341aae1c9a3f5bfe349576f7204fe1fa044dded933157b128e6c6015e23c89388 SHA512 688e8e0d2e5661f132033afe8020a93828a45d00a874155a1a7887c69590061a413db95f0443d43234fb65b5510dfd7bdb092c0cc7b3fde6abd5f386786d95ad
+DIST rust-1.25.0-armv7-unknown-linux-gnueabihf.tar.gz 150376603 BLAKE2B 44aadf00b74d3d35039486289b319db5b1820dfb3b0fdbc03714ae2a8df78e09ee09fa41d9d8ec1377b91fb4a8f67cd7f4cdc99ceb39da4b48ba464ee1b73600 SHA512 a45312bec4c06b04d3c148d87a64aa55e14cc160eaaa6b712ce738590063137c8f9dd1030656071c1ac9a22cb852f34efdb98c435527c7371da381b802fb9104
DIST rust-1.25.0-i686-unknown-linux-gnu.tar.gz 169267482 BLAKE2B 8fb18c95adf7edd74cd305683ab2ee33d59cce1a0f515e9ba63dfd105ffaf9150444e281502747856fa5164f24707b4bbbe110a2b1b7a1cf65c96b883a6f2ede SHA512 76bcd978b9b23b0fc6315f91bed153e59616aa62f520aae8e8d3587b5f5fae74fef15f8b0a749b02a69be56fad4df9a413019438135481917bca1fb1a7704de7
DIST rust-1.25.0-x86_64-unknown-linux-gnu.tar.gz 178696930 BLAKE2B 0f82e837494d394c86462583f3d65f1ad839a97eda00fbc00476d06255831088cb7e554cc14edbf9dd23fbebf75078dc78204bdbec4795781f7fae0cbb6de63d SHA512 544e85bb69359d8ff6059d0f470b5995822f73e6d361be43f69f87d394b7252a11686f835336930bc257ba4347c0498abf5b1fbd751180d96bd9ca872b76d65c
+DIST rust-1.26.0-arm-unknown-linux-gnueabi.tar.xz 98262664 BLAKE2B 1de2aeef6d035f9f5a4238ad0c730baabfa39944a0cc47ab31fb51b1dd7f606688a4e9c7cd323e7a4998601fce4ebd0102e2d011cfff3caa3a20f91579442cd4 SHA512 44fdff800a6da1929ccab717f544add5a0500856b4ae1edbd6202d5d8b9781bd336c75c857ddf40e6f7175916fb026210bc5ec2656f4b564dd69cc9189bda3d6
+DIST rust-1.26.0-arm-unknown-linux-gnueabihf.tar.xz 98490960 BLAKE2B ad4210bc39d11974f0a5032f6779b4c8ca04f705da8c15a755d5072d157724896a65fc149c16c6f9a479f0c61a6cb0a70d90e48543f6d72725de6baf25d4a94b SHA512 3822303a7a8c567f3a917f4c934f1411fd606a335d5f6e574dd0be9d463e9fe27ff948c820b25a305e53d83b5d9fa0e1cbfca86451a0b3e11ff84ef7a82f65c8
+DIST rust-1.26.0-armv7-unknown-linux-gnueabihf.tar.xz 98788032 BLAKE2B 3727effee1eaf89d979e27f339901ac938acc22d9dd8e664c20941e46db8250f349493f65598243d5234539bb2037e9dabd38f1a047dd8f9bbe20ae2c8270747 SHA512 5766dbba6f4faae3e8dfd1d98ea948e3835d5b1c28b8daf6c734afd7f27301aa857147eb28762462f77c9da539aae2a81319f194154245abd5cdae7067f24d6c
DIST rust-1.26.0-i686-unknown-linux-gnu.tar.xz 143003764 BLAKE2B 4c0b1872196c21bf9bc9d927455b4c8eb379e40281ef9fdd8a440b702b919628a00bf2e7b392084e8f41f30119c93bfa6e57ba47ee1adecb1d5cdda43778f821 SHA512 1257f9edefc49ee1742c3acd666d15f077c4d999a82dfe0d574df5c41981c3f716adf86b23d96cf9a6757508aea92abcbe06ad9e3bec2cb4ac19512d60ebba31
DIST rust-1.26.0-x86_64-unknown-linux-gnu.tar.xz 139246408 BLAKE2B dc386c7b9e016bdcb8b2475d789b100922defc0bcd400476e4e618f51c338338edfc463428c9fa0fdcf8f051465a126d1c61030c5881d5c21888e80b8068bad8 SHA512 457503fea324251a92f25d0d45f1e2ac7d342a6a8f52d1abe93a579c7ae9b7f453a707d353e82614b37790747e8551f9762188ee25ff883495598cbf17b3f97e
diff --git a/dev-lang/rust-bin/rust-bin-1.25.0.ebuild b/dev-lang/rust-bin/rust-bin-1.25.0.ebuild
index 056d9f3f6c27..edd1c8706d66 100644
--- a/dev-lang/rust-bin/rust-bin-1.25.0.ebuild
+++ b/dev-lang/rust-bin/rust-bin-1.25.0.ebuild
@@ -3,13 +3,18 @@
EAPI=5
-inherit eutils bash-completion-r1
+inherit eutils bash-completion-r1 toolchain-funcs
MY_P="rust-${PV}"
DESCRIPTION="Systems programming language from Mozilla"
HOMEPAGE="http://www.rust-lang.org/"
SRC_URI="amd64? ( http://static.rust-lang.org/dist/${MY_P}-x86_64-unknown-linux-gnu.tar.gz )
+ arm? (
+ http://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabi.tar.gz
+ http://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabihf.tar.gz
+ http://static.rust-lang.org/dist/${MY_P}-armv7-unknown-linux-gnueabihf.tar.gz
+ )
x86? ( http://static.rust-lang.org/dist/${MY_P}-i686-unknown-linux-gnu.tar.gz )"
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
@@ -30,11 +35,26 @@ QA_PREBUILT="
opt/${P}/lib/rustlib/*/lib/*.rlib*
"
+pkg_pretend () {
+ if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
+ die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
+ fi
+}
+
src_unpack() {
default
local postfix
use amd64 && postfix=x86_64-unknown-linux-gnu
+
+ if use arm && [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv6* ]]; then
+ postfix=arm-unknown-linux-gnueabi
+ elif use arm && [[ ${CHOST} == armv6*h* ]]; then
+ postfix=arm-unknown-linux-gnueabihf
+ elif use arm && [[ ${CHOST} == armv7*h* ]]; then
+ postfix=armv7-unknown-linux-gnueabihf
+ fi
+
use x86 && postfix=i686-unknown-linux-gnu
mv "${WORKDIR}/${MY_P}-${postfix}" "${S}" || die
}
diff --git a/dev-lang/rust-bin/rust-bin-1.26.0.ebuild b/dev-lang/rust-bin/rust-bin-1.26.0.ebuild
index 4ee6eb84f3bc..c93726320822 100644
--- a/dev-lang/rust-bin/rust-bin-1.26.0.ebuild
+++ b/dev-lang/rust-bin/rust-bin-1.26.0.ebuild
@@ -3,13 +3,18 @@
EAPI=5
-inherit eutils bash-completion-r1 versionator
+inherit eutils bash-completion-r1 versionator toolchain-funcs
MY_P="rust-${PV}"
DESCRIPTION="Systems programming language from Mozilla"
HOMEPAGE="http://www.rust-lang.org/"
SRC_URI="amd64? ( http://static.rust-lang.org/dist/${MY_P}-x86_64-unknown-linux-gnu.tar.xz )
+ arm? (
+ http://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabi.tar.xz
+ http://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabihf.tar.xz
+ http://static.rust-lang.org/dist/${MY_P}-armv7-unknown-linux-gnueabihf.tar.xz
+ )
x86? ( http://static.rust-lang.org/dist/${MY_P}-i686-unknown-linux-gnu.tar.xz )"
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
@@ -33,11 +38,26 @@ QA_PREBUILT="
opt/${P}/lib/rustlib/*/lib/*.rlib*
"
+pkg_pretend () {
+ if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
+ die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
+ fi
+}
+
src_unpack() {
default
local postfix
use amd64 && postfix=x86_64-unknown-linux-gnu
+
+ if use arm && [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv6* ]]; then
+ postfix=arm-unknown-linux-gnueabi
+ elif use arm && [[ ${CHOST} == armv6*h* ]]; then
+ postfix=arm-unknown-linux-gnueabihf
+ elif use arm && [[ ${CHOST} == armv7*h* ]]; then
+ postfix=armv7-unknown-linux-gnueabihf
+ fi
+
use x86 && postfix=i686-unknown-linux-gnu
mv "${WORKDIR}/${MY_P}-${postfix}" "${S}" || die
}