Age | Commit message (Collapse) | Author |
|
Yeah, it's twice the size and two codepaths, but seekable is the common
case, it won't work in pipelines without a non-seek codepath, and the
performance penalty not using seek on large files is a enormous.
|
|
Trivial breakage from the recent refactoring.
Also add tail to the default config for macOS.
I'm still unconvinced that CONFIG_TAIL_SEEK makes sense in a world
where inotify support is always built in, but that's an argument
for another day...
|
|
|
|
|
|
|
|
|
|
|
|
(which doesn't handle "VAR=blah thingy" right if thingy is a function,
the variable winds up staying set after the function returns.)
|
|
|
|
This only implements the format specifiers that I've seen used in the
wild (which is actually a significant fraction of the total supported by
findutils' find). The most obvious gap is in the time support. I'm happy
to add more, but didn't want to add stuff "just because".
I'd say %A@, %C@, and -- for SELinux users -- %Z are probably the most
plausibly useful formats still missing. I don't think the human-readable
date formatting is particularly useful unless someone's seen it actually
used in the wild. The %T+ "full ISO" format being the most likely
exception to that.
Anyway, this is enough for me get started building AOSP with toybox find.
|
|
Used quite a lot, especially with `--exclude-dir=.git`.
|
|
Copy-and-paste mistake from the regular output.
Bug: http://b/133502489
|
|
into a structure passed as arguments, add x prefix to functions that can fail,
add overflow test.
|
|
Factor out the inotify code and add a kqueue equivalent.
Specifically tested on macOS 10.14, but I assume this works for other
BSDs too, given that I worked from the FreeBSD man page...
|
|
out of scope), but the AOSP build airlock doesn't provide bzcat and friends.
So tar needs to be able to use both: check for *zcat first, and fall back to
"compressor -d" if it's not there.
|
|
Found trying to build the aosp_cf_x86_phone-userdebug target. The good
news is that the targets that I knew were using tar with sparse files
all pass now.
|
|
Aside: I was surprised that `make defconfig` installs the default *Linux*
config even on macOS.
|
|
|
|
|
|
|
|
|
|
|
|
There's no possible use for this, but debian's tar produces it, so...
|
|
And fix tar cv to produce output to stderr when archive going to stdout.
|
|
and record Kirk McKusick's email for posterity. (I posted it to the
mailing list when it happened, but this is more obvious...)
|
|
Add test to show failure case.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also, debian's lsattr is producing longer output lines with new fields,
possibly an ioctl switch from FS_IOC_GETFLAGS -> FS_IOC_FSGETXATTR? Anyway,
todo items here...
|
|
|
|
|
|
Iterate over MANPATH and ordered sections using a manpath() helper
equivalent of indenting logic of man x, man 1 x, and man -k each with a
strsep loop.
|
|
|
|
This is a 15 year old freebsd extension (presumably thus also available on
MacOS) that glibc adopted in 2004, uClibc adopted in 2005, and bionic
supports. The only thing that DOESN'T support it is musl, once again
because its maintainer explicitly decided not to
(https://www.openwall.com/lists/musl/2013/01/15/26), so add an #ifdef
to let musl stay uniquely broken. (It'll stop at first NUL, everything
else can match NULs).
Finally fixes "s/x/y/g on a megabyte line of x's takes forever" issue.
|
|
And remove a "nine princes in amber" themed name I missed.
|
|
Don't strlen() to find NUL to skip to until after we've confirmed first
section hasn't got a match (by calling regexec() on it).
|
|
Instead have one target string and fill it out from start to finish writing
to each location once.
|
|
|
|
Found when trying to update the toybox prebuilt used for the Android
build.
Also add the corresponding test.
|
|
They're forwarded to libprocessgroup, but we may as well go straight to
the source since neither library is in the NDK anyway.
This code is unfortunate because it means that even `toybox true` ends
up pulling in a JSON parser at runtime, because ps might call
get_sched_policy/get_sched_policy_name. I'll experiment with
dlopen-on-demand in portability.c and see whether the savings are
worthwhile, but for now at least use the current library directly so we
can save *one* dlopen!
|
|
(This and `git clone` is how I use the latest man7.org pages all the
time instead of my system's man pages.)
|
|
This is what GNU tar does, so Android's build system jail allows
bzip2, gzip, and xz, but not bzcat, zcat, and xzcat.
Why the function? Because auto-detection works by setting toyflags, so
we need to make sure we test the flags late, so it's either two copies
of this or a function.
|