Khem Raj
1936904ad3
cargo: Mark the cargo-native dependency specific to target
...
Fixes dependency loop
These are usually caused by circular dependencies and any circular dependency chains found will be printed below. Increase the debug level to see a list of unbuildable tasks.
Identifying dependency loops (this may take a short while)...
ERROR:
Dependency loop #1 found:
Task virtual:native:/mnt/b/yoe/master/sources/meta-rust/recipes-devtools/cargo/cargo_1.47.0.bb:do_compile (dependent Tasks ['cargo_1.47.0.bb:do_configure'])
Task virtual:native:/mnt/b/yoe/master/sources/meta-rust/recipes-devtools/cargo/cargo_1.47.0.bb:do_install (dependent Tasks ['cargo_1.47.0.bb:do_compile'])
Task virtual:native:/mnt/b/yoe/master/sources/meta-rust/recipes-devtools/cargo/cargo_1.47.0.bb:do_populate_sysroot (dependent Tasks ['cargo_1.47.0.bb:do_install'])
Task virtual:native:/mnt/b/yoe/master/sources/meta-rust/recipes-devtools/cargo/cargo_1.47.0.bb:do_prepare_recipe_sysroot (dependent Tasks ['cargo_1.47.0.bb:do_populate_sysroot', 'openssl_1.1.1i.bb:do_populate_sysroot', 'curl_7.74.0.bb:do_populate_sysroot', 'rust_1.47.0.bb:do_populate_sysroot', 'zlib_1.2.11.bb:do_populate_sysroot', 'ca-certificates_20210119.bb:do_populate_sysroot', 'libssh2_1.9.0.bb:do_populate_sysroot', 'cargo_1.47.0.bb:do_fetch'])
Task virtual:native:/mnt/b/yoe/master/sources/meta-rust/recipes-devtools/cargo/cargo_1.47.0.bb:do_configure (dependent Tasks ['cargo_1.47.0.bb:do_prepare_recipe_sysroot', 'cargo_1.47.0.bb:do_patch', 'cargo_1.47.0.bb:do_rust_create_wrappers', 'cargo_1.47.0.bb:do_cargo_setup_snapshot'])
ERROR: Command execution failed: 1
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2021-01-29 10:18:30 -08:00
Steven Walter
c72b2dda3a
Merge pull request #288 from YoeDistro/yoe/mut
...
Add riscv32/riscv64 support
2021-01-12 10:09:33 -05:00
Khem Raj
47de35e153
libstd-rs: Remove libunwind on riscv
...
riscv port of libunwind is not available yet
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2021-01-12 00:32:38 -08:00
Khem Raj
e2979482dc
rust: Add riscv32/riscv64 support
...
Set the cpu, features, and abi correctly
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2021-01-12 00:31:16 -08:00
Khem Raj
a679b6f4c2
rust: Build rust backend
...
In llvm11 we have both riscv32 or riscv64 backends so enable them
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2021-01-12 00:30:18 -08:00
Steven Walter
8da0936aa8
Merge pull request #287 from YoeDistro/yoe/mut
...
rust: Correct the data layout for riscv32
2021-01-09 20:10:53 -05:00
Khem Raj
a59ddd90d2
rust: Correct the data layout for riscv32
...
This now matches with llvm target backend in llvm 11
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2021-01-09 12:53:13 -08:00
Steven Walter
fa5cdb0de4
Merge pull request #286 from janderholm/buildseparation
...
Build separation
2021-01-08 16:43:31 -05:00
Johan Anderholm
e5ee880894
cargo_common: Make output more readable
2021-01-08 16:48:36 +01:00
Johan Anderholm
a673320995
cargo: Enable build separation
...
Place generated artifacts in the directory suggested by bitbake (${B})
instead of directly in the source directory. This has multiple
advantages such as the ability to share source directory between
multiple machine types without risking cross contamination.
2021-01-08 16:47:40 +01:00
Steven Walter
2a4bb8966a
Merge pull request #285 from janderholm/armv7
...
Use proper llvm-target for armv7
2021-01-08 08:57:56 -05:00
Johan Anderholm
cb4f8294d4
Use proper llvm-target for armv7
...
arm-unknown-linux-gnueabihf was incorrectly used as llvm-target instead
of armv7-unknown-linux-gnueabihf when building for some Cortex A SoCs.
This may cause segfaults in non trivial rust applications on ARMv7
when e.g. +a7 is passed to LLVM. It seems to differ between different
versions of the compiler and LLVM versions.
2021-01-08 10:37:34 +01:00
Steven Walter
7ff669d8ce
Merge pull request #284 from danc86/add-rust-1.47
...
add rust 1.47
2020-12-22 13:26:33 -05:00
Steven Walter
25a20987fb
Merge pull request #283 from danc86/add-cargo-1.46
...
cargo: add missing version 1.46.0
2020-12-22 13:25:04 -05:00
Dan Callaghan
4b151fa804
add rust 1.47.0
2020-12-18 21:05:13 +10:00
Dan Callaghan
8cfc3c9826
clean up some common definitions across rust versions
...
These bits and pieces had evidently been copy-pasted forward into each
new recipe version, but now they are all identical and can be tidied up.
2020-12-18 21:05:06 +10:00
Dan Callaghan
aec6519e23
cargo: add missing version 1.46.0
...
Rust version 1.46.0 was added to the layer a while back, but the
corresponding cargo recipe seems to have been missed.
2020-12-18 21:04:02 +10:00
Tyler Hall
f56fd4ec68
Merge pull request #281 from YoeDistro/yoe/mut
...
rust-bin.bbclass: Do not use append and += together
2020-11-14 16:44:44 -05:00
Khem Raj
7afffa083c
rust-bin.bbclass: Do not use append and += together
...
this is undefined behavior in bitbake, prepend space instead
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2020-11-14 08:56:18 -08:00
Steven Walter
53bfa32489
Merge pull request #280 from YoeDistro/yoe/mut
...
layer.conf: Add gatesgarth to LAYERSERIES_COMPAT
2020-10-15 20:05:42 -04:00
Khem Raj
2822b50c04
layer.conf: Add gatesgarth to LAYERSERIES_COMPAT
...
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2020-10-15 09:28:23 -07:00
Steven Walter
2e085dda43
Merge pull request #279 from ColinFinck/fix/cargo-libgit2-pkgconfig
...
Disable LIBGIT2_SYS_USE_PKG_CONFIG due to incompatibility with libgit2 0.28.x
2020-10-09 16:23:57 -04:00
Colin Finck
8a44baed44
Disable LIBGIT2_SYS_USE_PKG_CONFIG due to incompatibility with 0.28.x
...
libgit2 0.28.x is shipped by latest Yocto Dunfell.
According to https://github.com/rust-lang/git2-rs/issues/458#issuecomment-522567539 , there are no compatibility guarantees between libgit2-sys and arbitrary system libgit2 versions, so better keep this turned off.
Fixes "invalid version 3 on git_proxy_options" during build.
Further references:
* https://github.com/rust-lang/git2-rs/issues/458
* https://bugs.gentoo.org/707746#c1
2020-10-06 17:35:54 +02:00
Steven Walter
318fb46863
Merge pull request #278 from srwalter/rust-1.46
...
Add rust 1.46.0
2020-09-02 12:54:14 -04:00
Steven Walter
b7f9c1d0d7
Add rust 1.46.0
2020-08-31 14:47:11 -04:00
Steven Walter
7f235b6f89
Merge pull request #277 from shr-project/jansa/parallel
...
rust: use PARALLEL_MAKE instead of BB_NUMBER_THREADS
2020-05-28 13:56:20 -04:00
Martin Jansa
647b976da2
rust: use PARALLEL_MAKE instead of BB_NUMBER_THREADS
...
* BB_NUMBER_THREADS is number of bitbake tasks running in
parallel, not parallelization inside individual tasks
* use oe.utils.parallel_make_argument to make sure it
works even when people add e.g. "-l 10" in PARALLEL_MAKE
* with the recent improvements for rust-native build time, I wanted
to rerun some build time tests from
https://github.com/shr-project/test-oe-build-time
here are the results on AMD Threadripper 3970x with 128GB ram:
BB is BB_NUMBER_THREADS
PM is PARALLEL_MAKE
TIME BB PM Description
20:50 * * zeus based build with 1.37 rust (BB/PM has no impact)
14:50 8 32,48,64 dunfell, 1.43 as in https://github.com/meta-rust/meta-rust/commit/d2ff87ca5545b8081b16ac8f53ed4295593208c6 (PM has no impact, because bootstrap uses BB)
9:50 8 32,48,64 dunfell, 1.43 with this patch applied, it doesn't get faster after some threashold of PM
13:32 8 64 dunfell, 1.43 with this patch applied and "rust.inc: cut build time in half" (https://github.com/meta-rust/meta-rust/commit/afcb58e5b9cbda7efb1c8a12c980cb2f583728bd ) reverted
13:30 8 64 dunfell, 1.43 with "rust.inc: cut build time in half" (https://github.com/meta-rust/meta-rust/commit/afcb58e5b9cbda7efb1c8a12c980cb2f583728bd ) as well as "rust.inc: run bootstrap.py in parallel" (https://github.com/meta-rust/meta-rust/commit/40a6bd8a8d943eff495c7fdeb0bf8452891f6f99 ) reverted to see if 1.43 builds faster without any meta-rust improvements compared to 1.37
94:47 1 64 dunfell, 1.43 as in https://github.com/meta-rust/meta-rust/commit/d2ff87ca5545b8081b16ac8f53ed4295593208c6 (either something went wrong or explicit "-j 1" disables some parallelism done by default already
13:40 * * zeus based build with 1.39 rust (BB/PM has no impact)
10:50 8 64 zeus based build with 1.39 rust as proposed in jansa/new-zeus-branch
80:51 8 1 zeus based build with 1.39 rust as proposed in jansa/new-zeus-branch with "-j 1" PARALLEL_MAKE
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com >
2020-05-28 18:36:04 +02:00
Steven Walter
d2ff87ca55
Merge pull request #276 from tylerwhall/bb-num-threads
...
rust.inc: whitelist BB_NUMBER_THREADS in do_compile
2020-05-18 23:03:57 -04:00
Tyler Hall
8d3f79f217
rust.inc: whitelist BB_NUMBER_THREADS in do_compile
...
d55cce6b8b6b510bf4905f19b949f7995af57a4d added a use of
BB_NUMBER_THREADS which is not whitelisted in Poky. This caused machines
with a different number of CPUs to have different sstate for
rust-native.
2020-05-18 19:10:04 -04:00
Steven Walter
be88d857a6
Merge pull request #275 from alistair23/alistair/rust-update
...
Bump to Rust version 1.43
2020-05-17 20:04:00 -04:00
Alistair Francis
2c7321dac6
Bump to Rust version 1.43
...
Signed-off-by: Alistair Francis <alistair@alistair23.me >
2020-05-13 22:52:39 -07:00
Steven Walter
b84c61eb85
Revert "cargo: fix progress output"
...
This reverts commit dd0fc89389 .
2020-05-12 10:22:06 -04:00
Steven Walter
dd0fc89389
cargo: fix progress output
...
This patch got dropped from the new cargo version
2020-05-11 22:18:35 -04:00
Steven Walter
afcb58e5b9
rust.inc: cut build time in half
...
Don't tar everything up just to untar it again. This literally takes
longer than actually building the rust compiler
2020-05-11 22:18:35 -04:00
Steven Walter
40a6bd8a8d
rust.inc: run bootstrap.py in parallel
...
Allow bootstrap.py to use as many cores as bitbake normally uses
2020-05-11 22:18:35 -04:00
Steven Walter
c023edd985
rust.inc: make max-atomic-width an integer
...
As a string this was actually being ignored. It mostly didn't matter
because max-atomic-width falls back to target-pointer-size, and they are
usually the same. However, at least on i586, 64-bit atomics are
supported with a 32-bit pointer size.
2020-05-11 22:18:35 -04:00
Steven Walter
6ed6a09a99
Merge pull request #273 from meta-rust/common-rust-native
...
rust-native shouldn't depend on TARGET variables
2020-05-11 18:27:34 -04:00
Steven Walter
3b783652cc
rust-native shouldn't depend on TARGET variables
...
The whole point of rust-native is that it should be common for all
targets. If we reference TARGET variables during the build of
rust-native, then bitbake will build a different version for different
TARGETS.
2020-05-11 16:26:48 -04:00
Steven Walter
a012a1027d
Merge pull request #270 from YoeDistro/yoe/mut
...
rustfmt: Upgrade to 1.4.2
2020-04-06 18:01:13 -04:00
Khem Raj
8ef8b39681
rustfmt: Upgrade to 1.4.2
...
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2020-04-02 08:58:50 -07:00
Steven Walter
646fecee8a
Merge pull request #268 from YoeDistro/yoe/mut
...
layer.conf: Mark it 3.1 release compatible
2020-03-24 10:30:47 -04:00
Khem Raj
e4d25b9808
layer.conf: Mark it 3.1 release compatible
...
Signed-off-by: Khem Raj <raj.khem@gmail.com >
2020-03-24 07:18:22 -07:00
Steven Walter
1a3625364c
Merge pull request #267 from anguslees/patch-1
...
Avoid extra sh process from shell wrapper
2020-03-17 11:09:28 -04:00
Angus Lees
ea97549161
Avoid extra sh process from shell wrapper
...
`exec` from shell wrapper to avoid persistent sh process
2020-03-15 12:23:52 +11:00
Steven Walter
d0dc19aa78
Merge pull request #263 from ColinFinck/update-to-rust-1.41.0
...
Update to Rust 1.41.0
2020-03-06 11:36:59 -05:00
Colin Finck
4a763a2301
Update 0001-Disable-http2.patch for cargo 1.41.0
2020-02-11 17:11:14 +01:00
Colin Finck
5c7f51b6ad
Update to Rust 1.41.0
2020-02-10 11:17:51 +01:00
Steven Walter
d8d77be129
Merge pull request #259 from ColinFinck/update-to-rust-1.40.0
...
Update to Rust 1.40.0
2020-02-08 12:25:27 -05:00
Steven Walter
dbf68d40b3
Merge pull request #257 from alistair23/alistair/python3-update
...
rust: Use Python3 native for build
2020-02-08 11:36:06 -05:00
Steven Walter
a754e6c5d6
Merge pull request #260 from akiernan/us-cargo-fuzz
...
cargo: Refresh http2 disable patch
2020-02-08 11:33:40 -05:00