64 Commits

Author SHA1 Message Date
Steven Walter
0d4f726e89 Merge branch 'master' into add-more-ci 2018-12-07 17:40:29 -05:00
Doug Goldstein
4c9068bd09 Merge pull request #216 from hongxu-jia/master
cargo_common.bbclass: fix bashism
2018-11-23 16:46:58 -06:00
Hongxu Jia
3b9251e732 cargo_common.bbclass: fix bashism
While /bin/sh -> dash, var-EXTERNALSRC didn't work

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
2018-11-20 22:10:18 +08:00
Derek Straka
ea613e2ae2 Merge pull request #212 from OSSystems/master
Use libssh2 from system and upgrade cargo to 0.31.0
2018-11-13 08:46:41 -05:00
Derek Straka
e660179c55 Merge branch 'master' into master 2018-11-12 21:30:03 -05:00
Derek Straka
318a4c6f25 Merge pull request #215 from myagley/miyagley/cxxflags
Fix TARGET_CXXFLAGS in cargo_common
2018-11-12 21:29:47 -05:00
Mike Yagley
c7fc7986c2 Fix TARGET_CXXFLAGS in cargo_common 2018-11-12 13:44:02 -08:00
Derek Straka
50828f8af2 Merge branch 'master' into master 2018-11-12 10:11:32 -05:00
Derek Straka
adf3f10036 Merge pull request #214 from YoeDistro/yoe/mut
Fix building llvm (inspirations from meta-clang)
2018-11-12 10:11:11 -05:00
Khem Raj
446d28d6e1 rust: Use llvm-rust-native and env variables to configure llvm-config
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-11-09 22:53:49 -08:00
Khem Raj
b15ba05ea8 rust-llvm: Make llvm-config cross compile friendly
Import patches from clang layer to ensure that llvm-config
can be provided configs from environment

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-11-09 22:52:05 -08:00
Otavio Salvador
f54025fed9 cargo: Add 0.31.0 recipe
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-09 08:06:29 -02:00
Otavio Salvador
f317737fae cargo: Ensure libssh2 from system is used
This forces the use of libssh2 by exporting the
LIBSSH2_SYS_USE_PKG_CONFIG environment variable.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-05 14:33:01 -02:00
Khem Raj
e04d99bf38 rust-llvm: Fix build with OE-core master
Disable libxml2 explicitly
Disable building hosttools on target build

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-11-02 15:05:17 -07:00
Derek Straka
6b060617cd Merge pull request #210 from alimon/master
conf/layer.conf: Add thud to the LAYERSERIES_COMPAT
2018-10-20 13:35:39 -04:00
Aníbal Limón
99ec7396f6 conf/layer.conf: Add thud to the LAYERSERIES_COMPAT
To support current master builds.

Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
2018-10-19 19:48:18 -05:00
Derek Straka
1119c88ec3 Merge branch 'master' into add-more-ci 2018-08-13 11:41:16 -04:00
Derek Straka
f81fbebaeb Merge pull request #206 from srwalter/disable-llvm-assertions
rust-llvm: correctly disable assertions
2018-08-11 07:42:08 -04:00
Steven Walter
5a9933dd46 rust-llvm: correctly disable assertions
We were already trying to disable assertions, but it wasn't working.
rust-llvm now configures assertions based on the CMAKE_BUILD_TYPE.
Setting that to "Release" causes assertions to be disabled, which is
what we want.
2018-08-08 12:37:17 -04:00
Derek Straka
0c02af0d86 Add the musl builds to the CI loop
Signed-off-by: Derek Straka <derek@asterius.io>
2018-07-25 16:23:27 -04:00
Derek Straka
badf251873 Merge pull request #205 from tylerwhall/remap-path-prefix
rust-common: fix remap-path-prefix for 1.26
2018-07-23 11:59:53 -04:00
Tyler Hall
060e033df9 rust-common: fix remap-path-prefix for 1.26
Before the flag was stabilized, it required two arguments of the form
"from=<from_path>" and "to=<to_path>" respectively. The stabilized
version uses one argument of the form "<from_path>=<to_path>".

Unfortunately the old format is still parsed successfully, but results
in attempting to replace the literal paths "from" and "to".

https://github.com/rust-lang/rust/issues/41555#issuecomment-320951103
2018-07-22 15:48:46 -04:00
Derek Straka
6d3f61e5ce Merge pull request #202 from Fulkerson/1.27.1
Bump to Rust 1.27.1
2018-07-18 12:34:17 -04:00
Johan Anderholm
bbf4f77f98 Bump to Rust 1.27.1 2018-07-18 08:15:34 +02:00
Steven Walter
b7380307d0 Merge pull request #204 from meta-rust/allow-overriding-libstd-features
libstd-rs: use a separate variable for --features
2018-07-16 12:04:30 -04:00
Steven Walter
8b471a1bdc libstd-rs: use a separate variable for --features
This will allow features to be easily modified through a bbappend file
in another layer.
2018-07-16 09:09:10 -04:00
Derek Straka
b82e450b5a Merge pull request #201 from meta-rust/fix-debug
libstd-rs: support debug builds
2018-07-12 17:09:33 -04:00
Steven Walter
cef09a5551 libstd-rs: support debug builds 2018-07-12 11:03:16 -04:00
Derek Straka
6052c90ca8 Merge pull request #199 from Fulkerson/fixes
Various fixes, Clang, TCLIBC, DEBUG_BUILD, rocko
2018-07-07 11:46:53 -04:00
Johan Anderholm
8e6c6271fc Handle env and llvm-target for musl
Further changes needed for musl to work.
env needs to be set to "musl" for unwinding work properly.
Also the llvm target should end with "-musl" and not "-gnu".
2018-07-06 19:34:33 +02:00
Johan Anderholm
6066f1d2df Corrected target-c-int-width
The correct value for x86_64 and aarch64 is 32
2018-07-06 19:34:33 +02:00
Johan Anderholm
d3bdd55c03 Add rocko as compatible version
The master branch is still compatible with rocko.
2018-07-06 19:34:33 +02:00
Johan Anderholm
6a0d148968 Make it possible to build with TCLIBC="musl" (musl as libc) 2018-07-06 19:34:33 +02:00
Johan Anderholm
e1fa6d39ce Don't install rust-llvm system-wide
Put rust-llvm into a directory of it's own. This avoids conflicts
between the official llvm and rusts temporary one. It solves
interoperability issues with meta-clang.

Use /usr/lib/llvm-rust/ as prefix because that matches what llvm does
themselves on debian and ubuntu.
2018-07-06 19:30:36 +02:00
Johan Anderholm
de42179513 cargo.bbclass: Make release mode optional
Use DEBUG_BUILD to determine if cargo should build with --release or
not. Set DEBUG_BUILD="1" in a recipe to build it without --release.
2018-07-06 19:30:36 +02:00
Derek Straka
9b1b4db8b0 Merge pull request #192 from Fulkerson/master
Bump to Rust 1.26.2
2018-07-06 10:14:47 -04:00
Johan Anderholm
03d8fb472c Bump to Rust 1.26.2
Remove old versions because they are not compatible with the changes in
rust-common.bbclass
2018-06-16 09:50:47 +02:00
Derek Straka
b117a311ef Merge pull request #198 from cardoe/remove-recipes-core
remove recipes-core & recipes-graphics
2018-05-31 16:45:34 -04:00
Doug Goldstein
55e9c18a37 remove recipes-core & recipes-graphics
Remove these recipes as I do not believe they are functional since the
fixes for #126 were done (removing the modifications to the compiler to
allow them to be used). #197 additionally points out that rand-rs has
not had a valid commit hash and most of these in some way depend on that
so these cannot possibly work in their current form. Removing per #102.
Fixes #102.
2018-05-30 13:38:21 -05:00
Derek Straka
7cfa3db4f6 Merge pull request #194 from agherzan/ag_compat
layer.conf: Define LAYERSERIES_COMPAT to fix build warning
2018-05-22 09:41:30 -04:00
Derek Straka
63aa6db53a Merge pull request #196 from srwalter/devtool
cargo_common.bbclass: improve operation with devtool
2018-05-20 11:21:49 -04:00
Steven Walter
48e2a7db25 cargo_common.bbclass: improve operation with devtool
Because devtool inhibits all the normal bitbake fetchers, we can't mask crates.io.
Use EXTERNALSRC to detect if we're being built with devtool, and only mask
crates.io if we're not.

Fixes #195
2018-05-19 10:16:55 -04:00
Andrei Gherzan
ab62d9cdbf layer.conf: Define LAYERSERIES_COMPAT to fix build warning
Signed-off-by: Andrei Gherzan <andrei@resin.io>
2018-05-14 18:24:55 +01:00
Derek Straka
22d72b3be6 Merge pull request #190 from jcreekmore/add-rust-1.24.1
Remove Rust 1.24.0 in favor of 1.24.1
2018-03-05 08:32:00 -05:00
Jonathan Creekmore
575016d11d Remove Rust 1.24.0 in favor of 1.24.1
The Rust maintainers released 1.24.1 because several minor regressions
were found in the 1.24.0 release that collectively merited an updated
release.
2018-03-02 12:59:28 -06:00
Derek Straka
8203dce091 Merge pull request #188 from jcreekmore/rust-1.24.0-rocko
Add rust version 1.24.0
2018-03-01 08:07:49 -05:00
Adam Schwalm
0639277e4c Add 1.24.0 for rocko 2018-02-27 16:19:12 -06:00
Derek Straka
5a9c23fac4 Merge pull request #189 from agherzan/fix-soname
libstd-rs: Set SONAME for libstd.so
2018-02-27 07:54:03 -05:00
Andrei Gherzan
69ae1df12e libstd-rs: Set SONAME for libstd.so
When yocto is searching for lib dependencies it uses SONAMES and RPATHS to find
the right one. When we compile a rust package which dynamically links to rust's
libstd, yocto will not be able to find the matching dependency in shlib and
will complain with a warning. Even worse, if you have compiled go-runtime, the
build will find go-runtime as provider of libstd and will complain that you
missed a RDEPENDS to go-runtime - this is completely wrong obviously.

This patch adds SONAME to rust's stdlib. In this way yocto will create the
required provider and packages dynamically linking to it will be able to find
libstd-rs as a provider of stdlib.

Signed-off-by: Andrei Gherzan <andrei@resin.io>
2018-02-26 17:43:09 +00:00
Derek Straka
17cc34c9c8 Merge pull request #185 from tylerwhall/panic-strategy
rust: allow configuring panic-strategy
2018-01-27 09:46:35 -05:00
Derek Straka
a19993c804 Merge branch 'master' into panic-strategy 2018-01-26 08:28:06 -05:00
Tyler Hall
03c0338cab Merge pull request #184 from bkylerussell/rm-do-compile
rust-llvm: remove custom do_compile
2018-01-24 13:45:24 -05:00
Tyler Hall
52ea673a8f rust: allow configuring panic-strategy
This defaults to "unwind" if not set, so this alone has no effect.

Signed-off-by: Tyler Hall <tylerwhall@gmail.com>
2018-01-23 17:54:15 -05:00
Kyle Russell
4c7cbf6a60 rust-llvm: remove custom do_compile
This works out in recent poky releases because cmake_do_compile ends up
in oe_runmake via base_do_compile, but this changed recently to allow
cmake's generic `cmake --build` feature to call the appropriate
generator instead of always assuming make.

http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit?id=579d17ba5f722edb9fe79682480c4a9508ad0ed4
2018-01-23 17:31:43 -05:00
Derek Straka
8f46fe3e97 Merge pull request #182 from Fulkerson/master
Add support for the mips32 architecture
2017-12-03 14:43:32 -05:00
Johan Anderholm
c65375f14f Jenkinsfile: Add qemumips machine 2017-12-02 08:39:09 +01:00
Johan Anderholm
f02df59eea Add support for the mips32 architecture
Support for mips32 big (mips) and little endian (mipsel) for mips32
and mips32r2 cpus. The big endian target can be verified with the
qemumips machine.
2017-12-01 19:36:15 +01:00
Johan Anderholm
141177fbf9 rust: specify target-c-int-width
The "target_c_int_width field is added to librustc_back since rust
1.22.0 because not all rust targets (e.g. msp430-none-elf, avr)
have 32-bit int types any more.
2017-11-27 15:48:54 -06:00
Steven Walter
fa4f4f9c1a Merge pull request #180 from srwalter/stable-sstate-hashes
Make rustc output reproducible
2017-11-08 10:17:21 -05:00
Steven Walter
7f7156b664 Merge branch 'master' into stable-sstate-hashes 2017-11-08 09:42:06 -05:00
Derek Straka
af5491692e Merge pull request #179 from meta-rust/add-debug-to-build-script
Add debug information to troubleshoot jenkins issues
2017-11-03 16:00:43 -04:00
Tyler Hall
e5230147f6 Remap source paths
This is needed for reproducible builds.
2017-11-03 12:41:51 -04:00
Tyler Hall
528a34206b rustc: always allow unstable options 2017-11-03 12:41:51 -04:00
Tyler Hall
434f7851f5 Fix path substitution 2017-11-03 12:41:51 -04:00
72 changed files with 1774 additions and 1662 deletions

9
Jenkinsfile vendored
View File

