Rust is currently bundling several external projects as git submodule, to have all the dependencies available at build-time. These currently are:

Below is an analysis of the unbundling effort.

jemalloc

This library was in use until 0.8. It's no more bundled in subsequent releases. See rust#9933

libuv

Note: make sure that when finally linking everything (libuv, jemalloc and rust) together, jemalloc is used consistently for all malloc/free, otherwise chaos will ensue.

LLVM

gyp

Todo. This should be the easiest one to unbundle, and the least relevant too...