Commit Graph

617 Commits

Author SHA1 Message Date
Cody P Schafer 55ab1927d7 rust: better llvm feature choice based on TUNE_FEATURES 2016-02-16 10:43:29 -05:00
Derek Straka f2a16b4019 Merge 598bd26c2f into ec974e5e92 2016-02-14 18:00:03 +00:00
Derek Straka 598bd26c2f Add a new rust-cross package that will be different for each TARGET_ARCH
Signed-off-by: Derek Straka <derek@asterius.io>
2016-02-14 12:48:58 -05:00
Derek Straka 5aab7e99ae Add the llvm and new rust-cross to the set of items where PIE is disabled
Signed-off-by: Derek Straka <derek@asterius.io>
2016-02-14 12:48:51 -05:00
Cody P Schafer ec974e5e92 readme: add some clarification on my current practices 2016-02-04 12:40:51 -05:00
Cody P Schafer ce1881d08c rust: use a shared source location for all the packages needing the rustc source tree 2016-02-04 12:40:22 -05:00
Cody P Schafer a616547640 Merge commit 'refs/pull/33/head' of https://github.com/jmesmon/meta-rust 2016-02-03 20:09:12 -05:00
Cody P Schafer 4109f0cdd7 Merge branch 'master' of https://github.com/jmesmon/meta-rust into m-real 2016-02-03 16:20:59 -05:00
Cody P Schafer ec117587bc cargo: use new snapshot to avoid issue with version parsing
cargo issue: https://github.com/rust-lang/cargo/pull/2352

At the same time, fix our snapshot support & add a patch to disable
auto-download of snapshots to ensure we don't accidentally break it
again in the future.
2016-02-03 16:15:05 -05:00
Steven Walter 3a832dd439 rust: force crate hash to use bitbake input hash
This should eliminate the problems that have been seen when bitbake
rebuilds part of the rust stack (due to missing sstate) and ends up
getting hash mismatches.  Unlike rust's internally generated hash, ours
is guaranteed to be stable.
2016-02-03 11:30:56 -05:00
Cody Schafer ce73e1a6f2 Merge pull request #32 from srwalter/fix-prelink-crash
Fix prelink issue breaking .bss
2016-02-03 11:29:30 -05:00
Cody P Schafer 5dbe9be9a8 rust: switch to only supporting a single version at a time 2016-02-03 10:43:00 -05:00
Cody P Schafer b7200e623c remove old versions of rust 2016-02-03 10:37:32 -05:00
Tyler Hall 0ade0cc790 Fix prelink issue breaking .bss
The reason prelink seemed to break relocations in .bss is because the
.note.rustc section happened to be placed in front of .bss. Using
objcopy to strip the note renumbered the sections and the symbols in the
.dynsym section were pointing to the wrong section index, but only for
.bss. Prelink would skip updating these dyn entries because it thought
they were pointing to a section that didn't get relocated, like
.comment. In some cases the GOT was actually prelinked correctly, but
the dynamic linker at run time would modify it to point at the
non-prelinked address.

Removing the SHF_ALLOC flag from the section causes it to be placed at
the end of the executable where it can be safely removed.

This is still a hack to the compiler because I couldn't find any way to
get the section attributes to be correct using the high-level LLVM
interface.
2016-02-02 13:08:14 -05:00
Cody Schafer ba3486997a Merge pull request #31 from srwalter/aarch64-support
Support building for the ARMv8 (64-bit) architecture
2016-02-02 12:13:27 -05:00
Tyler Hall 483334f02b rust: aarch64 support 2016-02-02 11:40:25 -05:00
Tyler Hall aaaeaeed3f rustlib: libdir may be different between build and host
With multilib, we may want to install under lib64 but the rust libraries
get published in the build sysroot under the libdir for the build
machine which is usually just lib. Support these being different.
2016-02-02 11:40:25 -05:00
Cody Schafer f0ea28ae30 Merge pull request #30 from srwalter/update-rust-bin-bbclass
Update rust-bin.bbclass
2016-02-02 11:37:23 -05:00
Wes Lindauer 45d77b849f rust-bin.bbclass: Add empty do_configure
This prevents rust recipes that are missing clean rules from failing
when they are rebuilt.
2016-02-01 16:36:52 -05:00
Steven Walter ebe7fb0d8f rust-bin.bbclass: look for RUNPATH instead of RPATH
Poky 1.7 uses RPATH is now RUNPATH, so update our grep string appropriately.

Additionally, bitbake is having trouble with the automatic RDEPENDS on
rustlib.  Make it explicit for now.
2016-02-01 16:36:52 -05:00
Dan Dedrick 63cf611e65 rust-bin.bbclass: update path to cross output
poky 1.7 changes where it publishes cross output to so this recipe
needs to follow that. Unfortunately this path is defined in
cross.bbclass and we can't inherit that since we aren't cross.
2016-02-01 16:36:52 -05:00
Tyler Hall 302cca7529 rust-bin.bbclass: suffix rust libraries with -rs
Rust library names may have sonames that overlap with C/C++ libraries.
This causes bitbake to not be able to create the correct automatic
RDEPENDS between packages. The result is that dependencies may not get
automatically installed.

