summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorBertrand Jacquin <bertrand@jacquin.bzh>2022-12-13 01:02:50 +0000
committerBertrand Jacquin <bertrand@jacquin.bzh>2022-12-20 02:22:44 +0000
commitfa6d7d2e92c57a9e0efe108a5c6ec7d2adace251 (patch)
tree029e1a55ce67f512c8d439d1e75b47b31642ccfc /eclass
parentdev-util/bindgen: new package, add 0.56.0, 0.62.0, 0.63.0 (diff)
downloadportage-fa6d7d2e92c57a9e0efe108a5c6ec7d2adace251.tar.xz
eclass/linux-build: add support for rust
Diffstat (limited to 'eclass')
-rw-r--r--eclass/linux-build.eclass17
1 files changed, 15 insertions, 2 deletions
diff --git a/eclass/linux-build.eclass b/eclass/linux-build.eclass
index 7682fda0..85c73a12 100644
--- a/eclass/linux-build.eclass
+++ b/eclass/linux-build.eclass
@@ -40,8 +40,9 @@ BUILDDIR="${WORKDIR}/build"
KV_EXTRA="${EXTRAVERSION}"
S="${SRCDIR}"
-IUSE="build llvm source"
-REQUIRED_USE="symlink? ( source )"
+IUSE="build llvm rust source"
+REQUIRED_USE="symlink? ( source )
+ rust? ( llvm )"
BDEPEND="${BDEPEND}
sys-devel/bc
@@ -52,6 +53,10 @@ BDEPEND="${BDEPEND}
sys-devel/clang:=
sys-devel/llvm:=
sys-devel/lld:=
+ )
+ rust? (
+ dev-lang/rust:=[rust-src]
+ <=dev-util/bindgen-0.62.0
)"
DEPEND="${DEPEND}
sys-apps/kmod"
@@ -580,6 +585,14 @@ linux-build_src_prepare() {
)
fi
+ if use rust ; then
+ copt+=(
+ HOSTRUSTC=rustc
+ RUSTC=rustc
+ BINDGEN=bindgen
+ )
+ fi
+
copt+=(
PKG_CONFIG="$(tc-getPKG_CONFIG)"
PYTHON3="${PYTHON}"