aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2019-09-04Convenience script to build gcc+musl cross compiler toolchains for variousRob Landley
targets using https://github.com/richfelker/musl-cross-make
2019-08-22Add scripts/mkroot.sh and makefile changes for "make root".Rob Landley
Not in help text yet. Needs sh and route enabled in pending to do much. todo: work through the scripts/install.sh $PENDING list and add native toolchain support.
2019-08-22Quiet "make clean" so it doesn't fill a whole screen with output.Rob Landley
2019-08-21Fix the unshare probe.Rob Landley
2019-07-29Add ASAN=1 to the build system.Elliott Hughes
Just use `ASAN=1 make test_grep` or whatever. You'll probably want to set $ASAN_SYMBOLIZER_PATH to point to llvm-symbolizer, but Debian makes that annoying by calling the symbolizer /usr/bin/llvm-symbolizer-4.0 or whatever, and ASan refuses to use it: ==43370==ERROR: External symbolizer path is set to '/usr/bin/llvm-symbolizer-4.0' which isn't a known symbolizer. Please set the path to the llvm-symbolizer binary or other known tool. My usual workaround for this is to drop an llvm-symbolizer symlink in the current directory, and I'm happy to automate that in the script to make it require no knowledge of any of this nonsense, but haven't done so in this initial patch. I tested that this is actually working by reverting the grep fix and running `ASAN=1 make test_grep`.
2019-06-29Bash Compatibility PatchEric Molitor
I know that you are working on toysh which I'm looking forward to. In the meantime below is a patch to improve compatibility with older/odd versions of bash. This fixed a minor build issue I was having on MacOS (which was using zsh in emulated bash mode) as well as an oddball embedded SDK using a non-gnu version of bash. I believe these changes are minimal and should be safe to apply, if not I wanted to at least get them on the mailing list in case others ran into these issues.
2019-06-26testcmd shouldn't use shell builtin for TEST_HOST unless there isn'tRob Landley
one in $PATH.
2019-06-24Fix FAILCOUNT arithmetic for mksh.Elliott Hughes
mksh doesn't support $[], only $(()).
2019-06-22Make testcmd work if the path to $PWD has a space in it.Rob Landley
2019-06-09Inverted test.Rob Landley
2019-06-05macOS build parallelism.Elliott Hughes
Macs are slow enough without crippling them further!
2019-05-12Add VERBOSE=nopass to not show successful tests.Rob Landley
2019-05-06Some "echo" variants default to -e, use printf "%s\n" to avoid that.Rob Landley
2019-05-02Android moved the scheduler policy functions in Q.Elliott Hughes
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!
2019-04-23Remove librt, which is pulling in libpthread.Rob Landley
It hasn't been needed (for clock_gettime) since glibc 2.17 came out in December 2012 (which is more or less our 7 year support horizon) and Devuan 2.0 is not eliminating this with --as-needed (presumably due to some weak symbol nonsense), so... fix that bug.
2019-04-22And same flip in the airlock install.Rob Landley
2019-04-21Remove some commands from airlock install PENDING that are now in defconfig.Rob Landley
2019-04-12Make help text spacing consistent.Rob Landley
2019-04-04Add "toyonly" function to test suite.Rob Landley
2019-03-31Add "skipnot" function to test suite, skips next test if command line fails.Rob Landley
2019-03-21Test for compiler existence when sourcing portability.sh.Rob Landley
2019-03-10Do a rm -rf of testdir between each command so debris files don't accumulate.Rob Landley
2019-03-10install.c doesn't include the standard headers so hasn't got ARRAY_LEN()Rob Landley
2019-03-09Cosmetic tweak.Rob Landley
2019-03-04Consistently use ARRAY_LEN.Elliott Hughes
2019-03-02Fix instances of "Usage:" rather than "usage:".Elliott Hughes
2019-02-01Fix record-commands and logwrapper.cRob Landley
record-commands: Delete old log, only delete $WRAPDIR at end if path wasn't externally supplied, don't add the rm at the end to the log. logwrapper.c: don't skip filename when measuring space for command line malloc, use argv[0] instead of /proc/self/exe (which is realpath -f).
2019-01-31Tweak build dependencies: rebuild toys/*/*.c when .o newer than .config.Rob Landley
2019-01-30Command logging wrapper to help analyze what commands scripts call and how.Rob Landley
2019-01-19Have test.sh use portability.sh too.Rob Landley
2019-01-19Factor out scripts/portability.sh and have genconfig.sh use it to find sed/gsed.Rob Landley
2019-01-19Fix various warnings building on FreeBSD.Rob Landley
2019-01-18Airlock: linux-s390x build grew sha256sum dependency in 420, and remove "test".Rob Landley
2018-12-26Teach the argument plumbing how to do -@ for mkfs.vfatRob Landley
2018-12-25Simplify the mkflags logic a bit.Rob Landley
We're not going to USE_BLAH("a")"(longopt)" or similarly crazy corner cases, so don't try to support them.
2018-12-05macOS: iconv(1) needs libiconv on the mac.Elliott Hughes
2018-12-03Break runtest.sh out again: the Android devs were using it.Rob Landley
2018-12-02Teach testcmd to say short name rather than full path.Rob Landley
2018-12-02Merge runtest.sh into test.sh.Rob Landley
2018-11-30macOS: Apple's ancient linker doesn't have --as-needed or --gc-sections.Elliott Hughes
2018-11-28macOS: use -E rather than -r for sed extended regular expressions.Elliott Hughes
GNU sed supports -E, -r, and --regexp-extended. BSD sed only supports -r.
2018-11-20Skip tests that don't have the executable bit set unless $TEST_ALL set.Rob Landley
2018-11-01Discard harmless error messages.Rob Landley
genbuild() is a bunch of echo statements, and with enough parallelism piping its output to "head" can close the pipe before all the echo statements have run, then they complain about writing to a closed pipe. (We're intentionally discarding the output, it's not an error, so...)
2018-10-27Don't unnecessarily recalculate library list.Rob Landley
2018-10-27Fix "make distclean defconfig toybox" all on one line (good of $CROSS_COMPILERRob Landley
changed), better error message when .config missing.
2018-10-27Allow unstripped build to overwrite read-only output file.Rob Landley
(Output file is read only because broken installs that write to the old filename will truncate+overwrite toybox binary otherwise.)
2018-10-21Add % to lib/args.c (long time in milliseconds), add xmillitime(), redoRob Landley
xparsetime() not to need floating point, adjust callers.
2018-10-06Check for cross compiler before creating any generated/* files w/probed vals.Rob Landley
2018-10-05getconf: fix glibc NPROCESSORS_ONLN.Elliott Hughes
glibc doesn't have _XOPEN_UUCP (though bionic does), which meant that the generated array of values was out of sync with the hand-written array of names. This patch removes that by using a unified array and the preprocessor. A side benefit of this for me is that it makes toybox easier to integrate in the AOSP build system (the less shell script magic, the better).
2018-08-03Don't include toys.h and lib/*.c in config2help.c, the host vs cross compilerRob Landley
build context (probes for portability.h) is too fiddly to keep stright, just copy the parts we need into the host tool.