45056fc022
The LLVM project recently released version 2.8, and updated the SVN tree version to 2.9svn, obsoleting the simple check for 'llvm-config --version' returning 2.8svn. With this commit we instead check for the substrings 2.8 and 2.9 in the output of 'llvm-config --version', since we (currently) support both the svn and released varieties of those versions. A stable release also complicates our check for the ocaml bindings. Previously we looked in `llvm-config --libdir`/ocaml which is appropriate for local compiles, but distribution packagers are likely to put the bindings in the default search path, e.g. /usr/lib/ocaml/llvm. We now fall back to trying variations on the standard library path returned by 'ocamlc -config' if we don't find it under 'llvm-config --libdir'. With this change, rust builds against LLVM 2.8 as packaged in Ubuntu 10.10 as well as LLVM 2.9svn compiled locally. (cherry picked from commit b606b65756f087c403180abd5418fe7dce469758) |
||
---|---|---|
.. | ||
boot | ||
comp | ||
etc | ||
lib | ||
rt | ||
test | ||
Makefile | ||
README | ||
run.py |
This is preliminary version of the Rust compiler. Source layout: boot/ The bootstrap compiler boot/README - More-detailed guide to it. boot/fe - Front end (lexer, parser, AST) boot/me - Middle end (resolve, check, layout, trans) boot/be - Back end (IL, RA, insns, asm, objfiles) boot/util - Ubiquitous helpers boot/llvm - LLVM-based alternative back end boot/driver - Compiler driver comp/ The self-hosted compiler (doesn't exist yet) comp/* - Same structure as in boot/ rt/ The runtime system rt/rust_*.cpp - The majority of the runtime services rt/isaac - The PRNG used for pseudo-random choices in the runtime rt/bigint - The bigint library used for the 'big' type rt/uthash - Small hashtable-and-list library for C, used in runtime rt/{sync,util} - Small utility classes for the runtime. test/ Testsuite (for both bootstrap and self-hosted) test/compile-fail - Tests that should fail to compile test/run-fail - Tests that should compile, run and fail test/run-pass - Tests that should compile, run and succeed Please be gentle, it's a work in progress.