Commit 38775424 authored by Peter Korsgaard's avatar Peter Korsgaard
Browse files

busbox: add 1.17.0 upstream fixes

parent 3169aae8
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.17.0/util-linux/acpid.c busybox-1.17.0-acpid/util-linux/acpid.c
--- busybox-1.17.0/util-linux/acpid.c	2010-06-24 04:40:43.000000000 +0200
+++ busybox-1.17.0-acpid/util-linux/acpid.c	2010-07-12 06:24:00.000000000 +0200
@@ -9,9 +9,25 @@
 #include "libbb.h"
 
 #include <linux/input.h>
+#ifndef EV_SW
+# define EV_SW         0x05
+#endif
+#ifndef EV_KEY
+# define EV_KEY        0x01
+#endif
+#ifndef SW_LID
+# define SW_LID        0x00
+#endif
 #ifndef SW_RFKILL_ALL
-# define SW_RFKILL_ALL 3
+# define SW_RFKILL_ALL 0x03
 #endif
+#ifndef KEY_POWER
+# define KEY_POWER     116     /* SC System Power Down */
+#endif
+#ifndef KEY_SLEEP
+# define KEY_SLEEP     142     /* SC System Sleep */
+#endif
+
 
 /*
  * acpid listens to ACPI events coming either in textual form
+101 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.17.0/applets/usage_compressed busybox-1.17.0-build_system/applets/usage_compressed
--- busybox-1.17.0/applets/usage_compressed	2010-07-04 23:33:59.000000000 +0200
+++ busybox-1.17.0-build_system/applets/usage_compressed	2010-07-10 01:31:18.000000000 +0200
@@ -40,8 +40,4 @@ echo '#define PACKED_USAGE \'
 	-e 's/$/ \\/'
 echo ''
 
-if cmp -s "$target.$$" "$target" 2>/dev/null; then
-    rm -- "$target.$$"
-else
-    mv -- "$target.$$" "$target"
-fi
+mv -- "$target.$$" "$target"
diff -urpN busybox-1.17.0/init/bootchartd.c busybox-1.17.0-build_system/init/bootchartd.c
--- busybox-1.17.0/init/bootchartd.c	2010-07-04 15:32:24.000000000 +0200
+++ busybox-1.17.0-build_system/init/bootchartd.c	2010-07-10 01:31:14.000000000 +0200
@@ -18,7 +18,7 @@
 //config:	  and stopped using bootchartd stop.
 //config:
 //config:config FEATURE_BOOTCHARTD_BLOATED_HEADER
-//config:	bool "bootchartd"
+//config:	bool "Compatible, bloated header"
 //config:	default y
 //config:	depends on BOOTCHARTD
 //config:	help
@@ -35,7 +35,7 @@
 //config:	  makes bootchartd applet to dump a subset of it.
 //config:
 //config:config FEATURE_BOOTCHARTD_CONFIG_FILE
-//config:	bool "bootchartd"
+//config:	bool "Support bootchartd.conf"
 //config:	default y
 //config:	depends on BOOTCHARTD
 //config:	help
diff -urpN busybox-1.17.0/scripts/gen_build_files.sh busybox-1.17.0-build_system/scripts/gen_build_files.sh
--- busybox-1.17.0/scripts/gen_build_files.sh	2010-06-26 00:42:29.000000000 +0200
+++ busybox-1.17.0-build_system/scripts/gen_build_files.sh	2010-07-10 01:31:38.000000000 +0200
@@ -4,6 +4,8 @@ test $# -ge 2 || { echo "Syntax: $0 SRCT
 
 # cd to objtree
 cd -- "$2" || { echo "Syntax: $0 SRCTREE OBJTREE"; exit 1; }
+# In separate objtree build, include/ might not exist yet
+mkdir include 2>/dev/null
 
 srctree="$1"
 
@@ -46,10 +48,12 @@ if test x"$new" != x"$old"; then
 fi
 
 # (Re)generate */Kbuild and */Config.in
-find -type d | while read -r d; do
+{ cd -- "$srctree" && find -type d; } | while read -r d; do
 	d="${d#./}"
+
 	src="$srctree/$d/Kbuild.src"
 	dst="$d/Kbuild"
+	mkdir -p -- "$d" 2>/dev/null
 	if test -f "$src"; then
 		#echo "  CHK     $dst"
 
@@ -69,6 +73,7 @@ find -type d | while read -r d; do
 
 	src="$srctree/$d/Config.src"
 	dst="$d/Config.in"
+	mkdir -p -- "$d" 2>/dev/null
 	if test -f "$src"; then
 		#echo "  CHK     $dst"
 
diff -urpN busybox-1.17.0/scripts/Makefile.build busybox-1.17.0-build_system/scripts/Makefile.build
--- busybox-1.17.0/scripts/Makefile.build	2010-06-24 04:40:43.000000000 +0200
+++ busybox-1.17.0-build_system/scripts/Makefile.build	2010-07-10 01:31:38.000000000 +0200
@@ -13,8 +13,13 @@ __build:
 include scripts/Kbuild.include
 
 # The filename Kbuild has precedence over Makefile
+# bbox: we also try to include Kbuild file in obj tree first
 kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src))
-include $(if $(wildcard $(kbuild-dir)/Kbuild), $(kbuild-dir)/Kbuild, $(kbuild-dir)/Makefile)
+include $(if $(wildcard $(src)/Kbuild), $(src)/Kbuild, \
+		$(if $(wildcard $(kbuild-dir)/Kbuild), $(kbuild-dir)/Kbuild, \
+			$(kbuild-dir)/Makefile \
+		) \
+	)
 
 include scripts/Makefile.lib
 
