randomconfig fixes
No binary (build failed)
—
(log yok)
| @@ -924,7 +924,7 @@ int tar_main(int argc UNUSED_PARAM, char **argv) | |
| /* Prepend '-' to the first argument if required */ | |
| opt_complementary = "--:" // first arg is options | |
| "tt:vv:" // count -t,-v | |
| - | "X::T::" // cumulative lists |
| + | IF_FEATURE_TAR_FROM("X::T::") // cumulative lists |
| #if ENABLE_FEATURE_TAR_LONG_OPTIONS && ENABLE_FEATURE_TAR_FROM | |
| "\xff::" // cumulative lists for --exclude | |
| #endif | |
| @@ -1111,7 +1111,7 @@ int ls_main(int argc UNUSED_PARAM, char **argv) | |
| IF_FEATURE_LS_COLOR(applet_long_options = ls_longopts;) | |
| opt_complementary = | |
| /* -e implies -l */ | |
| - | "el" |
| + | IF_FEATURE_LS_TIMESTAMPS("el") |
| /* http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ls.html: | |
| * in some pairs of opts, only last one takes effect: | |
| */ | |
| @@ -1121,7 +1121,7 @@ int ls_main(int argc UNUSED_PARAM, char **argv) | |
| ":C-xl:x-Cl:l-xC" /* bycols/bylines/long */ | |
| ":C-1:1-C" /* bycols/oneline */ | |
| ":x-1:1-x" /* bylines/oneline (not in SuS, but in GNU coreutils 8.4) */ | |
| - | ":c-u:u-c" /* mtime/atime */ |
| + | IF_FEATURE_LS_TIMESTAMPS(":c-u:u-c") /* mtime/atime */ |
| /* -w NUM: */ | |
| IF_FEATURE_AUTOWIDTH(":w+"); | |
| opt = getopt32(argv, ls_options | |
| @@ -467,13 +467,17 @@ getopt32(char **argv, const char *applet_opts, ...) | |
| } | |
| for (on_off = complementary; on_off->opt_char; on_off++) | |
| if (on_off->opt_char == *s) | |
| - | break; |
| + | goto found_opt; |
| + | /* Without this, diagnostic of such bugs is not easy */ |
| + | bb_error_msg_and_die("NO OPT %c!", *s); |
| + | found_opt: |
| if (c == ':' && s[2] == ':') { | |
| on_off->param_type = PARAM_LIST; | |
| continue; | |
| } | |
| if (c == '+' && (s[2] == ':' || s[2] == '\0')) { | |
| on_off->param_type = PARAM_INT; | |
| + | s++; |
| continue; | |
| } | |
| if (c == ':' || c == '\0') { | |
| @@ -5,4 +5,17 @@ while test x"$dt" = x"$dt1"; do | |
| dt="`date -R`" | |
| done | |
| - | test x"$dt" = x"`busybox date -R`" |
| + | bdt=`busybox date -R` |
| + | bdt=`busybox date -R` |
| + | bdt=`busybox date -R` |
| + | bdt=`busybox date -R` |
| + | bdt=`busybox date -R` |
| + | |
| + | # Wtih !FEATURE_DATE_NANO, that is, with time() |
| + | # instead of clock_gettime(), seconds transition |
| + | # may not happen at _exactly_ the same moment, |
| + | # but can be delayed. Several busybox date -R |
| + | # invocations above are meant to deal with this. |
| + | # (two were enough for me, but I added more just in case). |
| + | |
| + | test x"$dt" = x"$bdt" |
| @@ -256,7 +256,8 @@ mkdir ls.testdir || exit 1 | |
| # testing "test name" "command" "expected result" "file input" "stdin" | |
| - | testing "ls symlink_to_dir" \ |
| + | test x"$CONFIG_FEATURE_LS_SORTFILES" = x"y" \ |
| + | && testing "ls symlink_to_dir" \ |
| "touch ls.testdir/A ls.testdir/B; ln -s ls.testdir ls.link; ls ls.link; ls -1 ls.link/; ls -1 ls.link; rm -f ls.link" \ | |
| "A\nB\nA\nB\nA\nB\n" \ | |
| "" "" | |
| @@ -46,6 +46,7 @@ rm mount.image1m | |
| # Bug: mount.shared1 directory shows no files (has to show files a and b) | |
| + | optional FEATURE_LS_RECURSIVE |
| testing "mount bind+rshared" "\ | |
| mkdir -p mount.dir mount.shared1 mount.shared2 | |
| touch mount.dir/a mount.dir/b | |
| @@ -80,5 +81,6 @@ a | |
| b | |
| " \ | |
| "" "" | |
| + | SKIP= |
| exit $FAILCOUNT | |
| @@ -16,7 +16,7 @@ testing "od -b" \ | |
| "" "HELLO" | |
| SKIP= | |
| - | optional DESKTOP |
| + | optional DESKTOP LONG_OPTS |
| testing "od -b --traditional" \ | |
| "od -b --traditional" \ | |
| "\ | |
| @@ -26,7 +26,7 @@ testing "od -b --traditional" \ | |
| "" "HELLO" | |
| SKIP= | |
| - | optional DESKTOP |
| + | optional DESKTOP LONG_OPTS |
| testing "od -b --traditional FILE" \ | |
| "od -b --traditional input" \ | |
| "\ | |
| @@ -156,6 +156,7 @@ SKIP= | |
| # Had a bug where on extract autodetect first "switched off" -z | |
| # and then failed to recognize .tgz extension | |
| + | optional FEATURE_TAR_CREATE FEATURE_SEAMLESS_GZ |
| testing "tar extract tgz" "\ | |
| dd count=1 bs=1M if=/dev/zero of=F0 2>/dev/null | |
| tar -czf F0.tgz F0 | |
| @@ -167,8 +168,10 @@ F0 | |
| Ok | |
| " \ | |
| "" "" | |
| + | SKIP= |
| # On extract, everything up to and including last ".." component is stripped | |
| + | optional FEATURE_TAR_CREATE |
| testing "tar strips /../ on extract" "\ | |
| rm -rf input_* test.tar 2>/dev/null | |
| mkdir input_dir | |
| @@ -184,6 +187,7 @@ input_dir/file | |
| Ok | |
| " \ | |
| "" "" | |
| + | SKIP= |
| cd .. && rm -rf tar.tempdir || exit 1 | |