about summary refs log tree commit diff
path: root/src/librustpkg/context.rs
AgeCommit message (Collapse)AuthorLines
2014-02-02Remove rustpkg.Corey Richardson-347/+0
I'm sorry :'( Closes #11859
2014-01-11auto merge of #11338 : jhasse/rust/patch-rustpkgtarget, r=alexcrichtonbors-1/+2
#11243
2014-01-11Use target libraries instead of host libraries. Fixes #11243Jan Niklas Hasse-1/+2
2014-01-11auto merge of #11470 : eminence/rust/rustpkg_help_test, r=alexcrichtonbors-1/+3
In general, you can run "rustpkg help <cmd>" to see some specific usage information for <cmd>. However, this was handled in a very ad-hoc and buggy manner. For example, running "rustpkg help prefer" would actually show you the usage information for the "uninstall" cmd. Or "rustpkg help test" would show you the usage information for the "build" command. Or "rustpkg help list" would just run the "list" command (and not show you anything usage information) This commit attempts to fix this by making a new HelpCmd (and handling it explicitly)
2014-01-11Fix `rustpkg help` handlingAndrew Chin-1/+3
In general, you could run "rustpkg help <cmd>" to see some specific usage information for <cmd>. However, this was handled in a very ad-hoc and buggy manner. For example, running "rustpkg help prefer" would actually show you the usage information for the "uninstall" cmd. This commit attempts to fix this by making Help a real Command, and making the handing of it explicit.
2014-01-11Remove re-exports of std::io::stdio::{print, println} in the prelude.Brendan Zabarauskas-8/+8
The `print!` and `println!` macros are now the preferred method of printing, and so there is no reason to export the `stdio` functions in the prelude. The functions have also been replaced by their macro counterparts in the tutorial and other documentation so that newcomers don't get confused about what they should be using.
2014-01-06auto merge of #11327 : nielsle/rust/rustpkg_argparse, r=alexcrichtonbors-44/+69
Rearrange some code in rustpkg: * Move command line argument parsing to parse_args.rs * Introduce an enum to descibe commands such as Build, Install, and Clean. * Move sysroot from Context to BuildContext, to make parse_args more modular. This is my first pull request, so please tell me if there is anything I need to do.
2014-01-05Make rustc's own lib directory configurable and change the default to ↵Jan Niklas Hasse-2/+3
rustlib. Fixes #3319
2014-01-05Move syslog to BuildContextNiels langager Ellegaard-28/+16
2014-01-05Command is now an enumNiels langager Ellegaard-16/+53
2013-11-16fix 10468, propagate optimization level as rustc::driver::session::OptLevelIan Daniher-3/+3
2013-11-04Allow --cfg on rustpkg testSteven Fackler-2/+2
Closes #10238
2013-11-03Remove all blocking std::os blocking functionsAlex Crichton-2/+1
This commit moves all thread-blocking I/O functions from the std::os module. Their replacements can be found in either std::rt::io::file or in a hidden "old_os" module inside of native::file. I didn't want to outright delete these functions because they have a lot of special casing learned over time for each OS/platform, and I imagine that these will someday get integrated into a blocking implementation of IoFactory. For now, they're moved to a private module to prevent bitrot and still have tests to ensure that they work. I've also expanded the extensions to a few more methods defined on Path, most of which were previously defined in std::os but now have non-thread-blocking implementations as part of using the current IoFactory. The api of io::file is in flux, but I plan on changing it in the next commit as well. Closes #10057
2013-10-26Make addl_lib_search_paths a HashSet (Closes #7718).Joshua Yanovski-5/+7
2013-10-24Remove even more of std::ioAlex Crichton-9/+9
Big fish fried here: extra::json most of the compiler extra::io_util removed extra::fileinput removed Fish left to fry extra::ebml
2013-10-22rustpkg: Support arbitrary dependencies in the install APITim Chevalier-0/+18
api::install_pkg now accepts an argument that's a list of (kind, path) dependency pairs. This allows custom package scripts to declare C dependencies, as is demonstrated in rustpkg::tests::test_c_dependency_ok. Closes #6403
2013-10-22Drop the '2' suffix from logging macrosAlex Crichton-1/+1
Who doesn't like a massive renaming?
2013-10-15path2: Adjust the API to remove all the _str mutation methodsKevin Ballard-1/+1
Add a new trait BytesContainer that is implemented for both byte vectors and strings. Convert Path::from_vec and ::from_str to one function, Path::new(). Remove all the _str-suffixed mutation methods (push, join, with_*, set_*) and modify the non-suffixed versions to use BytesContainer.
2013-10-15path2: Replace the path module outrightKevin Ballard-4/+10
Remove the old path. Rename path2 to path. Update all clients for the new path. Also make some miscellaneous changes to the Path APIs to help the adoption process.
2013-10-11rustpkg: Set exit codes properly and make tests take advantage of thatTim Chevalier-2/+2
When I started writing the rustpkg tests, task failure didn't set the exit code properly. But bblum's work from July fixed that. Hooray! I just didn't know about it till now. So, now rustpkg uses exit codes in a more conventional way, and some of the tests are simpler. The bigger issue will be to make task failure propagate the error message. Right now, rustpkg does most of the work in separate tasks, which means if a task fails, rustpkg can't distinguish between different types of failure (see #3408)
2013-09-30rustpkg: Remove uses of fmt!Alex Crichton-3/+3
2013-09-10rustpkg: Pass command-line arguments to rustcTim Chevalier-3/+222
rustpkg now accepts most of rustc's command-line arguments and passes them along to rustc when building or installing. A few rarely-used arguments aren't implemented yet. rustpkg doesn't support flags that don't make sense with rustpkg (for example, --bin and --lib, which get inferred from crate file names). Closes #8522
2013-09-08rustpkg: Address review comments from JackTim Chevalier-24/+23
2013-09-08rustpkg: Use workcacheTim Chevalier-27/+37
rustpkg now uses the workcache library to avoid recompilation. Hooray!
2013-08-30rustpkg: Allow package directories to appear in the RUST_PATHTim Chevalier-0/+5
This commit adds a rustpkg flag, --rust-path-hack, that allows rustpkg to *search* inside package directories if they appear in the RUST_PATH, while *building* libraries and executables into a different target directory. This behavior is hidden behind a flag because I believe we only want to support it temporarily, to make it easier to port servo to rustpkg. This commit also includes a fix for how rustpkg fetches sources from git repositories -- it uses a temporary directory as the target when invoking `git clone`, then moves that directory into the workspace if the clone was successful. (The old behavior was that when the `git clone` failed, the empty target directory would be left lying around anyway.)
2013-08-19rustpkg: Un-ignore most of the remaining testsTim Chevalier-0/+11
This necessitated some cleanup to how we parse library filenames when searching for libraries, since rustpkg may now create filenames that contain '-' characters. Also cleaned up how rustpkg passes the sysroot to a custom build script.
2013-08-09std/rustc/rustpkg/syntax: Support the `extern mod = ...` formTim Chevalier-0/+24
This commit allows you to write: extern mod x = "a/b/c"; which means rustc will search in the RUST_PATH for a package with ID a/b/c, and bind it to the name `x` if it's found. Incidentally, move get_relative_to from back::rpath into std::path
2013-06-29Great renaming: propagate throughout the rest of the codebaseCorey Richardson-2/+1
2013-05-22libextra: Rename the actual metadata names of libcore to libstd and libstd ↵Patrick Walton-0/+2
to libextra
2013-05-03rustpkg: Handle sysroot more correctlyTim Chevalier-0/+3
In rustpkg, pass around sysroot; in rustpkg tests, set the sysroot manually so that tests can find libcore and such. With bonus metadata::filesearch refactoring to avoid copies.
2013-04-24rustpkg: Preliminary work on install commandTim Chevalier-0/+21
Mostly just tests (that are ignored); install command is still stubbed out.