Commit graph

9 commits

Author SHA1 Message Date
Elliott Hughes
98df42c3cd mksh: stop loading libc++ and libm.
The dynamic linker unconditionally adds libdl, so this isn't quite down
to just libc, but it's as close as I can get from here.

Unfortunately my timings are in the noise so I can't prove that this
makes any difference in practice, but it can't *hurt*, so....

Test: ldd `which sh`
Change-Id: I9d864120e38d55c85c655ddeaba997cb20e42c6e
2019-09-23 13:29:51 -07:00
Elliott Hughes
47086265c3 Upgrade to mksh R57.
R57 rolls up bugfixes, with few hard changes:

[gecko2] Update operating environment reporting for the Macintosh
[Martijn Dekker] make ${foo#'bar'} in here document behave like ksh93
[Martijn Dekker] quote empty strings for re-entry into shell
[tg, G.raud Meyer] Improve documentation, especially for tty states
[tg] Protect against entering line editing with bad saved tty state
[tg] Fix set -o allexport for arrays (which we apparently do)
[tg] Handle lseek(2) returning -1 as pointed out by Coverity Scan
[tg] Fix left-padding UTF-8 strings
[tg, G.raud Meyer] Fix using the “-m” flag on the command line
[tg] Update to UCD 11.0.0
[multiplexd] Fix a segfault using ^W during search in Vi mode
[tg] Fix an error message; add a test for controlling tty
[tg] Permit unsetting LINES and COLUMNS, for those who need it
[tg] Fix manpage bug (RedHat BZ#1612173)
[tg] Minor spelling cleanup
[tg] Unbreak high-bit7 (nōn-ASCII) heredoc separators (LP#1779179)
[tg] Allow dumping high-bit7-char-containing strings in DEBUG mode
[tg] Add some testcases for behaviour questions popped up in IRC
[tg] Trick a GCC warning, to make up for it ignoring lint(1) hints
[tg] Add O_MAYEXEC support for CLIP OS
[tg] Make dup-to-self with ksh-style fd≥3 closing work; catern via IRC
[tg] Add compat glue for newer GNU groff mdoc to the manpages
[tg] Trigger EXIT trap after single-command subshells (Debian #910276)
[tg] Document set -eo pipefail caveat (LP#1804504)
[tg] Fix MKSH_EARLY_LOCALE_TRACKING warning
[tg] Document that, when your Unix is broken, GIGO applies (LP#1817959)
[tg] Improve error message for inaccessible executables (LP#1817789)

Test: treehugger
Change-Id: Ib5447fc474e509698bd04cdf70ed14b54e84d27a
2019-03-26 12:38:33 -07:00
Sasha Smundak
0ca9e25ae6 Convert Android.mk file to Android.bp
See build/soong/README.md for more information.

Change-Id: I03cc2853dc3eb61a134ff87bd05904182dbeb7c7
Fixes: 122332797
Test: treehugger
2019-01-14 16:24:22 -08:00
Elliott Hughes
373b930724 mksh: allow -fstack-protector-strong.
Our original aim here was to use stack-protector where possible, but
that ironically ended up with us having _worse_ stack protection than
the current default.

Bug: N/A
Test: boots
Change-Id: Iac0f6b2e8ebd670d9c1abfe2ff314ed39c130ff2
2018-10-15 15:59:49 -07:00
Jiyong Park
85b4d48d49 shell is available to the recovery mode
Bug: 63673171
Test: `adb reboot recovery; adb devices` shows the device ID
Test: `adb root && adb shell` works
Change-Id: I89ceb2c8d3519b2e4793830b86aed8f4b7af1572
2018-06-01 12:15:25 +09:00
Elliott Hughes
dd4abe0a6a Upgrade to mksh R56c.
R56c is a bugfix-only release everyone must upgrade to:

[komh] Remove redundant OS/2-specific code, clean up others
[komh, tg] Fix drive-qualified (absolute and relative) DOS-style path support in realpath functionality, partially other places
[tg] Don’t substitute ${ENV:-~/.mkshrc} result again
[tg] Improve OS/2 $PATH (et al.) handling, drive-relative paths
[tg] Add MKSH_ENVDIR compile-time option for Jehanne and Plan 9
[tg] Limit nesting when parsing malformed code (Debian #878947)
[tg] Update wcwidth data with bugfixed script (still Unicode 10; resulting values are identical to glibc git master for extant chars)
[Dr. Werner Fink] Raise some time limits in the testsuite
[Shamar] Add support for the Jehanne operating system
[komh] Set stdin to text mode before executing child processes on OS/2
[komh] Pass arguments via a resonse file if executing a child fails
[Dr. Werner Fink] Early locale tracking as a compile-time option
[tg] Fix regressions introduced with new fast character classes

Bug: N/A
Test: builds and boots
Change-Id: I44da7a8bb9859a0357bcd59891dd4f2cfc199733
2018-02-07 12:46:26 -08:00
Sandeep Patil
fa7594efa4 Move sh_vendor cflags to its own target
The cc_defaults.vendor doesn't work due to VNDK being disabled.
(b/69133815). So, the conversion to soon caused the sh_vendor to start
using $PATH from the environment (instead of the hardcoded one) that in
turn caused vendor shell scripts trying to run system toybox commands.

Bug: 68771183
Test: m -j sh_vendor; adb sync; adb shell; /vendor/bin/sh; echo $PATH
Test: Boot marlin with no denials from init_radio, init_power domains.
Change-Id: Ia90b74a4cffdeba9b53f3b8fb8a56c98386794fa
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-11-10 09:44:17 -08:00
Jiyong Park
ac07b5ab5e Undef before redefining macros
-Werror,-Wmacro-redefined was turned on because of -Werror, -Wall.
Undefine the overridden macros before redefining them to let compiler
know that the redifinition is intentional.

Test: m -j sh_vendor

Change-Id: If324124e4504f05a37afd1021cff179fdfe4c08e
2017-10-22 17:25:33 +09:00
Jiyong Park
6709053dbb switch to soong
sh is converted to Android.bp

Bug: 66914194
Test: build. sh is found in both /system/bin and /vendor/bin

Change-Id: Iee59e7f2a60c3855c76935e64b8100b7f8eb4802
2017-10-20 11:04:56 +09:00