diff -urpN busybox-1.17.0/scripts/test_make_O busybox-1.17.0-build_system/scripts/test_make_O
--- busybox-1.17.0/scripts/test_make_O	1970-01-01 01:00:00.000000000 +0100
+++ busybox-1.17.0-build_system/scripts/test_make_O	2010-07-10 01:31:38.000000000 +0200
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+b=`basename $PWD`
+test "${b#busybox}" != "$b" || { echo "Must be run in busybox tree"; exit 1; }
+
+rm -rf ../testdir_make_O.$$
+mkdir ../testdir_make_O.$$
+odir=`cd ../testdir_make_O.$$ && pwd`
+test -d "$odir" || exit 1
+
+make O="$odir" $MAKEOPTS "$@" defconfig busybox 2>&1 | tee test_make_O.log
+72 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.17.0/editors/diff.c busybox-1.17.0-diff/editors/diff.c
--- busybox-1.17.0/editors/diff.c	2010-06-24 04:40:43.000000000 +0200
+++ busybox-1.17.0-diff/editors/diff.c	2010-07-10 03:52:33.000000000 +0200
@@ -760,9 +760,11 @@ static int FAST_FUNC add_to_dirlist(cons
 		void *userdata, int depth UNUSED_PARAM)
 {
 	struct dlist *const l = userdata;
+	const char *file = filename + l->len;
 	l->dl = xrealloc_vector(l->dl, 6, l->e);
-	/* + 1 skips "/" after dirname */
-	l->dl[l->e] = xstrdup(filename + l->len + 1);
+	while (*file == '/')
+		file++;
+	l->dl[l->e] = xstrdup(file);
 	l->e++;
 	return TRUE;
 }
diff -urpN busybox-1.17.0/testsuite/diff.tests busybox-1.17.0-diff/testsuite/diff.tests
--- busybox-1.17.0/testsuite/diff.tests	2010-06-24 04:40:43.000000000 +0200
+++ busybox-1.17.0-diff/testsuite/diff.tests	2010-07-10 01:31:51.000000000 +0200
@@ -4,7 +4,7 @@
 
 . ./testing.sh
 
-# testing "test name" "options" "expected result" "file input" "stdin"
+# testing "test name" "commands" "expected result" "file input" "stdin"
 
 # diff outputs date/time in the header, which should not be analysed
 # NB: sed has tab character in s command!
@@ -100,9 +100,11 @@ testing "diff always takes context from 
 	"abc\na  c\ndef\n" \
 	"a c\n"
 
-# testing "test name" "options" "expected result" "file input" "stdin"
+# testing "test name" "commands" "expected result" "file input" "stdin"
 
+# clean up
 rm -rf diff1 diff2
+
 mkdir diff1 diff2 diff2/subdir
 echo qwe >diff1/-
 echo asd >diff2/subdir/-
@@ -187,4 +189,29 @@ SKIP=
 # clean up
 rm -rf diff1 diff2
 
+# NOT using directory structure from prev test...
+mkdir diff1 diff2
+echo qwe >diff1/-
+echo rty >diff2/-
+optional FEATURE_DIFF_DIR
+testing "diff diff1 diff2/" \
+	"diff -ur diff1 diff2/ | $TRIM_TAB; diff -ur .///diff1 diff2//// | $TRIM_TAB" \
+"\
+--- diff1/-
++++ diff2/-
+@@ -1 +1 @@
+-qwe
++rty
+--- .///diff1/-
++++ diff2////-
+@@ -1 +1 @@
+-qwe
++rty
+" \
+	"" ""
+SKIP=
+
+# clean up
+rm -rf diff1 diff2
+
 exit $FAILCOUNT
+13 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.17.0/debianutils/mktemp.c busybox-1.17.0-mktemp/debianutils/mktemp.c
--- busybox-1.17.0/debianutils/mktemp.c	2010-06-24 04:40:43.000000000 +0200
+++ busybox-1.17.0-mktemp/debianutils/mktemp.c	2010-07-12 03:42:48.000000000 +0200
@@ -50,7 +50,8 @@ int mktemp_main(int argc UNUSED_PARAM, c
 	opts = getopt32(argv, "dqtp:", &path);
 
 	chp = argv[optind] ? argv[optind] : xstrdup("tmp.XXXXXX");
-	chp = concat_path_file(path, chp);
+	if (chp[0] != '/' || (opts & 8))
+		chp = concat_path_file(path, chp);
 
 	if (opts & 1) { /* -d */
 		if (mkdtemp(chp) == NULL)
+27 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.17.0/modutils/modprobe.c busybox-1.17.0-modprobe-l/modutils/modprobe.c
--- busybox-1.17.0/modutils/modprobe.c	2010-06-24 04:40:43.000000000 +0200
+++ busybox-1.17.0-modprobe-l/modutils/modprobe.c	2010-07-10 01:25:42.000000000 +0200
@@ -483,6 +483,11 @@ int modprobe_main(int argc UNUSED_PARAM,
 	opt = getopt32(argv, INSMOD_OPTS MODPROBE_OPTS INSMOD_ARGS);
 	argv += optind;
 
+	/* Goto modules location */
+	xchdir(CONFIG_DEFAULT_MODULES_DIR);
+	uname(&uts);
+	xchdir(uts.release);
+
 	if (opt & MODPROBE_OPT_LIST_ONLY) {
 		char name[MODULE_NAME_LEN];
 		char *colon, *tokens[2];
@@ -524,11 +529,6 @@ int modprobe_main(int argc UNUSED_PARAM,
 		return EXIT_SUCCESS;
 	}
 
-	/* Goto modules location */
-	xchdir(CONFIG_DEFAULT_MODULES_DIR);
-	uname(&uts);
-	xchdir(uts.release);
-
 	/* Retrieve module names of already loaded modules */
 	{
 		char *s;
Loading