@@ -, +, @@ target --- dev-lang/rust/rust-1.34.2.ebuild | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) --- a/dev-lang/rust/rust-1.34.2.ebuild +++ a/dev-lang/rust/rust-1.34.2.ebuild @@ -36,7 +36,7 @@ LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?} LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" -IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm wasm ${ALL_LLVM_TARGETS[*]}" +IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm thumbv7neon wasm ${ALL_LLVM_TARGETS[*]}" # Please keep the LLVM dependency block separate. Since LLVM is slotted, # we need to *really* make sure we're not pulling one than more slot @@ -140,6 +140,11 @@ src_configure() { if use wasm; then rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" fi + + if use thumbv7neon; then + rust_targets="${rust_targets},\"thumbv7neon-unknown-linux-gnueabihf\"" + fi + rust_targets="${rust_targets#,}" local extended="true" tools="\"cargo\"," @@ -221,6 +226,16 @@ src_configure() { linker = "rust-lld" EOF fi + + if use thumbv7neon; then + cat <<- EOF >> "${S}"/config.toml + [target.thumbv7neon-unknown-linux-gnueabihf] + cc = "$(tc-getBUILD_CC)" + cxx = "$(tc-getBUILD_CXX)" + linker = "$(tc-getCC)" + ar = "$(tc-getAR)" + EOF + fi } src_compile() { --- profiles/arch/base/package.use.mask | 4 ++++ 1 file changed, 4 insertions(+) --- a/profiles/arch/base/package.use.mask +++ a/profiles/arch/base/package.use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Steffen Kuhn (17 May 2019) +# thumbv7neon can only be built for armv7 +dev-lang/rust thumbv7neon + # Denis Lisov (09 May 2019) # Overlay can only be built on amd64 and x86 x11-apps/igt-gpu-tools overlay --- profiles/arch/arm/armv7a/use.mask | 3 +++ 1 file changed, 3 insertions(+) --- a/profiles/arch/arm/armv7a/use.mask +++ a/profiles/arch/arm/armv7a/use.mask @@ -1,4 +1,7 @@ # Unmask armv7 specific USE flags + +-thumbv7neon + -neon -armvfp -armv5te metadata entry Signed-off-by: Steffen Kuhn --- dev-lang/rust/metadata.xml | 2 ++ dev-lang/rust/rust-1.34.2.ebuild | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) --- a/dev-lang/rust/metadata.xml +++ a/dev-lang/rust/metadata.xml @@ -8,6 +8,8 @@ Install cargo component Install clippy component + Build support for the thumbv7neon + target Use the system LLVM install Install rls component Install rustfmt component --- a/dev-lang/rust/rust-1.34.2.ebuild +++ a/dev-lang/rust/rust-1.34.2.ebuild @@ -36,7 +36,7 @@ LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?} LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" -IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm thumbv7neon wasm ${ALL_LLVM_TARGETS[*]}" +IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm neon wasm ${ALL_LLVM_TARGETS[*]}" # Please keep the LLVM dependency block separate. Since LLVM is slotted, # we need to *really* make sure we're not pulling one than more slot @@ -141,7 +141,7 @@ src_configure() { rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" fi - if use thumbv7neon; then + if use neon; then rust_targets="${rust_targets},\"thumbv7neon-unknown-linux-gnueabihf\"" fi @@ -227,7 +227,7 @@ src_configure() { EOF fi - if use thumbv7neon; then + if use neon; then cat <<- EOF >> "${S}"/config.toml [target.thumbv7neon-unknown-linux-gnueabihf] cc = "$(tc-getBUILD_CC)"