rust/src
Alex Crichton 1b3b273f80 Add a method of manually specifying the crate map
Apparently weak linkage and dlopen aren't quite working out for applications
like servo on android. There appears to be a bug or two in how android loads
dynamic libraries and for some reason libservo.so isn't being found.

As a temporary solution, add an extern "C" function to libstd which can be
called if you have a handle to the crate map manually. When crawling the crate
map, we then check this manual symbol before falling back to the old solutions.

cc #11731
2014-02-25 09:22:24 -08:00
..
compiler-rt@f4b221571c Update compiler-rt 2014-02-17 19:58:47 -08:00
compiletest auto merge of #12530 : alexcrichton/rust/make-check-no-rpath, r=brson 2014-02-25 07:56:35 -08:00
doc Tutorial: Add std::num::sqrt to the example. 2014-02-24 21:22:27 -08:00
driver extern mod => extern crate 2014-02-14 22:55:21 -08:00
etc auto merge of #12530 : alexcrichton/rust/make-check-no-rpath, r=brson 2014-02-25 07:56:35 -08:00
gyp@1e46da1000
libarena arena,std,serialize: remove some unnecessary transmutes. 2014-02-24 01:15:39 +11:00
libcollections auto merge of #12522 : erickt/rust/hash, r=alexcrichton 2014-02-25 06:41:36 -08:00
libextra Remove std::from_str::FromStr from the prelude 2014-02-24 21:22:26 -08:00
libflate flate: return CVec<u8> rather than copying into a new vector. 2014-02-24 01:15:39 +11:00
libfourcc extern mod => extern crate 2014-02-14 22:55:21 -08:00
libgetopts Remove all ToStr impls, add Show impls 2014-02-23 20:51:56 -08:00
libglob Transition to new Hash, removing IterBytes and std::to_bytes. 2014-02-24 07:44:10 +11:00
libgreen std: make .swap_remove return Option<T>. 2014-02-24 21:22:26 -08:00
libnative auto merge of #12445 : huonw/rust/less-unsafe, r=alexcrichton 2014-02-24 14:37:01 -08:00
libnum Remove std::num::ToStrRadix from the prelude 2014-02-24 21:22:26 -08:00
librustc auto merge of #12522 : erickt/rust/hash, r=alexcrichton 2014-02-25 06:41:36 -08:00
librustdoc Move extra::json to libserialize 2014-02-24 09:51:39 -08:00
librustuv auto merge of #12445 : huonw/rust/less-unsafe, r=alexcrichton 2014-02-24 14:37:01 -08:00
libsemver Exclude build metadata from equality checking. 2014-02-25 11:37:38 +09:00
libserialize auto merge of #12453 : alexcrichton/rust/move-json, r=brson 2014-02-24 15:57:13 -08:00
libstd Add a method of manually specifying the crate map 2014-02-25 09:22:24 -08:00
libsync auto merge of #12336 : kballard/rust/mutexarc-no-freeze, r=alexcrichton 2014-02-18 10:16:48 -08:00
libsyntax auto merge of #12522 : erickt/rust/hash, r=alexcrichton 2014-02-25 06:41:36 -08:00
libterm Move std::{trie, hashmap} to libcollections 2014-02-23 00:35:11 -08:00
libtest Remove std::from_str::FromStr from the prelude 2014-02-24 21:22:26 -08:00
libtime Move time out of extra (cc #8784) 2014-02-21 07:44:11 -08:00
libuuid Remove std::from_str::FromStr from the prelude 2014-02-24 21:22:26 -08:00
libuv@800b56fe6a Make priavcy checking aware that a use directive can point to two defintions (namespaces) with different privacy. Closes #4110 2014-02-19 14:47:10 +13:00
llvm@b015ecddd3 Restore LLVM to the correct revision 2014-02-21 23:59:58 -08:00
rt Upgrade libuv 2014-02-16 16:01:03 -08:00
rustllvm Upgrade LLVM 2014-02-14 07:22:49 -08:00
test Add a method of manually specifying the crate map 2014-02-25 09:22:24 -08:00
README.md Update source code layout in src/ 2014-02-24 21:22:27 -08:00
snapshots.txt Register snapshots. 2014-02-23 22:50:17 +11:00

This is a preliminary version of the Rust compiler, libraries and tools.

Source layout:

Path Description
librustc/ The self-hosted compiler
libstd/ The standard library (imported and linked by default)
libextra/ The "extras" library (slightly more peripheral code)
libgreen/ The M:N runtime library
libnative/ The 1:1 runtime library
libsyntax/ The Rust parser and pretty-printer
libcollections/ A collection of useful data structures and containers
libnum/ Extended number support library (complex, rational, etc)
libtest/ Rust's test-runner code
------------------- ---------------------------------------------------------
libarena/ The arena (a fast but limited) memory allocator
libflate/ Simple compression library
libfourcc/ Data format identifier library
libgetopts/ Get command-line-options library
libglob/ Unix glob patterns library
libsemver/ Rust's semantic versioning library
libserialize/ Encode-Decode types library
libsync/ Concurrency mechanisms and primitives
libterm/ ANSI color library for terminals
libtime/ Time operations library
libuuid/ UUID's handling code
------------------- ---------------------------------------------------------
rt/ The runtime system
rt/rust_*.c - Some of the runtime services
rt/vg - Valgrind headers
rt/msvc - MSVC support
rt/sundown - The Markdown library used by rustdoc
------------------- ---------------------------------------------------------
compiletest/ The test runner
test/ Testsuite
test/codegen - Tests for the LLVM IR infrastructure
test/compile-fail - Tests that should fail to compile
test/debug-info - Tests for the debuginfo tool
test/run-fail - Tests that should compile, run and fail
test/run-make - Tests that depend on a Makefile infrastructure
test/run-pass - Tests that should compile, run and succeed
test/bench - Benchmarks and miscellaneous
test/pretty - Pretty-printer tests
test/auxiliary - Dependencies of tests
------------------- ---------------------------------------------------------
librustdoc/ The Rust API documentation tool
libuv/ The libuv submodule
librustuv/ Rust libuv support code
------------------- ---------------------------------------------------------
llvm/ The LLVM submodule
rustllvm/ LLVM support code
------------------- ---------------------------------------------------------
etc/ Scripts, editors support, misc

NOTE: This list (especially the second part of the table which contains modules and libraries) is highly volatile and subject to change.