Commit Graph

546 Commits

Author SHA1 Message Date
Doug Goldstein
c19badf635 rust: drop unnecessary patch
Not sure what version this patch appears to have become unnecessary but
I verified it by checking the output in
build/tmp/sstate-control/manifest-x86_64-rust-native.populate_sysroot
and the installed files and their paths didn't change with and without
this patch.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2016-12-27 11:36:36 -06:00
Doug Goldstein
247bb57c84 scripts/fetch: add missing die statement
Noticed this while the Yocto Project's git server was down for
maintenance.
2016-12-27 10:47:03 -06:00
Leon Anavi
abe20ca06f compiler-rt: fix toolchain installer
Fix building a toolchain installer with bitbake
-c populate_sdk in packages compiler-rt,
compiler-rt-dev and compiler-rt-staticdev.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
(cherry picked from commit fcbebdf58f)
2016-12-27 00:03:15 -06:00
Derek Straka
185e29e4e1 Merge pull request #128 from cardoe/for-pyro
drop Rust 1.10.0
2016-12-08 10:37:04 -05:00
Doug Goldstein
94aa1405e3 rustfmt: update to use Cargo 0.13.0 fetching 2016-12-07 15:14:10 -06:00
Doug Goldstein
04bd03be1e libstd-rs: update to use Cargo 0.13.0 fetching 2016-12-07 15:14:10 -06:00
Doug Goldstein
84af8005f3 cargo: update to use Cargo 0.13.0 fetching 2016-12-07 15:14:10 -06:00
Doug Goldstein
339cc787cc drop the old fetch behavior for pre Cargo 0.13.0
This behavior is flakey and doesn't work from Cargo 0.13.0 and newer
which aren't part of this repo anymore.
2016-12-07 08:52:03 -06:00
Doug Goldstein
ac5d169623 Remove Rust 1.10.0 / Cargo 0.11.0 2016-12-07 08:51:10 -06:00
Doug Goldstein
c05b6b4c30 Merge pull request #117 from derekstraka/update-getvar
getVar will expand by default, so the 'True' option is no longer required
2016-12-07 08:50:09 -06:00
Derek Straka
52c0f97ff6 getVar will expand by default, so the 'True' option is no longer required
Signed-off-by: Derek Straka <derek@asterius.io>
2016-12-06 16:08:41 -05:00
Derek Straka
85d411c81c Jenkinsfile: swap back to using master
Signed-off-by: Derek Straka <derek@asterius.io>
2016-12-06 16:07:46 -05:00
Doug Goldstein
84d9d2da0a Merge pull request #127 from meta-rust/workaround-crasher
workaround bug in the -C crate_hash option
2016-12-06 14:20:18 -06:00
Doug Goldstein
1f18869377 workaround bug in the -C crate_hash option
The -C crate_hash option does not work if multiple versions of the same
crate are being linked into a binary. This can happen if different
dependencies depend on different versions of the same crate. The -C
crate_hash argument causes all versions of a given crate to have the
same crate hash which in turn causes the compiler to select the wrong
one internally and crash. This works around issue #126 for Cargo builds
but does not fix the underlying cause.
2016-12-06 11:08:46 -06:00
Derek Straka
65ae954a80 Merge pull request #124 from cardoe/misc-updates
Misc updates
2016-12-05 15:54:38 -05:00
Doug Goldstein
0340c31a42 fix bad engrish 2016-12-05 10:55:14 -06:00
Doug Goldstein
d364837120 merge rust-vars and rust-triples to rust-common
Merge two bbclasses that were included in the same places so merge it
into one common file.
2016-12-05 10:55:14 -06:00
Doug Goldstein
43c139f131 rust: remove --disable-static only for rust
Only remove --disable-static from OECONF for things built from the rust
source and not things inheriting rust.
2016-12-05 10:55:14 -06:00
Doug Goldstein
487e670b9b crate.py: use BPN instead of PN
If we don't use BPN then native packages will not extract correct since
PN will be something-native and we won't extract the something crate to
${S}.
2016-12-05 10:55:14 -06:00
Doug Goldstein
6083dff0b6 drop rust-installer.bbclass
This is only necessary for installations of rust so move the actual
functional bits into the do_install() phase of rust.
2016-12-05 10:55:14 -06:00
Doug Goldstein
03496f658f cargo: use install targets to avoid rust-installer
This install target is used by Gentoo to avoid needing rust-installer.
2016-12-05 10:55:13 -06:00
Derek Straka
9da0d2f687 Merge pull request #97 from cardoe/rust-1.12.0
Rust 1.12.1
2016-12-04 10:04:28 -05:00
Doug Goldstein
846454281e classes/cargo: implement directory source redirection
Reworked the source redirection to use directory source redirection like
I've done for Gentoo. This allows us to specify all crate dependencies
in the bitbake SRC_URI and have Yocto fetch them down using our crate
fetcher and then Cargo will build without reaching out to the network.
2016-12-03 00:36:04 -06:00
Doug Goldstein
21224d76a0 cargo: add version 0.13.0
This version was released alongside Rust 1.12.0
2016-12-02 23:08:17 -06:00
Doug Goldstein
06cc11b2b4 cargo: move explicitly versioned deps out of common
These dependencies are explicitly for Cargo 0.11.0 and shouldn't appear
in the common file.
2016-12-02 23:07:40 -06:00
Doug Goldstein
1d0e0e8343 rust: data layout changed between 1.10.0 and 1.12.1
The data layout for aarch64 changed between 1.10.0 and 1.12.1 of
rust-llvm.
2016-12-02 23:07:40 -06:00
Doug Goldstein
634498e0ac rust: bump versions to 1.12.1
Redid how compiler-rt is built by using the Rust makefiles to build it
instead of compiler-rt's build system. Rust itself deviated from using
compiler-rt's build system and provided their own rules requiring the
source tree to be configured to use them.
2016-12-02 23:07:40 -06:00
Cody P Schafer
ba428c19bf rust: regenerate patches for 1.12.1 2016-12-02 23:07:40 -06:00
Doug Goldstein
972fbd4582 rust: we need the build system snapshot, not host
We need the Rust snapshot (stage0) for the build environment not the
host environment. This is not affecting us currently because we are only
building native versions of this today but should improve the behavior
of #81 or if any Rust components are built for the target machine.
2016-12-02 23:07:36 -06:00
Cody Schafer
5983744d01 Merge pull request #123 from cardoe/drop-mk-cfg-dir
Drop mk cfg directory change patch
2016-12-02 16:00:19 -05:00
Doug Goldstein
95fa6c92a9 rust: remove unnecessary install chmods
The comment isn't true anymore and we don't need to run chmod anymore.
2016-12-02 09:26:46 -06:00
Doug Goldstein
e414321228 rust: drop variable from global scope
This variable had one place it was being used and it didn't need to be
globally scoped.
2016-12-02 08:58:53 -06:00
Doug Goldstein
07069a1869 rust: drop outdated comment and variable 2016-12-02 08:57:09 -06:00
Doug Goldstein
5985331f33 rust: remove patch to change path to $S/mk/cfg
Since we no longer use shared source we can modify the source directory
as we build. This drops another patch we need to build and simplifies
the addition of Rust 1.12.1 in #97.
2016-12-02 08:55:34 -06:00
Derek Straka
98472fd232 Merge pull request #119 from cardoe/continued-build-updates
Continued build updates
2016-12-01 08:33:31 -05:00
Doug Goldstein
f87bb05414 classes/cargo: provide linker for BUILD_SYS
Ensure that we have a linker for the BUILD_SYS (Yocto) / HOST (Rust).
2016-11-30 20:57:05 -06:00
Doug Goldstein
2ffd11b9fe cargo: revert dropped usage of -C crate_hash
This reverts the change from 5afc0cc471 based on the discussion in #116.
2016-11-30 20:57:04 -06:00
Doug Goldstein
1bf70b13a7 classes/cargo: revert to utilizing compiler/linker wrappers
Don't supply the linker arguments via rustflags and then mangle with the
RUSTFLAGS environment variable. This is also a parial reversion of
4e1bda643e and 5afc0cc471. These changes are reverted since it assumed
people would build with cargo and not directly with rustc. ref #116.
2016-11-30 20:57:04 -06:00
Doug Goldstein
20ac8ea888 classes/cargo: fix cargo target for linker override
We don't use the native Rust triples but instead use the Yocto triples
so we need to provide this override properly. This typo was introduced
in 5afc0cc471.
2016-11-30 20:57:04 -06:00
Doug Goldstein
a387a5fe8f classes/cargo: fix up target CFLAGS being passed to Rust
Firstly, HOST_CC_ARCH and TOOLCHAIN_OPTIONS are included in CC so them
being passed in are redundant now (due to the wrapper). The RUST_CFLAGS
variable doesn't need to be exported since its not actually used by
rustc/gcc-rs/cargo. Since its redundant and doesn't need to be exported,
remove it and simplify.
2016-11-30 20:57:04 -06:00
Doug Goldstein
689dfe8004 classes/cargo: fix up build CFLAGS being passed to Rust
Firstly, BUILD_CC_ARCH is included in BUILD_CC (hence why we actually
need a BUILD_CC wrapper because it produces the space), so its
redundant (now with the wrapper using BUILD_CC). The RUST_BUILD_CFLAGS
variable doesn't need to be exported since its not actually used by
rustc/gcc-rs/cargo. Since its redundant and doesn't need to be
exported remove it and simplify.
2016-11-30 20:57:04 -06:00
Doug Goldstein
864fe95722 classes: create proper compiler and linker wrappers
Rust builds (custom build.rs and gcc-rs users) expect to have the
compiler and the linker available to them as a single command with no
white space trailing. Yocto unfortunately does not conform to that. The
build compiler and linker almost always have a trailing space due to
how the variables are composed and the target compiler and linker are
almost always more than a single command. Then if you throw ccache into
the mix you'll get another command. As a result to handle all these
cases properly there need to be wrappers created. This change creates
wrappers for both build and target and both the linker and compiler.
This likely fixes #76.
2016-11-30 20:57:04 -06:00
Doug Goldstein
168396820d classes/rust-triples: document the triples
Provide documentation behind what the triples mean for Yocto and Rust
since they have different meanings of BUILD, TARGET, and HOST. Namely
Rust uses HOST when Yocto means BUILD. In our current supported cases
HOST and TARGET from Yocto mean the same thing.
2016-11-30 20:57:01 -06:00
Doug Goldstein
c9a4db15ea Merge pull request #121 from derekstraka/update-env-scripts
setup-env: only allow slaves with large amounts of RAM to mount tmpfs
2016-11-30 20:56:16 -06:00
Derek Straka
3d70f56ae7 setup-env: only allow slaves with large amounts of RAM to mount tmpfs
Signed-off-by: Derek Straka <derek@asterius.io>
2016-11-30 15:39:38 -05:00
Derek Straka
f4573d9c44 Merge pull request #120 from cardoe/jenkins-names
Jenkinsfile: rename stages for easier tracking
2016-11-30 08:12:38 -05:00
Doug Goldstein
c72c88be92 Jenkinsfile: rename stages for easier tracking
Rename the stages to ensure that the machine name is in there so its
easier to track what machine is currently being built.
2016-11-28 10:47:01 -06:00
Derek Straka
7d6fede8ef Merge pull request #116 from cardoe/ldflags-via-rustflags
refactor linker flags out of custom targets
2016-11-25 15:20:08 -05:00
Doug Goldstein
311ea03c1f CI: change from Yocto master to morty
Currently master is broken and morty is the next release that we'll
likely target so bump our version over to morty.
2016-11-24 09:22:44 -06:00
Doug Goldstein
61093e260f cargo: remove code that doesn't work
The comment says it doesn't work and I can confirm it won't work.
2016-11-23 14:15:41 -06:00