aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2007-08-14 16:43:01 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2007-08-14 16:43:01 +0000
commitdbe6e66d6a8addbbf9438f40a645be8ae105fa8a (patch)
treea745eb3196d4c031568256345790d85bc29edc63
parenta1120a8ea29d4a825cbbb796fa15d77b15ca401f (diff)
downloadbusybox-w32-dbe6e66d6a8addbbf9438f40a645be8ae105fa8a.tar.gz
busybox-w32-dbe6e66d6a8addbbf9438f40a645be8ae105fa8a.tar.bz2
busybox-w32-dbe6e66d6a8addbbf9438f40a645be8ae105fa8a.zip
trylink: automatically use custom link script if user provides one
vinfo_msg: one user (info_msg), incorporate in it *: style fixes
-rw-r--r--archival/bbunzip.c2
-rw-r--r--archival/dpkg.c8
-rw-r--r--coreutils/wc.c2
-rw-r--r--include/libbb.h3
-rw-r--r--libbb/Kbuild1
-rw-r--r--libbb/info_msg.c13
-rw-r--r--libbb/vinfo_msg.c26
-rwxr-xr-xscripts/trylink22
8 files changed, 31 insertions, 46 deletions
diff --git a/archival/bbunzip.c b/archival/bbunzip.c
index f842d458b..f824fcf67 100644
--- a/archival/bbunzip.c
+++ b/archival/bbunzip.c
@@ -212,7 +212,7 @@ char* make_new_name_gunzip(char *filename)
212 212
213 extension++; 213 extension++;
214 if (strcmp(extension, "tgz" + 1) == 0 214 if (strcmp(extension, "tgz" + 1) == 0
215#if ENABLE_FEATURE_GUNZIP_UNCOMPRESS 215#if ENABLE_FEATURE_GUNZIP_UNCOMPRESS
216 || strcmp(extension, "Z") == 0 216 || strcmp(extension, "Z") == 0
217#endif 217#endif
218 ) { 218 ) {
diff --git a/archival/dpkg.c b/archival/dpkg.c
index caa50f90d..b5fc06d3d 100644
--- a/archival/dpkg.c
+++ b/archival/dpkg.c
@@ -1412,10 +1412,10 @@ static void init_archive_deb_control(archive_handle_t *ar_handle)
1412 tar_handle->src_fd = ar_handle->src_fd; 1412 tar_handle->src_fd = ar_handle->src_fd;
1413 1413
1414 /* We don't care about data.tar.* or debian-binary, just control.tar.* */ 1414 /* We don't care about data.tar.* or debian-binary, just control.tar.* */
1415#if ENABLE_FEATURE_DEB_TAR_GZ 1415#if ENABLE_FEATURE_DEB_TAR_GZ
1416 llist_add_to(&(ar_handle->accept), (char*)"control.tar.gz"); 1416 llist_add_to(&(ar_handle->accept), (char*)"control.tar.gz");
1417#endif 1417#endif
1418#if ENABLE_FEATURE_DEB_TAR_BZ2 1418#if ENABLE_FEATURE_DEB_TAR_BZ2
1419 llist_add_to(&(ar_handle->accept), (char*)"control.tar.bz2"); 1419 llist_add_to(&(ar_handle->accept), (char*)"control.tar.bz2");
1420#endif 1420#endif
1421 1421
@@ -1432,10 +1432,10 @@ static void init_archive_deb_data(archive_handle_t *ar_handle)
1432 tar_handle->src_fd = ar_handle->src_fd; 1432 tar_handle->src_fd = ar_handle->src_fd;
1433 1433
1434 /* We don't care about control.tar.* or debian-binary, just data.tar.* */ 1434 /* We don't care about control.tar.* or debian-binary, just data.tar.* */
1435#if ENABLE_FEATURE_DEB_TAR_GZ 1435#if ENABLE_FEATURE_DEB_TAR_GZ
1436 llist_add_to(&(ar_handle->accept), (char*)"data.tar.gz"); 1436 llist_add_to(&(ar_handle->accept), (char*)"data.tar.gz");
1437#endif 1437#endif
1438#if ENABLE_FEATURE_DEB_TAR_BZ2 1438#if ENABLE_FEATURE_DEB_TAR_BZ2
1439 llist_add_to(&(ar_handle->accept), (char*)"data.tar.bz2"); 1439 llist_add_to(&(ar_handle->accept), (char*)"data.tar.bz2");
1440#endif 1440#endif
1441 1441
diff --git a/coreutils/wc.c b/coreutils/wc.c
index e74636578..627267d42 100644
--- a/coreutils/wc.c
+++ b/coreutils/wc.c
@@ -43,7 +43,7 @@
43 43
44#include "libbb.h" 44#include "libbb.h"
45 45
46#if ENABLE_LOCALE_SUPPORT 46#if ENABLE_LOCALE_SUPPORT
47#define isspace_given_isprint(c) isspace(c) 47#define isspace_given_isprint(c) isspace(c)
48#else 48#else
49#undef isspace 49#undef isspace
diff --git a/include/libbb.h b/include/libbb.h
index 0ea88a623..fc0a0ae6c 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -280,7 +280,7 @@ int xsocket(int domain, int type, int protocol);
280void xbind(int sockfd, struct sockaddr *my_addr, socklen_t addrlen); 280void xbind(int sockfd, struct sockaddr *my_addr, socklen_t addrlen);
281void xlisten(int s, int backlog); 281void xlisten(int s, int backlog);
282void xconnect(int s, const struct sockaddr *s_addr, socklen_t addrlen); 282void xconnect(int s, const struct sockaddr *s_addr, socklen_t addrlen);
283ssize_t xsendto(int s, const void *buf, size_t len, const struct sockaddr *to, 283ssize_t xsendto(int s, const void *buf, size_t len, const struct sockaddr *to,
284 socklen_t tolen); 284 socklen_t tolen);
285int setsockopt_reuseaddr(int fd); 285int setsockopt_reuseaddr(int fd);
286int setsockopt_broadcast(int fd); 286int setsockopt_broadcast(int fd);
@@ -656,7 +656,6 @@ extern void bb_info_msg(const char *s, ...) __attribute__ ((format (printf, 1, 2
656/* These are used internally -- you shouldn't need to use them */ 656/* These are used internally -- you shouldn't need to use them */
657extern void bb_verror_msg(const char *s, va_list p, const char *strerr); 657extern void bb_verror_msg(const char *s, va_list p, const char *strerr);
658extern void bb_vperror_msg(const char *s, va_list p); 658extern void bb_vperror_msg(const char *s, va_list p);
659extern void bb_vinfo_msg(const char *s, va_list p);
660 659
661 660
662/* applets which are useful from another applets */ 661/* applets which are useful from another applets */
diff --git a/libbb/Kbuild b/libbb/Kbuild
index c0cbe1aa9..3ffda1240 100644
--- a/libbb/Kbuild
+++ b/libbb/Kbuild
@@ -88,7 +88,6 @@ lib-y += vdprintf.o
88lib-y += verror_msg.o 88lib-y += verror_msg.o
89lib-y += vfork_daemon_rexec.o 89lib-y += vfork_daemon_rexec.o
90lib-y += vherror_msg.o 90lib-y += vherror_msg.o
91lib-y += vinfo_msg.o
92lib-y += vperror_msg.o 91lib-y += vperror_msg.o
93lib-y += warn_ignoring_args.o 92lib-y += warn_ignoring_args.o
94lib-y += wfopen.o 93lib-y += wfopen.o
diff --git a/libbb/info_msg.c b/libbb/info_msg.c
index c763ce60c..b0ce64338 100644
--- a/libbb/info_msg.c
+++ b/libbb/info_msg.c
@@ -7,13 +7,24 @@
7 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. 7 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
8 */ 8 */
9 9
10#include <syslog.h>
10#include "libbb.h" 11#include "libbb.h"
11 12
12void bb_info_msg(const char *s, ...) 13void bb_info_msg(const char *s, ...)
13{ 14{
14 va_list p; 15 va_list p;
16 /* va_copy is used because it is not portable
17 * to use va_list p twice */
18 va_list p2;
15 19
16 va_start(p, s); 20 va_start(p, s);
17 bb_vinfo_msg(s, p); 21 va_copy(p2, p);
22 if (logmode & LOGMODE_STDIO) {
23 vprintf(s, p);
24 fputs(msg_eol, stdout);
25 }
26 if (ENABLE_FEATURE_SYSLOG && (logmode & LOGMODE_SYSLOG))
27 vsyslog(LOG_INFO, s, p2);
28 va_end(p2);
18 va_end(p); 29 va_end(p);
19} 30}
diff --git a/libbb/vinfo_msg.c b/libbb/vinfo_msg.c
deleted file mode 100644
index fa2798625..000000000
--- a/libbb/vinfo_msg.c
+++ /dev/null
@@ -1,26 +0,0 @@
1/* vi: set sw=4 ts=4: */
2/*
3 * Utility routines.
4 *
5 * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
6 *
7 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
8 */
9
10#include "libbb.h"
11#include <syslog.h>
12
13void bb_vinfo_msg(const char *s, va_list p)
14{
15 /* va_copy is used because it is not portable
16 * to use va_list p twice */
17 va_list p2;
18 va_copy(p2, p);
19 if (logmode & LOGMODE_STDIO) {
20 vprintf(s, p);
21 fputs(msg_eol, stdout);
22 }
23 if (ENABLE_FEATURE_SYSLOG && (logmode & LOGMODE_SYSLOG))
24 vsyslog(LOG_INFO, s, p2);
25 va_end(p2);
26}
diff --git a/scripts/trylink b/scripts/trylink
index 9b67deb49..5e962307b 100755
--- a/scripts/trylink
+++ b/scripts/trylink
@@ -64,16 +64,18 @@ done
64 echo "Final link with: $BBOX_LIB_LIST" 64 echo "Final link with: $BBOX_LIB_LIST"
65 l_list=`echo "$BBOX_LIB_LIST" | sed -e 's/ / -l/g' -e 's/^/-l/'` 65 l_list=`echo "$BBOX_LIB_LIST" | sed -e 's/ / -l/g' -e 's/^/-l/'`
66 # --verbose gives us gobs of info to stdout (e.g. linker script used) 66 # --verbose gives us gobs of info to stdout (e.g. linker script used)
67 try "-Wl,--start-group $l_list -Wl,--end-group -Wl,--verbose" "$@" >busybox_ld.out ####|| exit 1 67 if ! test -f busybox_ldscript; then
68 # 68 try "-Wl,--start-group $l_list -Wl,--end-group -Wl,--verbose" "$@" >busybox_ld.out ####|| exit 1
69 # Add SORT_BY_ALIGNMENT to linker script (found in busybox_ld.out): 69 else
70 # .rodata : { *(.rodata SORT_BY_ALIGNMENT(.rodata.*) .gnu.linkonce.r.*) } 70 echo "Custom linker script 'busybox_ldscript' found, using it"
71 # *(.data SORT_BY_ALIGNMENT(.data.*) .gnu.linkonce.d.*) 71 # Add SORT_BY_ALIGNMENT to linker script (found in busybox_ld.out):
72 # *(.bss SORT_BY_ALIGNMENT(.bss.*) .gnu.linkonce.b.*) 72 # .rodata : { *(.rodata SORT_BY_ALIGNMENT(.rodata.*) .gnu.linkonce.r.*) }
73 # This will eliminate most of the data padding. Use linker script 73 # *(.data SORT_BY_ALIGNMENT(.data.*) .gnu.linkonce.d.*)
74 # by commenting "try" above and uncommenting this one (tested on i386): 74 # *(.bss SORT_BY_ALIGNMENT(.bss.*) .gnu.linkonce.b.*)
75 #try "-Wl,--start-group $l_list -Wl,--end-group -Wl,--verbose -Wl,-T -Wl,busybox_ldscript" "$@" >busybox_ld.out 75 # This will eliminate most of the data padding. Use linker script
76 # 76 # by commenting "try" above and uncommenting this one (tested on i386):
77 try "-Wl,--start-group $l_list -Wl,--end-group -Wl,--verbose -Wl,-T -Wl,busybox_ldscript" "$@" >busybox_ld.out
78 fi
77####} 79####}
78####rm busybox_ld.err 80####rm busybox_ld.err
79####exit 0 # Ensure "success" exit code 81####exit 0 # Ensure "success" exit code