Commit graph

54 commits

Author SHA1 Message Date
Nathan Ross
36503a77c7 impl: use coreopts for brevity and consistent UX 2016-08-20 10:07:24 -04:00
kwantam
e2cb5eec0a fix fmt's behavior for blank prefixed lines 2016-06-01 18:19:53 -04:00
Florian Gilcher
2befeef179 Remove use of str_char in fmt 2016-03-22 21:57:52 +01:00
Florian Gilcher
509d6efc78 Remove rustc_unicode dependency 2016-03-22 19:56:14 +01:00
Michael Gehring
a2944e06db Fix clippy warnings 2016-01-06 09:36:20 +01:00
Joseph Crail
3b4baeb1e7 Fix "private type in public interface" warnings. 2015-12-23 20:08:53 -05:00
Michael Gehring
bcaa859ca7 fmt: fix warnings 2015-12-21 20:23:55 +01:00
Joseph Crail
b90d253584 Refactor and simplify build for utilities.
For coreutils, there are two build artifacts:

  1. multicall executable (each utility is a separate static library)
  2. individual utilities (still separate library with main wrapper)

To avoid namespace collision, each utility crate is defined as
"uu_{CMD}". The end user only sees the original utility name. This
simplifies build.rs.

Also, the thin wrapper for the main() function is no longer contained in
the crate. It has been separated into a dedicated file. This was
necessary to work around Cargo's need for the crate name attribute to
match the name in the respective Cargo.toml.
2015-12-07 21:56:45 -05:00
Michael Gehring
ca16e66a55 switch to cargo version numbers 2015-11-25 10:58:49 +01:00
Joseph Crail
ca1074201f Split utility files into separate library.
Everything in src/common has been moved to src/uucore. This is defined
as a Cargo library, instead of directly included. This gives us
flexibility to make the library an external crate in the future.

Fixes #717.
2015-11-24 22:20:27 -05:00
Nathan Ross
502957dc3e use cargo idioms to manage dependency resolution and compilation 2015-11-23 02:04:15 -05:00
Carlos Liam
87d14978e9 Clean whitespace
Remove leading newlines and replace lines containing only whitespace
with empty lines
2015-10-06 12:04:46 -04:00
Steve Klabnik
0c117eb8a8 initial work 2015-09-27 23:55:28 -04:00
Michael Gehring
9d8abbcb06 Basic Cargo build
Builds the uutils multicall binary containing all utils (except stdbuf)
by default. To only build a subset
    `cargo --no-default-features --features <utils>`
can be used.

Whats missing is building the standalone binaries and a mechanism to
automatically disable the build of unix only utils on windows.
2015-08-28 21:12:30 +02:00
Peter Atashian
47f82f0de2 Various Windows fixes
Improve handling of unicode on Windows
Disable a few crates on Windows that abuse unix APIs too much

Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-07-19 20:25:48 -04:00
Joseph Crail
690a483a8a Update to nightly build.
I updated the library dependencies, features, and deprecated methods.
2015-06-23 23:00:00 -04:00
Joseph Crail
28e00cbd78 Standardize display of utility name and version. 2015-05-25 14:50:15 -04:00
Joseph Crail
496d5883a4 Switch to external getopts cargo (part 3).
I switched over to the getopts crate on crates.io, instead of Rust's
private implementation. This will allow coreutils to build for Rust 1.0.

I'm splitting the updates into several commits for easier reviewing.
2015-05-21 21:32:55 -04:00
kwantam
d1f594eb68 remove box_syntax feature from fmt, base64, cat 2015-04-29 01:09:26 -04:00
kwantam
05520e69cb clean up #![features]
For the most part, this commit removes the `collections` feature.
In some places I've removed other features where the effort to do
so was pretty low.
2015-04-27 15:27:15 -04:00
kwantam
d4f39e1638 dependency builds use Cargo
With this change, individual submodules can specify their dependencies with
an additional file called "deps.mk" in the subdir. When building, only
the dependencies that are necessary are built, using cargo, and then linked.

