diff --git a/Makefile b/Makefile index eea01d383..8332583cb 100644 --- a/Makefile +++ b/Makefile @@ -19,7 +19,7 @@ # PROG := busybox -VERSION := 0.43 +VERSION := 0.44 BUILDTIME := $(shell TZ=UTC date --utc "+%Y.%m.%d-%H:%M%z") export VERSION @@ -31,8 +31,9 @@ DODEBUG = false # If you want a static binary, turn this on. DOSTATIC = false -# This will choke on a non-debian system -ARCH =`uname -m | sed -e 's/i.86/i386/' | sed -e 's/sparc.*/sparc/'` +# Figure out what arch we are on (not used at the moment) +ARCH := $(shell uname -m | sed -e 's/i.86/i386/' | sed -e 's/sparc.*/sparc/') + CC = gcc @@ -100,7 +101,7 @@ all: busybox busybox.links docs busybox: $(OBJECTS) $(CC) $(LDFLAGS) -o $@ $^ $(LIBRARIES) $(STRIP) - + docs: $(MAKE) -C docs diff --git a/busybox.def.h b/busybox.def.h index 786b1a5d1..77ee5b02a 100644 --- a/busybox.def.h +++ b/busybox.def.h @@ -231,6 +231,12 @@ #endif #endif // +#ifdef BB_INIT +#ifndef BB_FEATURE_REMOUNT +#define BB_FEATURE_REMOUNT +#endif +#endif +// #ifdef BB_FEATURE_LINUXRC #ifndef BB_INIT #define BB_INIT diff --git a/busybox.spec b/busybox.spec index dc03da004..33c03621d 100644 --- a/busybox.spec +++ b/busybox.spec @@ -1,5 +1,5 @@ Name: busybox -Version: 0.43 +Version: 0.44 Release: 1 Group: System/Utilities Summary: BusyBox is a tiny suite of Unix utilities in a multi-call binary. @@ -10,12 +10,13 @@ Buildroot: /tmp/%{Name}-%{Version} Source: %{Name}-%{Version}.tar.gz %Description -BusyBox is a suite of "tiny" Unix utilities in a multi-call binary. It -provides a pretty complete POSIX environment in a very small package. -Just add a kernel, "ash" (Keith Almquists tiny Bourne shell clone), and -an editor such as "elvis-tiny" or "ae", and you have a full system. This -is makes an excellent environment for a "rescue" disk or any small or -embedded system. +BusyBox combines tiny versions of many common UNIX utilities into a single +small executable. It provides minimalist replacements for most of the utilities +you usually find in fileutils, shellutils, findutils, textutils, grep, gzip, +tar, etc. BusyBox provides a fairly complete POSIX environment for any small +or emdedded system. The utilities in BusyBox generally have fewer options then +their full featured GNU cousins; however, the options that are provided behave +very much like their GNU counterparts. %Prep %setup -q -n %{Name}-%{Version} diff --git a/docs/busybox.pod b/docs/busybox.pod index e6a75b6a0..da890458c 100644 --- a/docs/busybox.pod +++ b/docs/busybox.pod @@ -16,9 +16,9 @@ BusyBox combines tiny versions of many common UNIX utilities into a single small executable. It provides minimalist replacements for most of the utilities you usually find in fileutils, shellutils, findutils, textutils, grep, gzip, tar, etc. BusyBox provides a fairly complete POSIX environment for any small -or emdedded system. While the number of options for the utilities BusyBox -provides have generally been reduced, the provided options behave very much -like they do in their full featured GNU cousins. +or emdedded system. The utilities in BusyBox generally have fewer options then +their full featured GNU cousins; however, the options that are included provide +the expected functionality and behave very much like their GNU counterparts. BusyBox has been written with size-optimization and limited resources in mind. It is also extremely modular so you can easily include or exclude commands (or @@ -1816,4 +1816,4 @@ Enrique Zanardi =cut -# $Id: busybox.pod,v 1.20 2000/04/21 01:23:36 erik Exp $ +# $Id: busybox.pod,v 1.21 2000/04/21 21:53:58 erik Exp $ diff --git a/examples/busybox.spec b/examples/busybox.spec index dc03da004..33c03621d 100644 --- a/examples/busybox.spec +++ b/examples/busybox.spec @@ -1,5 +1,5 @@ Name: busybox -Version: 0.43 +Version: 0.44 Release: 1 Group: System/Utilities Summary: BusyBox is a tiny suite of Unix utilities in a multi-call binary. @@ -10,12 +10,13 @@ Buildroot: /tmp/%{Name}-%{Version} Source: %{Name}-%{Version}.tar.gz %Description -BusyBox is a suite of "tiny" Unix utilities in a multi-call binary. It -provides a pretty complete POSIX environment in a very small package. -Just add a kernel, "ash" (Keith Almquists tiny Bourne shell clone), and -an editor such as "elvis-tiny" or "ae", and you have a full system. This -is makes an excellent environment for a "rescue" disk or any small or -embedded system. +BusyBox combines tiny versions of many common UNIX utilities into a single +small executable. It provides minimalist replacements for most of the utilities +you usually find in fileutils, shellutils, findutils, textutils, grep, gzip, +tar, etc. BusyBox provides a fairly complete POSIX environment for any small +or emdedded system. The utilities in BusyBox generally have fewer options then +their full featured GNU cousins; however, the options that are provided behave +very much like their GNU counterparts. %Prep %setup -q -n %{Name}-%{Version} diff --git a/more.c b/more.c index 20aa37095..909ed286b 100644 --- a/more.c +++ b/more.c @@ -109,6 +109,8 @@ extern int more_main(int argc, char **argv) cin = fopen("/dev/console", "r"); getTermSettings(fileno(cin), &initial_settings); new_settings = initial_settings; + new_settings.c_cc[VMIN] = 1; + new_settings.c_cc[VTIME] = 0; new_settings.c_lflag &= ~ICANON; new_settings.c_lflag &= ~ECHO; setTermSettings(fileno(cin), &new_settings); diff --git a/tests/cp_tests.mk b/tests/cp_tests.mk index e79f2b38b..2082d7386 100644 --- a/tests/cp_tests.mk +++ b/tests/cp_tests.mk @@ -20,12 +20,14 @@ cp_tests: cp_clean cp @echo "Some tests might show timestamp differences that are Ok."; @echo; - ${BCP} || true; + @echo Verify that busybox cp exists; + @echo ------------------------------; + [ -x ${BCP} ] || exit 0 @echo; mkdir cp_tests; - # Copy a file to a copy of the file + @echo Copy a file to a copy of the file; @echo ------------------------------; cd cp_tests; \ echo A file > afile; \ @@ -50,8 +52,8 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/*; - # Copy a file pointed to by a symlink - @echo; echo ------------------------------; + @echo; echo Copy a file pointed to by a symlink; + @echo ------------------------------; cd cp_tests; \ mkdir here there; \ echo A file > afile; \ @@ -82,21 +84,21 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/* - # Copy a symlink, useing the -a switch. - @echo; echo ------------------------------; + @echo; echo Copy a symlink, useing the -a switch.; + @echo ------------------------------; cd cp_tests; \ echo A file > afile; \ mkdir here there; \ cd here; \ ln -s ../afile . - cd cp_test; \ + cd cp_tests; \ ls -lR . > ../cp_a_symlink.gnu; \ ${GCP} -a here/afile there; \ ls -lR . >> ../cp_a_symlink.gnu; @echo; - rm -f cp_tests/there/*; + rm -rf cp_tests/there/*; sleep 1; @@ -111,10 +113,10 @@ cp_tests: cp_clean cp diff -u cp_a_symlink.gnu cp_a_symlink.bb; @echo; - rm -f cp_tests/*; + rm -rf cp_tests/*; - # Copy a directory into another directory with the -a switch - @echo; echo ------------------------------; + @echo; echo Copy a directory into another directory with the -a switch; + @echo ------------------------------; cd cp_tests; \ mkdir here there; \ echo A file > here/afile; \ @@ -145,8 +147,9 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/*; - # Copy a set of files to a directory. - @echo; echo ------------------------------; + # Copy a set of files to a directory. + @echo; echo Copy a set of files to a directory.; + @echo ------------------------------; cd cp_tests; \ echo A file number one > afile1; \ echo A file number two, blah. > afile2; \ @@ -171,8 +174,9 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/*; - # Copy a set of files to a directory with the -d switch. - @echo; echo ------------------------------; + # Copy a set of files to a directory with the -d switch. + @echo; echo Copy a set of files to a directory with the -d switch.; + @echo ------------------------------; cd cp_tests; \ echo A file number one > afile1; \ echo A file number two, blah. > afile2; \ @@ -199,8 +203,9 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/{afile{1,2},symlink1,there1}; - # Copy a set of files to a directory with the -p switch. - @echo; echo ------------------------------; + # Copy a set of files to a directory with the -p switch. + @echo; echo Copy a set of files to a directory with the -p switch.; + @echo ------------------------------; cd cp_tests; \ echo A file number one > afile1; \ echo A file number two, blah. > afile2; \ @@ -229,8 +234,8 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/{afile{1,2},symlink1,there1}; - # Copy a set of files to a directory with -p and -d switches. - @echo; echo ------------------------------; + @echo; echo Copy a set of files to a directory with -p and -d switches. + @echo ------------------------------; cd cp_tests; \ echo A file number one > afile1; \ echo A file number two, blah. > afile2; \ @@ -259,8 +264,8 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/{afile{1,2},symlink1,there1}; - # Copy a directory into another directory with the -a switch. - @echo; echo ------------------------------; + @echo; echo Copy a directory into another directory with the -a switch. + @echo ------------------------------; cd cp_tests; \ mkdir dir{a,b}; \ echo A file > dira/afile; \ @@ -293,8 +298,9 @@ cp_tests: cp_clean cp @echo; rm -rf cp_tests/dir{a,b}; - # Copy a directory to another directory, without the -a switch. - @echo; echo ------------------------------; + # Copy a directory to another directory, without the -a switch. + @echo; echo Copy a directory to another directory, without the -a switch. + @echo ------------------------------; @echo There should be an error message about cannot cp a dir to a subdir of itself. cd cp_tests; \ touch a b c; \ @@ -314,7 +320,8 @@ cp_tests: cp_clean cp @echo; diff -u cp_a_star_adir.gnu cp_a_star_adir.bb; - + + # Done @echo; rm -rf cp_tests; @echo; echo Done. diff --git a/util-linux/more.c b/util-linux/more.c index 20aa37095..909ed286b 100644 --- a/util-linux/more.c +++ b/util-linux/more.c @@ -109,6 +109,8 @@ extern int more_main(int argc, char **argv) cin = fopen("/dev/console", "r"); getTermSettings(fileno(cin), &initial_settings); new_settings = initial_settings; + new_settings.c_cc[VMIN] = 1; + new_settings.c_cc[VTIME] = 0; new_settings.c_lflag &= ~ICANON; new_settings.c_lflag &= ~ECHO; setTermSettings(fileno(cin), &new_settings);