OSDN Git Service
Bernhard Reutner-Fischer [Tue, 3 Jun 2008 14:38:18 +0000 (14:38 -0000)]
- add libpthread-nonshared-y to files.dep
Fixes superfluous rebuild of pthread_atfork.oS.
Denis Vlasenko [Tue, 3 Jun 2008 14:37:36 +0000 (14:37 -0000)]
syslog.c: fix a buglet in prev-last commit: logic inversion in closelog
Denis Vlasenko [Tue, 3 Jun 2008 14:26:55 +0000 (14:26 -0000)]
syslog.c: fix indentation and style. No code changes.
Denis Vlasenko [Tue, 3 Jun 2008 14:26:12 +0000 (14:26 -0000)]
Fix bug 575 and other small problems noticed along the way.
The bug: this blocks in syslogd is stopped:
#include <syslog.h>
int main() {
int i;
for (i = 0; i < 10000; i++)
syslog(LOG_INFO, "Testing, disregard....................");
return 0;
}
Fix: set O_NONBLOCK on fd to "/dev/log".
Other fixes: do not try to write to fd -1, do not spin forever or EAGAIN,
use constant sockaddr instead of recreating identical one each time,
eliminate one intermediate function (SUGPIPE sig handler),
use smallints where appropriate, add a few comments.
Size:
text data bss dec hex filename
- 1140 16 21 1177 499 libc/misc/syslog/syslog.o
+ 1123 13 2 1138 472 libc/misc/syslog/syslog.o
Bernhard Reutner-Fischer [Tue, 3 Jun 2008 09:02:32 +0000 (09:02 -0000)]
- Generate dummy rules for prerequisites.
Fixes build-failures in ldso when switching thread-impl because of missing
rule to make e.g. pthreadtypes.h
Thanks to Peter Kjellerstedt for the reminder.
Bernhard Reutner-Fischer [Tue, 3 Jun 2008 08:11:56 +0000 (08:11 -0000)]
- adds several config-options to allow for turning off certain features
like
o UCLIBC_HAS_GNU_ERROR
o UCLIBC_HAS_BSD_ERR
o UCLIBC_HAS_PTY
o UCLIBC_HAS_GETPT (1)
o UCLIBC_SYSCALL_STUBS
o UCLIBC_SYSCALL_STUB_WARNING
o UCLIBC_LINUX_SPECIFIC (2)
o UCLIBC_BSD_SPECIFIC (3)
o UCLIBC_NTP_LEGACY (4)
o UCLIBC_SV4_DEPRECATED (5)
o UCLIBC_HAVE_REALTIME (6)
o UCLIBC_HAVE_ADVANCED_REALTIME (7)
o UCLIBC_HAVE_EPOLL (8)
o UCLIBC_HAVE_XATTR (9)
o UCLIBC_HAVE_PROFILING (10)
(1) make non-standard getpt optional and implement standard posix_openpt
(2) fstatfs(), inotify_*(), ioperm(), iopl(), madvise(), modify_ldt(),
personality()
ppoll(), setresuid()
(3) mincore(), getdomainname(), setdomainname()
(4) ntp_adjtime(), ntp_gettime() aliases
(5) ustat() [use statfs(2) in your code instead]
(6) All marked as "(REALTIME)" in SUSv3
(7) All marked as "(ADVANCED REALTIME)" in SUSv3
(8) epoll_create(), epoll_ctl(), epoll_wait()
(9) all Extended Attributes
(10) helpers for gcc's -finstrument-functions
- Fixes _dl_exit()
- Implements sleep(3) for !UCLIBC_HAVE_REALTIME
- Implements usleep(3) for !UCLIBC_HAVE_REALTIME
- adds #warning about incorrect posix_fadvise{,64}()
- removes unused and unwanted uselib()
Net outcome is that an allnoconfig with HAVE_SHARED is now about 88k instead
of formerly 130k.
Bernhard Reutner-Fischer [Tue, 3 Jun 2008 07:58:59 +0000 (07:58 -0000)]
- breakup lines of compile.c and add a variable to hold filter-out PHONY target.
No functional changes.
Denis Vlasenko [Tue, 3 Jun 2008 03:51:30 +0000 (03:51 -0000)]
Remove __PRINTF_INFO_NO_BITFIELD hack, UCLIBC_INTERNAL can be used instead,
and it's slightly shorter.
Also removes stray macros from public <printf.h> header
and uses spaces for comment indentation.
No code changes (verified with objdump).
Denis Vlasenko [Tue, 3 Jun 2008 00:00:32 +0000 (00:00 -0000)]
fix trivial mismatch in return type of build_wcs_upper_buffer()
(int/enum). clases bug 3234.
Denis Vlasenko [Mon, 2 Jun 2008 23:46:16 +0000 (23:46 -0000)]
Rename HAVE_NO_SHARED to ARCH_HAS_NO_SHARED, otherwise it's too confusing
with HAVE_SHARED
Denis Vlasenko [Mon, 2 Jun 2008 23:45:23 +0000 (23:45 -0000)]
dlfcn.h exists only if __HAVE_SHARED__ ("we are built with shared lib support"),
not when !__HAVE_NO_SHARED__ ("arch can theoretically support shred libs")
Denis Vlasenko [Mon, 2 Jun 2008 23:22:43 +0000 (23:22 -0000)]
libc/stdlib/stdlib.c: fix whitespace damage. No code changes
(verified with objdump)
Denis Vlasenko [Mon, 2 Jun 2008 23:21:40 +0000 (23:21 -0000)]
fix bug 1577: '`' is not an acceptable digit for strto[u]l().
Code size is not changed on i386.
Denis Vlasenko [Mon, 2 Jun 2008 22:06:58 +0000 (22:06 -0000)]
libc/inet/resolv.c: use ip6.arpa instead of ip6.int for reverse
IPv6 DNS resolv. rfc4159 mandated this 3 years ago. Closes bug 1020.
Also cleans up some stype inconsistensied and saves 2 bytes of rw data.
Denis Vlasenko [Mon, 2 Jun 2008 20:46:06 +0000 (20:46 -0000)]
libc/inet/addr.c: fix broked indentation and bad style. No code changes.
Denis Vlasenko [Mon, 2 Jun 2008 05:49:58 +0000 (05:49 -0000)]
fix fallout from libc_hidden_proto removal
Denis Vlasenko [Sun, 1 Jun 2008 22:11:07 +0000 (22:11 -0000)]
suppress a few "might be used uninitialized" warnings. No code growth.
Denis Vlasenko [Sun, 1 Jun 2008 21:52:47 +0000 (21:52 -0000)]
Rework smallint machinery so that it will reliably fail to compile
even if arch overrides smallint size. Makes it easier to spot bugs
on such arches.
Denis Vlasenko [Sun, 1 Jun 2008 21:51:12 +0000 (21:51 -0000)]
build system: stop creating ugly double-slash symlinks like
fenv.h -> ../../libc/sysdeps/linux/i386/bits//fenv.h
Denis Vlasenko [Sun, 1 Jun 2008 21:01:14 +0000 (21:01 -0000)]
fix compile breakage in libc/string/wcscasecmp.c
by adding include <wchar.h> in strcasecmp.c
Denis Vlasenko [Sun, 1 Jun 2008 20:44:48 +0000 (20:44 -0000)]
add missing includes of unistd.h for smallint usage
remove a few duplicate includes of unistd.h
Bernd Schmidt [Sun, 1 Jun 2008 17:27:37 +0000 (17:27 -0000)]
Still forgot some libraries in one of the previous commits.
Bernd Schmidt [Sun, 1 Jun 2008 16:49:23 +0000 (16:49 -0000)]
A slight improvement over my previous commit which ensured we always rebuild
libc when one of the source files changes.
Since there are more places which want to depend on $(libc), fix them all to
use a new variable $(libc.depend), which contains the filename for which we
have a rule.
Bernd Schmidt [Sun, 1 Jun 2008 16:44:52 +0000 (16:44 -0000)]
Use $(<D) rather than $(^D), as the latter now contains an element
corresponding to FORCE, which causes some CFLAGS to be lost.
Include all objects in the dependency calculation, not just the ones in libc.
Bernhard Reutner-Fischer [Sun, 1 Jun 2008 12:50:21 +0000 (12:50 -0000)]
- since we force make into trying to rebuild unconditionally, we have to
check for changed prerequisites manually.
Bernhard Reutner-Fischer [Sun, 1 Jun 2008 12:40:25 +0000 (12:40 -0000)]
- store the used compiler plus flags in the .%.dep files too and
use this info to decide whether or not to rebuild something (if e.g. the
filestamp of the prereq did not change but the cc or CFLAGS did).
For files that we did not yet build we have no flags on record, so those
did change inherently and we rebuild.
Shouldn't be much slower than before.
Bernd Schmidt [Sat, 31 May 2008 21:39:13 +0000 (21:39 -0000)]
Fix a dependency to mention libc.so, not libc.so.0, as we only have a rule to
build the former.
Bernhard Reutner-Fischer [Sat, 31 May 2008 17:15:37 +0000 (17:15 -0000)]
- rm all deps on distclean
Bernhard Reutner-Fischer [Sat, 31 May 2008 17:06:51 +0000 (17:06 -0000)]
Oh, and prepend a dot to the basename so i don't have to change my habit of
calling 'size thefile.o*'
Bernhard Reutner-Fischer [Sat, 31 May 2008 16:49:52 +0000 (16:49 -0000)]
- generate deps via gcc
Bernhard Reutner-Fischer [Sat, 31 May 2008 11:22:30 +0000 (11:22 -0000)]
- fix whitespace
Bernhard Reutner-Fischer [Sat, 31 May 2008 11:13:32 +0000 (11:13 -0000)]
- fix prerequisites of sysnum.h (has to depend on the script that generates it)
Bernhard Reutner-Fischer [Sat, 31 May 2008 10:58:03 +0000 (10:58 -0000)]
- default kernel-modules funcs to on.
Denis Vlasenko [Sat, 31 May 2008 10:48:50 +0000 (10:48 -0000)]
fix fallout from string.h libc_hidden_proto removal
Denis Vlasenko [Sat, 31 May 2008 06:40:48 +0000 (06:40 -0000)]
Makefile.kconfig: whitespace fix
top-level Makefile.in: add TODO
Bernhard Reutner-Fischer [Fri, 30 May 2008 20:38:08 +0000 (20:38 -0000)]
- cannot really guarantee proper order, so play safe and compile the problematic
sources separately for now.
Bernhard Reutner-Fischer [Fri, 30 May 2008 20:00:19 +0000 (20:00 -0000)]
- Fix gcc glitch with mremap and IMA.
For -combine, make sure that we don't pollute our non-varargs mremap decl
with some vararg decl from later in the TU by putting ours after anybody
else who is picking up mman.h.
This is admittedly a small work-around..
smallish testcase:
$ cat bug.h
extern void *mremap (void*, unsigned, unsigned, int, ...);
$ cat bug1.c
#include "bug.h"
int whatever;
$ cat bug2.c
#define mremap _hidemremap
#include "bug.h"
#undef mremap
void *mremap (void*, unsigned, unsigned, int, void*);
$ gcc -c bug1.c bug2.c
$ gcc -c bug1.c bug2.c -combine
bug2.c:4: error: conflicting types for ‘mremap’
bug.h:1: error: previous declaration of ‘mremap’ was here
Bernhard Reutner-Fischer [Fri, 30 May 2008 17:58:47 +0000 (17:58 -0000)]
- Avoid warning about undefined preprocessor token. No obj-code changes.
Bernhard Reutner-Fischer [Fri, 30 May 2008 15:25:40 +0000 (15:25 -0000)]
- try to pickup UINTMAX_MAX
Bernhard Reutner-Fischer [Fri, 30 May 2008 14:35:31 +0000 (14:35 -0000)]
- fix the macros rather than the callees as rightfully noted by bernds (duh!)
Bernhard Reutner-Fischer [Fri, 30 May 2008 14:24:54 +0000 (14:24 -0000)]
- nlist is unsigned. Adjust iterator variables accordingly to avoid signedness warnings.
Bernhard Reutner-Fischer [Fri, 30 May 2008 14:22:26 +0000 (14:22 -0000)]
- Avoid warning about missing brace. No obj-code changes.
Bernhard Reutner-Fischer [Fri, 30 May 2008 14:11:48 +0000 (14:11 -0000)]
- fix dependencies of ldso.c
Previously a touch ldso/ldso/dl-debug.c && make ldso/ldso/ldso.oS did nothing
Bernhard Reutner-Fischer [Fri, 30 May 2008 14:11:00 +0000 (14:11 -0000)]
- Avoid warning about missing brace.
Bernhard Reutner-Fischer [Fri, 30 May 2008 13:45:38 +0000 (13:45 -0000)]
- Avoid warning about undefined preprocessor token. No obj-code changes.
Bernhard Reutner-Fischer [Fri, 30 May 2008 13:43:55 +0000 (13:43 -0000)]
- Avoid warning about missing brace. No obj-code changes.
Bernhard Reutner-Fischer [Fri, 30 May 2008 13:42:54 +0000 (13:42 -0000)]
- Avoid warning about undefined preprocessor token. No obj-code changes.
Bernhard Reutner-Fischer [Fri, 30 May 2008 12:29:52 +0000 (12:29 -0000)]
- pull wur settings from upstream. No other changes.
Bernhard Reutner-Fischer [Fri, 30 May 2008 08:58:47 +0000 (08:58 -0000)]
- shrink a little bit.
text data bss dec hex filename
1176 16 24 1216 4c0 libc/misc/syslog/syslog.o.orig
1140 16 21 1177 499 libc/misc/syslog/syslog.o
Bernhard Reutner-Fischer [Thu, 29 May 2008 22:19:01 +0000 (22:19 -0000)]
- fix dependencies for multi-source
Carmelo Amoroso [Thu, 29 May 2008 13:18:52 +0000 (13:18 -0000)]
Fix typo in macro for tls access model
Bernhard Reutner-Fischer [Wed, 28 May 2008 17:36:11 +0000 (17:36 -0000)]
- pull commentary fixes from upstream
Carmelo Amoroso [Wed, 28 May 2008 12:33:51 +0000 (12:33 -0000)]
Fix the ELF magic number for SPARCV9: by Friedrich Oslage <bluebird@porno-bullen.de>
Haavard Skinnemoen [Wed, 28 May 2008 11:40:29 +0000 (11:40 -0000)]
avr32: splice(), vmsplice() and tee() support
Add the necessary prototypes and definitions for splice(), vmsplice()
and tee() to work. Without this, they won't even compile.
Carmelo Amoroso [Tue, 27 May 2008 15:57:48 +0000 (15:57 -0000)]
Fix build failure due to missing 'smallint' definition
These are source files built on the host.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Tue, 27 May 2008 15:53:32 +0000 (15:53 -0000)]
Fix build failure due to missing 'smallint' definition
by adding <unistd.h> header file.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Denis Vlasenko [Sun, 25 May 2008 10:39:13 +0000 (10:39 -0000)]
Slight size reduction by use of smallints/consts:
- 288016 1924 7176 297116 4889c libuClibc-0.9.29.so
+ 287956 1924 7168 297048 48858 libuClibc-0.9.29.so
Denis Vlasenko [Sun, 25 May 2008 06:08:33 +0000 (06:08 -0000)]
__uClibc_main.c: save ~70 bytes by not checking that /dev/null
is indeed a char device with correct (maj,min).
(If it's not such a char device, the system is screwed anyway,
nothing can be done about it...)
text data bss dec hex filename
- 715 4 21 740 2e4 libc/misc/internals/__uClibc_main.o
+ 644 4 21 669 29d libc/misc/internals/__uClibc_main.o
Bernhard Reutner-Fischer [Fri, 23 May 2008 21:57:45 +0000 (21:57 -0000)]
- use -print-file-name
Bernhard Reutner-Fischer [Fri, 23 May 2008 20:57:20 +0000 (20:57 -0000)]
- avoid warning about cast from pointer to integer of different size
Denis Vlasenko [Fri, 23 May 2008 20:31:51 +0000 (20:31 -0000)]
arm memcpy: fix the case when src=dst
Bernhard Reutner-Fischer [Fri, 23 May 2008 18:47:36 +0000 (18:47 -0000)]
- for non-threaded, non-macro case we were missing __GI_fputc (for e.g. error.c)
Bernhard Reutner-Fischer [Fri, 23 May 2008 15:19:02 +0000 (15:19 -0000)]
- fix compilation error
Bernhard Reutner-Fischer [Thu, 22 May 2008 16:21:02 +0000 (16:21 -0000)]
- rename to match the set*() function's filename
Bernhard Reutner-Fischer [Thu, 22 May 2008 16:09:48 +0000 (16:09 -0000)]
- rename to match the setdomainname filename
Denis Vlasenko [Thu, 22 May 2008 02:22:28 +0000 (02:22 -0000)]
convert two more static ints used as flags to smallints
Bernhard Reutner-Fischer [Wed, 21 May 2008 12:09:28 +0000 (12:09 -0000)]
- Wrap overlong comment-lines. No object-code changes
Bernhard Reutner-Fischer [Wed, 21 May 2008 11:00:10 +0000 (11:00 -0000)]
- my manpage sais that init_module, create_module, query_module, delete_module
were removed in linux-2.6
Bernhard Reutner-Fischer [Wed, 21 May 2008 10:58:16 +0000 (10:58 -0000)]
- fix warning about old-style function definition
This could need a pull from upstream to do away with these __STDC__ conditionals.
Bernhard Reutner-Fischer [Wed, 21 May 2008 10:43:45 +0000 (10:43 -0000)]
- fix warning about static not being at the beginning of a decl
Bernhard Reutner-Fischer [Wed, 21 May 2008 07:57:38 +0000 (07:57 -0000)]
- do not delete the libs i keep for size-comparison
Explicitely list the directories in which we rm the static(only?) libs.
Denis Vlasenko [Tue, 20 May 2008 20:39:38 +0000 (20:39 -0000)]
replace "if (p) free(p)" by just "free(p)" - free(NULL) is safe.
Denis Vlasenko [Tue, 20 May 2008 20:32:27 +0000 (20:32 -0000)]
getopt: do not needlessly use static structure.
Reorder structure members and change some of them into smallints
to reduce bss and text:
text data bss dec hex filename
- 2403 12 40 2455 997 libc/unistd/getopt.o
+ 2252 12 0 2264 8d8 libc/unistd/getopt.o
Denis Vlasenko [Tue, 20 May 2008 20:28:35 +0000 (20:28 -0000)]
Introduce and use small[u]int type. Changes in size:
- 79 0 28 107 6b libc/inet/rpc/create_xid.o
+ 76 0 25 101 65 libc/inet/rpc/create_xid.o
- 126 0 4 130 82 libc/misc/assert/__assert.o
+ 123 0 1 124 7c libc/misc/assert/__assert.o
- 648 4 24 676 2a4 libc/misc/internals/__uClibc_main.o
+ 645 4 21 670 29e libc/misc/internals/__uClibc_main.o
- 230 0 4 234 ea libc/stdlib/abort.o
+ 216 0 1 217 d9 libc/stdlib/abort.o
- 129 0 4 133 85 libc/termios/tcgetsid.o
+ 126 0 1 127 7f libc/termios/tcgetsid.o
Denis Vlasenko [Tue, 20 May 2008 20:14:59 +0000 (20:14 -0000)]
add an URL to relevant gcc bugzilla entry
Denis Vlasenko [Tue, 20 May 2008 19:30:16 +0000 (19:30 -0000)]
suppress "asm declaration ignored due to conflict with previous rename"
warning. It seems to be bogus. Comment contains extended description.
Bernhard Reutner-Fischer [Tue, 20 May 2008 08:49:36 +0000 (08:49 -0000)]
- note that __drand48_iterate should be void
Bernhard Reutner-Fischer [Tue, 20 May 2008 08:47:51 +0000 (08:47 -0000)]
- remove old-style definitions. No object-code changes.
Bernhard Reutner-Fischer [Tue, 20 May 2008 08:46:37 +0000 (08:46 -0000)]
- avoid warning due to undefined preprocessor token
Bernhard Reutner-Fischer [Tue, 20 May 2008 07:56:46 +0000 (07:56 -0000)]
- avoid warning due to undefined preprocessor token
Bernhard Reutner-Fischer [Tue, 20 May 2008 07:56:12 +0000 (07:56 -0000)]
- make it compile with !__UCLIBC_HAS_LOCALE__
Bernhard Reutner-Fischer [Tue, 20 May 2008 07:55:46 +0000 (07:55 -0000)]
- silence warning
Carmelo Amoroso [Tue, 20 May 2008 06:57:20 +0000 (06:57 -0000)]
Synch extern declaration with definition provided in __uClibc_main.c
Carmelo Amoroso [Tue, 20 May 2008 06:56:16 +0000 (06:56 -0000)]
Remove automatically generated header when doing make clean
Denis Vlasenko [Mon, 19 May 2008 22:57:34 +0000 (22:57 -0000)]
Moving libc_hidden_proto's into #ifdef UCLIBC_INTERNAL block
in string.h and strings.h. This caught unguarded string ops in
libc/inet/ethers.c __ether_line_w() function.
I will wait for fallout reports for a week or so,
then continue converting more libc_hidden_proto's.
Carmelo Amoroso [Mon, 19 May 2008 15:24:14 +0000 (15:24 -0000)]
Added a bounch of locale fixes.
* extra/locale/gen_wc8bit.c: use strrchr to parse locale
name to handle the case in which it contains a '.' character
like ANSI_X3.4-1968
* include/locale.h: use __UCLIBC_HAS_XLOCALE__ to control
inclusion of xlocale.h only
* libc/misc/ctype/ctype.c: add missing weak_alias for
__tolower_l and __toupper_l
* libc/misc/locale/locale.c: use strcasecmp (case insensitive)
for utf-8 locale name.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Fri, 16 May 2008 14:48:54 +0000 (14:48 -0000)]
Convert to UNIX format
Mike Frysinger [Thu, 15 May 2008 02:03:13 +0000 (02:03 -0000)]
make sure we store the function pointers to the real push/pop functions rather than the public weak ones so that the libc->libpthread forwarding code is able to work properly
this should fix the case where libpthread.so is not linked directly, but rather via another library:
app -> links to libfoo.so -> links to libpthread.so
and any function (like readdir_r) that does:
__UCLIBC_MUTEX_LOCK()
__UCLIBC_MUTEX_UNLOCK()
Carmelo Amoroso [Tue, 13 May 2008 14:32:39 +0000 (14:32 -0000)]
Do not check retbuf if realpath returns NULL
Denis Vlasenko [Fri, 9 May 2008 18:15:16 +0000 (18:15 -0000)]
fix "make install_kernel_headers" to not create asm-generic
for 2.4 kernels.
Denis Vlasenko [Thu, 8 May 2008 13:54:50 +0000 (13:54 -0000)]
test-canon: stop checking realpath buffer in case realpath
returns NULL (the buffer contents is undefined);
also check errno more thoroughly (bugs were seen slipping through)
Denis Vlasenko [Thu, 8 May 2008 13:52:22 +0000 (13:52 -0000)]
realpath: do not set bogus errno when readlink fails.
Denis Vlasenko [Wed, 7 May 2008 13:03:32 +0000 (13:03 -0000)]
Split kernel headers installation from "make install_headers".
It is "make install_kernel_headers" now.
Carmelo Amoroso [Wed, 7 May 2008 09:17:42 +0000 (09:17 -0000)]
Add unifdef host tool to clean target
Carmelo Amoroso [Wed, 7 May 2008 06:50:30 +0000 (06:50 -0000)]
Remove gcc warning due to missing prototype for 'testandset'
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Bernhard Reutner-Fischer [Sat, 3 May 2008 15:27:10 +0000 (15:27 -0000)]
- add missing #endif
Bernhard Reutner-Fischer [Sat, 3 May 2008 13:59:11 +0000 (13:59 -0000)]
- cleanup by manually expanding the helpers.
Saves several 100 bytes
Bernhard Reutner-Fischer [Sat, 3 May 2008 12:49:10 +0000 (12:49 -0000)]
- implement splice,vmsplice,tee for all arches
- synch F_LINUX_SPECIFIC_BASE related fcntls for all arches
Khem Raj [Sat, 3 May 2008 05:44:30 +0000 (05:44 -0000)]
Wire up vmsplice, splice and tee for arm.
Bernhard Reutner-Fischer [Fri, 2 May 2008 20:31:57 +0000 (20:31 -0000)]
- indent