Add -rs to the file name and soname. The crate name remains the same,
and rust is not dependent on the file name to look up the crate inside
the library.
2016-02-01 16:36:52 -05:00
Cody Schafer 355863b528 Merge pull request #29 from srwalter/add-more-crates
Add more crates
2016-02-01 16:29:18 -05:00
Tyler Hall 34c36492db Don't build any rlibs
I've seen this error from the compiler:
    found possibly newer version of crate `regex_syntax` which
    `env_logger` depends on

This is probably because the rlib hashes are not deterministic, but I
can't reproduce non-deterministic hashes locally.

There have been lots of other types of errors caused by mixing rlibs and
dylibs in the same dependency chain, so let's try using only dylibs
until that's stable.
2016-02-01 20:54:20 +00:00
Tyler Hall 84bacaaf21 time-rs: compile native helper C code 2016-02-01 20:54:20 +00:00
Tyler Hall fc0e2f74b3 libc: use common build functions and create dylib
Working around "error: cannot satisfy dependencies so `libc` only shows
up once."
2016-02-01 20:53:51 +00:00
Tyler Hall 9fac435f1c Add crypto crate 2016-02-01 20:53:51 +00:00
Tyler Hall 232d100c09 Add rand crate 2016-02-01 20:53:51 +00:00
Tyler Hall b516012a46 Add unix-socket crate 2016-02-01 20:53:51 +00:00
Tyler Hall fa0d333237 Add debug-builders crate 2016-02-01 20:53:51 +00:00
Tyler Hall 1c1819971e Add rustc-serialize crate 2016-02-01 20:53:51 +00:00
Steven Walter 9c571225f2 libudev: add recipes for latest releases of libudev-{rs,sys} 2016-02-01 20:53:51 +00:00
Steven Walter b5058823f2 rust.inc: add missing dependency on file-native 2016-02-01 20:53:39 +00:00
Cody P Schafer 0ed55291b6 cargo: relocate config files to avoid clobber 2016-01-26 17:11:25 -05:00
Cody P Schafer 6f9559d152 deps/libgit2: actually update, and disable libgit2_git 2015-12-13 21:44:55 -05:00
Cody P Schafer 82238846e4 rust 1.4.0: use snapshot include 2015-12-13 01:23:30 -05:00
Cody P Schafer bb5c2042a9 update libgit2 to 0.23.4 2015-12-13 01:22:10 -05:00
Cody P Schafer 8c74d4ce6f rust: update to 1.5.0 2015-12-13 01:08:00 -05:00
Cody P Schafer 3371589498 cargo: update to 0.7.0 2015-12-12 23:18:55 -05:00
Cody P Schafer 5d8b5d2862 rust-1.4.0: compiler works, but cannot build the old version of cargo we ship 2015-12-12 21:35:48 -05:00
Cody P Schafer 836fbef13b Merge remote-tracking branch 'origin/rust-1.4.0' 2015-12-12 18:57:14 -05:00
Cody P Schafer 7413948eaf Merge branches 'pr19', 'pr20' and 'pr21', remote-tracking branch 'origin/no-strip' 2015-12-11 22:41:38 -05:00
Cody P Schafer 934450e2b0 rust: inhibit stripping for cross compiler to avoid errors 2015-12-08 16:13:09 -05:00
Doug Goldstein 6a75a08ef4 Provide distro config include for security flags
When someone is using a distro that's using security flags we need to
provide overrides to disable PIE.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2015-11-09 12:11:24 -06:00
Doug Goldstein 25b4255204 remove conf/licenses.conf
Per conversation in #rust with kergoth this file is causing a backtrace
in bitbake because its overriding the meta/conf/licenses.conf file. The
behavior that's expected out of this isn't valid with newer Yocto
releases so its possible this is for an older version.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2015-11-06 10:18:56 -06:00
Doug Goldstein 8752eef1dc fix LICENSE_PATH location
The path in LICENSE_PATH was not the correct path to where the licenses
are located in this repo.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2015-11-06 09:35:56 -06:00
Cody P Schafer 5691bbfc1f rust-llvm: add more config options from rust-1.4.0 2015-11-05 11:32:36 -05:00
Cody P Schafer 5689154fdd rust: add version 1.4.0 2015-11-05 11:09:04 -05:00
Cody P Schafer 6b5f48afff rust: fix rpaths in -cross so we use the right libtinfo 2015-10-06 11:16:51 -04:00
Cody P Schafer 1ea67929f0 rust: do_compile: fix logic for use of downloaded snapshot 2015-10-06 10:34:49 -04:00