Browse Source

randomconfig fixes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko 3 years ago
parent
commit
5fa5c4bde8
6 changed files with 31 additions and 6 deletions
  1. 2 1
      editors/patch.c
  2. 1 0
      include/libbb.h
  3. 1 0
      libbb/duration.c
  4. 22 0
      scripts/randomtest
  5. 3 3
      testsuite/cpio.tests
  6. 2 2
      testsuite/patch.tests

+ 2 - 1
editors/patch.c

@@ -264,7 +264,7 @@ static int apply_one_hunk(void)
 			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 @@ int patch_main(int argc UNUSED_PARAM, char **argv)
 					TT.linenum = 0;
 					TT.hunknum = 0;
 				}
+				fflush_all(); // make "patching file F" visible
 			}
 
 			TT.hunknum++;

+ 1 - 0
include/libbb.h

@@ -298,6 +298,7 @@ typedef unsigned long uoff_t;
 /* 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 {

+ 1 - 0
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"
 

+ 22 - 0
scripts/randomtest

@@ -113,6 +113,28 @@ if test x"$LIBC" = x"uclibc"; then
 	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)

+ 3 - 3
testsuite/cpio.tests

@@ -129,7 +129,7 @@ SKIP=
 
 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 @@ SKIP=
 
 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 @@ SKIP=
 
 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

+ 2 - 2
testsuite/patch.tests

@@ -75,12 +75,12 @@ zxc
 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 @@ def
 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