@@ -1,4 +1,4 @@
def targets = [ 'qemux86', 'qemux86-64', 'qemuarm', 'qemuarm64' ]
def targets = [ 'qemux86', 'qemux86-64', 'qemuarm', 'qemuarm64', 'qemumips' ]
def machine_builds = [:]
@@ -17,8 +17,11 @@ for (int i = 0; i < targets.size(); i++) {
stage("fetch $machine") {
sh "GIT_LOCAL_REF_DIR=/srv/git-cache/ ./scripts/fetch.sh master"
}
stage("build $machine") {
sh "MACHINE=${machine} ./scripts/build.sh"
stage("build glibc $machine") {
sh "MACHINE=${machine} TCLIBC=glibc ./scripts/build.sh"
}
stage("build musl $machine") {
sh "MACHINE=${machine} TCLIBC=musl ./scripts/build.sh"
}
} catch (e) {
echo "Caught: ${e}"

View File

@@ -23,11 +23,13 @@ B = "${S}"
export RUST_BACKTRACE = "1"
RUSTFLAGS ??= ""
CARGO_BUILD_FLAGS = "-v --target ${HOST_SYS} --release"
BUILD_MODE = "${@['--release', ''][d.getVar('DEBUG_BUILD') == '1']}"
CARGO_BUILD_FLAGS = "-v --target ${HOST_SYS} ${BUILD_MODE}"
# This is based on the content of CARGO_BUILD_FLAGS and generally will need to
# change if CARGO_BUILD_FLAGS changes.
CARGO_TARGET_SUBDIR="${HOST_SYS}/release"
BUILD_DIR = "${@['release', 'debug'][d.getVar('DEBUG_BUILD') == '1']}"
CARGO_TARGET_SUBDIR="${HOST_SYS}/${BUILD_DIR}"
oe_cargo_build () {
export RUSTFLAGS="${RUSTFLAGS}"
export RUST_TARGET_PATH="${RUST_TARGET_PATH}"

View File

@@ -21,7 +21,7 @@ export CARGO_HOME = "${WORKDIR}/cargo_home"
export PKG_CONFIG_ALLOW_CROSS = "1"
cargo_common_do_configure () {
mkdir -p ${CARGO_HOME}
mkdir -p ${CARGO_HOME}/bitbake
echo "paths = [" > ${CARGO_HOME}/config
for p in ${EXTRA_OECARGO_PATHS}; do
@@ -33,12 +33,16 @@ cargo_common_do_configure () {
cat <<- EOF >> ${CARGO_HOME}/config
[source.bitbake]
directory = "${CARGO_HOME}/bitbake"
[source.crates-io]
replace-with = "bitbake"
local-registry = "/nonexistant"
EOF
if [ -z "${EXTERNALSRC}" ]; then
cat <<- EOF >> ${CARGO_HOME}/config
[source.crates-io]
replace-with = "bitbake"
local-registry = "/nonexistant"
EOF
fi
echo "[target.${HOST_SYS}]" >> ${CARGO_HOME}/config
echo "linker = '${RUST_TARGET_CCLD}'" >> ${CARGO_HOME}/config
if [ "${HOST_SYS}" != "${BUILD_SYS}" ]; then
@@ -56,7 +60,7 @@ oe_cargo_fix_env () {
export TARGET_CC="${RUST_TARGET_CC}"
export TARGET_CXX="${RUST_TARGET_CXX}"
export TARGET_CFLAGS="${CFLAGS}"
export TARGET_CFLAGS="${CXXFLAGS}"
export TARGET_CXXFLAGS="${CXXFLAGS}"
export TARGET_AR="${AR}"
export HOST_CC="${RUST_BUILD_CC}"
export HOST_CXX="${RUST_BUILD_CXX}"

View File

@@ -5,12 +5,33 @@ FILES_${PN}-dev += "${rustlibdir}/*.rlib"
FILES_${PN}-dbg += "${rustlibdir}/.debug"
RUSTLIB = "-L ${STAGING_LIBDIR}/rust"
RUSTFLAGS += "${RUSTLIB}"
RUST_DEBUG_REMAP = "--remap-path-prefix=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}"
RUSTFLAGS += "${RUSTLIB} ${RUST_DEBUG_REMAP}"
RUSTLIB_DEP ?= "libstd-rs"
RUST_TARGET_PATH = "${STAGING_LIBDIR_NATIVE}/rustlib"
RUST_PANIC_STRATEGY ?= "unwind"
# Native builds are not effected by TCLIBC. Without this, rust-native
# thinks it's "target" (i.e. x86_64-linux) is a musl target.
RUST_LIBC = "${TCLIBC}"
RUST_LIBC_class-native = "glibc"
def determine_libc(d, thing):
'''Determine which libc something should target'''
# BUILD is never musl, TARGET may be musl or glibc,
# HOST could be musl, but only if a compiler is built to be run on
# target in which case HOST_SYS != BUILD_SYS.
if thing == 'TARGET':
libc = d.getVar('RUST_LIBC')
elif thing == 'BUILD' and (d.getVar('HOST_SYS') != d.getVar('BUILD_SYS')):
libc = d.getVar('RUST_LIBC')
else:
libc = d.getVar('RUST_LIBC_class-native')
return libc
# Responsible for taking Yocto triples and converting it to Rust triples
def rust_base_triple(d, thing):
'''
Mangle bitbake's *_SYS into something that rust might support (see
@@ -23,7 +44,7 @@ def rust_base_triple(d, thing):
# All the Yocto targets are Linux and are 'unknown'
vendor = "-unknown"
os = d.getVar('{}_OS'.format(thing))
libc = d.getVar('TCLIBC')
libc = determine_libc(d, thing)
# Prefix with a dash and convert glibc -> gnu
if libc == "glibc":

View File

@@ -9,6 +9,7 @@ BBFILE_PATTERN_rust-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_rust-layer = "7"
LAYERDEPENDS_rust-layer = "core openembedded-layer"
LAYERSERIES_COMPAT_rust-layer = "rocko sumo thud"
# Override security flags
require conf/distro/include/rust_security_flags.inc

View File

@@ -1,22 +0,0 @@
DESCRIPTION = "Fast multiple substring searching with finite state machines."
HOMEPAGE = "https://github.com/BurntSushi/aho-corasick"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE-MIT;md5=8d0d0aa488af0ab9aafa3b85a7fc8e12"
DEPENDS = "memchr-rs"
inherit rust-bin
SRC_URI = "git://github.com/BurntSushi/aho-corasick.git;protocol=https"
SRCREV = "e1bca33dcc060d587e802320a79cbb035f37f8fa"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}
BBCLASSEXTEND += "native"

View File

@@ -1,26 +0,0 @@
DESCRIPTION = "A macro to generate structures which behave like bitflags."
HOMEPAGE = "https://github.com/rust-lang-nursery/bitflags"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang-nursery/bitflags.git;protocol=https;nobranch=1"
SRCREV = "e30da43cac0e52fc8d0007ce99a316ec6473033e"
S = "${WORKDIR}/git"
LIB_SRC = "${S}/src/lib.rs"
CRATE_TYPE = "rlib"
RUSTFLAGS += "-A pub_use_of_private_extern_crate"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,28 +0,0 @@
DESCRIPTION = "A (mostly) pure-Rust implementation of various common cryptographic algorithms."
HOMEPAGE = "https://github.com/DaGenix/rust-crypto/"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=4311034aa04489226c1fc3f816dbfb5a \
file://LICENSE-APACHE;md5=a02fef6dccf840318474c108a8281b77 \
"
DEPENDS = "\
libc-rs \
time-rs \
rand-rs \
rustc-serialize-rs \
"
inherit rust-bin
SRC_URI = "git://github.com/DaGenix/rust-crypto.git;protocol=https"
SRCREV = "5571cb41690b9cee12025192393ea7df0eddc21b"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,20 +0,0 @@
DESCRIPTION = "DBus binding for rust"
HOMEPAGE = "https://github.com/diwic/dbus-rs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d2794c0df5b907fdace235a619d80314"
DEPENDS = "libc-rs dbus"
inherit rust-bin
SRC_URI = "git://github.com/diwic/dbus-rs.git;protocol=https"
SRCREV = "d23c8b7fecd5a8e82131893250a5ac376799faff"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,19 +0,0 @@
DESCRIPTION = "A copy of libstd's debug builders for use before they stabilize"
HOMEPAGE = "https://github.com/sfackler/rust-debug-builders"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "file://Cargo.toml;md5=97a131dc4ae910d242387f2c9d1a2ce8"
inherit rust-bin
SRC_URI = "git://github.com/sfackler/rust-debug-builders.git;protocol=https"
SRCREV = "c6943b72c7808ddaa151d08b824525cc7420cb9b"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,23 +0,0 @@
DESCRIPTION = "getopts-like option parsing"
HOMEPAGE = "https://github.com/rust-lang/getopts"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
DEPENDS = "log-rs"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang/getopts.git;protocol=https"
SRCREV = "a13c62b7d860b6d370129ebb972bf5e0373c5be7"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,23 +0,0 @@
DESCRIPTION = "A macro for declaring lazily evaluated statics in Rust."
HOMEPAGE = "https://github.com/rust-lang-nursery/lazy-static.rs"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "\
file://LICENSE;md5=5795ddb4df1d696d439b6667081cffc9 \
"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang-nursery/lazy-static.rs.git;protocol=https"
SRCREV = "ffe65c818474f863945ca535c0e53f3b8b848ff7"
S = "${WORKDIR}/git"
LIB_SRC = "${S}/src/lib.rs"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,27 +0,0 @@
DESCRIPTION = "A Rust library with native bindings to the types and functions commonly found on various systems, including libc."
HOMEPAGE = "https://github.com/rust-lang/libc"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang/libc.git;protocol=https"
SRCREV = "05a2d197356ef253dfd985166576619ac9b6947f"
S = "${WORKDIR}/git"
LIB_SRC = "${S}/src/lib.rs"
do_compile () {
oe_compile_rust_lib --cfg feature='"cargo-build"' --cfg feature='"use_std"'
}
do_install () {
oe_install_rust_lib
}
BBCLASSEXTEND += "native"

View File

@@ -1,6 +0,0 @@
DESCRIPTION = "An logging implementation for `log` which is configured via an environment variable"
DEPENDS = "regex-rs log-rs"
require log.inc
LIB_SRC = "${S}/env/src/lib.rs"

View File

@@ -1,4 +0,0 @@
DESCRIPTION = "A Rust library providing a lightweight logging facade"
DEPENDS = "libc-rs"
require log.inc

View File

@@ -1,22 +0,0 @@
HOMEPAGE = "https://github.com/rust-lang/log"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang/log.git;protocol=https"
SRCREV = "5453e16166ec451afc9738978ca01f162127ebbe"
PV = "0.3.1"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,22 +0,0 @@
DESCRIPTION = "Safe interface to memchr"
HOMEPAGE = "https://github.com/BurntSushi/rust-memchr"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE-MIT;md5=8d0d0aa488af0ab9aafa3b85a7fc8e12"
DEPENDS = "libc-rs"
inherit rust-bin
SRC_URI = "git://github.com/BurntSushi/rust-memchr.git;protocol=https"
SRCREV = "4f9a13f95e6e00f2847c093c56b41b9c1d58d3c4"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}
BBCLASSEXTEND += "native"

View File

@@ -1,5 +0,0 @@
require num.inc
DEPENDS += "num-traits"
LIB_SRC = "${S}/integer/src/lib.rs"

View File

@@ -1,6 +0,0 @@
require num.inc
DEPENDS += "num-traits"
DEPENDS += "num-integer"
LIB_SRC = "${S}/iter/src/lib.rs"

View File

@@ -1,3 +0,0 @@
require num.inc
LIB_SRC = "${S}/traits/src/lib.rs"

View File

@@ -1,22 +0,0 @@
DESCRIPTION = "A collection of numeric types and traits for Rust, including bigint, complex, rational, range iterators, generic integers, and more!"
HOMEPAGE = "https://github.com/rust-num/num"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
inherit rust-bin
SRC_URI = "git://github.com/rust-num/num.git;protocol=https"
SRCREV = "d9f08cb148cc686ec407c1e42fbd4536cde6ac82"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,9 +0,0 @@
require num.inc
DEPENDS += "\
num-traits \
num-integer \
num-iter \
"
LIB_SRC = "${S}/src/lib.rs"

View File

@@ -1,23 +0,0 @@
DESCRIPTION = "Random number generators and other randomness functionality."
HOMEPAGE = "https://github.com/rust-lang/rand"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
DEPENDS = "libc-rs"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang/rand.git;protocol=https"
SRCREV = "f872fda5fb8fb899a837ee9eee0332076a8f5300"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,12 +0,0 @@
DESCRIPTION = "An implementation of regular expressions for Rust"
DEPENDS = "\
aho-corasick-rs \
memchr-rs \
regex-syntax-rs \
"
require regex.inc
S = "${WORKDIR}/git"
BBCLASSEXTEND += "native"

View File

@@ -1,7 +0,0 @@
DESCRIPTION = "A regular expression parser"
require regex.inc
LIB_SRC = "${S}/regex-syntax/src/lib.rs"
BBCLASSEXTEND += "native"

View File

@@ -1,22 +0,0 @@
HOMEPAGE = "https://github.com/rust-lang/regex"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
SRC_URI = "git://github.com/rust-lang/regex.git;protocol=https"
SRCREV = "c9e6781a6845478aa2d8ebc86972755f854fdbe0"
PV = "0.1.38"
inherit rust-bin
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,22 +0,0 @@
DESCRIPTION = "Generic serialization/deserialization support"
HOMEPAGE = "https://github.com/rust-lang/rustc-serialize"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang/rustc-serialize.git;protocol=https"
SRCREV = "64b38a1f31a9af6eabf2894437aa5ccc3e457e68"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,23 +0,0 @@
DESCRIPTION = "Utilities for working with time-related functions in Rust"
HOMEPAGE = "https://github.com/rust-lang/time"
LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "\
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
DEPENDS = "libc-rs"
inherit rust-bin
SRC_URI = "git://github.com/rust-lang/time.git;protocol=https"
SRCREV = "d265b7cf9f50db74fbd0a01f8bec90ad7d239d48"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,20 +0,0 @@
DESCRIPTION = "FFI bindings to libudev"
HOMEPAGE = "https://github.com/dcuddeback/libudev-sys"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bbd2acd29c4ba5d4591b03e2757c04a3"
DEPENDS = "libudev-sys-rs"
inherit rust-bin
SRC_URI = "git://github.com/dcuddeback/libudev-rs.git;protocol=https"
SRCREV = "d55763c626790e2e8724947503238731843a969a"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,22 +0,0 @@
DESCRIPTION = "FFI bindings to libudev"
HOMEPAGE = "https://github.com/dcuddeback/libudev-sys"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bbd2acd29c4ba5d4591b03e2757c04a3"
DEPENDS += "libudev-sys-rs"
DEPENDS += "libc-rs"
inherit rust-bin
SRC_URI = "git://github.com/dcuddeback/libudev-rs.git;protocol=https"
SRCREV = "3da791245f206d0cf5a856531c574b8646b0f059"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,22 +0,0 @@
DESCRIPTION = "FFI bindings to libudev"
HOMEPAGE = "https://github.com/dcuddeback/libudev-sys"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bbd2acd29c4ba5d4591b03e2757c04a3"
DEPENDS = "libc-rs udev"
inherit rust-bin
SRC_URI = "git://github.com/dcuddeback/libudev-sys.git;protocol=https"
SRCREV = "14c24afc61e3315dffddab2c7f36999a16a002d8"
S = "${WORKDIR}/git"
RUSTC_FLAGS += "-ludev"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,22 +0,0 @@
DESCRIPTION = "FFI bindings to libudev"
HOMEPAGE = "https://github.com/dcuddeback/libudev-sys"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bbd2acd29c4ba5d4591b03e2757c04a3"
DEPENDS = "libc-rs udev"
inherit rust-bin
SRC_URI = "git://github.com/dcuddeback/libudev-sys.git;protocol=https"
SRCREV = "c49163f87d4d109ec21bcf8f8c51db560ed31b22"
S = "${WORKDIR}/git"
RUSTC_FLAGS += "-ludev"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,20 +0,0 @@
DESCRIPTION = "Unix domain socket bindings for Rust"
HOMEPAGE = "https://github.com/sfackler/rust-unix-socket"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bde86283c1fd74e84ebc3cf6dd7011d0"
DEPENDS = "libc-rs debug-builders-rs"
inherit rust-bin
SRC_URI = "git://github.com/sfackler/rust-unix-socket.git;protocol=https"
SRCREV = "d0f47ae888267a718072c3be5eed42ba1f637097"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,11 +0,0 @@
CARGO_SNAPSHOT = "cargo-0.20.0-${RUST_BUILD_SYS}"
SRC_URI[cargo-snapshot.md5sum] = "63aa861b029eec9f559f4fb5a10c287d"
SRC_URI[cargo-snapshot.sha256sum] = "a677d13b01d00ad13edf75c7d1b484421c7fc09338bf9ed6d456b4685bb42ed1"
SRC_URI += "\
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot \
"
# When building cargo-native we don't have a built cargo to use so we must use
# the snapshot to bootstrap the build of cargo
CARGO_class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/cargo/bin/cargo"

View File

@@ -1,11 +0,0 @@
CARGO_SNAPSHOT = "cargo-0.21.0-${RUST_BUILD_SYS}"
SRC_URI[cargo-snapshot.md5sum] = "0e5389d2e38a14933dda77db8172cb1f"
SRC_URI[cargo-snapshot.sha256sum] = "caccf4ab039c806a9e6fdc7fe389cc88fb771e28e30d93c07a5c56ef845cdf57"
SRC_URI += "\
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot \
"
# When building cargo-native we don't have a built cargo to use so we must use
# the snapshot to bootstrap the build of cargo
CARGO_class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/cargo/bin/cargo"

View File

@@ -0,0 +1,13 @@
CARGO_SNAPSHOT = "cargo-0.26.0-${RUST_BUILD_SYS}"
# TODO: Add hashes for other architecture toolchains as well. Make a script?
SRC_URI[cargo-snapshot-x86_64.md5sum] = "b0de62d86f0ba71078471d09916873c6"
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "9ba227f2364f618dc9415dacf3a5dce17458e1cb9f6d4fe860416cb68db894e4"
SRC_URI += "\
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot-${BUILD_ARCH} \
"
# When building cargo-native we don't have a built cargo to use so we must use
# the snapshot to bootstrap the build of cargo
CARGO_class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/cargo/bin/cargo"

View File

@@ -0,0 +1,12 @@
CARGO_SNAPSHOT = "cargo-0.27.0-${BUILD_ARCH}-unknown-linux-gnu"
SRC_URI[cargo-snapshot-x86_64.md5sum] = "ca366ba1e97ffc02b72dc74859db35e2"
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "8c17710252513d8130141f2c12b4efeef67f0def252b94b246fe326a9a75043b"
SRC_URI += "\
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot-${BUILD_ARCH} \
"
# When building cargo-native we don't have a built cargo to use so we must use
# the snapshot to bootstrap the build of cargo
CARGO_class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/cargo/bin/cargo"

View File

@@ -0,0 +1,12 @@
CARGO_SNAPSHOT = "cargo-0.30.0-${BUILD_ARCH}-unknown-linux-gnu"
SRC_URI[cargo-snapshot-x86_64.md5sum] = "79b62c75b11ef480163276be189fdac5"
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "32f210fd3142fda7825a06e95d1aa4b54035c2da435d8cf0dd03fad410c8002f"
SRC_URI += "\
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot-${BUILD_ARCH} \
"
# When building cargo-native we don't have a built cargo to use so we must use
# the snapshot to bootstrap the build of cargo
CARGO_class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/cargo/bin/cargo"

View File

@@ -6,7 +6,8 @@ LIC_FILES_CHKSUM += " \
file://LICENSE-THIRD-PARTY;md5=892ea68b169e69cfe75097fc38a15b56 \
"
# Used in libgit2-sys's build.rs, needed for pkg-config to be used
# Needed for pkg-config to be used
export LIBGIT2_SYS_USE_PKG_CONFIG = "1"
export LIBSSH2_SYS_USE_PKG_CONFIG = "1"
BBCLASSEXTEND = "native"

View File

@@ -1,136 +0,0 @@
# Auto-Generated by cargo-bitbake 0.3.8
#
inherit cargo
# If this is git based prefer versioned ones if they exist
# DEFAULT_PREFERENCE = "-1"
# how to get cargo could be as easy as but default to a git checkout:
# SRC_URI += "crate://crates.io/cargo/0.21.0"
SRC_URI += "git://git@github.com/rust-lang/cargo.git;protocol=ssh;branch=rust-1.20.0"
SRCREV = "5b4b8b2ae3f6a884099544ce66dbb41626110ece"
S = "${WORKDIR}/git"
CARGO_SRC_DIR=""
# please note if you have entries that do not begin with crate://
# you must change them to how that package can be fetched
SRC_URI += " \
crate://crates.io/advapi32-sys/0.2.0 \
crate://crates.io/aho-corasick/0.5.3 \
crate://crates.io/aho-corasick/0.6.3 \
crate://crates.io/atty/0.2.2 \
crate://crates.io/backtrace-sys/0.1.11 \
crate://crates.io/backtrace/0.3.2 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/cmake/0.1.24 \
crate://crates.io/crossbeam/0.2.10 \
crate://crates.io/curl-sys/0.3.14 \
crate://crates.io/curl/0.4.7 \
crate://crates.io/dbghelp-sys/0.2.0 \
crate://crates.io/docopt/0.8.1 \
crate://crates.io/dtoa/0.4.1 \
crate://crates.io/env_logger/0.4.3 \
crate://crates.io/error-chain/0.11.0-rc.2 \
crate://crates.io/filetime/0.1.10 \
crate://crates.io/flate2/0.2.19 \
crate://crates.io/foreign-types/0.2.0 \
crate://crates.io/fs2/0.4.2 \
crate://crates.io/gcc/0.3.51 \
crate://crates.io/git2-curl/0.7.0 \
crate://crates.io/git2/0.6.6 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/hamcrest/0.1.1 \
crate://crates.io/hex/0.2.0 \
crate://crates.io/idna/0.1.2 \
crate://crates.io/itoa/0.3.1 \
crate://crates.io/jobserver/0.1.6 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/0.2.8 \
crate://crates.io/libc/0.2.25 \
crate://crates.io/libgit2-sys/0.6.12 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.16 \
crate://crates.io/log/0.3.8 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/memchr/0.1.11 \
crate://crates.io/memchr/1.0.1 \
crate://crates.io/miniz-sys/0.1.9 \
crate://crates.io/miow/0.2.1 \
crate://crates.io/net2/0.2.29 \
crate://crates.io/num-bigint/0.1.39 \
crate://crates.io/num-complex/0.1.38 \
crate://crates.io/num-integer/0.1.34 \
crate://crates.io/num-iter/0.1.33 \
crate://crates.io/num-rational/0.1.38 \
crate://crates.io/num-traits/0.1.39 \
crate://crates.io/num/0.1.39 \
crate://crates.io/num_cpus/1.6.2 \
crate://crates.io/openssl-probe/0.1.1 \
crate://crates.io/openssl-sys/0.9.14 \
crate://crates.io/openssl/0.9.14 \
crate://crates.io/percent-encoding/1.0.0 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/psapi-sys/0.1.0 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/rand/0.3.15 \
crate://crates.io/regex-syntax/0.3.9 \
crate://crates.io/regex-syntax/0.4.1 \
crate://crates.io/regex/0.1.80 \
crate://crates.io/regex/0.2.2 \
crate://crates.io/rustc-demangle/0.1.4 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/scoped-tls/0.1.0 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.7.0 \
crate://crates.io/serde/1.0.9 \
crate://crates.io/serde_derive/1.0.9 \
crate://crates.io/serde_derive_internals/0.15.1 \
crate://crates.io/serde_ignored/0.0.3 \
crate://crates.io/serde_json/1.0.2 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/socket2/0.2.1 \
crate://crates.io/strsim/0.6.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/tar/0.4.13 \
crate://crates.io/tempdir/0.3.5 \
crate://crates.io/termcolor/0.3.2 \
crate://crates.io/thread-id/2.0.0 \
crate://crates.io/thread_local/0.2.7 \
crate://crates.io/thread_local/0.3.4 \
crate://crates.io/toml/0.4.2 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.5.1 \
crate://crates.io/utf8-ranges/0.1.3 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/void/1.0.2 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/wincolor/0.1.4 \
crate://crates.io/ws2_32-sys/0.2.1 \
"
# FIXME: update generateme with the real MD5 of the license file
LIC_FILES_CHKSUM=" \
file://LICENSE-MIT;md5=362255802eb5aa87810d12ddf3cfedb4 \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
SUMMARY = "Cargo, a package manager for Rust."
HOMEPAGE = "https://crates.io"
LICENSE = "MIT | Apache-2.0"
# includes this file if it exists but does not fail
# this is useful for anything you may want to override from
# what cargo-bitbake generates.
include cargo-${PV}.inc
include cargo.inc

View File

@@ -1,151 +0,0 @@
# Auto-Generated by cargo-bitbake 0.3.9
#
inherit cargo
# If this is git based prefer versioned ones if they exist
# DEFAULT_PREFERENCE = "-1"
# how to get cargo could be as easy as but default to a git checkout:
# SRC_URI += "crate://crates.io/cargo/0.22.0"
SRC_URI += "git://github.com/rust-lang/cargo.git;protocol=https;branch=rust-1.21.0"
SRCREV = "3423351a5d75ac7377bb15987842aadcfd068ad2"
S = "${WORKDIR}/git"
CARGO_SRC_DIR=""
# please note if you have entries that do not begin with crate://
# you must change them to how that package can be fetched
SRC_URI += " \
crate://crates.io/advapi32-sys/0.2.0 \
crate://crates.io/aho-corasick/0.5.3 \
crate://crates.io/aho-corasick/0.6.3 \
crate://crates.io/atty/0.2.2 \
crate://crates.io/backtrace-sys/0.1.12 \
crate://crates.io/backtrace/0.3.2 \
crate://crates.io/bitflags/0.7.0 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/cmake/0.1.24 \
crate://crates.io/conv/0.3.3 \
crate://crates.io/core-foundation-sys/0.4.4 \
crate://crates.io/core-foundation/0.4.4 \
crate://crates.io/crossbeam/0.2.10 \
crate://crates.io/curl-sys/0.3.14 \
crate://crates.io/curl/0.4.8 \
crate://crates.io/custom_derive/0.1.7 \
crate://crates.io/dbghelp-sys/0.2.0 \
crate://crates.io/docopt/0.8.1 \
crate://crates.io/dtoa/0.4.1 \
crate://crates.io/env_logger/0.4.3 \
crate://crates.io/error-chain/0.11.0-rc.2 \
crate://crates.io/filetime/0.1.10 \
crate://crates.io/flate2/0.2.19 \
crate://crates.io/fnv/1.0.5 \
crate://crates.io/foreign-types/0.2.0 \
crate://crates.io/fs2/0.4.2 \
crate://crates.io/gcc/0.3.51 \
crate://crates.io/git2-curl/0.7.0 \
crate://crates.io/git2/0.6.6 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.2.0 \
crate://crates.io/hamcrest/0.1.1 \
crate://crates.io/hex/0.2.0 \
crate://crates.io/home/0.3.0 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/ignore/0.2.2 \
crate://crates.io/itoa/0.3.1 \
crate://crates.io/jobserver/0.1.6 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/0.2.8 \
crate://crates.io/libc/0.2.28 \
crate://crates.io/libgit2-sys/0.6.12 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.16 \
crate://crates.io/log/0.3.8 \
crate://crates.io/magenta-sys/0.1.1 \
crate://crates.io/magenta/0.1.1 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/memchr/0.1.11 \
crate://crates.io/memchr/1.0.1 \
crate://crates.io/miniz-sys/0.1.9 \
crate://crates.io/miow/0.2.1 \
crate://crates.io/net2/0.2.30 \
crate://crates.io/num-bigint/0.1.40 \
crate://crates.io/num-complex/0.1.40 \
crate://crates.io/num-integer/0.1.35 \
crate://crates.io/num-iter/0.1.34 \
crate://crates.io/num-rational/0.1.39 \
crate://crates.io/num-traits/0.1.40 \
crate://crates.io/num/0.1.40 \
crate://crates.io/num_cpus/1.6.2 \
crate://crates.io/openssl-probe/0.1.1 \
crate://crates.io/openssl-sys/0.9.15 \
crate://crates.io/openssl/0.9.15 \
crate://crates.io/percent-encoding/1.0.0 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/psapi-sys/0.1.0 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/rand/0.3.16 \
crate://crates.io/regex-syntax/0.3.9 \
crate://crates.io/regex-syntax/0.4.1 \
crate://crates.io/regex/0.1.80 \
crate://crates.io/regex/0.2.2 \
crate://crates.io/rustc-demangle/0.1.4 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/same-file/0.1.3 \
crate://crates.io/scoped-tls/0.1.0 \
crate://crates.io/scopeguard/0.1.2 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.7.0 \
crate://crates.io/serde/1.0.11 \
crate://crates.io/serde_derive/1.0.11 \
crate://crates.io/serde_derive_internals/0.15.1 \
crate://crates.io/serde_ignored/0.0.3 \
crate://crates.io/serde_json/1.0.2 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/socket2/0.2.1 \
crate://crates.io/strsim/0.6.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/tar/0.4.13 \
crate://crates.io/tempdir/0.3.5 \
crate://crates.io/termcolor/0.3.2 \
crate://crates.io/thread-id/2.0.0 \
crate://crates.io/thread_local/0.2.7 \
crate://crates.io/thread_local/0.3.4 \
crate://crates.io/toml/0.4.3 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.5.1 \
crate://crates.io/userenv-sys/0.2.0 \
crate://crates.io/utf8-ranges/0.1.3 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/1.0.7 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/wincolor/0.1.4 \
crate://crates.io/ws2_32-sys/0.2.1 \
"
# FIXME: update generateme with the real MD5 of the license file
LIC_FILES_CHKSUM=" \
file://LICENSE-MIT;md5=b377b220f43d747efdec40d69fcaa69d \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
SUMMARY = "Cargo, a package manager for Rust."
HOMEPAGE = "https://crates.io"
LICENSE = "MIT | Apache-2.0"
# includes this file if it exists but does not fail
# this is useful for anything you may want to override from
# what cargo-bitbake generates.
include cargo-${PV}.inc
include cargo.inc

View File

@@ -0,0 +1,154 @@
# Auto-Generated by cargo-bitbake 0.3.10
#
inherit cargo
# If this is git based prefer versioned ones if they exist
# DEFAULT_PREFERENCE = "-1"
# how to get cargo could be as easy as but default to a git checkout:
# SRC_URI += "crate://crates.io/cargo/0.27.0"
SRC_URI += "git://github.com/rust-lang/cargo.git;protocol=https;branch=rust-1.26.0"
SRCREV = "0e7c5a93159076952f609e05760e2458828d0d1f"
S = "${WORKDIR}/git"
CARGO_SRC_DIR=""
# please note if you have entries that do not begin with crate://
# you must change them to how that package can be fetched
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.4 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/atty/0.2.10 \
crate://crates.io/backtrace-sys/0.1.16 \
crate://crates.io/backtrace/0.3.7 \
crate://crates.io/bitflags/1.0.3 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cc/1.0.15 \
crate://crates.io/cfg-if/0.1.3 \
crate://crates.io/clap/2.31.2 \
crate://crates.io/cmake/0.1.31 \
crate://crates.io/commoncrypto-sys/0.2.0 \
crate://crates.io/commoncrypto/0.2.0 \
crate://crates.io/core-foundation-sys/0.5.1 \
crate://crates.io/core-foundation/0.5.1 \
crate://crates.io/crossbeam/0.3.2 \
crate://crates.io/crypto-hash/0.3.1 \
crate://crates.io/curl-sys/0.4.5 \
crate://crates.io/curl/0.4.12 \
crate://crates.io/dtoa/0.4.2 \
crate://crates.io/env_logger/0.5.10 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/filetime/0.1.15 \
crate://crates.io/filetime/0.2.1 \
crate://crates.io/flate2/1.0.1 \
crate://crates.io/fnv/1.0.6 \
crate://crates.io/foreign-types-shared/0.1.1 \
crate://crates.io/foreign-types/0.3.2 \
crate://crates.io/fs2/0.4.3 \
crate://crates.io/fuchsia-zircon-sys/0.3.3 \
crate://crates.io/fuchsia-zircon/0.3.3 \
crate://crates.io/git2-curl/0.8.1 \
crate://crates.io/git2/0.7.1 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.4.0 \
crate://crates.io/hex/0.3.2 \
crate://crates.io/home/0.3.3 \
crate://crates.io/humantime/1.1.1 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/ignore/0.4.2 \
crate://crates.io/itoa/0.4.1 \
crate://crates.io/jobserver/0.1.11 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/1.0.0 \
crate://crates.io/lazycell/0.6.0 \
crate://crates.io/libc/0.2.40 \
crate://crates.io/libgit2-sys/0.7.1 \
crate://crates.io/libssh2-sys/0.2.7 \
crate://crates.io/libz-sys/1.0.18 \
crate://crates.io/log/0.4.1 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/memchr/2.0.1 \
crate://crates.io/miniz-sys/0.1.10 \
crate://crates.io/miow/0.3.1 \
crate://crates.io/num-traits/0.2.4 \
crate://crates.io/num_cpus/1.8.0 \
crate://crates.io/openssl-probe/0.1.2 \
crate://crates.io/openssl-sys/0.9.30 \
crate://crates.io/openssl/0.10.7 \
crate://crates.io/percent-encoding/1.0.1 \
crate://crates.io/pkg-config/0.3.11 \
crate://crates.io/proc-macro2/0.3.8 \
crate://crates.io/quick-error/1.2.1 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/quote/0.5.2 \
crate://crates.io/rand/0.4.2 \
crate://crates.io/redox_syscall/0.1.37 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.5.6 \
crate://crates.io/regex-syntax/0.6.0 \
crate://crates.io/regex/0.2.11 \
crate://crates.io/regex/1.0.0 \
crate://crates.io/remove_dir_all/0.5.1 \
crate://crates.io/rustc-demangle/0.1.8 \
crate://crates.io/same-file/1.0.2 \
crate://crates.io/schannel/0.1.12 \
crate://crates.io/scopeguard/0.3.3 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.9.0 \
crate://crates.io/serde/1.0.55 \
crate://crates.io/serde_derive/1.0.55 \
crate://crates.io/serde_ignored/0.0.4 \
crate://crates.io/serde_json/1.0.17 \
crate://crates.io/shell-escape/0.1.4 \
crate://crates.io/socket2/0.3.5 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.13.10 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/tar/0.4.15 \
crate://crates.io/tempfile/3.0.2 \
crate://crates.io/termcolor/0.3.6 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.9.0 \
crate://crates.io/thread_local/0.3.5 \
crate://crates.io/toml/0.4.6 \
crate://crates.io/ucd-util/0.1.1 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.7 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.7.0 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.3 \
crate://crates.io/vec_map/0.8.1 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/2.1.4 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.4 \
crate://crates.io/wincolor/0.1.6 \
"
# FIXME: update generateme with the real MD5 of the license file
LIC_FILES_CHKSUM=" \
file://LICENSE-MIT;md5=b377b220f43d747efdec40d69fcaa69d \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
SUMMARY = "Cargo, a package manager for Rust."
HOMEPAGE = "https://crates.io"
LICENSE = "MIT | Apache-2.0"
# includes this file if it exists but does not fail
# this is useful for anything you may want to override from
# what cargo-bitbake generates.
include cargo-${PV}.inc
include cargo.inc

View File

@@ -0,0 +1,153 @@
# Auto-Generated by cargo-bitbake 0.3.10
#
inherit cargo
# If this is git based prefer versioned ones if they exist
# DEFAULT_PREFERENCE = "-1"
# how to get cargo could be as easy as but default to a git checkout:
# SRC_URI += "crate://crates.io/cargo/0.28.0"
SRC_URI += "git://github.com/rust-lang/cargo.git;protocol=https;branch=rust-1.27.0"
SRCREV = "1e95190e5ffd6e6b701ad87dab4671246b96a9ce"
S = "${WORKDIR}/git"
CARGO_SRC_DIR=""
# please note if you have entries that do not begin with crate://
# you must change them to how that package can be fetched
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.5 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/atty/0.2.10 \
crate://crates.io/backtrace-sys/0.1.23 \
crate://crates.io/backtrace/0.3.9 \
crate://crates.io/bitflags/1.0.3 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cc/1.0.17 \
crate://crates.io/cfg-if/0.1.4 \
crate://crates.io/clap/2.32.0 \
crate://crates.io/cmake/0.1.31 \
crate://crates.io/commoncrypto-sys/0.2.0 \
crate://crates.io/commoncrypto/0.2.0 \
crate://crates.io/core-foundation-sys/0.5.1 \
crate://crates.io/core-foundation/0.5.1 \
crate://crates.io/crossbeam/0.3.2 \
crate://crates.io/crypto-hash/0.3.1 \
crate://crates.io/curl-sys/0.4.5 \
crate://crates.io/curl/0.4.12 \
crate://crates.io/dtoa/0.4.2 \
crate://crates.io/env_logger/0.5.10 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/filetime/0.2.1 \
crate://crates.io/flate2/1.0.1 \
crate://crates.io/fnv/1.0.6 \
crate://crates.io/foreign-types-shared/0.1.1 \
crate://crates.io/foreign-types/0.3.2 \
crate://crates.io/fs2/0.4.3 \
crate://crates.io/fuchsia-zircon-sys/0.3.3 \
crate://crates.io/fuchsia-zircon/0.3.3 \
crate://crates.io/git2-curl/0.8.1 \
crate://crates.io/git2/0.7.2 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.4.0 \
crate://crates.io/hex/0.3.2 \
crate://crates.io/home/0.3.3 \
crate://crates.io/humantime/1.1.1 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/ignore/0.4.2 \
crate://crates.io/itoa/0.4.1 \
crate://crates.io/jobserver/0.1.11 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/1.0.1 \
crate://crates.io/lazycell/0.6.0 \
crate://crates.io/libc/0.2.42 \
crate://crates.io/libgit2-sys/0.7.4 \
crate://crates.io/libssh2-sys/0.2.7 \
crate://crates.io/libz-sys/1.0.18 \
crate://crates.io/log/0.4.3 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/memchr/2.0.1 \
crate://crates.io/miniz-sys/0.1.10 \
crate://crates.io/miow/0.3.1 \
crate://crates.io/num-traits/0.2.5 \
crate://crates.io/num_cpus/1.8.0 \
crate://crates.io/openssl-probe/0.1.2 \
crate://crates.io/openssl-sys/0.9.33 \
crate://crates.io/openssl/0.10.10 \
crate://crates.io/percent-encoding/1.0.1 \
crate://crates.io/pkg-config/0.3.11 \
crate://crates.io/proc-macro2/0.4.6 \
crate://crates.io/quick-error/1.2.2 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/quote/0.6.3 \
crate://crates.io/rand/0.4.2 \
crate://crates.io/redox_syscall/0.1.40 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.5.6 \
crate://crates.io/regex-syntax/0.6.1 \
crate://crates.io/regex/0.2.11 \
crate://crates.io/regex/1.0.1 \
crate://crates.io/remove_dir_all/0.5.1 \
crate://crates.io/rustc-demangle/0.1.8 \
crate://crates.io/same-file/1.0.2 \
crate://crates.io/schannel/0.1.13 \
crate://crates.io/scopeguard/0.3.3 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.9.0 \
crate://crates.io/serde/1.0.69 \
crate://crates.io/serde_derive/1.0.69 \
crate://crates.io/serde_ignored/0.0.4 \
crate://crates.io/serde_json/1.0.22 \
crate://crates.io/shell-escape/0.1.4 \
crate://crates.io/socket2/0.3.7 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.14.4 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/tar/0.4.16 \
crate://crates.io/tempfile/3.0.2 \
crate://crates.io/termcolor/0.3.6 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.10.0 \
crate://crates.io/thread_local/0.3.5 \
crate://crates.io/toml/0.4.6 \
crate://crates.io/ucd-util/0.1.1 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.7 \
crate://crates.io/unicode-width/0.1.5 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.7.0 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.4 \
crate://crates.io/vec_map/0.8.1 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/2.1.4 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.5 \
crate://crates.io/wincolor/0.1.6 \
"
# FIXME: update generateme with the real MD5 of the license file
LIC_FILES_CHKSUM=" \
file://LICENSE-MIT;md5=b377b220f43d747efdec40d69fcaa69d \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
SUMMARY = "Cargo, a package manager for Rust."
HOMEPAGE = "https://crates.io"
LICENSE = "MIT | Apache-2.0"
# includes this file if it exists but does not fail
# this is useful for anything you may want to override from
# what cargo-bitbake generates.
include cargo-${PV}.inc
include cargo.inc

View File

@@ -0,0 +1,173 @@
# Auto-Generated by cargo-bitbake 0.3.10
#
inherit cargo
# If this is git based prefer versioned ones if they exist
# DEFAULT_PREFERENCE = "-1"
# how to get cargo could be as easy as but default to a git checkout:
# SRC_URI += "crate://crates.io/cargo/0.31.0"
SRC_URI += "git://github.com/rust-lang/cargo;protocol=https;nobranch=1"
SRCREV = "36d96825d0f288c6d1bb2219919a277968bd365f"
S = "${WORKDIR}/git"
CARGO_SRC_DIR=""
# please note if you have entries that do not begin with crate://
# you must change them to how that package can be fetched
SRC_URI += " \
crate://crates.io/adler32/1.0.3 \
crate://crates.io/aho-corasick/0.6.9 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/arrayvec/0.4.7 \
crate://crates.io/atty/0.2.11 \
crate://crates.io/backtrace-sys/0.1.24 \
crate://crates.io/backtrace/0.3.9 \
crate://crates.io/bitflags/1.0.4 \
crate://crates.io/bufstream/0.1.4 \
crate://crates.io/build_const/0.2.1 \
crate://crates.io/cc/1.0.25 \
crate://crates.io/cfg-if/0.1.6 \
crate://crates.io/clap/2.32.0 \
crate://crates.io/cloudabi/0.0.3 \
crate://crates.io/commoncrypto-sys/0.2.0 \
crate://crates.io/commoncrypto/0.2.0 \
crate://crates.io/core-foundation-sys/0.6.2 \
crate://crates.io/core-foundation/0.6.2 \
crate://crates.io/crc/1.8.1 \
crate://crates.io/crossbeam-channel/0.2.6 \
crate://crates.io/crossbeam-epoch/0.6.0 \
crate://crates.io/crossbeam-utils/0.5.0 \
crate://crates.io/crypto-hash/0.3.1 \
crate://crates.io/curl-sys/0.4.14 \
crate://crates.io/curl/0.4.18 \
crate://crates.io/env_logger/0.5.13 \
crate://crates.io/failure/0.1.3 \
crate://crates.io/failure_derive/0.1.3 \
crate://crates.io/filetime/0.2.2 \
crate://crates.io/flate2/1.0.4 \
crate://crates.io/fnv/1.0.6 \
crate://crates.io/foreign-types-shared/0.1.1 \
crate://crates.io/foreign-types/0.3.2 \
crate://crates.io/fs2/0.4.3 \
crate://crates.io/fuchsia-zircon-sys/0.3.3 \
crate://crates.io/fuchsia-zircon/0.3.3 \
crate://crates.io/fwdansi/1.0.1 \
crate://crates.io/git2-curl/0.8.2 \
crate://crates.io/git2/0.7.5 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.4.2 \
crate://crates.io/hex/0.3.2 \
crate://crates.io/home/0.3.3 \
crate://crates.io/humantime/1.1.1 \
crate://crates.io/idna/0.1.5 \
crate://crates.io/ignore/0.4.4 \
crate://crates.io/itoa/0.4.3 \
crate://crates.io/jobserver/0.1.11 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/1.2.0 \
crate://crates.io/lazycell/1.2.0 \
crate://crates.io/libc/0.2.43 \
crate://crates.io/libgit2-sys/0.7.10 \
crate://crates.io/libssh2-sys/0.2.11 \
crate://crates.io/libz-sys/1.0.25 \
crate://crates.io/lock_api/0.1.4 \
crate://crates.io/log/0.4.6 \
crate://crates.io/matches/0.1.8 \
crate://crates.io/memchr/2.1.1 \
crate://crates.io/memoffset/0.2.1 \
crate://crates.io/miniz-sys/0.1.11 \
crate://crates.io/miniz_oxide/0.2.0 \
crate://crates.io/miniz_oxide_c_api/0.2.0 \
crate://crates.io/miow/0.3.3 \
crate://crates.io/nodrop/0.1.12 \
crate://crates.io/num_cpus/1.8.0 \
crate://crates.io/opener/0.3.0 \
crate://crates.io/openssl-probe/0.1.2 \
crate://crates.io/openssl-src/111.0.1+1.1.1 \
crate://crates.io/openssl-sys/0.9.39 \
crate://crates.io/openssl/0.10.15 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/parking_lot/0.6.4 \
crate://crates.io/parking_lot_core/0.3.1 \
crate://crates.io/percent-encoding/1.0.1 \
crate://crates.io/pkg-config/0.3.14 \
crate://crates.io/proc-macro2/0.4.20 \
crate://crates.io/quick-error/1.2.2 \
crate://crates.io/quote/0.6.9 \
crate://crates.io/rand/0.4.3 \
crate://crates.io/rand/0.5.5 \
crate://crates.io/rand_core/0.2.2 \
crate://crates.io/rand_core/0.3.0 \
crate://crates.io/redox_syscall/0.1.40 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.6.2 \
crate://crates.io/regex/1.0.5 \
crate://crates.io/remove_dir_all/0.5.1 \
crate://crates.io/rustc-demangle/0.1.9 \
crate://crates.io/rustc-workspace-hack/1.0.0 \
crate://crates.io/rustc_version/0.2.3 \
crate://crates.io/rustfix/0.4.2 \
crate://crates.io/ryu/0.2.6 \
crate://crates.io/same-file/1.0.4 \
crate://crates.io/schannel/0.1.14 \
crate://crates.io/scopeguard/0.3.3 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.9.0 \
crate://crates.io/serde/1.0.80 \
crate://crates.io/serde_derive/1.0.80 \
crate://crates.io/serde_ignored/0.0.4 \
crate://crates.io/serde_json/1.0.32 \
crate://crates.io/shell-escape/0.1.4 \
crate://crates.io/smallvec/0.6.5 \
crate://crates.io/socket2/0.3.8 \
crate://crates.io/stable_deref_trait/1.1.1 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.15.18 \
crate://crates.io/synstructure/0.10.1 \
crate://crates.io/tar/0.4.18 \
crate://crates.io/tempfile/3.0.4 \
crate://crates.io/termcolor/1.0.4 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.10.0 \
crate://crates.io/thread_local/0.3.6 \
crate://crates.io/toml/0.4.8 \
crate://crates.io/ucd-util/0.1.2 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.7 \
crate://crates.io/unicode-width/0.1.5 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.7.1 \
crate://crates.io/utf8-ranges/1.0.2 \
crate://crates.io/vcpkg/0.2.6 \
crate://crates.io/vec_map/0.8.1 \
crate://crates.io/version_check/0.1.5 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/2.2.6 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-util/0.1.1 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.6 \
crate://crates.io/wincolor/1.0.1 \
"
# FIXME: update generateme with the real MD5 of the license file
LIC_FILES_CHKSUM=" \
file://LICENSE-MIT;md5=b377b220f43d747efdec40d69fcaa69d \
file://LICENSE-APACHE;md5=1836efb2eb779966696f473ee8540542 \
"
SUMMARY = "Cargo, a package manager for Rust."
HOMEPAGE = "https://crates.io"
LICENSE = "MIT | Apache-2.0"
# includes this file if it exists but does not fail
# this is useful for anything you may want to override from
# what cargo-bitbake generates.
include cargo-${PV}.inc
include cargo.inc

View File

@@ -7,10 +7,12 @@ RUSTLIB_DEP = ""
inherit cargo
# Needed so cargo can find libbacktrace
RUSTFLAGS += "-L ${STAGING_LIBDIR}"
RUSTFLAGS += "-L ${STAGING_LIBDIR} -C link-arg=-Wl,-soname,libstd.so"
S = "${RUSTSRC}/src/libstd"
CARGO_BUILD_FLAGS += "--features '${CARGO_FEATURES}'"
do_compile_prepend () {
export CARGO_TARGET_DIR="${B}"
# For Rust 1.13.0 and newer
@@ -20,5 +22,9 @@ do_compile_prepend () {
do_install () {
mkdir -p ${D}${rustlibdir}
cp ${B}/${TARGET_SYS}/release/deps/* ${D}${rustlibdir}
# With the incremental build support added in 1.24, the libstd deps directory also includes dependency
# files that get installed. Those are really only needed to incrementally rebuild the libstd library
# itself and don't need to be installed.
rm ${B}/${TARGET_SYS}/${BUILD_DIR}/deps/*.d
cp ${B}/${TARGET_SYS}/${BUILD_DIR}/deps/* ${D}${rustlibdir}
}

View File

@@ -1,139 +0,0 @@
require rust-source-${PV}.inc
require libstd-rs.inc
LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=12922f5565a22267bd82aaeb6d3548e5"
# Don't use jemalloc as it doesn't work for many targets.
# https://github.com/rust-lang/rust/pull/37392
CARGO_BUILD_FLAGS += "--features 'panic-unwind'"
# These are taken from src/libstd/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/advapi32-sys/0.2.0 \
crate://crates.io/aho-corasick/0.5.3 \
crate://crates.io/aho-corasick/0.6.3 \
crate://crates.io/ansi_term/0.9.0 \
crate://crates.io/atty/0.2.2 \
crate://crates.io/backtrace-sys/0.1.11 \
crate://crates.io/backtrace/0.3.2 \
crate://crates.io/bitflags/0.8.2 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/clap/2.25.0 \
crate://crates.io/cmake/0.1.24 \
crate://crates.io/crossbeam/0.2.10 \
crate://crates.io/curl-sys/0.3.14 \
crate://crates.io/curl/0.4.7 \
crate://crates.io/dbghelp-sys/0.2.0 \
crate://crates.io/diff/0.1.10 \
crate://crates.io/docopt/0.8.1 \
crate://crates.io/dtoa/0.4.1 \
crate://crates.io/env_logger/0.4.3 \
crate://crates.io/error-chain/0.10.0 \
crate://crates.io/error-chain/0.11.0-rc.2 \
crate://crates.io/filetime/0.1.10 \
crate://crates.io/flate2/0.2.19 \
crate://crates.io/foreign-types/0.2.0 \
crate://crates.io/fs2/0.4.2 \
crate://crates.io/gcc/0.3.51 \
crate://crates.io/getopts/0.2.14 \
crate://crates.io/git2-curl/0.7.0 \
crate://crates.io/git2/0.6.6 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/hamcrest/0.1.1 \
crate://crates.io/handlebars/0.26.2 \
crate://crates.io/hex/0.2.0 \
crate://crates.io/idna/0.1.2 \
crate://crates.io/itoa/0.3.1 \
crate://crates.io/jobserver/0.1.6 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/0.2.8 \
crate://crates.io/libc/0.2.26 \
crate://crates.io/libgit2-sys/0.6.12 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.16 \
crate://crates.io/log/0.3.8 \
crate://crates.io/lzma-sys/0.1.7 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.0.22 \
crate://crates.io/memchr/0.1.11 \
crate://crates.io/memchr/1.0.1 \
crate://crates.io/miniz-sys/0.1.9 \
crate://crates.io/miow/0.2.1 \
crate://crates.io/net2/0.2.29 \
crate://crates.io/num-bigint/0.1.39 \
crate://crates.io/num-complex/0.1.38 \
crate://crates.io/num-integer/0.1.34 \
crate://crates.io/num-iter/0.1.33 \
crate://crates.io/num-rational/0.1.38 \
crate://crates.io/num-traits/0.1.39 \
crate://crates.io/num/0.1.39 \
crate://crates.io/num_cpus/1.6.2 \
crate://crates.io/open/1.2.0 \
crate://crates.io/openssl-probe/0.1.1 \
crate://crates.io/openssl-sys/0.9.15 \
crate://crates.io/openssl/0.9.15 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/percent-encoding/1.0.0 \
crate://crates.io/pest/0.3.3 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/psapi-sys/0.1.0 \
crate://crates.io/pulldown-cmark/0.0.14 \
crate://crates.io/quick-error/1.2.0 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/rand/0.3.15 \
crate://crates.io/regex-syntax/0.3.9 \
crate://crates.io/regex-syntax/0.4.1 \
crate://crates.io/regex/0.1.80 \
crate://crates.io/regex/0.2.2 \
crate://crates.io/rls-data/0.7.0 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rustc-demangle/0.1.4 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/same-file/0.1.3 \
crate://crates.io/scoped-tls/0.1.0 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.7.0 \
crate://crates.io/serde/1.0.10 \
crate://crates.io/serde_derive/1.0.10 \
crate://crates.io/serde_derive_internals/0.15.1 \
crate://crates.io/serde_ignored/0.0.3 \
crate://crates.io/serde_json/1.0.2 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/socket2/0.2.1 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/strsim/0.6.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/tar/0.4.13 \
crate://crates.io/tempdir/0.3.5 \
crate://crates.io/term_size/0.3.0 \
crate://crates.io/termcolor/0.3.2 \
crate://crates.io/textwrap/0.6.0 \
crate://crates.io/thread-id/2.0.0 \
crate://crates.io/thread_local/0.2.7 \
crate://crates.io/thread_local/0.3.4 \
crate://crates.io/toml/0.1.30 \
crate://crates.io/toml/0.4.2 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.1.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.5.1 \
crate://crates.io/utf8-ranges/0.1.3 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/1.0.7 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/wincolor/0.1.4 \
crate://crates.io/ws2_32-sys/0.2.1 \
crate://crates.io/xattr/0.1.11 \
crate://crates.io/xz2/0.1.3 \
crate://crates.io/yaml-rust/0.3.5 \
"

View File

@@ -1,170 +0,0 @@
require rust-source-${PV}.inc
require libstd-rs.inc
LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=c709a09d1b062d9a908e3631c1e1cdf5"
# Don't use jemalloc as it doesn't work for many targets.
# https://github.com/rust-lang/rust/pull/37392
CARGO_BUILD_FLAGS += "--features 'panic-unwind'"
# These are taken from src/libstd/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/advapi32-sys/0.2.0 \
crate://crates.io/aho-corasick/0.5.3 \
crate://crates.io/aho-corasick/0.6.3 \
crate://crates.io/ansi_term/0.9.0 \
crate://crates.io/ar/0.3.0 \
crate://crates.io/atty/0.2.2 \
crate://crates.io/backtrace-sys/0.1.12 \
crate://crates.io/backtrace/0.3.2 \
crate://crates.io/bitflags/0.7.0 \
crate://crates.io/bitflags/0.8.2 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/clap/2.26.0 \
crate://crates.io/cmake/0.1.24 \
crate://crates.io/core-foundation-sys/0.4.4 \
crate://crates.io/core-foundation/0.4.4 \
crate://crates.io/crossbeam/0.2.10 \
crate://crates.io/curl-sys/0.3.14 \
crate://crates.io/curl/0.4.8 \
crate://crates.io/dbghelp-sys/0.2.0 \
crate://crates.io/derive-new/0.3.0 \
crate://crates.io/diff/0.1.10 \
crate://crates.io/docopt/0.8.1 \
crate://crates.io/dtoa/0.4.1 \
crate://crates.io/enum_primitive/0.1.1 \
crate://crates.io/env_logger/0.3.5 \
crate://crates.io/env_logger/0.4.3 \
crate://crates.io/error-chain/0.10.0 \
crate://crates.io/error-chain/0.11.0-rc.2 \
crate://crates.io/filetime/0.1.10 \
crate://crates.io/flate2/0.2.19 \
crate://crates.io/fnv/1.0.5 \
crate://crates.io/foreign-types/0.2.0 \
crate://crates.io/fs2/0.4.2 \
crate://crates.io/futures/0.1.14 \
crate://crates.io/gcc/0.3.51 \
crate://crates.io/getopts/0.2.14 \
crate://crates.io/git2-curl/0.7.0 \
crate://crates.io/git2/0.6.6 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.2.0 \
crate://crates.io/hamcrest/0.1.1 \
crate://crates.io/handlebars/0.26.2 \
crate://crates.io/hex/0.2.0 \
crate://crates.io/home/0.3.0 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/ignore/0.2.2 \
crate://crates.io/itoa/0.3.1 \
crate://crates.io/jobserver/0.1.6 \
crate://crates.io/jsonrpc-core/7.1.0 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/languageserver-types/0.12.0 \
crate://crates.io/lazy_static/0.2.8 \
crate://crates.io/libc/0.2.29 \
crate://crates.io/libgit2-sys/0.6.12 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.16 \
crate://crates.io/log/0.3.8 \
crate://crates.io/lzma-sys/0.1.8 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.0.22 \
crate://crates.io/memchr/0.1.11 \
crate://crates.io/memchr/1.0.1 \
crate://crates.io/miniz-sys/0.1.9 \
crate://crates.io/miow/0.2.1 \
crate://crates.io/net2/0.2.31 \
crate://crates.io/num-bigint/0.1.40 \
crate://crates.io/num-complex/0.1.40 \
crate://crates.io/num-integer/0.1.35 \
crate://crates.io/num-iter/0.1.34 \
crate://crates.io/num-rational/0.1.39 \
crate://crates.io/num-traits/0.1.40 \
crate://crates.io/num/0.1.40 \
crate://crates.io/num_cpus/1.6.2 \
crate://crates.io/open/1.2.0 \
crate://crates.io/openssl-probe/0.1.1 \
crate://crates.io/openssl-sys/0.9.17 \
crate://crates.io/openssl/0.9.17 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/percent-encoding/1.0.0 \
crate://crates.io/pest/0.3.3 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/psapi-sys/0.1.0 \
crate://crates.io/pulldown-cmark/0.0.14 \
crate://crates.io/quick-error/1.2.0 \
crate://crates.io/quote/0.2.3 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/racer/2.0.10 \
crate://crates.io/rand/0.3.15 \
crate://crates.io/regex-syntax/0.3.9 \
crate://crates.io/regex-syntax/0.4.1 \
crate://crates.io/regex/0.1.80 \
crate://crates.io/regex/0.2.2 \
crate://crates.io/rls-analysis/0.6.5 \
crate://crates.io/rls-data/0.10.0 \
crate://crates.io/rls-rustc/0.1.0 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rls-vfs/0.4.4 \
crate://crates.io/rustc-demangle/0.1.5 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/rustfmt-nightly/0.2.2 \
crate://crates.io/same-file/0.1.3 \
crate://crates.io/scoped-tls/0.1.0 \
crate://crates.io/scopeguard/0.1.2 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.7.0 \
crate://crates.io/serde/1.0.11 \
crate://crates.io/serde_derive/1.0.11 \
crate://crates.io/serde_derive_internals/0.15.1 \
crate://crates.io/serde_ignored/0.0.3 \
crate://crates.io/serde_json/1.0.2 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/socket2/0.2.2 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/strings/0.1.0 \
crate://crates.io/strsim/0.6.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.8.7 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/syntex_errors/0.52.0 \
crate://crates.io/syntex_pos/0.52.0 \
crate://crates.io/syntex_syntax/0.52.0 \
crate://crates.io/tar/0.4.13 \
crate://crates.io/tempdir/0.3.5 \
crate://crates.io/term/0.4.6 \
crate://crates.io/term_size/0.3.0 \
crate://crates.io/termcolor/0.3.2 \
crate://crates.io/textwrap/0.7.0 \
crate://crates.io/thread-id/2.0.0 \
crate://crates.io/thread_local/0.2.7 \
crate://crates.io/thread_local/0.3.4 \
crate://crates.io/toml/0.2.1 \
crate://crates.io/toml/0.4.5 \
crate://crates.io/typed-arena/1.3.0 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.2.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.3 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.5.1 \
crate://crates.io/url_serde/0.2.0 \
crate://crates.io/userenv-sys/0.2.0 \
crate://crates.io/utf8-ranges/0.1.3 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/1.0.7 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/wincolor/0.1.4 \
crate://crates.io/ws2_32-sys/0.2.1 \
crate://crates.io/xattr/0.1.11 \
crate://crates.io/xz2/0.1.3 \
crate://crates.io/yaml-rust/0.3.5 \
"

View File

@@ -0,0 +1,211 @@
require rust-source-${PV}.inc
require libstd-rs.inc
LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=99c369ad81a36cd5b27f6c6968d01055"
# Don't use jemalloc as it doesn't work for many targets.
# https://github.com/rust-lang/rust/pull/37392
CARGO_FEATURES ?= "panic-unwind"
# These are taken from src/libstd/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.4 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/ar/0.3.1 \
crate://crates.io/arrayvec/0.4.7 \
crate://crates.io/atty/0.2.8 \
crate://crates.io/backtrace-sys/0.1.16 \
crate://crates.io/backtrace/0.3.5 \
crate://crates.io/bitflags/0.7.0 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bitflags/1.0.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/byteorder/1.2.1 \
crate://crates.io/cargo_metadata/0.2.3 \
crate://crates.io/cargo_metadata/0.5.3 \
crate://crates.io/cc/1.0.9 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/chrono/0.4.0 \
crate://crates.io/clap/2.31.2 \
crate://crates.io/cmake/0.1.29 \
crate://crates.io/commoncrypto-sys/0.2.0 \
crate://crates.io/commoncrypto/0.2.0 \
crate://crates.io/compiletest_rs/0.3.8 \
crate://crates.io/core-foundation-sys/0.5.1 \
crate://crates.io/core-foundation/0.5.1 \
crate://crates.io/crossbeam-deque/0.2.0 \
crate://crates.io/crossbeam-epoch/0.3.0 \
crate://crates.io/crossbeam-utils/0.2.2 \
crate://crates.io/crossbeam/0.3.2 \
crate://crates.io/crypto-hash/0.3.1 \
crate://crates.io/curl-sys/0.4.1 \
crate://crates.io/curl/0.4.11 \
crate://crates.io/derive-new/0.5.1 \
crate://crates.io/diff/0.1.11 \
crate://crates.io/dtoa/0.4.2 \
crate://crates.io/either/1.4.0 \
crate://crates.io/ena/0.9.2 \
crate://crates.io/endian-type/0.1.2 \
crate://crates.io/enum_primitive/0.1.1 \
crate://crates.io/env_logger/0.5.6 \
crate://crates.io/error-chain/0.11.0 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/filetime/0.1.15 \
crate://crates.io/flate2/1.0.1 \
crate://crates.io/fnv/1.0.6 \
crate://crates.io/foreign-types-shared/0.1.1 \
crate://crates.io/foreign-types/0.3.2 \
crate://crates.io/fs2/0.4.3 \
crate://crates.io/fuchsia-zircon-sys/0.3.3 \
crate://crates.io/fuchsia-zircon/0.3.3 \
crate://crates.io/futures/0.1.17 \
crate://crates.io/getopts/0.2.15 \
crate://crates.io/git2-curl/0.8.1 \
crate://crates.io/git2/0.7.1 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.3.0 \
crate://crates.io/handlebars/0.29.1 \
crate://crates.io/hex/0.3.1 \
crate://crates.io/home/0.3.2 \
crate://crates.io/humantime/1.1.1 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/if_chain/0.1.2 \
crate://crates.io/ignore/0.4.1 \
crate://crates.io/is-match/0.1.0 \
crate://crates.io/itertools/0.7.6 \
crate://crates.io/itoa/0.4.1 \
crate://crates.io/jobserver/0.1.11 \
crate://crates.io/json/0.11.12 \
crate://crates.io/jsonrpc-core/8.0.1 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/languageserver-types/0.35.0 \
crate://crates.io/lazy_static/0.2.11 \
crate://crates.io/lazy_static/1.0.0 \
crate://crates.io/lazycell/0.6.0 \
crate://crates.io/libc/0.2.40 \
crate://crates.io/libgit2-sys/0.7.1 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.18 \
crate://crates.io/log/0.3.9 \
crate://crates.io/log/0.4.1 \
crate://crates.io/log_settings/0.1.1 \
crate://crates.io/lzma-sys/0.1.9 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.1.2 \
crate://crates.io/memchr/2.0.1 \
crate://crates.io/memoffset/0.2.1 \
crate://crates.io/miniz-sys/0.1.10 \
crate://crates.io/miow/0.3.1 \
crate://crates.io/nibble_vec/0.0.3 \
crate://crates.io/nodrop/0.1.12 \
crate://crates.io/num-integer/0.1.36 \
crate://crates.io/num-iter/0.1.35 \
crate://crates.io/num-traits/0.1.43 \
crate://crates.io/num-traits/0.2.2 \
crate://crates.io/num/0.1.42 \
crate://crates.io/num_cpus/1.8.0 \
crate://crates.io/open/1.2.1 \
crate://crates.io/openssl-probe/0.1.2 \
crate://crates.io/openssl-sys/0.9.27 \
crate://crates.io/openssl/0.10.5 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/parking_lot/0.5.3 \
crate://crates.io/parking_lot_core/0.2.13 \
crate://crates.io/percent-encoding/1.0.1 \
crate://crates.io/pest/0.3.3 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/proc-macro2/0.2.3 \
crate://crates.io/pulldown-cmark/0.1.2 \
crate://crates.io/quick-error/1.2.1 \
crate://crates.io/quine-mc_cluskey/0.2.4 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/quote/0.4.2 \
crate://crates.io/racer/2.0.13 \
crate://crates.io/radix_trie/0.1.2 \
crate://crates.io/rand/0.4.2 \
crate://crates.io/rayon-core/1.4.0 \
crate://crates.io/rayon/1.0.0 \
crate://crates.io/redox_syscall/0.1.37 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.5.3 \
crate://crates.io/regex/0.2.10 \
crate://crates.io/remove_dir_all/0.5.0 \
crate://crates.io/rls-analysis/0.11.3 \
crate://crates.io/rls-blacklist/0.1.0 \
crate://crates.io/rls-data/0.15.0 \
crate://crates.io/rls-rustc/0.2.2 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rls-vfs/0.4.5 \
crate://crates.io/rustc-ap-rustc_cratesio_shim/94.0.0 \
crate://crates.io/rustc-ap-rustc_data_structures/94.0.0 \
crate://crates.io/rustc-ap-rustc_errors/94.0.0 \
crate://crates.io/rustc-ap-serialize/94.0.0 \
crate://crates.io/rustc-ap-syntax/94.0.0 \
crate://crates.io/rustc-ap-syntax_pos/94.0.0 \
crate://crates.io/rustc-demangle/0.1.7 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/same-file/1.0.2 \
crate://crates.io/schannel/0.1.11 \
crate://crates.io/scoped-tls/0.1.1 \
crate://crates.io/scopeguard/0.3.3 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.9.0 \
crate://crates.io/serde/1.0.35 \
crate://crates.io/serde_derive/1.0.35 \
crate://crates.io/serde_derive_internals/0.22.1 \
crate://crates.io/serde_ignored/0.0.4 \
crate://crates.io/serde_json/1.0.13 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/shlex/0.1.1 \
crate://crates.io/smallvec/0.6.0 \
crate://crates.io/socket2/0.3.4 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.12.14 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/syntex_errors/0.52.0 \
crate://crates.io/syntex_pos/0.52.0 \
crate://crates.io/syntex_syntax/0.52.0 \
crate://crates.io/tar/0.4.14 \
crate://crates.io/tempdir/0.3.7 \
crate://crates.io/tempfile/3.0.2 \
crate://crates.io/term/0.4.6 \
crate://crates.io/term/0.5.1 \
crate://crates.io/termcolor/0.3.6 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.9.0 \
crate://crates.io/thread_local/0.3.5 \
crate://crates.io/time/0.1.39 \
crate://crates.io/toml-query/0.6.0 \
crate://crates.io/toml/0.2.1 \
crate://crates.io/toml/0.4.5 \
crate://crates.io/ucd-util/0.1.1 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.2.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.3 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.7.0 \
crate://crates.io/url_serde/0.2.0 \
crate://crates.io/userenv-sys/0.2.0 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/2.1.4 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.4 \
crate://crates.io/wincolor/0.1.6 \
crate://crates.io/xattr/0.1.11 \
crate://crates.io/xz2/0.1.4 \
crate://crates.io/yaml-rust/0.3.5 \
"

View File

@@ -0,0 +1,254 @@
require rust-source-${PV}.inc
require libstd-rs.inc
LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=99c369ad81a36cd5b27f6c6968d01055"
# Don't use jemalloc as it doesn't work for many targets.
# https://github.com/rust-lang/rust/pull/37392
CARGO_FEATURES ?= "panic-unwind"
# These are taken from src/libstd/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.4 \
crate://crates.io/ammonia/1.1.0 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/ar/0.3.1 \
crate://crates.io/arrayvec/0.4.7 \
crate://crates.io/assert_cli/0.5.4 \
crate://crates.io/atty/0.2.8 \
crate://crates.io/backtrace-sys/0.1.16 \
crate://crates.io/backtrace/0.3.6 \
crate://crates.io/bitflags/0.7.0 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bitflags/1.0.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/bytecount/0.2.0 \
crate://crates.io/byteorder/1.2.2 \
crate://crates.io/cargo_metadata/0.3.3 \
crate://crates.io/cargo_metadata/0.5.4 \
crate://crates.io/cc/1.0.10 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/chrono/0.4.1 \
crate://crates.io/clap/2.31.2 \
crate://crates.io/clippy_lints/0.0.197 \
crate://crates.io/cmake/0.1.30 \
crate://crates.io/colored/1.6.0 \
crate://crates.io/commoncrypto-sys/0.2.0 \
crate://crates.io/commoncrypto/0.2.0 \
crate://crates.io/compiletest_rs/0.3.9 \
crate://crates.io/core-foundation-sys/0.5.1 \
crate://crates.io/core-foundation/0.5.1 \
crate://crates.io/crossbeam-deque/0.2.0 \
crate://crates.io/crossbeam-epoch/0.3.1 \
crate://crates.io/crossbeam-utils/0.2.2 \
crate://crates.io/crossbeam/0.3.2 \
crate://crates.io/crypto-hash/0.3.1 \
crate://crates.io/curl-sys/0.4.2 \
crate://crates.io/curl/0.4.12 \
crate://crates.io/debug_unreachable/0.1.1 \
crate://crates.io/derive-new/0.5.2 \
crate://crates.io/diff/0.1.11 \
crate://crates.io/difference/1.0.0 \
crate://crates.io/difference/2.0.0 \
crate://crates.io/dtoa/0.4.2 \
crate://crates.io/either/1.5.0 \
crate://crates.io/elasticlunr-rs/2.2.0 \
crate://crates.io/ena/0.9.2 \
crate://crates.io/endian-type/0.1.2 \
crate://crates.io/enum_primitive/0.1.1 \
crate://crates.io/env_logger/0.5.8 \
crate://crates.io/environment/0.1.1 \
crate://crates.io/error-chain/0.11.0 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/filetime/0.1.15 \
crate://crates.io/filetime/0.2.0 \
crate://crates.io/fixedbitset/0.1.9 \
crate://crates.io/flate2/1.0.1 \
crate://crates.io/fnv/1.0.6 \
crate://crates.io/foreign-types-shared/0.1.1 \
crate://crates.io/foreign-types/0.3.2 \
crate://crates.io/fs2/0.4.3 \
crate://crates.io/fuchsia-zircon-sys/0.3.3 \
crate://crates.io/fuchsia-zircon/0.3.3 \
crate://crates.io/futf/0.1.3 \
crate://crates.io/futures/0.1.20 \
crate://crates.io/getopts/0.2.17 \
crate://crates.io/git2-curl/0.8.1 \
crate://crates.io/git2/0.7.1 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.3.0 \
crate://crates.io/handlebars/0.32.0 \
crate://crates.io/hex/0.3.1 \
crate://crates.io/home/0.3.2 \
crate://crates.io/html5ever/0.22.0 \
crate://crates.io/humantime/1.1.1 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/if_chain/0.1.2 \
crate://crates.io/ignore/0.4.1 \
crate://crates.io/is-match/0.1.0 \
crate://crates.io/itertools/0.7.8 \
crate://crates.io/itoa/0.4.1 \
crate://crates.io/jobserver/0.1.11 \
crate://crates.io/json/0.11.13 \
crate://crates.io/jsonrpc-core/8.0.1 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/languageserver-types/0.39.0 \
crate://crates.io/lazy_static/0.2.11 \
crate://crates.io/lazy_static/1.0.0 \
crate://crates.io/lazycell/0.6.0 \
crate://crates.io/libc/0.2.40 \
crate://crates.io/libgit2-sys/0.7.1 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.18 \
crate://crates.io/log/0.3.9 \
crate://crates.io/log/0.4.1 \
crate://crates.io/log_settings/0.1.1 \
crate://crates.io/lzma-sys/0.1.9 \
crate://crates.io/mac/0.1.1 \
crate://crates.io/maplit/1.0.1 \
crate://crates.io/markup5ever/0.7.2 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.1.7 \
crate://crates.io/memchr/2.0.1 \
crate://crates.io/memoffset/0.2.1 \
crate://crates.io/miniz-sys/0.1.10 \
crate://crates.io/miow/0.3.1 \
crate://crates.io/nibble_vec/0.0.4 \
crate://crates.io/nodrop/0.1.12 \
crate://crates.io/num-integer/0.1.36 \
crate://crates.io/num-traits/0.1.43 \
crate://crates.io/num-traits/0.2.2 \
crate://crates.io/num_cpus/1.8.0 \
crate://crates.io/open/1.2.1 \
crate://crates.io/openssl-probe/0.1.2 \
crate://crates.io/openssl-sys/0.9.28 \
crate://crates.io/openssl/0.10.6 \
crate://crates.io/ordermap/0.3.5 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/parking_lot/0.5.5 \
crate://crates.io/parking_lot_core/0.2.14 \
crate://crates.io/percent-encoding/1.0.1 \
crate://crates.io/pest/1.0.6 \
crate://crates.io/pest_derive/1.0.7 \
crate://crates.io/petgraph/0.4.12 \
crate://crates.io/phf/0.7.21 \
crate://crates.io/phf_codegen/0.7.21 \
crate://crates.io/phf_generator/0.7.21 \
crate://crates.io/phf_shared/0.7.21 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/precomputed-hash/0.1.1 \
crate://crates.io/pretty_assertions/0.5.1 \
crate://crates.io/proc-macro2/0.2.3 \
crate://crates.io/proc-macro2/0.3.6 \
crate://crates.io/pulldown-cmark/0.1.2 \
crate://crates.io/quick-error/1.2.1 \
crate://crates.io/quine-mc_cluskey/0.2.4 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/quote/0.4.2 \
crate://crates.io/quote/0.5.1 \
crate://crates.io/racer/2.0.13 \
crate://crates.io/radix_trie/0.1.3 \
crate://crates.io/rand/0.3.22 \
crate://crates.io/rand/0.4.2 \
crate://crates.io/rayon-core/1.4.0 \
crate://crates.io/rayon/1.0.1 \
crate://crates.io/redox_syscall/0.1.37 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.5.5 \
crate://crates.io/regex/0.2.10 \
crate://crates.io/remove_dir_all/0.5.1 \
crate://crates.io/rls-analysis/0.12.1 \
crate://crates.io/rls-blacklist/0.1.2 \
crate://crates.io/rls-data/0.15.0 \
crate://crates.io/rls-rustc/0.2.2 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rls-vfs/0.4.5 \
crate://crates.io/rustc-ap-rustc_cratesio_shim/121.0.0 \
crate://crates.io/rustc-ap-rustc_data_structures/121.0.0 \
crate://crates.io/rustc-ap-rustc_errors/121.0.0 \
crate://crates.io/rustc-ap-rustc_target/121.0.0 \
crate://crates.io/rustc-ap-serialize/121.0.0 \
crate://crates.io/rustc-ap-syntax/121.0.0 \
crate://crates.io/rustc-ap-syntax_pos/121.0.0 \
crate://crates.io/rustc-demangle/0.1.7 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/rustfix/0.2.0 \
crate://crates.io/same-file/0.1.3 \
crate://crates.io/same-file/1.0.2 \
crate://crates.io/schannel/0.1.12 \
crate://crates.io/scoped-tls/0.1.1 \
crate://crates.io/scopeguard/0.3.3 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.8.0 \
crate://crates.io/semver/0.9.0 \
crate://crates.io/serde/1.0.40 \
crate://crates.io/serde_derive/1.0.40 \
crate://crates.io/serde_derive_internals/0.23.1 \
crate://crates.io/serde_ignored/0.0.4 \
crate://crates.io/serde_json/1.0.15 \
crate://crates.io/shell-escape/0.1.4 \
crate://crates.io/shlex/0.1.1 \
crate://crates.io/siphasher/0.2.2 \
crate://crates.io/skeptic/0.13.2 \
crate://crates.io/smallvec/0.6.0 \
crate://crates.io/socket2/0.3.5 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/string_cache/0.7.1 \
crate://crates.io/string_cache_codegen/0.4.0 \
crate://crates.io/string_cache_shared/0.3.0 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/strum/0.9.0 \
crate://crates.io/strum_macros/0.9.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.12.15 \
crate://crates.io/syn/0.13.1 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/syntex_errors/0.52.0 \
crate://crates.io/syntex_pos/0.52.0 \
crate://crates.io/syntex_syntax/0.52.0 \
crate://crates.io/tar/0.4.15 \
crate://crates.io/tempdir/0.3.7 \
crate://crates.io/tempfile/3.0.1 \
crate://crates.io/tendril/0.4.0 \
crate://crates.io/term/0.4.6 \
crate://crates.io/term/0.5.1 \
crate://crates.io/termcolor/0.3.6 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.9.0 \
crate://crates.io/thread_local/0.3.5 \
crate://crates.io/time/0.1.39 \
crate://crates.io/toml-query/0.6.0 \
crate://crates.io/toml/0.2.1 \
crate://crates.io/toml/0.4.6 \
crate://crates.io/ucd-util/0.1.1 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.2.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.3 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/unreachable/0.1.1 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.7.0 \
crate://crates.io/url_serde/0.2.0 \
crate://crates.io/userenv-sys/0.2.0 \
crate://crates.io/utf-8/0.7.2 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.3 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/1.0.7 \
crate://crates.io/walkdir/2.1.4 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.4 \
crate://crates.io/wincolor/0.1.6 \
crate://crates.io/xattr/0.2.1 \
crate://crates.io/xz2/0.1.4 \
crate://crates.io/yaml-rust/0.3.5 \
"

View File

@@ -1,3 +1,4 @@
require rust-cross.inc
require rust-source-${PV}.inc
require rust-snapshot-${PV}.inc

View File

@@ -1,3 +1,4 @@
require rust-cross.inc
require rust-source-${PV}.inc
require rust-snapshot-${PV}.inc

View File

@@ -1,69 +1,62 @@
SUMMARY = "LLVM compiler framework (packaged with rust)"
LICENSE = "NCSA"
SRC_URI += "file://0002-llvm-allow-env-override-of-exe-path.patch"
S = "${RUSTSRC}/src/llvm"
LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=4c0bc17c954e99fd547528d938832bfa"
inherit cmake pythonnative
DEPENDS += "ninja-native rust-llvm-native"
ARM_INSTRUCTION_SET_armv5 = "arm"
ARM_INSTRUCTION_SET_armv4t = "arm"
LLVM_RELEASE = "6.0"
LLVM_DIR = "llvm${LLVM_RELEASE}"
EXTRA_OECMAKE = " \
-DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64;PowerPC' \
-DLLVM_ENABLE_ASSERTIONS=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64;PowerPC;Mips' \
-DLLVM_BUILD_DOCS=OFF \
-DLLVM_ENABLE_TERMINFO=OFF \
-DLLVM_ENABLE_ZLIB=OFF \
-DLLVM_ENABLE_LIBXML2=OFF \
-DLLVM_ENABLE_FFI=OFF \
-DLLVM_INSTALL_UTILS=ON \
-DLLVM_BUILD_TOOLS=ON \
-DLLVM_BUILD_EXAMPLES=OFF \
-DLLVM_INCLUDE_EXAMPLES=OFF \
-DLLVM_BUILD_TESTS=OFF \
-DLLVM_INCLUDE_TESTS=OFF \
-DLLVM_TARGET_ARCH=${TARGET_ARCH} \
-DCMAKE_INSTALL_PREFIX:PATH=${libdir}/llvm-rust \
"
EXTRA_OECMAKE_append_class-target = "\
-DCMAKE_CROSSCOMPILING:BOOL=ON \
-DLLVM_BUILD_TOOLS=OFF \
-DLLVM_TABLEGEN=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-tblgen \
-DLLVM_CONFIG_PATH=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config \
"
# The debug symbols are huge here (>2GB) so suppress them since they
# provide almost no value. If you really need them then override this
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
do_compile_prepend_class-target() {
# Fix paths in llvm-config
sed -i "s|sys::path::parent_path(CurrentPath))\.str()|sys::path::parent_path(sys::path::parent_path(CurrentPath))).str()|g" ${S}/tools/llvm-config/llvm-config.cpp
# Fix the hardcoded libdir in llvm-config
sed -i 's:/lib\>:/${baselib}:g' ${S}/tools/llvm-config/llvm-config.cpp
}
do_compile() {
oe_runmake
}
do_install_append_class-target() {
# Disable checks on the native tools, since these should came from the native recipe
sed -i -e 's/\(.*APPEND.*_IMPORT_CHECK_FILES_FOR_.*{_IMPORT_PREFIX}\/bin\/.*\)/#\1/' ${D}/usr/share/llvm/cmake/LLVMExports-noconfig.cmake
}
SYSROOT_PREPROCESS_FUNCS_append_class-target = " llvm_sysroot_preprocess"
SYSROOT_PREPROCESS_FUNCS_append_class-native = " llvm_native_sysroot_preprocess"
llvm_sysroot_preprocess() {
install -d ${SYSROOT_DESTDIR}${bindir}
cp ${B}/NATIVE/bin/llvm-config ${SYSROOT_DESTDIR}/${bindir} || bbfatal "missing llvm-config"
cp ${B}/NATIVE/bin/llvm-tblgen ${SYSROOT_DESTDIR}/${bindir} || bbfatal "missing llvm-tblgen"
}
llvm_native_sysroot_preprocess() {
sysroot_stage_dir ${D}${STAGING_DIR_NATIVE}/usr/libexec ${SYSROOT_DESTDIR}${bindir}
}
PACKAGES =+ "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-liblto"
# Add the extra locations to avoid the complaints about unpackaged files
FILES_${PN} += "${libdir}/libLLVM*.so"
FILES_${PN}-dev += "${datadir}/llvm"
FILES_${PN}-bugpointpasses = "${libdir}/BugpointPasses.so"
FILES_${PN}-llvmhello = "${libdir}/LLVMHello.so"
FILES_${PN}-liblto = "${libdir}/libLTO.so"
FILES_${PN}-bugpointpasses = "${libdir}/llvm-rust/lib/BugpointPasses.so"
FILES_${PN}-llvmhello = "${libdir}/llvm-rust/lib/LLVMHello.so"
FILES_${PN}-liblto = "${libdir}/llvm-rust/lib/libLTO.so.*"
FILES_${PN}-staticdev =+ "${libdir}/llvm-rust/*/*.a"
FILES_${PN} += "${libdir}/libLLVM*.so.* ${libdir}/llvm-rust/lib/*.so.* ${libdir}/llvm-rust/bin"
FILES_${PN}-dev += "${datadir}/llvm ${libdir}/llvm-rust/lib/*.so ${libdir}/llvm-rust/include ${libdir}/llvm-rust/share ${libdir}/llvm-rust/lib/cmake"
BBCLASSEXTEND = "native"

View File

@@ -0,0 +1,70 @@
From aeccf16eaccdd80e4d5ecaa51673ce4b2bac1130 Mon Sep 17 00:00:00 2001
From: Martin Kelly <mkelly@xevo.com>
Date: Fri, 19 May 2017 00:22:57 -0700
Subject: [PATCH 2/2] llvm: allow env override of exe path
When using a native llvm-config from inside a sysroot, we need llvm-config to
return the libraries, include directories, etc. from inside the sysroot rather
than from the native sysroot. Thus provide an env override for calling
llvm-config from a target sysroot.
To let it work in multilib environment, we need to provide a knob to supply
multilib dirname as well
Upstream-Status: Inappropriate [OE-Specific]
Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
tools/llvm-config/llvm-config.cpp | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
Index: llvm/tools/llvm-config/llvm-config.cpp
===================================================================
--- llvm.orig/tools/llvm-config/llvm-config.cpp
+++ llvm/tools/llvm-config/llvm-config.cpp
@@ -225,6 +225,13 @@ Typical components:\n\
/// \brief Compute the path to the main executable.
std::string GetExecutablePath(const char *Argv0) {
+ // Hack for Yocto: we need to override the root path when we are using
+ // llvm-config from within a target sysroot.
+ const char *Sysroot = std::getenv("YOCTO_ALTERNATE_EXE_PATH");
+ if (Sysroot != nullptr) {
+ return Sysroot;
+ }
+
// This just needs to be some symbol in the binary; C++ doesn't
// allow taking the address of ::main however.
void *P = (void *)(intptr_t)GetExecutablePath;
@@ -306,12 +313,21 @@ int main(int argc, char **argv) {
std::string ActivePrefix, ActiveBinDir, ActiveIncludeDir, ActiveLibDir,
ActiveCMakeDir;
std::string ActiveIncludeOption;
+ // Hack for Yocto: we need to override the multilib path when we are using
+ // llvm-config from within a target sysroot.
+ std::string Multilibdir;
+ if (std::getenv("YOCTO_ALTERNATE_MULTILIB_NAME") != nullptr)
+ Multilibdir = std::getenv("YOCTO_ALTERNATE_MULTILIB_NAME");
+ else
+ Multilibdir = "/lib" LLVM_LIBDIR_SUFFIX;
+
if (IsInDevelopmentTree) {
ActiveIncludeDir = std::string(LLVM_SRC_ROOT) + "/include";
ActivePrefix = CurrentExecPrefix;
// CMake organizes the products differently than a normal prefix style
// layout.
+
switch (DevelopmentTreeLayout) {
case CMakeStyle:
ActiveBinDir = ActiveObjRoot + "/bin";
@@ -336,7 +352,7 @@ int main(int argc, char **argv) {
SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
sys::fs::make_absolute(ActivePrefix, path);
ActiveBinDir = path.str();
- ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+ ActiveLibDir = ActivePrefix + Multilibdir;
ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
ActiveIncludeOption = "-I" + ActiveIncludeDir;
}

View File

@@ -1,26 +0,0 @@
# Specifics for Rust 1.20.0
## This is information on the rust-snapshot (binary) used to build our current release.
## snapshot info is taken from rust/src/stage0.txt
## TODO: find a way to add additional SRC_URIs based on the contents of an
## earlier SRC_URI.
RS_VERSION = "1.19.0"
RUST_STD_SNAPSHOT = "rust-std-${RS_VERSION}-${RUST_BUILD_SYS}"
RUSTC_SNAPSHOT = "rustc-${RS_VERSION}-${RUST_BUILD_SYS}"
CARGO_VERSION = "0.20.0"
CARGO_SNAPSHOT = "cargo-${CARGO_VERSION}-${RUST_BUILD_SYS}"
SRC_URI += " \
https://static.rust-lang.org/dist/${RUST_STD_SNAPSHOT}.tar.gz;name=rust-std-snapshot;subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${RUSTC_SNAPSHOT}.tar.gz;name=rustc-snapshot;subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot;subdir=rust-snapshot-components \
"
# These are x86_64-unknown-linux-gnu hashes, how can we add more?
SRC_URI[rustc-snapshot.md5sum] = "e5077b80cc953a1fb9c767aa039d5984"
SRC_URI[rustc-snapshot.sha256sum] = "4c8df3088d17c8e06bf58d453d39bd521487defcefc8193203b80f0fb797d6fe"
SRC_URI[rust-std-snapshot.md5sum] = "2bff47764df01c99f349908601c10478"
SRC_URI[rust-std-snapshot.sha256sum] = "5905803e8a127f656bf253978692f0d6cf6c9206c527e4d6d7e981980618d1b6"
SRC_URI[cargo-snapshot.md5sum] = "63aa861b029eec9f559f4fb5a10c287d"
SRC_URI[cargo-snapshot.sha256sum] = "a677d13b01d00ad13edf75c7d1b484421c7fc09338bf9ed6d456b4685bb42ed1"

View File

@@ -1,26 +0,0 @@
# Specifics for Rust 1.21.0
## This is information on the rust-snapshot (binary) used to build our current release.
## snapshot info is taken from rust/src/stage0.txt
## TODO: find a way to add additional SRC_URIs based on the contents of an
## earlier SRC_URI.
RS_VERSION = "1.20.0"
RUST_STD_SNAPSHOT = "rust-std-${RS_VERSION}-${RUST_BUILD_SYS}"
RUSTC_SNAPSHOT = "rustc-${RS_VERSION}-${RUST_BUILD_SYS}"
CARGO_VERSION = "0.21.0"
CARGO_SNAPSHOT = "cargo-${CARGO_VERSION}-${RUST_BUILD_SYS}"
SRC_URI += " \
https://static.rust-lang.org/dist/${RUST_STD_SNAPSHOT}.tar.gz;name=rust-std-snapshot;subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${RUSTC_SNAPSHOT}.tar.gz;name=rustc-snapshot;subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot;subdir=rust-snapshot-components \
"
# These are x86_64-unknown-linux-gnu hashes, how can we add more?
SRC_URI[rustc-snapshot.md5sum] = "c6276176ec6061b61ae73617a64bceb0"
SRC_URI[rustc-snapshot.sha256sum] = "000e776431718a32b5d40c4aa6e09b3425f0b71dea8c95e718d29b8c0f5b35d3"
SRC_URI[rust-std-snapshot.md5sum] = "8c0f7355b66830517a51a2bd6f530327"
SRC_URI[rust-std-snapshot.sha256sum] = "a1b3e13b9d6f9aa713783145cb83070b1dabbe17349043b3528031d7712ca929"
SRC_URI[cargo-snapshot.md5sum] = "0e5389d2e38a14933dda77db8172cb1f"
SRC_URI[cargo-snapshot.sha256sum] = "caccf4ab039c806a9e6fdc7fe389cc88fb771e28e30d93c07a5c56ef845cdf57"

View File

@@ -0,0 +1,26 @@
# Specifics for Rust 1.26.2
## This is information on the rust-snapshot (binary) used to build our current release.
## snapshot info is taken from rust/src/stage0.txt
## TODO: find a way to add additional SRC_URIs based on the contents of an
## earlier SRC_URI.
RS_VERSION = "1.25.0"
RUST_STD_SNAPSHOT = "rust-std-${RS_VERSION}-${BUILD_ARCH}-unknown-linux-gnu"
RUSTC_SNAPSHOT = "rustc-${RS_VERSION}-${BUILD_ARCH}-unknown-linux-gnu"
CARGO_VERSION = "0.26.0"
CARGO_SNAPSHOT = "cargo-${CARGO_VERSION}-${BUILD_ARCH}-unknown-linux-gnu"
SRC_URI += " \
https://static.rust-lang.org/dist/${RUST_STD_SNAPSHOT}.tar.gz;name=rust-std-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${RUSTC_SNAPSHOT}.tar.gz;name=rustc-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
"
# TODO: Add hashes for other architecture toolchains as well. Make a script?
SRC_URI[rustc-snapshot-x86_64.md5sum] = "6e9c8ae2946cf6626ad6511c7a1d6c2a"
SRC_URI[rustc-snapshot-x86_64.sha256sum] = "f8f4ae2f4b76416bfa90758267df4280dd078235dfba92dac0431595493443be"
SRC_URI[rust-std-snapshot-x86_64.md5sum] = "37e9f9193413caba47134af3306328c5"
SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "a3258308e3a9fe364d63b5d782efb285ab410bdfc01d168c119122ddbc9a02e2"
SRC_URI[cargo-snapshot-x86_64.md5sum] = "b0de62d86f0ba71078471d09916873c6"
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "9ba227f2364f618dc9415dacf3a5dce17458e1cb9f6d4fe860416cb68db894e4"

View File

@@ -0,0 +1,26 @@
# Specifics for Rust 1.27.1
## This is information on the rust-snapshot (binary) used to build our current release.
## snapshot info is taken from rust/src/stage0.txt
## TODO: find a way to add additional SRC_URIs based on the contents of an
## earlier SRC_URI.
RS_VERSION = "1.26.0"
RUST_STD_SNAPSHOT = "rust-std-${RS_VERSION}-${BUILD_ARCH}-unknown-linux-gnu"
RUSTC_SNAPSHOT = "rustc-${RS_VERSION}-${BUILD_ARCH}-unknown-linux-gnu"
CARGO_VERSION = "0.27.0"
CARGO_SNAPSHOT = "cargo-${CARGO_VERSION}-${BUILD_ARCH}-unknown-linux-gnu"
SRC_URI += " \
https://static.rust-lang.org/dist/${RUST_STD_SNAPSHOT}.tar.gz;name=rust-std-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${RUSTC_SNAPSHOT}.tar.gz;name=rustc-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.gz;name=cargo-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
"
# TODO: Add hashes for other architecture toolchains as well. Make a script?
SRC_URI[rustc-snapshot-x86_64.md5sum] = "939631f19dd9ca5ae8493dc8ec2d3131"
SRC_URI[rustc-snapshot-x86_64.sha256sum] = "7ca9a30010602aaf2244c376a3cc5baa89429d54da17b8ba1cb0cdfdc846cc61"
SRC_URI[rust-std-snapshot-x86_64.md5sum] = "643460e582de498eea53ec1e93aeabab"
SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "e27cb5c21541a500c8df919e15c8d3b002456ebbe573122e7b058cf5b4c3c13a"
SRC_URI[cargo-snapshot-x86_64.md5sum] = "ca366ba1e97ffc02b72dc74859db35e2"
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "8c17710252513d8130141f2c12b4efeef67f0def252b94b246fe326a9a75043b"

View File

@@ -1,14 +0,0 @@
# Specifics for Rust 1.20.0
SRC_URI += "\
https://static.rust-lang.org/dist/rustc-${PV}-src.tar.gz;name=rust \
"
SRC_URI[rust.md5sum] = "1d3c5d25d8e6215e7d0b6d4d4c9835b9"
SRC_URI[rust.sha256sum] = "2aa4875ff4472c6e35262bbb9052cb2623da3dae6084a858cc59d36f33f18214"
# later versions of rust change the directory that they unextract to
RUSTSRC = "${WORKDIR}/rustc-${PV}-src"
# set this as our default
S = "${RUSTSRC}"
LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=12922f5565a22267bd82aaeb6d3548e5"

View File

@@ -1,14 +0,0 @@
# Specifics for Rust 1.21.0
SRC_URI += "\
https://static.rust-lang.org/dist/rustc-${PV}-src.tar.gz;name=rust \
"
SRC_URI[rust.md5sum] = "bc494706b764276613064aad52922f53"
SRC_URI[rust.sha256sum] = "1707c142244b5bd909993559c6116c81987c1de21d6207c05d3ecbe5bba548fa"
# later versions of rust change the directory that they unextract to
RUSTSRC = "${WORKDIR}/rustc-${PV}-src"
# set this as our default
S = "${RUSTSRC}"
LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=c709a09d1b062d9a908e3631c1e1cdf5"

View File

@@ -0,0 +1,18 @@
# Specifics for Rust 1.26.2
SRC_URI += " \
https://static.rust-lang.org/dist/rustc-${PV}-src.tar.gz;name=rust \
"
SRC_URI[md5sum] = "581bc81b4695cff0d9b7c57a144d01cc"
SRC_URI[sha256sum] = "fb9ecf304488c9b56600ab20cfd1937482057f7e5db7899fddb86e0774548700"
SRC_URI[rust.md5sum] = "581bc81b4695cff0d9b7c57a144d01cc"
SRC_URI[rust.sha256sum] = "fb9ecf304488c9b56600ab20cfd1937482057f7e5db7899fddb86e0774548700"
# later versions of rust change the directory that they unextract to
RUSTSRC = "${WORKDIR}/rustc-${PV}-src"
# set this as our default
S = "${RUSTSRC}"
LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=99c369ad81a36cd5b27f6c6968d01055"

View File

@@ -0,0 +1,15 @@
# Specifics for Rust 1.27.1
SRC_URI += "https://static.rust-lang.org/dist/rustc-${PV}-src.tar.gz;name=rust"
SRC_URI[md5sum] = "3d7f2a08caccb631b46084c31d2759c9"
SRC_URI[sha256sum] = "2133beb01ddc3aa09eebc769dd884533c6cfb08ce684f042497e097068d733d1"
SRC_URI[rust.md5sum] = "3d7f2a08caccb631b46084c31d2759c9"
SRC_URI[rust.sha256sum] = "2133beb01ddc3aa09eebc769dd884533c6cfb08ce684f042497e097068d733d1"
# later versions of rust change the directory that they unextract to
RUSTSRC = "${WORKDIR}/rustc-${PV}-src"
# set this as our default
S = "${RUSTSRC}"
LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=99c369ad81a36cd5b27f6c6968d01055"

View File

@@ -7,12 +7,19 @@ inherit rust
inherit cargo_common
DEPENDS += "file-native python-native"
DEPENDS_append_class-native = " rust-llvm-native"
# We generate local targets, and need to be able to locate them
export RUST_TARGET_PATH="${WORKDIR}/targets/"
export FORCE_CRATE_HASH="${BB_TASKHASH}"
export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm-rust/bin/llvm-config"
export YOCTO_ALTERNATE_MULTILIB_NAME = "/${BASELIB}"
# We can't use RUST_BUILD_SYS here because that may be "musl" if
# TCLIBC="musl". Snapshots are always -unknown-linux-gnu
SNAPSHOT_BUILD_SYS = "${BUILD_ARCH}-unknown-linux-gnu"
setup_cargo_environment () {
# The first step is to build bootstrap and some early stage tools,
# these are build for the same target as the snapshot, e.g.
@@ -20,8 +27,8 @@ setup_cargo_environment () {
# Later stages are build for the native target (i.e. target.x86_64-linux)
cargo_common_do_configure
echo "[target.${RUST_BUILD_SYS}]" >> ${CARGO_HOME}/config
echo "linker = '${RUST_TARGET_CCLD}'" >> ${CARGO_HOME}/config
printf '[target.%s]\n' "${SNAPSHOT_BUILD_SYS}" >> ${CARGO_HOME}/config
printf "linker = '%s'\n" "${RUST_BUILD_CCLD}" >> ${CARGO_HOME}/config
}
# Right now this is focused on arm-specific tune features.
@@ -33,7 +40,7 @@ def llvm_features_from_tune(d):
f = []
feat = d.getVar('TUNE_FEATURES')
if not feat:
return ""
return []
feat = frozenset(feat.split())
if 'vfpv4' in feat:
@@ -52,6 +59,12 @@ def llvm_features_from_tune(d):
if 'aarch64' in feat:
f.append("+v8")
if 'mips32' in feat:
f.append("+mips32")
if 'mips32r2' in feat:
f.append("+mips32r2")
v7=frozenset(['armv7a', 'armv7r', 'armv7m', 'armv7ve'])
if not feat.isdisjoint(v7):
f.append("+v7")
@@ -77,12 +90,7 @@ def llvm_features_from_tune(d):
if 'cortexa17' in feat:
f.append("+a17")
# Seems like it could be infered by the lack of vfp options, but we'll
# include it anyhow
if 'soft' in feat:
f.append("+soft-float")
return ','.join(f)
return f
# TARGET_CC_ARCH changes from build/cross/target so it'll do the right thing
# this should go away when https://github.com/rust-lang/rust/pull/31709 is
@@ -91,7 +99,7 @@ def llvm_features_from_cc_arch(d):
f = []
feat = d.getVar('TARGET_CC_ARCH')
if not feat:
return ""
return []
feat = frozenset(feat.split())
if '-mmmx' in feat:
@@ -115,44 +123,77 @@ def llvm_features_from_cc_arch(d):
if '-mavx2' in feat:
f.append("+avx2")
return ','.join(f)
return f
def llvm_features_from_target_fpu(d):
# TARGET_FPU can be hard or soft. +soft-float tell llvm to use soft float
# ABI. There is no option for hard.
fpu = d.getVar('TARGET_FPU', True)
return ["+soft-float"] if fpu == "soft" else []
def llvm_features(d):
return ','.join(llvm_features_from_tune(d) +
llvm_features_from_cc_arch(d) +
llvm_features_from_target_fpu(d))
## arm-unknown-linux-gnueabihf
DATA_LAYOUT[arm] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
LLVM_TARGET[arm] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[arm] = "little"
TARGET_POINTER_WIDTH[arm] = "32"
TARGET_C_INT_WIDTH[arm] = "32"
MAX_ATOMIC_WIDTH[arm] = "64"
FEATURES[arm] = "+v6,+vfp2"
## aarch64-unknown-linux-gnu
## aarch64-unknown-linux-{gnu, musl}
DATA_LAYOUT[aarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
LLVM_TARGET[aarch64] = "aarch64-unknown-linux-gnu"
LLVM_TARGET[aarch64] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[aarch64] = "little"
TARGET_POINTER_WIDTH[aarch64] = "64"
TARGET_C_INT_WIDTH[aarch64] = "32"
MAX_ATOMIC_WIDTH[aarch64] = "128"
## x86_64-unknown-linux-gnu
## x86_64-unknown-linux-{gnu, musl}
DATA_LAYOUT[x86_64] = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
LLVM_TARGET[x86_64] = "x86_64-unknown-linux-gnu"
LLVM_TARGET[x86_64] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[x86_64] = "little"
TARGET_POINTER_WIDTH[x86_64] = "64"
TARGET_C_INT_WIDTH[x86_64] = "32"
MAX_ATOMIC_WIDTH[x86_64] = "64"
## i686-unknown-linux-gnu
## i686-unknown-linux-{gnu, musl}
DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
LLVM_TARGET[i686] = "i686-unknown-linux-gnu"
LLVM_TARGET[i686] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[i686] = "little"
TARGET_POINTER_WIDTH[i686] = "32"
TARGET_C_INT_WIDTH[i686] = "32"
MAX_ATOMIC_WIDTH[i686] = "64"
## XXX: a bit of a hack so qemux86 builds, clone of i686-unknown-linux-gnu above
## XXX: a bit of a hack so qemux86 builds, clone of i686-unknown-linux-{gnu, musl} above
DATA_LAYOUT[i586] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
LLVM_TARGET[i586] = "i586-unknown-linux-gnu"
LLVM_TARGET[i586] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[i586] = "little"
TARGET_POINTER_WIDTH[i586] = "32"
TARGET_C_INT_WIDTH[i586] = "32"
MAX_ATOMIC_WIDTH[i586] = "64"
## mips-unknown-linux-{gnu, musl}
DATA_LAYOUT[mips] = "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64"
LLVM_TARGET[mips] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[mips] = "big"
TARGET_POINTER_WIDTH[mips] = "32"
TARGET_C_INT_WIDTH[mips] = "32"
MAX_ATOMIC_WIDTH[mips] = "32"
## mipsel-unknown-linux-{gnu, musl}
DATA_LAYOUT[mipsel] = "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64"
LLVM_TARGET[mipsel] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[mipsel] = "little"
TARGET_POINTER_WIDTH[mipsel] = "32"
TARGET_C_INT_WIDTH[mipsel] = "32"
MAX_ATOMIC_WIDTH[mipsel] = "32"
def arch_for(d, thing):
return d.getVar('{}_ARCH'.format(thing))
@@ -167,6 +208,8 @@ def prefix_for(d, thing):
def arch_to_rust_target_arch(arch):
if arch == "i586" or arch == "i686":
return "x86"
elif arch == "mipsel":
return "mips"
else:
return arch
@@ -182,17 +225,26 @@ def llvm_cpu(d):
trans['i686'] = "i686"
trans['i586'] = "i586"
if target in ["mips", "mipsel"]:
feat = frozenset(d.getVar('TUNE_FEATURES').split())
if "mips32r2" in feat:
trans['mipsel'] = "mips32r2"
trans['mips'] = "mips32r2"
elif "mips32" in feat:
trans['mipsel'] = "mips32"
trans['mips'] = "mips32"
try:
return trans[cpu]
except:
return trans.get(target, "generic")
TARGET_LLVM_CPU="${@llvm_cpu(d)}"
TARGET_LLVM_FEATURES = "${@llvm_features_from_tune(d)} ${@llvm_features_from_cc_arch(d)}"
TARGET_LLVM_FEATURES = "${@llvm_features(d)}"
# class-native implies TARGET=HOST, and TUNE_FEATURES only describes the real
# (original) target.
TARGET_LLVM_FEATURES_class-native = "${@llvm_features_from_cc_arch(d)}"
TARGET_LLVM_FEATURES_class-native = "${@','.join(llvm_features_from_cc_arch(d))}"
def rust_gen_target(d, thing, wd):
import json
@@ -215,10 +267,14 @@ def rust_gen_target(d, thing, wd):
tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch)
tspec['max-atomic-width'] = d.getVarFlag('MAX_ATOMIC_WIDTH', arch)
tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch)
tspec['target-c-int-width'] = d.getVarFlag('TARGET_C_INT_WIDTH', arch)
tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch)
tspec['arch'] = arch_to_rust_target_arch(arch)
tspec['os'] = "linux"
tspec['env'] = "gnu"
if "musl" in tspec['llvm-target']:
tspec['env'] = "musl"
else:
tspec['env'] = "gnu"
tspec['vendor'] = "unknown"
tspec['target-family'] = "unix"
tspec['linker'] = "{}{}gcc".format(d.getVar('CCACHE'), prefix)
@@ -233,6 +289,7 @@ def rust_gen_target(d, thing, wd):
tspec['has-rpath'] = True
tspec['has-elf-tls'] = True
tspec['position-independent-executables'] = True
tspec['panic-strategy'] = d.getVar("RUST_PANIC_STRATEGY")
# Don't use jemalloc as it doesn't work for many targets.
# https://github.com/rust-lang/rust/pull/37392
@@ -267,7 +324,7 @@ do_rust_setup_snapshot () {
# Some versions of rust (e.g. 1.18.0) tries to find cargo in stage0/bin/cargo
# and fail without it there.
mkdir -p ${RUSTSRC}/build/${BUILD_SYS}
ln -s ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${BUILD_SYS}/stage0
ln -sf ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${BUILD_SYS}/stage0
}
addtask rust_setup_snapshot after do_unpack before do_configure
do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot"
@@ -292,7 +349,7 @@ python do_configure() {
target_section = "target.{}".format(d.getVar('TARGET_SYS', True))
config.add_section(target_section)
llvm_config = d.expand("${STAGING_DIR_NATIVE}${bindir_native}/llvm-config")
llvm_config = d.expand("${YOCTO_ALTERNATE_EXE_PATH}")
config.set(target_section, "llvm-config", e(llvm_config))
config.set(target_section, "cxx", e(d.expand("${RUST_TARGET_CXX}")))

View File

@@ -1,143 +0,0 @@
require rust.inc
require rust-source-${PV}.inc
require rust-snapshot-${PV}.inc
# These are extracted from rustc/src/bootstrap/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/advapi32-sys/0.2.0 \
crate://crates.io/aho-corasick/0.5.3 \
crate://crates.io/aho-corasick/0.6.3 \
crate://crates.io/ansi_term/0.9.0 \
crate://crates.io/atty/0.2.2 \
crate://crates.io/backtrace-sys/0.1.11 \
crate://crates.io/backtrace/0.3.2 \
crate://crates.io/bitflags/0.8.2 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/clap/2.25.0 \
crate://crates.io/cmake/0.1.24 \
crate://crates.io/crossbeam/0.2.10 \
crate://crates.io/curl-sys/0.3.14 \
crate://crates.io/curl/0.4.7 \
crate://crates.io/dbghelp-sys/0.2.0 \
crate://crates.io/diff/0.1.10 \
crate://crates.io/docopt/0.8.1 \
crate://crates.io/dtoa/0.4.1 \
crate://crates.io/env_logger/0.4.3 \
crate://crates.io/error-chain/0.10.0 \
crate://crates.io/error-chain/0.11.0-rc.2 \
crate://crates.io/filetime/0.1.10 \
crate://crates.io/flate2/0.2.19 \
crate://crates.io/foreign-types/0.2.0 \
crate://crates.io/fs2/0.4.2 \
crate://crates.io/gcc/0.3.51 \
crate://crates.io/getopts/0.2.14 \
crate://crates.io/git2-curl/0.7.0 \
crate://crates.io/git2/0.6.6 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/hamcrest/0.1.1 \
crate://crates.io/handlebars/0.26.2 \
crate://crates.io/hex/0.2.0 \
crate://crates.io/idna/0.1.2 \
crate://crates.io/itoa/0.3.1 \
crate://crates.io/jobserver/0.1.6 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/lazy_static/0.2.8 \
crate://crates.io/libc/0.2.26 \
crate://crates.io/libgit2-sys/0.6.12 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.16 \
crate://crates.io/log/0.3.8 \
crate://crates.io/lzma-sys/0.1.7 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.0.22 \
crate://crates.io/memchr/0.1.11 \
crate://crates.io/memchr/1.0.1 \
crate://crates.io/miniz-sys/0.1.9 \
crate://crates.io/miow/0.2.1 \
crate://crates.io/net2/0.2.29 \
crate://crates.io/num-bigint/0.1.39 \
crate://crates.io/num-complex/0.1.38 \
crate://crates.io/num-integer/0.1.34 \
crate://crates.io/num-iter/0.1.33 \
crate://crates.io/num-rational/0.1.38 \
crate://crates.io/num-traits/0.1.39 \
crate://crates.io/num/0.1.39 \
crate://crates.io/num_cpus/1.6.2 \
crate://crates.io/open/1.2.0 \
crate://crates.io/openssl-probe/0.1.1 \
crate://crates.io/openssl-sys/0.9.15 \
crate://crates.io/openssl/0.9.15 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/percent-encoding/1.0.0 \
crate://crates.io/pest/0.3.3 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/psapi-sys/0.1.0 \
crate://crates.io/pulldown-cmark/0.0.14 \
crate://crates.io/quick-error/1.2.0 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/rand/0.3.15 \
crate://crates.io/regex-syntax/0.3.9 \
crate://crates.io/regex-syntax/0.4.1 \
crate://crates.io/regex/0.1.80 \
crate://crates.io/regex/0.2.2 \
crate://crates.io/rls-data/0.7.0 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rustc-demangle/0.1.4 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/same-file/0.1.3 \
crate://crates.io/scoped-tls/0.1.0 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.7.0 \
crate://crates.io/serde/1.0.10 \
crate://crates.io/serde_derive/1.0.10 \
crate://crates.io/serde_derive_internals/0.15.1 \
crate://crates.io/serde_ignored/0.0.3 \
crate://crates.io/serde_json/1.0.2 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/socket2/0.2.1 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/strsim/0.6.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/tar/0.4.13 \
crate://crates.io/tempdir/0.3.5 \
crate://crates.io/term_size/0.3.0 \
crate://crates.io/termcolor/0.3.2 \
crate://crates.io/textwrap/0.6.0 \
crate://crates.io/thread-id/2.0.0 \
crate://crates.io/thread_local/0.2.7 \
crate://crates.io/thread_local/0.3.4 \
crate://crates.io/toml/0.1.30 \
crate://crates.io/toml/0.4.2 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.1.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.5.1 \
crate://crates.io/utf8-ranges/0.1.3 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/1.0.7 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/wincolor/0.1.4 \
crate://crates.io/ws2_32-sys/0.2.1 \
crate://crates.io/xattr/0.1.11 \
crate://crates.io/xz2/0.1.3 \
crate://crates.io/yaml-rust/0.3.5 \
"
DEPENDS += "rust-llvm (=${PV})"
# Otherwise we'll depend on what we provide
INHIBIT_DEFAULT_RUST_DEPS_class-native = "1"
# We don't need to depend on gcc-native because yocto assumes it exists
PROVIDES_class-native = "virtual/${TARGET_PREFIX}rust"
BBCLASSEXTEND = "native"

View File

@@ -1,174 +0,0 @@
require rust.inc
require rust-source-${PV}.inc
require rust-snapshot-${PV}.inc
# These are extracted from rustc/src/bootstrap/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/advapi32-sys/0.2.0 \
crate://crates.io/aho-corasick/0.5.3 \
crate://crates.io/aho-corasick/0.6.3 \
crate://crates.io/ansi_term/0.9.0 \
crate://crates.io/ar/0.3.0 \
crate://crates.io/atty/0.2.2 \
crate://crates.io/backtrace-sys/0.1.12 \
crate://crates.io/backtrace/0.3.2 \
crate://crates.io/bitflags/0.7.0 \
crate://crates.io/bitflags/0.8.2 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/clap/2.26.0 \
crate://crates.io/cmake/0.1.24 \
crate://crates.io/core-foundation-sys/0.4.4 \
crate://crates.io/core-foundation/0.4.4 \
crate://crates.io/crossbeam/0.2.10 \
crate://crates.io/curl-sys/0.3.14 \
crate://crates.io/curl/0.4.8 \
crate://crates.io/dbghelp-sys/0.2.0 \
crate://crates.io/derive-new/0.3.0 \
crate://crates.io/diff/0.1.10 \
crate://crates.io/docopt/0.8.1 \
crate://crates.io/dtoa/0.4.1 \
crate://crates.io/enum_primitive/0.1.1 \
crate://crates.io/env_logger/0.3.5 \
crate://crates.io/env_logger/0.4.3 \
crate://crates.io/error-chain/0.10.0 \
crate://crates.io/error-chain/0.11.0-rc.2 \
crate://crates.io/filetime/0.1.10 \
crate://crates.io/flate2/0.2.19 \
crate://crates.io/fnv/1.0.5 \
crate://crates.io/foreign-types/0.2.0 \
crate://crates.io/fs2/0.4.2 \
crate://crates.io/futures/0.1.14 \
crate://crates.io/gcc/0.3.51 \
crate://crates.io/getopts/0.2.14 \
crate://crates.io/git2-curl/0.7.0 \
crate://crates.io/git2/0.6.6 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.2.0 \
crate://crates.io/hamcrest/0.1.1 \
crate://crates.io/handlebars/0.26.2 \
crate://crates.io/hex/0.2.0 \
crate://crates.io/home/0.3.0 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/ignore/0.2.2 \
crate://crates.io/itoa/0.3.1 \
crate://crates.io/jobserver/0.1.6 \
crate://crates.io/jsonrpc-core/7.1.0 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/languageserver-types/0.12.0 \
crate://crates.io/lazy_static/0.2.8 \
crate://crates.io/libc/0.2.29 \
crate://crates.io/libgit2-sys/0.6.12 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.16 \
crate://crates.io/log/0.3.8 \
crate://crates.io/lzma-sys/0.1.8 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.0.22 \
crate://crates.io/memchr/0.1.11 \
crate://crates.io/memchr/1.0.1 \
crate://crates.io/miniz-sys/0.1.9 \
crate://crates.io/miow/0.2.1 \
crate://crates.io/net2/0.2.31 \
crate://crates.io/num-bigint/0.1.40 \
crate://crates.io/num-complex/0.1.40 \
crate://crates.io/num-integer/0.1.35 \
crate://crates.io/num-iter/0.1.34 \
crate://crates.io/num-rational/0.1.39 \
crate://crates.io/num-traits/0.1.40 \
crate://crates.io/num/0.1.40 \
crate://crates.io/num_cpus/1.6.2 \
crate://crates.io/open/1.2.0 \
crate://crates.io/openssl-probe/0.1.1 \
crate://crates.io/openssl-sys/0.9.17 \
crate://crates.io/openssl/0.9.17 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/percent-encoding/1.0.0 \
crate://crates.io/pest/0.3.3 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/psapi-sys/0.1.0 \
crate://crates.io/pulldown-cmark/0.0.14 \
crate://crates.io/quick-error/1.2.0 \
crate://crates.io/quote/0.2.3 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/racer/2.0.10 \
crate://crates.io/rand/0.3.15 \
crate://crates.io/regex-syntax/0.3.9 \
crate://crates.io/regex-syntax/0.4.1 \
crate://crates.io/regex/0.1.80 \
crate://crates.io/regex/0.2.2 \
crate://crates.io/rls-analysis/0.6.5 \
crate://crates.io/rls-data/0.10.0 \
crate://crates.io/rls-rustc/0.1.0 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rls-vfs/0.4.4 \
crate://crates.io/rustc-demangle/0.1.5 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/rustfmt-nightly/0.2.2 \
crate://crates.io/same-file/0.1.3 \
crate://crates.io/scoped-tls/0.1.0 \
crate://crates.io/scopeguard/0.1.2 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.7.0 \
crate://crates.io/serde/1.0.11 \
crate://crates.io/serde_derive/1.0.11 \
crate://crates.io/serde_derive_internals/0.15.1 \
crate://crates.io/serde_ignored/0.0.3 \
crate://crates.io/serde_json/1.0.2 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/socket2/0.2.2 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/strings/0.1.0 \
crate://crates.io/strsim/0.6.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.8.7 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/syntex_errors/0.52.0 \
crate://crates.io/syntex_pos/0.52.0 \
crate://crates.io/syntex_syntax/0.52.0 \
crate://crates.io/tar/0.4.13 \
crate://crates.io/tempdir/0.3.5 \
crate://crates.io/term/0.4.6 \
crate://crates.io/term_size/0.3.0 \
crate://crates.io/termcolor/0.3.2 \
crate://crates.io/textwrap/0.7.0 \
crate://crates.io/thread-id/2.0.0 \
crate://crates.io/thread_local/0.2.7 \
crate://crates.io/thread_local/0.3.4 \
crate://crates.io/toml/0.2.1 \
crate://crates.io/toml/0.4.5 \
crate://crates.io/typed-arena/1.3.0 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.2.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.3 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.5.1 \
crate://crates.io/url_serde/0.2.0 \
crate://crates.io/userenv-sys/0.2.0 \
crate://crates.io/utf8-ranges/0.1.3 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/1.0.7 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/wincolor/0.1.4 \
crate://crates.io/ws2_32-sys/0.2.1 \
crate://crates.io/xattr/0.1.11 \
crate://crates.io/xz2/0.1.3 \
crate://crates.io/yaml-rust/0.3.5 \
"
DEPENDS += "rust-llvm (=${PV})"
# Otherwise we'll depend on what we provide
INHIBIT_DEFAULT_RUST_DEPS_class-native = "1"
# We don't need to depend on gcc-native because yocto assumes it exists
PROVIDES_class-native = "virtual/${TARGET_PREFIX}rust"
BBCLASSEXTEND = "native"

View File

@@ -0,0 +1,215 @@
require rust.inc
require rust-source-${PV}.inc
require rust-snapshot-${PV}.inc
# These are extracted from rustc/src/bootstrap/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.4 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/ar/0.3.1 \
crate://crates.io/arrayvec/0.4.7 \
crate://crates.io/atty/0.2.8 \
crate://crates.io/backtrace-sys/0.1.16 \
crate://crates.io/backtrace/0.3.5 \
crate://crates.io/bitflags/0.7.0 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bitflags/1.0.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/byteorder/1.2.1 \
crate://crates.io/cargo_metadata/0.2.3 \
crate://crates.io/cargo_metadata/0.5.3 \
crate://crates.io/cc/1.0.9 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/chrono/0.4.0 \
crate://crates.io/clap/2.31.2 \
crate://crates.io/cmake/0.1.29 \
crate://crates.io/commoncrypto-sys/0.2.0 \
crate://crates.io/commoncrypto/0.2.0 \
crate://crates.io/compiletest_rs/0.3.8 \
crate://crates.io/core-foundation-sys/0.5.1 \
crate://crates.io/core-foundation/0.5.1 \
crate://crates.io/crossbeam-deque/0.2.0 \
crate://crates.io/crossbeam-epoch/0.3.0 \
crate://crates.io/crossbeam-utils/0.2.2 \
crate://crates.io/crossbeam/0.3.2 \
crate://crates.io/crypto-hash/0.3.1 \
crate://crates.io/curl-sys/0.4.1 \
crate://crates.io/curl/0.4.11 \
crate://crates.io/derive-new/0.5.1 \
crate://crates.io/diff/0.1.11 \
crate://crates.io/dtoa/0.4.2 \
crate://crates.io/either/1.4.0 \
crate://crates.io/ena/0.9.2 \
crate://crates.io/endian-type/0.1.2 \
crate://crates.io/enum_primitive/0.1.1 \
crate://crates.io/env_logger/0.5.6 \
crate://crates.io/error-chain/0.11.0 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/filetime/0.1.15 \
crate://crates.io/flate2/1.0.1 \
crate://crates.io/fnv/1.0.6 \
crate://crates.io/foreign-types-shared/0.1.1 \
crate://crates.io/foreign-types/0.3.2 \
crate://crates.io/fs2/0.4.3 \
crate://crates.io/fuchsia-zircon-sys/0.3.3 \
crate://crates.io/fuchsia-zircon/0.3.3 \
crate://crates.io/futures/0.1.17 \
crate://crates.io/getopts/0.2.15 \
crate://crates.io/git2-curl/0.8.1 \
crate://crates.io/git2/0.7.1 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.3.0 \
crate://crates.io/handlebars/0.29.1 \
crate://crates.io/hex/0.3.1 \
crate://crates.io/home/0.3.2 \
crate://crates.io/humantime/1.1.1 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/if_chain/0.1.2 \
crate://crates.io/ignore/0.4.1 \
crate://crates.io/is-match/0.1.0 \
crate://crates.io/itertools/0.7.6 \
crate://crates.io/itoa/0.4.1 \
crate://crates.io/jobserver/0.1.11 \
crate://crates.io/json/0.11.12 \
crate://crates.io/jsonrpc-core/8.0.1 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/languageserver-types/0.35.0 \
crate://crates.io/lazy_static/0.2.11 \
crate://crates.io/lazy_static/1.0.0 \
crate://crates.io/lazycell/0.6.0 \
crate://crates.io/libc/0.2.40 \
crate://crates.io/libgit2-sys/0.7.1 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.18 \
crate://crates.io/log/0.3.9 \
crate://crates.io/log/0.4.1 \
crate://crates.io/log_settings/0.1.1 \
crate://crates.io/lzma-sys/0.1.9 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.1.2 \
crate://crates.io/memchr/2.0.1 \
crate://crates.io/memoffset/0.2.1 \
crate://crates.io/miniz-sys/0.1.10 \
crate://crates.io/miow/0.3.1 \
crate://crates.io/nibble_vec/0.0.3 \
crate://crates.io/nodrop/0.1.12 \
crate://crates.io/num-integer/0.1.36 \
crate://crates.io/num-iter/0.1.35 \
crate://crates.io/num-traits/0.1.43 \
crate://crates.io/num-traits/0.2.2 \
crate://crates.io/num/0.1.42 \
crate://crates.io/num_cpus/1.8.0 \
crate://crates.io/open/1.2.1 \
crate://crates.io/openssl-probe/0.1.2 \
crate://crates.io/openssl-sys/0.9.27 \
crate://crates.io/openssl/0.10.5 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/parking_lot/0.5.3 \
crate://crates.io/parking_lot_core/0.2.13 \
crate://crates.io/percent-encoding/1.0.1 \
crate://crates.io/pest/0.3.3 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/proc-macro2/0.2.3 \
crate://crates.io/pulldown-cmark/0.1.2 \
crate://crates.io/quick-error/1.2.1 \
crate://crates.io/quine-mc_cluskey/0.2.4 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/quote/0.4.2 \
crate://crates.io/racer/2.0.13 \
crate://crates.io/radix_trie/0.1.2 \
crate://crates.io/rand/0.4.2 \
crate://crates.io/rayon-core/1.4.0 \
crate://crates.io/rayon/1.0.0 \
crate://crates.io/redox_syscall/0.1.37 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.5.3 \
crate://crates.io/regex/0.2.10 \
crate://crates.io/remove_dir_all/0.5.0 \
crate://crates.io/rls-analysis/0.11.3 \
crate://crates.io/rls-blacklist/0.1.0 \
crate://crates.io/rls-data/0.15.0 \
crate://crates.io/rls-rustc/0.2.2 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rls-vfs/0.4.5 \
crate://crates.io/rustc-ap-rustc_cratesio_shim/94.0.0 \
crate://crates.io/rustc-ap-rustc_data_structures/94.0.0 \
crate://crates.io/rustc-ap-rustc_errors/94.0.0 \
crate://crates.io/rustc-ap-serialize/94.0.0 \
crate://crates.io/rustc-ap-syntax/94.0.0 \
crate://crates.io/rustc-ap-syntax_pos/94.0.0 \
crate://crates.io/rustc-demangle/0.1.7 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/same-file/1.0.2 \
crate://crates.io/schannel/0.1.11 \
crate://crates.io/scoped-tls/0.1.1 \
crate://crates.io/scopeguard/0.3.3 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.9.0 \
crate://crates.io/serde/1.0.35 \
crate://crates.io/serde_derive/1.0.35 \
crate://crates.io/serde_derive_internals/0.22.1 \
crate://crates.io/serde_ignored/0.0.4 \
crate://crates.io/serde_json/1.0.13 \
crate://crates.io/shell-escape/0.1.3 \
crate://crates.io/shlex/0.1.1 \
crate://crates.io/smallvec/0.6.0 \
crate://crates.io/socket2/0.3.4 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.12.14 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/syntex_errors/0.52.0 \
crate://crates.io/syntex_pos/0.52.0 \
crate://crates.io/syntex_syntax/0.52.0 \
crate://crates.io/tar/0.4.14 \
crate://crates.io/tempdir/0.3.7 \
crate://crates.io/tempfile/3.0.2 \
crate://crates.io/term/0.4.6 \
crate://crates.io/term/0.5.1 \
crate://crates.io/termcolor/0.3.6 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.9.0 \
crate://crates.io/thread_local/0.3.5 \
crate://crates.io/time/0.1.39 \
crate://crates.io/toml-query/0.6.0 \
crate://crates.io/toml/0.2.1 \
crate://crates.io/toml/0.4.5 \
crate://crates.io/ucd-util/0.1.1 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.2.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.3 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.7.0 \
crate://crates.io/url_serde/0.2.0 \
crate://crates.io/userenv-sys/0.2.0 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.2 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/2.1.4 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.4 \
crate://crates.io/wincolor/0.1.6 \
crate://crates.io/xattr/0.1.11 \
crate://crates.io/xz2/0.1.4 \
crate://crates.io/yaml-rust/0.3.5 \
"
DEPENDS += "rust-llvm (=${PV})"
# Otherwise we'll depend on what we provide
INHIBIT_DEFAULT_RUST_DEPS_class-native = "1"
# We don't need to depend on gcc-native because yocto assumes it exists
PROVIDES_class-native = "virtual/${TARGET_PREFIX}rust"
BBCLASSEXTEND = "native"

View File

@@ -0,0 +1,258 @@
require rust.inc
require rust-source-${PV}.inc
require rust-snapshot-${PV}.inc
# These are extracted from rustc/src/bootstrap/Cargo.toml via cargo-bitbake
SRC_URI += " \
crate://crates.io/aho-corasick/0.6.4 \
crate://crates.io/ammonia/1.1.0 \
crate://crates.io/ansi_term/0.11.0 \
crate://crates.io/ar/0.3.1 \
crate://crates.io/arrayvec/0.4.7 \
crate://crates.io/assert_cli/0.5.4 \
crate://crates.io/atty/0.2.8 \
crate://crates.io/backtrace-sys/0.1.16 \
crate://crates.io/backtrace/0.3.6 \
crate://crates.io/bitflags/0.7.0 \
crate://crates.io/bitflags/0.9.1 \
crate://crates.io/bitflags/1.0.1 \
crate://crates.io/bufstream/0.1.3 \
crate://crates.io/bytecount/0.2.0 \
crate://crates.io/byteorder/1.2.2 \
crate://crates.io/cargo_metadata/0.3.3 \
crate://crates.io/cargo_metadata/0.5.4 \
crate://crates.io/cc/1.0.10 \
crate://crates.io/cfg-if/0.1.2 \
crate://crates.io/chrono/0.4.1 \
crate://crates.io/clap/2.31.2 \
crate://crates.io/clippy_lints/0.0.197 \
crate://crates.io/cmake/0.1.30 \
crate://crates.io/colored/1.6.0 \
crate://crates.io/commoncrypto-sys/0.2.0 \
crate://crates.io/commoncrypto/0.2.0 \
crate://crates.io/compiletest_rs/0.3.9 \
crate://crates.io/core-foundation-sys/0.5.1 \
crate://crates.io/core-foundation/0.5.1 \
crate://crates.io/crossbeam-deque/0.2.0 \
crate://crates.io/crossbeam-epoch/0.3.1 \
crate://crates.io/crossbeam-utils/0.2.2 \
crate://crates.io/crossbeam/0.3.2 \
crate://crates.io/crypto-hash/0.3.1 \
crate://crates.io/curl-sys/0.4.2 \
crate://crates.io/curl/0.4.12 \
crate://crates.io/debug_unreachable/0.1.1 \
crate://crates.io/derive-new/0.5.2 \
crate://crates.io/diff/0.1.11 \
crate://crates.io/difference/1.0.0 \
crate://crates.io/difference/2.0.0 \
crate://crates.io/dtoa/0.4.2 \
crate://crates.io/either/1.5.0 \
crate://crates.io/elasticlunr-rs/2.2.0 \
crate://crates.io/ena/0.9.2 \
crate://crates.io/endian-type/0.1.2 \
crate://crates.io/enum_primitive/0.1.1 \
crate://crates.io/env_logger/0.5.8 \
crate://crates.io/environment/0.1.1 \
crate://crates.io/error-chain/0.11.0 \
crate://crates.io/failure/0.1.1 \
crate://crates.io/failure_derive/0.1.1 \
crate://crates.io/filetime/0.1.15 \
crate://crates.io/filetime/0.2.0 \
crate://crates.io/fixedbitset/0.1.9 \
crate://crates.io/flate2/1.0.1 \
crate://crates.io/fnv/1.0.6 \
crate://crates.io/foreign-types-shared/0.1.1 \
crate://crates.io/foreign-types/0.3.2 \
crate://crates.io/fs2/0.4.3 \
crate://crates.io/fuchsia-zircon-sys/0.3.3 \
crate://crates.io/fuchsia-zircon/0.3.3 \
crate://crates.io/futf/0.1.3 \
crate://crates.io/futures/0.1.20 \
crate://crates.io/getopts/0.2.17 \
crate://crates.io/git2-curl/0.8.1 \
crate://crates.io/git2/0.7.1 \
crate://crates.io/glob/0.2.11 \
crate://crates.io/globset/0.3.0 \
crate://crates.io/handlebars/0.32.0 \
crate://crates.io/hex/0.3.1 \
crate://crates.io/home/0.3.2 \
crate://crates.io/html5ever/0.22.0 \
crate://crates.io/humantime/1.1.1 \
crate://crates.io/idna/0.1.4 \
crate://crates.io/if_chain/0.1.2 \
crate://crates.io/ignore/0.4.1 \
crate://crates.io/is-match/0.1.0 \
crate://crates.io/itertools/0.7.8 \
crate://crates.io/itoa/0.4.1 \
crate://crates.io/jobserver/0.1.11 \
crate://crates.io/json/0.11.13 \
crate://crates.io/jsonrpc-core/8.0.1 \
crate://crates.io/kernel32-sys/0.2.2 \
crate://crates.io/languageserver-types/0.39.0 \
crate://crates.io/lazy_static/0.2.11 \
crate://crates.io/lazy_static/1.0.0 \
crate://crates.io/lazycell/0.6.0 \
crate://crates.io/libc/0.2.40 \
crate://crates.io/libgit2-sys/0.7.1 \
crate://crates.io/libssh2-sys/0.2.6 \
crate://crates.io/libz-sys/1.0.18 \
crate://crates.io/log/0.3.9 \
crate://crates.io/log/0.4.1 \
crate://crates.io/log_settings/0.1.1 \
crate://crates.io/lzma-sys/0.1.9 \
crate://crates.io/mac/0.1.1 \
crate://crates.io/maplit/1.0.1 \
crate://crates.io/markup5ever/0.7.2 \
crate://crates.io/matches/0.1.6 \
crate://crates.io/mdbook/0.1.7 \
crate://crates.io/memchr/2.0.1 \
crate://crates.io/memoffset/0.2.1 \
crate://crates.io/miniz-sys/0.1.10 \
crate://crates.io/miow/0.3.1 \
crate://crates.io/nibble_vec/0.0.4 \
crate://crates.io/nodrop/0.1.12 \
crate://crates.io/num-integer/0.1.36 \
crate://crates.io/num-traits/0.1.43 \
crate://crates.io/num-traits/0.2.2 \
crate://crates.io/num_cpus/1.8.0 \
crate://crates.io/open/1.2.1 \
crate://crates.io/openssl-probe/0.1.2 \
crate://crates.io/openssl-sys/0.9.28 \
crate://crates.io/openssl/0.10.6 \
crate://crates.io/ordermap/0.3.5 \
crate://crates.io/owning_ref/0.3.3 \
crate://crates.io/parking_lot/0.5.5 \
crate://crates.io/parking_lot_core/0.2.14 \
crate://crates.io/percent-encoding/1.0.1 \
crate://crates.io/pest/1.0.6 \
crate://crates.io/pest_derive/1.0.7 \
crate://crates.io/petgraph/0.4.12 \
crate://crates.io/phf/0.7.21 \
crate://crates.io/phf_codegen/0.7.21 \
crate://crates.io/phf_generator/0.7.21 \
crate://crates.io/phf_shared/0.7.21 \
crate://crates.io/pkg-config/0.3.9 \
crate://crates.io/precomputed-hash/0.1.1 \
crate://crates.io/pretty_assertions/0.5.1 \
crate://crates.io/proc-macro2/0.2.3 \
crate://crates.io/proc-macro2/0.3.6 \
crate://crates.io/pulldown-cmark/0.1.2 \
crate://crates.io/quick-error/1.2.1 \
crate://crates.io/quine-mc_cluskey/0.2.4 \
crate://crates.io/quote/0.3.15 \
crate://crates.io/quote/0.4.2 \
crate://crates.io/quote/0.5.1 \
crate://crates.io/racer/2.0.13 \
crate://crates.io/radix_trie/0.1.3 \
crate://crates.io/rand/0.3.22 \
crate://crates.io/rand/0.4.2 \
crate://crates.io/rayon-core/1.4.0 \
crate://crates.io/rayon/1.0.1 \
crate://crates.io/redox_syscall/0.1.37 \
crate://crates.io/redox_termios/0.1.1 \
crate://crates.io/regex-syntax/0.5.5 \
crate://crates.io/regex/0.2.10 \
crate://crates.io/remove_dir_all/0.5.1 \
crate://crates.io/rls-analysis/0.12.1 \
crate://crates.io/rls-blacklist/0.1.2 \
crate://crates.io/rls-data/0.15.0 \
crate://crates.io/rls-rustc/0.2.2 \
crate://crates.io/rls-span/0.4.0 \
crate://crates.io/rls-vfs/0.4.5 \
crate://crates.io/rustc-ap-rustc_cratesio_shim/121.0.0 \
crate://crates.io/rustc-ap-rustc_data_structures/121.0.0 \
crate://crates.io/rustc-ap-rustc_errors/121.0.0 \
crate://crates.io/rustc-ap-rustc_target/121.0.0 \
crate://crates.io/rustc-ap-serialize/121.0.0 \
crate://crates.io/rustc-ap-syntax/121.0.0 \
crate://crates.io/rustc-ap-syntax_pos/121.0.0 \
crate://crates.io/rustc-demangle/0.1.7 \
crate://crates.io/rustc-serialize/0.3.24 \
crate://crates.io/rustfix/0.2.0 \
crate://crates.io/same-file/0.1.3 \
crate://crates.io/same-file/1.0.2 \
crate://crates.io/schannel/0.1.12 \
crate://crates.io/scoped-tls/0.1.1 \
crate://crates.io/scopeguard/0.3.3 \
crate://crates.io/semver-parser/0.7.0 \
crate://crates.io/semver/0.8.0 \
crate://crates.io/semver/0.9.0 \
crate://crates.io/serde/1.0.40 \
crate://crates.io/serde_derive/1.0.40 \
crate://crates.io/serde_derive_internals/0.23.1 \
crate://crates.io/serde_ignored/0.0.4 \
crate://crates.io/serde_json/1.0.15 \
crate://crates.io/shell-escape/0.1.4 \
crate://crates.io/shlex/0.1.1 \
crate://crates.io/siphasher/0.2.2 \
crate://crates.io/skeptic/0.13.2 \
crate://crates.io/smallvec/0.6.0 \
crate://crates.io/socket2/0.3.5 \
crate://crates.io/stable_deref_trait/1.0.0 \
crate://crates.io/string_cache/0.7.1 \
crate://crates.io/string_cache_codegen/0.4.0 \
crate://crates.io/string_cache_shared/0.3.0 \
crate://crates.io/strsim/0.7.0 \
crate://crates.io/strum/0.9.0 \
crate://crates.io/strum_macros/0.9.0 \
crate://crates.io/syn/0.11.11 \
crate://crates.io/syn/0.12.15 \
crate://crates.io/syn/0.13.1 \
crate://crates.io/synom/0.11.3 \
crate://crates.io/synstructure/0.6.1 \
crate://crates.io/syntex_errors/0.52.0 \
crate://crates.io/syntex_pos/0.52.0 \
crate://crates.io/syntex_syntax/0.52.0 \
crate://crates.io/tar/0.4.15 \
crate://crates.io/tempdir/0.3.7 \
crate://crates.io/tempfile/3.0.1 \
crate://crates.io/tendril/0.4.0 \
crate://crates.io/term/0.4.6 \
crate://crates.io/term/0.5.1 \
crate://crates.io/termcolor/0.3.6 \
crate://crates.io/termion/1.5.1 \
crate://crates.io/textwrap/0.9.0 \
crate://crates.io/thread_local/0.3.5 \
crate://crates.io/time/0.1.39 \
crate://crates.io/toml-query/0.6.0 \
crate://crates.io/toml/0.2.1 \
crate://crates.io/toml/0.4.6 \
crate://crates.io/ucd-util/0.1.1 \
crate://crates.io/unicode-bidi/0.3.4 \
crate://crates.io/unicode-normalization/0.1.5 \
crate://crates.io/unicode-segmentation/1.2.0 \
crate://crates.io/unicode-width/0.1.4 \
crate://crates.io/unicode-xid/0.0.3 \
crate://crates.io/unicode-xid/0.0.4 \
crate://crates.io/unicode-xid/0.1.0 \
crate://crates.io/unreachable/0.1.1 \
crate://crates.io/unreachable/1.0.0 \
crate://crates.io/url/1.7.0 \
crate://crates.io/url_serde/0.2.0 \
crate://crates.io/userenv-sys/0.2.0 \
crate://crates.io/utf-8/0.7.2 \
crate://crates.io/utf8-ranges/1.0.0 \
crate://crates.io/vcpkg/0.2.3 \
crate://crates.io/vec_map/0.8.0 \
crate://crates.io/void/1.0.2 \
crate://crates.io/walkdir/1.0.7 \
crate://crates.io/walkdir/2.1.4 \
crate://crates.io/winapi-build/0.1.1 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi/0.2.8 \
crate://crates.io/winapi/0.3.4 \
crate://crates.io/wincolor/0.1.6 \
crate://crates.io/xattr/0.2.1 \
crate://crates.io/xz2/0.1.4 \
crate://crates.io/yaml-rust/0.3.5 \
"
DEPENDS += "rust-llvm (=${PV})"
# Otherwise we'll depend on what we provide
INHIBIT_DEFAULT_RUST_DEPS_class-native = "1"
# We don't need to depend on gcc-native because yocto assumes it exists
PROVIDES_class-native = "virtual/${TARGET_PREFIX}rust"
BBCLASSEXTEND = "native"

View File

@@ -1,12 +0,0 @@
require sdl2.inc
DEPENDS += "\
libc-rs \
lazy-static \
bitflags \
rand-rs \
num \
sdl2-sys \
"
LIB_SRC = "${S}/src/sdl2/lib.rs"

View File

@@ -1,8 +0,0 @@
require sdl2.inc
DEPENDS += "\
libc-rs \
libsdl2 \
"
LIB_SRC = "${S}/sdl2-sys/src/lib.rs"

View File

@@ -1,21 +0,0 @@
DESCRIPTION = "SDL2 bindings for Rust"
HOMEPAGE = "https://github.com/AngryLawyer/rust-sdl2"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "\
file://LICENSE;md5=efab06594070f714e6e655a25c330fcd \
"
inherit rust-bin
SRC_URI = "git://github.com/AngryLawyer/rust-sdl2.git;protocol=https"
SRCREV = "ffdfe48bd90d8c141f1f8a6f38a88243ad78508f"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}

View File

@@ -1,30 +0,0 @@
DESCRIPTION = "SDL2 bindings for Rust"
HOMEPAGE = "https://github.com/AngryLawyer/rust-sdl2"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "\
file://LICENSE;md5=d8786ddfe98d69e641491528dd88fa55 \
"
DEPENDS += "\
bitflags \
sdl2-sys \
sdl2-rs \
libsdl2-ttf \
"
inherit rust-bin
LIB_SRC = "${S}/src/sdl2_ttf/lib.rs"
SRC_URI = "git://github.com/andelf/rust-sdl2_ttf.git;protocol=https"
SRCREV = "203a550a804aed79e6ad6c1fcc0ed9e31e9ca2f4"
S = "${WORKDIR}/git"
do_compile () {
oe_compile_rust_lib
}
do_install () {
oe_install_rust_lib
}