This greatly simplifies adding new dependencies: add the package in
deps/Cargo.toml, and add the appropriate line in "deps.mk" in the
src/utilname/ directory, and the dependency will be built automatically
as needed.

This also removes the need to use git submodules.
2015-04-25 22:18:03 -04:00
kwantam
ecf248c5e3 fix build infrastructure ; modernize library use
This patch begins the work of modernizing uutils to work with 1.0-ish
Rust. In particular, it

1. Updates to the latest submodules.

2. Convert mkmain.rs, mkuutils.rs, and src/uutils/uutils.rs
   to new slice syntax and use of new io, fs, and path APIs.

3. Convert src/common/util.rs to new io, fs, and path APIs.

4. Convert fmt to use new APIs.
2015-04-18 19:55:32 -04:00
Michael Gehring
e7b647171f os::set_exit_status(isize) -> env::set_exit_status(i32) 2015-02-22 13:59:12 +01:00
Michael Gehring
7c617f524b Fix closure syntax 2015-02-07 10:15:16 +01:00
Michael Gehring
8021b491f6 fmt: iter::Peekable changes 2015-02-06 14:10:07 +01:00
Michael Gehring
db8506532e derive(Show) -> derive(Debug) 2015-02-03 22:42:36 +01:00
Michael Gehring
d89d9ca73b Various functions in std::str return Result instead of Option now 2015-02-03 22:32:30 +01:00
Michael Gehring
906d3e4ec5 write -> write_all 2015-01-29 08:47:43 +01:00
Michael Gehring
d187dc574b std::io -> std::old_io 2015-01-29 08:45:37 +01:00
Michael Gehring
fbdf04c072 Replace deprecated slice_{to,from} with slicing syntax 2015-01-24 10:46:28 +01:00
Michael Gehring
4d6cbfa393 Disable unstable warnings for now 2015-01-10 20:44:56 +01:00
Arcterus
e142b4f23e env, expand, fmt: fix build 2015-01-10 20:40:38 +01:00
Michael Gehring
782fad4667 int/uint -> isize/usize 2015-01-10 20:40:37 +01:00
Michael Gehring
f2d49f4bb6 Make uumain return isize everywhere 2015-01-10 14:07:39 +01:00
Michael Gehring
fd69e7fa4a str::from_str removal/changes 2015-01-08 14:50:03 +01:00
Michael Gehring
074a58eafd deriving is now called derive 2015-01-08 14:50:03 +01:00
Michael Gehring
1b381f49fa Use new macro feature flags/attributes 2015-01-08 14:50:02 +01:00
Haitao Li
b9e0ce0b1c Fix build with rustc master
* core::slice::Items renamd to core::slice::Iter
* from_utf8 returns Result instead of Option
* Unique type per fn item. Rust Issue #19891
2014-12-24 20:55:32 +11:00
Haitao Li
5cfde0dcb9 Avoid shadowing lifetime names 2014-12-22 10:54:29 +11:00
Haitao Li
9b67c372b2 Add semicolons to item macros 2014-12-22 10:54:29 +11:00
Arcterus
b8d67ea672 Update for latest Rust 2014-12-15 15:45:31 -08:00
Michael Gehring
842cc8b14c Fix build with rust master 2014-12-11 07:51:37 +01:00
Arcterus
31111ac199 Fix most deprecation warnings and remove hacky nohup code 2014-11-28 14:49:22 -08:00
Michael Gehring
e874d09216 std:num::pow -> std::num::Int::pow 2014-11-19 21:58:16 +01:00
Michael Gehring
cd409c6d3f Update for namespaced enums 2014-11-19 21:58:16 +01:00
Michael Gehring
d675ec75af du, fmt: fix build 2014-11-16 16:12:01 +01:00
Michael Gehring
71c9797bd7 Fix get_mut deprecation warnings 2014-11-02 17:10:35 +01:00
Michael Gehring
3244416b19 fail! -> panic! 2014-10-30 10:06:47 +01:00
Michael Gehring
e482abb630 static -> const 2014-10-10 18:36:35 +02:00
Michael Gehring
029293ad0e fmt: fix build 2014-09-23 19:56:06 +02:00