gecko-dev/media/libstagefright
Nathan Froyd f7fb6722a6 Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester
This patch is really two separate changes.

The first change is that rust crates are large, standalone entities that
may contain multitudes of source files.  It therefore doesn't make sense
to keep them in SOURCES, as we have been doing.  Moving to use cargo
will require a higher-level approach, which suggests that we need a
different, higher-level representation for Rust sources in the build
system.

The representation here is to have the build system refer to things
defined in Cargo.toml files as the entities dealt with in the build
system, and let Cargo deal with the details of actually building things.
This approach means that adding a new crate to an existing library just
requires editing Rust and Cargo.toml files, rather than dealing with
moz.build, which seems more natural to Rust programmers.  By having the
source files for libraries (and binaries in subsequent iterations of
this support) checked in to the tree, we can also take advantage of
Cargo.lock files.

The second is that we switch the core build system over to building via
cargo, rather than invoking rustc directly.

We also clean up a number of leftover things from the Old Way of doing
things.  A number of tests are added to confirm that we'll only permit
crates to be built that have dependencies in-tree.
2016-08-06 00:49:26 -04:00
..
binding Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester 2016-08-06 00:49:26 -04:00
frameworks/av Bug 1285928: [mp4] Ignore non-supported entries in edit list. r=kentuckyfriedtakahe 2016-07-19 12:02:46 +10:00
gtest Bug 1286877 - do not set c-basic-offset for python-mode; r=gps 2016-07-14 10:16:42 -06:00
patches
ports
stubs
system/core
additional_headers
checkout.sh
files.py
moz.build Bug 1231764 - part 6 - build rust code via cargo; r=chmanchester 2016-08-06 00:49:26 -04:00
update-patches.sh