randomconfig fixes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/editors/patch.c b/editors/patch.c
index 0ce0210..aaa2535 100644
--- a/editors/patch.c
+++ b/editors/patch.c
@@ -264,7 +264,7 @@
 			if (!plist && matcheof) break;
 
 			if (backwarn)
-				fdprintf(2,"Possibly reversed hunk %d at %ld\n",
+				fdprintf(2, "Possibly reversed hunk %d at %ld\n",
 					TT.hunknum, TT.linenum);
 
 			// File ended before we found a place for this hunk.
@@ -593,6 +593,7 @@
 					TT.linenum = 0;
 					TT.hunknum = 0;
 				}
+				fflush_all(); // make "patching file F" visible
 			}
 
 			TT.hunknum++;
diff --git a/include/libbb.h b/include/libbb.h
index d9858f5..6be9349 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -298,6 +298,7 @@
 /* scary. better ideas? (but do *test* them first!) */
 #define OFF_T_MAX  ((off_t)~((off_t)1 << (sizeof(off_t)*8-1)))
 /* Users report bionic to use 32-bit off_t even if LARGEFILE support is requested.
+ * On musl, !ENABLE_LFS on 32-bit arches thinks that off_t is 32-bit.
  * We misdetected that. Don't let it build:
  */
 struct BUG_off_t_size_is_misdetected {
diff --git a/libbb/duration.c b/libbb/duration.c
index 5acd0db..22b209f 100644
--- a/libbb/duration.c
+++ b/libbb/duration.c
@@ -17,6 +17,7 @@
 //kbuild:lib-$(CONFIG_TIMEOUT) += duration.o
 //kbuild:lib-$(CONFIG_PING)    += duration.o
 //kbuild:lib-$(CONFIG_PING6)   += duration.o
+//kbuild:lib-$(CONFIG_WATCH)   += duration.o
 
 #include "libbb.h"
 
diff --git a/scripts/randomtest b/scripts/randomtest
index 94709a9..ec2f095 100755
--- a/scripts/randomtest
+++ b/scripts/randomtest
@@ -113,6 +113,28 @@
 	echo 'CONFIG_ASH_INTERNAL_GLOB=y' >>.config
 fi
 
+# If musl
+if test x"$LIBC" = x"musl"; then
+	cat .config \
+	| grep -v CONFIG_STATIC \
+	| grep -v CONFIG_LFS \
+	| grep -v CONFIG_EXTRA_COMPAT \
+	| grep -v CONFIG_FEATURE_2_4_MODULES \
+	| grep -v CONFIG_FEATURE_VI_REGEX_SEARCH \
+	| grep -v CONFIG_FEATURE_MOUNT_NFS \
+	| grep -v CONFIG_FEATURE_INETD_RPC \
+	>.config.new
+	mv .config.new .config
+	echo 'CONFIG_STATIC=y' >>.config
+	# with LFS off, uoff_t will have wrong width:
+	echo 'CONFIG_LFS=y' >>.config
+	echo '# CONFIG_EXTRA_COMPAT is not set' >>.config
+	echo '# CONFIG_FEATURE_2_4_MODULES is not set' >>.config
+	echo '# CONFIG_FEATURE_VI_REGEX_SEARCH is not set' >>.config
+	echo '# CONFIG_FEATURE_MOUNT_NFS is not set' >>.config
+	echo '# CONFIG_FEATURE_INETD_RPC is not set' >>.config
+fi
+
 # If STATIC, remove some things.
 # PAM with static linking is probably pointless
 # (but I need to try - now I don't have libpam.a on my system, only libpam.so)
diff --git a/testsuite/cpio.tests b/testsuite/cpio.tests
index 88ec086..85e7465 100755
--- a/testsuite/cpio.tests
+++ b/testsuite/cpio.tests
@@ -129,7 +129,7 @@
 
 optional FEATURE_CPIO_O
 testing "cpio uses by default uid/gid" \
-"echo $0 | cpio -o -H newc | cpio -tv 2>&1 | tail -n +2 | awk ' { print \$2 } '; echo \$?" \
+"echo $0 | cpio -o -H newc | cpio -tv 2>&1 | head -n1 | awk ' { print \$2 } '; echo \$?" \
 "\
 $user/$group
 0
@@ -138,7 +138,7 @@
 
 optional FEATURE_CPIO_O
 testing "cpio -R with create" \
-"echo $0 | cpio -o -H newc -R 1234:5678 | cpio -tv 2>&1 | tail -n +2 | awk ' { print \$2 } '; echo \$?" \
+"echo $0 | cpio -o -H newc -R 1234:5678 | cpio -tv 2>&1 | head -n1 | awk ' { print \$2 } '; echo \$?" \
 "\
 1234/5678
 0
@@ -147,7 +147,7 @@
 
 optional FEATURE_CPIO_O
 testing "cpio -R with extract" \
-"echo $0 | cpio -o -H newc | cpio -tv -R 8765:4321 2>&1 | tail -n +2 | awk ' { print \$2 } '; echo \$?" \
+"echo $0 | cpio -o -H newc | cpio -tv -R 8765:4321 2>&1 | head -n1 | awk ' { print \$2 } '; echo \$?" \
 "\
 8765/4321
 0
diff --git a/testsuite/patch.tests b/testsuite/patch.tests
index 3920524..1d48e90 100755
--- a/testsuite/patch.tests
+++ b/testsuite/patch.tests
@@ -75,12 +75,12 @@
 testing "patch detects already applied hunk" \
 	'patch 2>&1; echo $?; cat input' \
 "\
+patching file input
 Possibly reversed hunk 1 at 4
 Hunk 1 FAILED 1/1.
  abc
 +def
  123
-patching file input
 1
 abc
 def
@@ -103,12 +103,12 @@
 testing "patch detects already applied hunk at the EOF" \
 	'patch 2>&1; echo $?; cat input' \
 "\
+patching file input
 Possibly reversed hunk 1 at 4
 Hunk 1 FAILED 1/1.
  abc
  123
 +456
-patching file input
 1
 abc
 123