Put crate_hash and rpath in RUSTFLAGS for Cargo
RUSTFLAGS is used by Cargo and always passed to the compiler. Put our non-standard crate_hash argument there because it is required for reproducible builds. Add the rpath option to avoid having to patch Cargo.toml for this and remove the function that does so. Signed-off-by: Tyler Hall <tylerwhall@gmail.com>
This commit is contained in:
+1
-12
@@ -42,18 +42,6 @@ cargo_do_configure () {
|
|||||||
echo "]" >>../.cargo/config
|
echo "]" >>../.cargo/config
|
||||||
}
|
}
|
||||||
|
|
||||||
rust_cargo_patch () {
|
|
||||||
# FIXME: if there is already an entry for this target, in an existing
|
|
||||||
# cargo/config, this won't work.
|
|
||||||
cd "${S}"
|
|
||||||
cat >>Cargo.toml <<EOF
|
|
||||||
[profile.dev]
|
|
||||||
rpath = true
|
|
||||||
[profile.release]
|
|
||||||
rpath = true
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
# All the rust & cargo ecosystem assume that CC, LD, etc are a path to a single
|
# All the rust & cargo ecosystem assume that CC, LD, etc are a path to a single
|
||||||
# command. Fixup the ones we give it so that is the case.
|
# command. Fixup the ones we give it so that is the case.
|
||||||
# XXX: this is hard coded based on meta/conf/bitbake.conf
|
# XXX: this is hard coded based on meta/conf/bitbake.conf
|
||||||
@@ -70,6 +58,7 @@ export CARGO_BUILD_FLAGS = "-v --target ${HOST_SYS} --release"
|
|||||||
# change if CARGO_BUILD_FLAGS changes.
|
# change if CARGO_BUILD_FLAGS changes.
|
||||||
export CARGO_TARGET_SUBDIR="${HOST_SYS}/release"
|
export CARGO_TARGET_SUBDIR="${HOST_SYS}/release"
|
||||||
oe_cargo_build () {
|
oe_cargo_build () {
|
||||||
|
export RUSTFLAGS="${RUSTFLAGS}"
|
||||||
which cargo
|
which cargo
|
||||||
which rustc
|
which rustc
|
||||||
bbnote ${CARGO} build ${CARGO_BUILD_FLAGS} "$@"
|
bbnote ${CARGO} build ${CARGO_BUILD_FLAGS} "$@"
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
RUSTC = "rustc"
|
RUSTC = "rustc"
|
||||||
|
|
||||||
# FIXME: --sysroot might be needed
|
# FIXME: --sysroot might be needed
|
||||||
RUSTC_ARCHFLAGS += "--target=${TARGET_SYS} -C rpath -C crate_hash=${BB_TASKHASH}"
|
RUSTFLAGS += "-C rpath -C crate_hash=${BB_TASKHASH}"
|
||||||
|
RUSTC_ARCHFLAGS += "--target=${TARGET_SYS} ${RUSTFLAGS}"
|
||||||
|
|
||||||
RUSTLIB_DEP ?= "rustlib"
|
RUSTLIB_DEP ?= "rustlib"
|
||||||
def rust_base_dep(d):
|
def rust_base_dep(d):
|
||||||
|
|||||||
Reference in New Issue
Block a user