From 3dde2b9d17f5ba4ac365c83b1a7703d22e02c40b8b93e6359f71eb315033860a Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Mon, 19 Nov 2007 09:18:53 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/busybox?expand=0&rev=6 --- busybox-1.6.1.tar.bz2 | 3 - busybox-1.8.1.tar.bz2 | 3 + busybox.SuSE.config | 76 ++++++++++++++---- busybox.changes | 6 ++ busybox.dmesg-size.patch | 2 +- busybox.fix.busybox-1.8.1-inetd.patch | 15 ++++ busybox.fix.busybox-1.8.1-lash.patch | 100 ++++++++++++++++++++++++ busybox.fix.busybox-1.8.1-tar_z.patch | 14 ++++ busybox.fix.busybox-1.8.1-tr.patch | 28 +++++++ busybox.fix.busybox-1.8.1-trylink.patch | 94 ++++++++++++++++++++++ busybox.install.patch | 4 +- busybox.libunarchive-array.patch | 12 +-- busybox.spec | 28 +++++-- 13 files changed, 349 insertions(+), 36 deletions(-) delete mode 100644 busybox-1.6.1.tar.bz2 create mode 100644 busybox-1.8.1.tar.bz2 create mode 100644 busybox.fix.busybox-1.8.1-inetd.patch create mode 100644 busybox.fix.busybox-1.8.1-lash.patch create mode 100644 busybox.fix.busybox-1.8.1-tar_z.patch create mode 100644 busybox.fix.busybox-1.8.1-tr.patch create mode 100644 busybox.fix.busybox-1.8.1-trylink.patch diff --git a/busybox-1.6.1.tar.bz2 b/busybox-1.6.1.tar.bz2 deleted file mode 100644 index 8919e8e..0000000 --- a/busybox-1.6.1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d1c7ee084266a168372755929cc59cd27a5ddc136a97608b855f0dba5f7ba8c2 -size 1692099 diff --git a/busybox-1.8.1.tar.bz2 b/busybox-1.8.1.tar.bz2 new file mode 100644 index 0000000..0eeec6f --- /dev/null +++ b/busybox-1.8.1.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f06868e7a622c562d7b16594158d9c245ad8491fb0f27cde9fa8a1d924264ca4 +size 1763559 diff --git a/busybox.SuSE.config b/busybox.SuSE.config index 9f184ca..d037b18 100644 --- a/busybox.SuSE.config +++ b/busybox.SuSE.config @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.6.1 -# Sun Jul 15 08:40:07 2007 +# Busybox version: 1.8.1 +# Fri Nov 16 13:55:35 2007 # CONFIG_HAVE_DOT_CONFIG=y @@ -27,23 +27,22 @@ CONFIG_FEATURE_DEVPTS=y # CONFIG_FEATURE_CLEAN_UP is not set CONFIG_FEATURE_PIDFILE=y CONFIG_FEATURE_SUID=y -CONFIG_FEATURE_SYSLOG=y # CONFIG_FEATURE_SUID_CONFIG is not set # CONFIG_FEATURE_SUID_CONFIG_QUIET is not set -CONFIG_FEATURE_HAVE_RPC=y # CONFIG_SELINUX is not set # CONFIG_FEATURE_PREFER_APPLETS is not set CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe" +CONFIG_FEATURE_SYSLOG=y +CONFIG_FEATURE_HAVE_RPC=y # # Build Options # # CONFIG_STATIC is not set # CONFIG_BUILD_LIBBUSYBOX is not set -# CONFIG_FEATURE_FULL_LIBBUSYBOX is not set +# CONFIG_FEATURE_INDIVIDUAL is not set # CONFIG_FEATURE_SHARED_BUSYBOX is not set CONFIG_LFS=y -CONFIG_BUILD_AT_ONCE=y # # Debugging Options @@ -61,7 +60,11 @@ CONFIG_INCLUDE_SUSv2=y # CONFIG_INSTALL_NO_USR is not set CONFIG_INSTALL_APPLET_SYMLINKS=y # CONFIG_INSTALL_APPLET_HARDLINKS is not set +# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set # CONFIG_INSTALL_APPLET_DONT is not set +# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set +# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set +# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set CONFIG_PREFIX="/usr" # @@ -69,7 +72,10 @@ CONFIG_PREFIX="/usr" # CONFIG_PASSWORD_MINLEN=6 CONFIG_MD5_SIZE_VS_SPEED=2 +CONFIG_FEATURE_FAST_TOP=y +# CONFIG_FEATURE_ETC_NETWORKS is not set CONFIG_FEATURE_EDITING=y +CONFIG_FEATURE_EDITING_MAX_LEN=1024 CONFIG_FEATURE_EDITING_FANCY_KEYS=y # CONFIG_FEATURE_EDITING_VI is not set CONFIG_FEATURE_EDITING_HISTORY=666 @@ -77,6 +83,8 @@ CONFIG_FEATURE_EDITING_SAVEHISTORY=y CONFIG_FEATURE_TAB_COMPLETION=y # CONFIG_FEATURE_USERNAME_COMPLETION is not set # CONFIG_FEATURE_EDITING_FANCY_PROMPT is not set +CONFIG_MONOTONIC_SYSCALL=y +CONFIG_IOCTL_HEX2STR_ERROR=y # # Applets @@ -88,6 +96,7 @@ CONFIG_FEATURE_TAB_COMPLETION=y CONFIG_AR=y CONFIG_FEATURE_AR_LONG_FILENAMES=y CONFIG_BUNZIP2=y +CONFIG_BZIP2=y CONFIG_CPIO=y # CONFIG_DPKG is not set # CONFIG_DPKG_DEB is not set @@ -97,6 +106,7 @@ CONFIG_FEATURE_GUNZIP_UNCOMPRESS=y CONFIG_GZIP=y CONFIG_RPM2CPIO=y CONFIG_RPM=y +CONFIG_FEATURE_RPM_BZ2=y CONFIG_TAR=y CONFIG_FEATURE_TAR_CREATE=y CONFIG_FEATURE_TAR_BZIP2=y @@ -105,6 +115,7 @@ CONFIG_FEATURE_TAR_FROM=y CONFIG_FEATURE_TAR_GZIP=y CONFIG_FEATURE_TAR_COMPRESS=y # CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set +# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y CONFIG_FEATURE_TAR_LONG_OPTIONS=y CONFIG_UNCOMPRESS=y @@ -132,7 +143,6 @@ CONFIG_CHMOD=y CONFIG_CHOWN=y CONFIG_CHROOT=y CONFIG_CKSUM=y -CONFIG_CMP=y CONFIG_COMM=y CONFIG_CP=y CONFIG_CUT=y @@ -142,10 +152,6 @@ CONFIG_DD=y CONFIG_FEATURE_DD_SIGNAL_HANDLING=y CONFIG_FEATURE_DD_IBS_OBS=y CONFIG_DF=y -CONFIG_DIFF=y -CONFIG_FEATURE_DIFF_BINARY=y -CONFIG_FEATURE_DIFF_DIR=y -CONFIG_FEATURE_DIFF_MINIMAL=y CONFIG_DIRNAME=y CONFIG_DOS2UNIX=y CONFIG_UNIX2DOS=y @@ -155,6 +161,8 @@ CONFIG_ECHO=y CONFIG_FEATURE_FANCY_ECHO=y CONFIG_ENV=y CONFIG_FEATURE_ENV_LONG_OPTIONS=y +# CONFIG_EXPAND is not set +# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set CONFIG_EXPR=y CONFIG_EXPR_MATH_SUPPORT_64=y CONFIG_FALSE=y @@ -190,6 +198,8 @@ CONFIG_OD=y CONFIG_PRINTENV=y CONFIG_PRINTF=y CONFIG_PWD=y +CONFIG_READLINK=y +# CONFIG_FEATURE_READLINK_FOLLOW is not set CONFIG_REALPATH=y CONFIG_RM=y CONFIG_RMDIR=y @@ -219,11 +229,12 @@ CONFIG_FEATURE_TR_EQUIV=y CONFIG_TRUE=y CONFIG_TTY=y CONFIG_UNAME=y +# CONFIG_UNEXPAND is not set +# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set CONFIG_UNIQ=y CONFIG_USLEEP=y CONFIG_UUDECODE=y CONFIG_UUENCODE=y -CONFIG_WATCH=y CONFIG_WC=y CONFIG_FEATURE_WC_LARGE=y CONFIG_WHO=y @@ -257,6 +268,7 @@ CONFIG_CHVT=y CONFIG_CLEAR=y CONFIG_DEALLOCVT=y CONFIG_DUMPKMAP=y +# CONFIG_KBD_MODE is not set CONFIG_LOADFONT=y CONFIG_LOADKMAP=y CONFIG_OPENVT=y @@ -273,8 +285,6 @@ CONFIG_SETLOGCONS=y # CONFIG_MKTEMP=y # CONFIG_PIPE_PROGRESS is not set -CONFIG_READLINK=y -# CONFIG_FEATURE_READLINK_FOLLOW is not set CONFIG_RUN_PARTS=y CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y CONFIG_FEATURE_RUN_PARTS_FANCY=y @@ -288,10 +298,16 @@ CONFIG_WHICH=y # CONFIG_AWK=y CONFIG_FEATURE_AWK_MATH=y +CONFIG_CMP=y +CONFIG_DIFF=y +CONFIG_FEATURE_DIFF_BINARY=y +CONFIG_FEATURE_DIFF_DIR=y +CONFIG_FEATURE_DIFF_MINIMAL=y CONFIG_ED=y CONFIG_PATCH=y CONFIG_SED=y CONFIG_VI=y +CONFIG_FEATURE_VI_MAX_LEN=1024 CONFIG_FEATURE_VI_COLON=y CONFIG_FEATURE_VI_YANKMARK=y CONFIG_FEATURE_VI_SEARCH=y @@ -314,6 +330,7 @@ CONFIG_FEATURE_FIND_MMIN=y CONFIG_FEATURE_FIND_PERM=y CONFIG_FEATURE_FIND_TYPE=y CONFIG_FEATURE_FIND_XDEV=y +CONFIG_FEATURE_FIND_MAXDEPTH=y CONFIG_FEATURE_FIND_NEWER=y CONFIG_FEATURE_FIND_INUM=y CONFIG_FEATURE_FIND_EXEC=y @@ -326,6 +343,8 @@ CONFIG_FEATURE_FIND_SIZE=y CONFIG_FEATURE_FIND_PRUNE=y # CONFIG_FEATURE_FIND_DELETE is not set CONFIG_FEATURE_FIND_PATH=y +CONFIG_FEATURE_FIND_REGEX=y +# CONFIG_FEATURE_FIND_CONTEXT is not set CONFIG_GREP=y CONFIG_FEATURE_GREP_EGREP_ALIAS=y CONFIG_FEATURE_GREP_FGREP_ALIAS=y @@ -366,11 +385,14 @@ CONFIG_GETTY=y CONFIG_FEATURE_UTMP=y CONFIG_FEATURE_WTMP=y CONFIG_LOGIN=y +# CONFIG_PAM is not set # CONFIG_LOGIN_SCRIPTS is not set +# CONFIG_FEATURE_NOLOGIN is not set CONFIG_FEATURE_SECURETTY=y CONFIG_PASSWD=y # CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set CONFIG_CRYPTPW=y +# CONFIG_CHPASSWD is not set CONFIG_SU=y CONFIG_FEATURE_SU_SYSLOG=y CONFIG_FEATURE_SU_CHECKS_SHELLS=y @@ -441,11 +463,13 @@ CONFIG_LOSETUP=y CONFIG_MDEV=y CONFIG_FEATURE_MDEV_CONF=y CONFIG_FEATURE_MDEV_EXEC=y +CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y CONFIG_MKSWAP=y # CONFIG_FEATURE_MKSWAP_V0 is not set CONFIG_MORE=y CONFIG_FEATURE_USE_TERMIOS=y CONFIG_MOUNT=y +CONFIG_FEATURE_MOUNT_HELPERS=y CONFIG_FEATURE_MOUNT_NFS=y CONFIG_FEATURE_MOUNT_CIFS=y CONFIG_FEATURE_MOUNT_FLAGS=y @@ -500,9 +524,9 @@ CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA=y CONFIG_MAKEDEVS=y # CONFIG_FEATURE_MAKEDEVS_LEAF is not set CONFIG_FEATURE_MAKEDEVS_TABLE=y +# CONFIG_MICROCOM is not set CONFIG_MOUNTPOINT=y CONFIG_MT=y -# CONFIG_NMETER is not set CONFIG_RAIDAUTORUN=y # CONFIG_READAHEAD is not set CONFIG_RUNLEVEL=y @@ -512,6 +536,7 @@ CONFIG_SETSID=y CONFIG_TASKSET=y CONFIG_FEATURE_TASKSET_FANCY=y CONFIG_TIME=y +# CONFIG_TTYSIZE is not set CONFIG_WATCHDOG=y # @@ -529,6 +554,8 @@ CONFIG_FTPPUT=y CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y CONFIG_HOSTNAME=y # CONFIG_HTTPD is not set +# CONFIG_FEATURE_HTTPD_RANGES is not set +# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set # CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP is not set # CONFIG_FEATURE_HTTPD_SETUID is not set # CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set @@ -538,6 +565,8 @@ CONFIG_HOSTNAME=y # CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set # CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set # CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set +# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set +# CONFIG_FEATURE_HTTPD_PROXY is not set CONFIG_IFCONFIG=y CONFIG_FEATURE_IFCONFIG_STATUS=y CONFIG_FEATURE_IFCONFIG_SLIP=y @@ -545,6 +574,7 @@ CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ=y CONFIG_FEATURE_IFCONFIG_HW=y CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y CONFIG_IFUPDOWN=y +CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate" CONFIG_FEATURE_IFUPDOWN_IP=y CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y # CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set @@ -566,6 +596,7 @@ CONFIG_FEATURE_IP_ROUTE=y CONFIG_FEATURE_IP_TUNNEL=y CONFIG_FEATURE_IP_RULE=y CONFIG_FEATURE_IP_SHORT_FORMS=y +# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set CONFIG_IPADDR=y CONFIG_IPLINK=y CONFIG_IPROUTE=y @@ -583,8 +614,10 @@ CONFIG_FEATURE_NETSTAT_WIDE=y CONFIG_NSLOOKUP=y CONFIG_PING=y CONFIG_PING6=y +CONFIG_PSCAN=y CONFIG_FEATURE_FANCY_PING=y CONFIG_ROUTE=y +# CONFIG_SLATTACH is not set CONFIG_TELNET=y CONFIG_FEATURE_TELNET_TTYPE=y CONFIG_FEATURE_TELNET_AUTOLOGIN=y @@ -602,8 +635,8 @@ CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y # CONFIG_APP_UDHCPD is not set # CONFIG_APP_DHCPRELAY is not set # CONFIG_APP_DUMPLEASES is not set +# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set CONFIG_APP_UDHCPC=y -# CONFIG_FEATURE_UDHCP_SYSLOG is not set # CONFIG_FEATURE_UDHCP_DEBUG is not set CONFIG_FEATURE_RFC3397=y CONFIG_VCONFIG=y @@ -621,16 +654,23 @@ CONFIG_FUSER=y CONFIG_KILL=y CONFIG_KILLALL=y CONFIG_KILLALL5=y +# CONFIG_NMETER is not set +# CONFIG_PGREP is not set CONFIG_PIDOF=y CONFIG_FEATURE_PIDOF_SINGLE=y CONFIG_FEATURE_PIDOF_OMIT=y +# CONFIG_PKILL is not set CONFIG_PS=y CONFIG_FEATURE_PS_WIDE=y CONFIG_RENICE=y CONFIG_BB_SYSCTL=y CONFIG_TOP=y CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y +CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y +# CONFIG_FEATURE_TOP_DECIMALS is not set +CONFIG_FEATURE_TOPMEM=y CONFIG_UPTIME=y +CONFIG_WATCH=y # # Shells @@ -707,10 +747,14 @@ CONFIG_SVLOGD=y # CONFIG_GETSEBOOL is not set # CONFIG_LOAD_POLICY is not set # CONFIG_MATCHPATHCON is not set +# CONFIG_RESTORECON is not set # CONFIG_RUNCON is not set # CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set # CONFIG_SELINUXENABLED is not set # CONFIG_SETENFORCE is not set +# CONFIG_SETFILES is not set +# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set +# CONFIG_SETSEBOOL is not set # # ipsvd utilities diff --git a/busybox.changes b/busybox.changes index a384b22..0b2e8d9 100644 --- a/busybox.changes +++ b/busybox.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri Nov 16 15:02:36 CET 2007 - olh@suse.de + +- update to 1.8.1 + see http://www.busybox.net/ for full changelog + ------------------------------------------------------------------- Sun Jul 15 10:47:28 CEST 2007 - olh@suse.de diff --git a/busybox.dmesg-size.patch b/busybox.dmesg-size.patch index 4914086..511053b 100644 --- a/busybox.dmesg-size.patch +++ b/busybox.dmesg-size.patch @@ -16,7 +16,7 @@ + return 16384; +} + - int dmesg_main(int argc, char **argv); + int dmesg_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; int dmesg_main(int argc, char **argv) { @@ -25,7 +33,7 @@ int dmesg_main(int argc, char **argv) diff --git a/busybox.fix.busybox-1.8.1-inetd.patch b/busybox.fix.busybox-1.8.1-inetd.patch new file mode 100644 index 0000000..ef95c0e --- /dev/null +++ b/busybox.fix.busybox-1.8.1-inetd.patch @@ -0,0 +1,15 @@ +--- + networking/inetd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/networking/inetd.c ++++ b/networking/inetd.c +@@ -813,7 +813,7 @@ static servtab_t *getconfigent(void) + sep->se_bi = NULL; + #endif + argc = 0; +- for (; cp; arg = skip(&cp)) { ++ for (arg = skip(&cp); cp; arg = skip(&cp)) { + if (argc < MAXARGV) + sep->se_argv[argc++] = xxstrdup(arg); + } diff --git a/busybox.fix.busybox-1.8.1-lash.patch b/busybox.fix.busybox-1.8.1-lash.patch new file mode 100644 index 0000000..83c8b06 --- /dev/null +++ b/busybox.fix.busybox-1.8.1-lash.patch @@ -0,0 +1,100 @@ +--- + shell/lash.c | 29 +++++++++++++++-------------- + 1 file changed, 15 insertions(+), 14 deletions(-) + +--- a/shell/lash.c ++++ b/shell/lash.c +@@ -157,8 +157,8 @@ static int shell_context; /* Type promp + static char *cwd; + static char *local_pending_command; + static struct jobset job_list = { NULL, NULL }; +-static int argc; +-static char **argv; ++static int global_argc; ++static char **global_argv; + static llist_t *close_me_list; + static int last_return_code; + static int last_bg_pid; +@@ -810,16 +810,16 @@ static int expand_arguments(char *comman + var = itoa(getpid()); + break; + case '#': +- var = itoa(argc-1); ++ var = itoa(global_argc - 1); + break; + case '0':case '1':case '2':case '3':case '4': + case '5':case '6':case '7':case '8':case '9': + { + int ixx = *(dst+1)-48+1; +- if (ixx >= argc) { ++ if (ixx >= global_argc) { + var = '\0'; + } else { +- var = argv[ixx]; ++ var = global_argv[ixx]; + } + } + break; +@@ -1492,12 +1492,13 @@ static inline void setup_job_control(voi + #endif + + int lash_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; +-int lash_main(int argc_l, char **argv_l) ++int lash_main(int argc, char **argv) + { + unsigned opt; + FILE *input = stdin; +- argc = argc_l; +- argv = argv_l; ++ ++ global_argc = argc; ++ global_argv = argv; + + #if ENABLE_FEATURE_EDITING + line_input_state = new_line_input_t(FOR_SHELL); +@@ -1510,7 +1511,7 @@ int lash_main(int argc_l, char **argv_l) + job_list.fg = NULL; + last_return_code = 1; + +- if (argv[0] && argv[0][0] == '-') { ++ if (global_argv[0] && global_argv[0][0] == '-') { + FILE *prof_input; + prof_input = fopen("/etc/profile", "r"); + if (prof_input) { +@@ -1522,13 +1523,13 @@ int lash_main(int argc_l, char **argv_l) + } + } + +- opt = getopt32(argv_l, "+ic:", &local_pending_command); ++ opt = getopt32(argv, "+ic:", &local_pending_command); + #define LASH_OPT_i (1<<0) + #define LASH_OPT_c (1<<1) + if (opt & LASH_OPT_c) { + input = NULL; + optind++; +- argv += optind; ++ global_argv += optind; + } + /* A shell is interactive if the `-i' flag was given, or if all of + * the following conditions are met: +@@ -1537,7 +1538,7 @@ int lash_main(int argc_l, char **argv_l) + * standard input is a terminal + * standard output is a terminal + * Refer to Posix.2, the description of the `sh' utility. */ +- if (argv[optind] == NULL && input == stdin ++ if (global_argv[optind] == NULL && input == stdin + && isatty(STDIN_FILENO) && isatty(STDOUT_FILENO) + ) { + opt |= LASH_OPT_i; +@@ -1550,9 +1551,9 @@ int lash_main(int argc_l, char **argv_l) + "Enter 'help' for a list of built-in commands.\n\n", + bb_banner); + } +- } else if (!local_pending_command && argv[optind]) { ++ } else if (!local_pending_command && global_argv[optind]) { + //printf( "optind=%d argv[optind]='%s'\n", optind, argv[optind]); +- input = xfopen(argv[optind], "r"); ++ input = xfopen(global_argv[optind], "r"); + /* be lazy, never mark this closed */ + llist_add_to(&close_me_list, (void *)(long)fileno(input)); + } diff --git a/busybox.fix.busybox-1.8.1-tar_z.patch b/busybox.fix.busybox-1.8.1-tar_z.patch new file mode 100644 index 0000000..5db978a --- /dev/null +++ b/busybox.fix.busybox-1.8.1-tar_z.patch @@ -0,0 +1,14 @@ +--- + archival/libunarchive/decompress_unzip.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/archival/libunarchive/decompress_unzip.c ++++ b/archival/libunarchive/decompress_unzip.c +@@ -1178,6 +1178,7 @@ unpack_gz_stream(int in, int out) + ALLOC_STATE; + bytebuffer_max = 0x8000; + bytebuffer = xmalloc(bytebuffer_max); ++ gunzip_src_fd = in; + + again: + if (!check_header_gzip(PASS_STATE_ONLY)) { diff --git a/busybox.fix.busybox-1.8.1-tr.patch b/busybox.fix.busybox-1.8.1-tr.patch new file mode 100644 index 0000000..bf27daf --- /dev/null +++ b/busybox.fix.busybox-1.8.1-tr.patch @@ -0,0 +1,28 @@ +--- + coreutils/tr.c | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +--- a/coreutils/tr.c ++++ b/coreutils/tr.c +@@ -173,7 +173,8 @@ int tr_main(int argc, char **argv) + int idx = 1; + int i; + smalluint flags = 0; +- size_t read_chars = 0, in_index = 0, out_index = 0, c, coded, last = -1; ++ ssize_t read_chars = 0; ++ size_t in_index = 0, out_index = 0, c, coded, last = -1; + RESERVE_CONFIG_UBUFFER(output, BUFSIZ); + RESERVE_CONFIG_BUFFER(vector, ASCII+1); + RESERVE_CONFIG_BUFFER(invec, ASCII+1); +@@ -223,8 +224,9 @@ int tr_main(int argc, char **argv) + } + read_chars = read(STDIN_FILENO, tr_buf, BUFSIZ); + if (read_chars <= 0) { +- if (write(STDOUT_FILENO, (char *)output, out_index) != out_index) +- bb_perror_msg(bb_msg_write_error); ++ xwrite(STDOUT_FILENO, (char *)output, out_index); ++ if (read_chars < 0) ++ bb_perror_msg_and_die(bb_msg_read_error); + exit(EXIT_SUCCESS); + } + in_index = 0; diff --git a/busybox.fix.busybox-1.8.1-trylink.patch b/busybox.fix.busybox-1.8.1-trylink.patch new file mode 100644 index 0000000..31a8dd1 --- /dev/null +++ b/busybox.fix.busybox-1.8.1-trylink.patch @@ -0,0 +1,94 @@ +--- + scripts/trylink | 25 ++++++++++++++++++------- + 1 file changed, 18 insertions(+), 7 deletions(-) + +--- a/scripts/trylink ++++ b/scripts/trylink +@@ -46,6 +46,14 @@ try() { + return $exitcode + } + ++check_cc() { ++ if $CC $1 -shared -o /dev/null -xc /dev/null > /dev/null 2>&1; then ++ echo "$1"; ++ else ++ echo "$2"; ++ fi ++} ++ + EXE="$1" + CC="$2" + LDFLAGS="$3" +@@ -53,6 +61,9 @@ O_FILES="$4" + A_FILES="$5" + LDLIBS="$6" + ++# The -Wl,--sort-section option is not supported by older versions of ld ++SORT_SECTION=`check_cc "-Wl,--sort-section -Wl,alignment" ""` ++ + # Sanitize lib list (dups, extra spaces etc) + LDLIBS=`echo "$LDLIBS" | xargs -n1 | sort | uniq | xargs` + +@@ -64,7 +75,7 @@ test "x$l_list" != "x" && l_list="-Wl,-- + try $CC $LDFLAGS \ + -o $EXE \ + -Wl,--sort-common \ +- -Wl,--sort-section -Wl,alignment \ ++ $SORT_SECTION \ + -Wl,--gc-sections \ + -Wl,--start-group $O_FILES $A_FILES -Wl,--end-group \ + $l_list \ +@@ -88,7 +99,7 @@ while test "$LDLIBS"; do + try $CC $LDFLAGS \ + -o $EXE \ + -Wl,--sort-common \ +- -Wl,--sort-section -Wl,alignment \ ++ $SORT_SECTION \ + -Wl,--gc-sections \ + -Wl,--start-group $O_FILES $A_FILES -Wl,--end-group \ + $l_list +@@ -117,7 +128,7 @@ if ! test -f busybox_ldscript; then + try $CC $LDFLAGS \ + -o $EXE \ + -Wl,--sort-common \ +- -Wl,--sort-section -Wl,alignment \ ++ $SORT_SECTION \ + -Wl,--gc-sections \ + -Wl,--start-group $O_FILES $A_FILES -Wl,--end-group \ + $l_list \ +@@ -139,7 +150,7 @@ else + try $CC $LDFLAGS \ + -o $EXE \ + -Wl,--sort-common \ +- -Wl,--sort-section -Wl,alignment \ ++ $SORT_SECTION \ + -Wl,--gc-sections \ + -Wl,-T -Wl,busybox_ldscript \ + -Wl,--start-group $O_FILES $A_FILES -Wl,--end-group \ +@@ -174,7 +185,7 @@ if test "$CONFIG_BUILD_LIBBUSYBOX" = y; + -Wl,-soname="libbusybox.so.$BB_VER" \ + -Wl,--undefined=lbb_main \ + -Wl,--sort-common \ +- -Wl,--sort-section -Wl,alignment \ ++ $SORT_SECTION \ + -Wl,--start-group $A_FILES -Wl,--end-group \ + $l_list \ + -Wl,--warn-common \ +@@ -195,7 +206,7 @@ if test "$CONFIG_FEATURE_SHARED_BUSYBOX" + try $CC $LDFLAGS \ + -o $EXE \ + -Wl,--sort-common \ +- -Wl,--sort-section -Wl,alignment \ ++ $SORT_SECTION \ + -Wl,--gc-sections \ + -Wl,--start-group $O_FILES -Wl,--end-group \ + -L"$sharedlib_dir" -lbusybox \ +@@ -234,7 +245,7 @@ int main(int argc, char **argv) + try $CC $LDFLAGS "$sharedlib_dir/applet.c" \ + -o $EXE \ + -Wl,--sort-common \ +- -Wl,--sort-section -Wl,alignment \ ++ $SORT_SECTION \ + -Wl,--gc-sections \ + -L"$sharedlib_dir" -lbusybox \ + -Wl,--warn-common \ diff --git a/busybox.install.patch b/busybox.install.patch index 1f91dfe..fc7b8f5 100644 --- a/busybox.install.patch +++ b/busybox.install.patch @@ -5,11 +5,11 @@ --- a/applets/install.sh +++ b/applets/install.sh @@ -8,7 +8,7 @@ if [ -z "$prefix" ]; then - echo "usage: applets/install.sh DESTINATION [--symlinks/--hardlinks]" + echo "usage: applets/install.sh DESTINATION [--symlinks/--hardlinks/--scriptwrapper]" exit 1; fi -h=`sort busybox.links | uniq` +h=`sort /usr/share/busybox/busybox.links | uniq` + scriptwrapper="n" cleanup="0" noclobber="0" - case "$2" in diff --git a/busybox.libunarchive-array.patch b/busybox.libunarchive-array.patch index 930034e..12e839a 100644 --- a/busybox.libunarchive-array.patch +++ b/busybox.libunarchive-array.patch @@ -10,18 +10,18 @@ make[1]: *** [archival/libunarchive/get_header_tar.o] Error 1 --- a/archival/libunarchive/get_header_tar.c +++ b/archival/libunarchive/get_header_tar.c -@@ -143,8 +143,8 @@ char get_header_tar(archive_handle_t *ar +@@ -162,8 +162,8 @@ char get_header_tar(archive_handle_t *ar } - file_header->link_name = NULL; + file_header->link_target = NULL; if (!linkname && parse_names && tar.linkname[0]) { - /* we trash magic[0] here, it's ok */ - tar.linkname[sizeof(tar.linkname)] = '\0'; + /* we trash magic[0] here to terminate tar.linkname, it's ok */ + tar.magic[0] = '\0'; - file_header->link_name = xstrdup(tar.linkname); - /* FIXME: what if we have non-link object with link_name? */ - /* Will link_name be free()ed? */ -@@ -158,11 +158,11 @@ char get_header_tar(archive_handle_t *ar + file_header->link_target = xstrdup(tar.linkname); + /* FIXME: what if we have non-link object with link_target? */ + /* Will link_target be free()ed? */ +@@ -177,11 +177,11 @@ char get_header_tar(archive_handle_t *ar file_header->name = NULL; if (!longname && parse_names) { diff --git a/busybox.spec b/busybox.spec index e03c514..1802dd6 100644 --- a/busybox.spec +++ b/busybox.spec @@ -1,5 +1,5 @@ # -# spec file for package busybox (Version 1.6.1) +# spec file for package busybox (Version 1.8.1) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -12,18 +12,23 @@ Name: busybox BuildRequires: dietlibc -URL: http://www.busybox.net/ -Version: 1.6.1 +Url: http://www.busybox.net/ +Version: 1.8.1 Release: 1 Summary: The Swiss Army Knife of Embedded Linux License: GPL v2 or later Group: System/Base -Autoreqprov: on +AutoReqProv: on Source: http://busybox.net/downloads/%{name}-%{version}.tar.bz2 Source2: busybox.SuSE.config -Patch1: busybox.install.patch -Patch2: busybox.libunarchive-array.patch -Patch3: busybox.dmesg-size.patch +Patch1: busybox.fix.busybox-1.8.1-inetd.patch +Patch2: busybox.fix.busybox-1.8.1-lash.patch +Patch3: busybox.fix.busybox-1.8.1-tar_z.patch +Patch4: busybox.fix.busybox-1.8.1-tr.patch +Patch5: busybox.fix.busybox-1.8.1-trylink.patch +Patch100: busybox.install.patch +Patch101: busybox.libunarchive-array.patch +Patch102: busybox.dmesg-size.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -48,6 +53,11 @@ Authors: %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 +%patch5 -p1 +%patch100 -p1 +%patch101 -p1 +%patch102 -p1 %build cp -avL %{S:2} .config @@ -78,8 +88,10 @@ install -m 644 docs/BusyBox.1 $RPM_BUILD_ROOT%_mandir/man1 /usr/bin/busybox.install %dir /usr/share/busybox %config /usr/share/busybox/busybox.links - %changelog +* Fri Nov 16 2007 - olh@suse.de +- update to 1.8.1 + see http://www.busybox.net/ for full changelog * Sun Jul 15 2007 - olh@suse.de - update to 1.6.1 see http://www.busybox.net/ for full changelog