OSDN Git Service
Eric Andersen [Thu, 12 Dec 2002 22:22:03 +0000 (22:22 -0000)]
Rework things such that staticly linked applications can use
dlopen and have it be successful. This required moving some
things out of ldso.c into readelflib1.c, and directly including
hash.c and readelflib1.c into dlib.c when building the static
version of the library.
-Erik
Eric Andersen [Thu, 12 Dec 2002 22:03:49 +0000 (22:03 -0000)]
Use crt1.o when ctor/dtor support is enabled
Eric Andersen [Thu, 12 Dec 2002 21:58:41 +0000 (21:58 -0000)]
When -shared is specified, meaning they wish to create a shared
library, we need to disable adding start files (i.e. crt0) since
it isn't supposed to be creating an executable, just a shared lib.
-Erik
Eric Andersen [Thu, 12 Dec 2002 19:06:30 +0000 (19:06 -0000)]
Oops. Patch was vs 5beta.
Eric Andersen [Thu, 12 Dec 2002 19:02:29 +0000 (19:02 -0000)]
It seems SCO puts touch in a wierd place
Eric Andersen [Thu, 12 Dec 2002 10:14:19 +0000 (10:14 -0000)]
Based on discussions with Stefan Allius, change it so that we always
build a crt0.o and a crt1.o. crt1.o will support ctors and dtors if
such support is enabled. One more gratuitous toolchain support issue
is thereby removed...
-Erik
Eric Andersen [Thu, 12 Dec 2002 09:16:53 +0000 (09:16 -0000)]
Add portmap and patch from Steven Elling
Eric Andersen [Thu, 12 Dec 2002 08:27:57 +0000 (08:27 -0000)]
Fix typo noticed by V.Radhakrishnan
Eric Andersen [Thu, 12 Dec 2002 03:10:14 +0000 (03:10 -0000)]
Add in a stub libnsl library to make stupid configure scripts
(i.e. openssh) do the right thing when used with uClibc's gcc
wrapper (which does not currently prevent system libraries from
leaking into the link).
-Erik
Eric Andersen [Thu, 12 Dec 2002 03:08:25 +0000 (03:08 -0000)]
Fix broken ignore file
Eric Andersen [Thu, 12 Dec 2002 01:56:48 +0000 (01:56 -0000)]
Avoid silly namespace pollution
Eric Andersen [Wed, 11 Dec 2002 20:44:48 +0000 (20:44 -0000)]
Remove a stray ')'
Manuel Novoa III [Wed, 11 Dec 2002 01:40:36 +0000 (01:40 -0000)]
Remove trailing comma from enum list as a nicety for older compilers.
Eric Andersen [Mon, 9 Dec 2002 00:06:32 +0000 (00:06 -0000)]
Cleanup the case when using the system shared lib loader
-Erik
Tobias Anderberg [Thu, 5 Dec 2002 17:37:44 +0000 (17:37 -0000)]
Added CPU_CFLAGS and CPU_LDFLAGS for cris.
Added additional CFLAGS for cris when compiling with PIC.
Tobias Anderberg [Thu, 5 Dec 2002 17:35:47 +0000 (17:35 -0000)]
Removed redundant definition of __USE_WEAK_ALIASES.
Added option for selecting cris architecure type. For now, only CRIS is
available.
Added a default configuration for cris.
Eric Andersen [Wed, 4 Dec 2002 22:40:20 +0000 (22:40 -0000)]
Change some variable names so we are more consistant with what
the linux kernel uses.
-Erik
Eric Andersen [Wed, 4 Dec 2002 20:54:08 +0000 (20:54 -0000)]
I forgot to kill these files in my last commit.
-Erik
Eric Andersen [Wed, 4 Dec 2002 20:52:25 +0000 (20:52 -0000)]
This is based on a patch posted to lkml by Petr Baudis on 23 Nov, which was
then considerably hacked up by me. This eliminates the separate lxdialog and
instead directly uses the lxdialog internals. This allows 'make menuconfig'
to be much faster.
-Erik
Eric Andersen [Wed, 4 Dec 2002 18:27:15 +0000 (18:27 -0000)]
Implement the rest of the missing include/net/if.h interfaces
-Erik
Eric Andersen [Wed, 4 Dec 2002 05:47:30 +0000 (05:47 -0000)]
Looks like this is in fact needed to properly debug dynamically
linked stuff, so put it back but add a check for NULL
Eric Andersen [Wed, 4 Dec 2002 05:30:38 +0000 (05:30 -0000)]
Override optimization settings when debugging
Eric Andersen [Wed, 4 Dec 2002 02:34:26 +0000 (02:34 -0000)]
Fix the other instance of getcwd
Eric Andersen [Wed, 4 Dec 2002 00:21:49 +0000 (00:21 -0000)]
For now, always claim we have exactly one cpu. It should
generally be the truth...
Eric Andersen [Wed, 4 Dec 2002 00:08:52 +0000 (00:08 -0000)]
Properly allocate memory when size is 0, but so is buf
Eric Andersen [Tue, 3 Dec 2002 23:12:09 +0000 (23:12 -0000)]
Make the arm cpu-specific optimizations work properly
Eric Andersen [Mon, 2 Dec 2002 18:44:03 +0000 (18:44 -0000)]
Don't leak outside of the target area when installing things.
-Erik
Eric Andersen [Mon, 2 Dec 2002 17:55:30 +0000 (17:55 -0000)]
Spelling fixes
-Erik
Manuel Novoa III [Mon, 2 Dec 2002 16:34:56 +0000 (16:34 -0000)]
Cut and paste error.
Manuel Novoa III [Mon, 2 Dec 2002 16:24:08 +0000 (16:24 -0000)]
Forgot one...
Manuel Novoa III [Mon, 2 Dec 2002 16:20:50 +0000 (16:20 -0000)]
Add hsearch and hsearch_r. Consolidate all functions prototyped in
search.h in one directory.
David McCullough [Sun, 1 Dec 2002 23:32:17 +0000 (23:32 -0000)]
If the wait failed in pclose it would return a random status code
instead of -1 as expected.
David Schleef [Sun, 1 Dec 2002 00:57:23 +0000 (00:57 -0000)]
Make ldd work even more like GNU ldd by appending dummy load addresses
Eric Andersen [Fri, 29 Nov 2002 12:41:38 +0000 (12:41 -0000)]
I forgot to include features.h
Eric Andersen [Fri, 29 Nov 2002 12:40:10 +0000 (12:40 -0000)]
Silly me, I forgot to include features.h
Eric Andersen [Thu, 28 Nov 2002 15:21:10 +0000 (15:21 -0000)]
Kill a bit of unused cruft
Eric Andersen [Thu, 28 Nov 2002 03:06:07 +0000 (03:06 -0000)]
Fix compilation on mips
Eric Andersen [Wed, 27 Nov 2002 23:34:07 +0000 (23:34 -0000)]
Make support for global constructors and global destructors be
configurable, so people who do not need or want ctor/dtor support
can disable it and make their binaries a little bit smaller.
-Erik
Eric Andersen [Wed, 27 Nov 2002 23:02:15 +0000 (23:02 -0000)]
Fixup sysconf to report the correct answer when UCLIBC_DYNAMIC_ATEXIT
is enabled.
Manuel Novoa III [Wed, 27 Nov 2002 22:02:37 +0000 (22:02 -0000)]
Fix an ifdef mismatch.
Eric Andersen [Wed, 27 Nov 2002 20:17:24 +0000 (20:17 -0000)]
Fix the defaults to make them be sane
Manuel Novoa III [Wed, 27 Nov 2002 02:19:10 +0000 (02:19 -0000)]
Fix bug in setting daylight and timezone when no (valid) TZ.
Bug reported by Arne Bernin <arne@alamut.de> in regards to freeswan.
Manuel Novoa III [Sat, 23 Nov 2002 16:43:57 +0000 (16:43 -0000)]
Oops.. left in a bit of debugging code.
Eric Andersen [Sat, 23 Nov 2002 05:40:58 +0000 (05:40 -0000)]
Use 'install' rather than 'mkdir -p' for target directories.
Add $(PREFIX) to avoid leaking things at install time.
-Erik
Manuel Novoa III [Fri, 22 Nov 2002 03:05:27 +0000 (03:05 -0000)]
Ok... here's the summary:
Hopefully locale support will build when cross compiling now. Collation is
still not supported, but that's what I'm currently working on. In the
next couple of days, I'll probably put up a couple of files for download
that will save people the trouble of generating all the glibc locales.
Added *wprintf functions, although they currently don't support floating
point. That will be fixed when I rewrite _dtostr... or possibly before.
Added the wcsto{inttype} functions.
Added iconv() and a mini iconv utility. The require locale support and
only provide for conversions involving the various unicode encodings
{ UCS-4*, UCS-2*, UTF-32*, UTF-16*, UTF-8 }, the 8-bit codesets built
with the locale data, and the internal WCHAR_T.
Eric Andersen [Thu, 21 Nov 2002 21:41:30 +0000 (21:41 -0000)]
Oops. As Pavel Roskin notes, I forgot to conditionally include
the __fsetlocking call in libc/unistd/usershell.c. It should
be wrapped and only included if __UCLIBC_HAS_THREADS__ is defined.
Eric Andersen [Thu, 21 Nov 2002 08:24:51 +0000 (08:24 -0000)]
Doh! As Stefan Allius points out, I forgot to properly review
this change.
Miles Bader [Thu, 21 Nov 2002 07:52:46 +0000 (07:52 -0000)]
Debugging tweaks.
Eric Andersen [Thu, 21 Nov 2002 07:05:33 +0000 (07:05 -0000)]
Oops.
Eric Andersen [Thu, 21 Nov 2002 07:03:25 +0000 (07:03 -0000)]
Cleanup use of in6addr_loopback and in6addr_any
Eric Andersen [Thu, 21 Nov 2002 06:43:23 +0000 (06:43 -0000)]
Patch from Yoshinori Sato to update the h8300 architecture.
Miles Bader [Thu, 21 Nov 2002 06:06:22 +0000 (06:06 -0000)]
Improve malloc debugging support.
Eric Andersen [Thu, 21 Nov 2002 05:38:58 +0000 (05:38 -0000)]
Act more like the GNU version. Accept multiple args. Accept/ignore
the "--" option since we always do that anyways.
-Erik
Eric Andersen [Thu, 21 Nov 2002 01:17:44 +0000 (01:17 -0000)]
Doh! Manuel noticed I'd put the CFLAGS before DODEBUG, killing
any chance of actually building with debug symbols.
-Erik
Eric Andersen [Wed, 20 Nov 2002 22:07:05 +0000 (22:07 -0000)]
Rework usershell.c, as the old one was packed full of unhandled
failures, returned stack allocated memory, and misbehaved itself
in a number of other annoying ways,
-Erik
Eric Andersen [Wed, 20 Nov 2002 10:49:56 +0000 (10:49 -0000)]
Kill SVR4_BUGCOMPAT
Eric Andersen [Wed, 20 Nov 2002 10:41:04 +0000 (10:41 -0000)]
Patch from Stefan Allius:
- Invert all FORCE_SHAREABLE_TEXT_SEGMENTS checks.
- Define FORCE_SHAREABLE_TEXT_SEGMENTS in the Makefile,
so it can be configured by the config system.
- linuxelf.h inspects that we don't combine FORCE_SHAREABLE_TEXT_SEGMENTS
and SVR4_BUGCOMPAT
- Add a new config option for FORCE_SHAREABLE_TEXT_SEGMENTS
Eric Andersen [Wed, 20 Nov 2002 03:30:53 +0000 (03:30 -0000)]
Patch from Aidan Van Dyk to make _toupper and _tolower
work properly, reverting my wrong reading of SuSv3
Eric Andersen [Tue, 19 Nov 2002 08:28:17 +0000 (08:28 -0000)]
Update verbage regarding NIS
Eric Andersen [Tue, 19 Nov 2002 07:11:27 +0000 (07:11 -0000)]
Remove use of $(strip) when no longer needed. Fixup DODEBUG
so when debugging is enabled we don't enable all the major
optimizations.
-Erik
Eric Andersen [Tue, 19 Nov 2002 07:08:33 +0000 (07:08 -0000)]
Implement dynamic atexit handling. Adds a few bytes and a dependancy
on malloc (via realloc).
-Erik
Eric Andersen [Tue, 19 Nov 2002 07:04:01 +0000 (07:04 -0000)]
Silence some whining
Eric Andersen [Tue, 19 Nov 2002 05:41:03 +0000 (05:41 -0000)]
Aidan Van Dyk noticed that _toupper and _tolower were misbehaving.
This corrects them, per SuSv3.
Eric Andersen [Tue, 19 Nov 2002 05:06:55 +0000 (05:06 -0000)]
Per suggestion from Stefan Allius, change DO_MPROTECT_HACKS to
the more clear FORCE_SHAREABLE_TEXT_SEGMENTS.
Eric Andersen [Tue, 19 Nov 2002 05:05:03 +0000 (05:05 -0000)]
Stefan Allius writes:
I fixed two little bugs in ldso.c:
- For LDD support we test the old environment variable
LD_TRACE_LOADED_OBJECTS.
- Before we init the GOT table of the dynamic loader
we have to check, if we have a DT_PLTGOT entry.
If DT_PLTGOT was zero we patch somthing in the header
of the dynamic loader. This was the cause, why we have to
enable the DO_MPROTECT_HACKS option for all targets, to avoid
segment faults.
In readelflib1.c I added a warning, if we try to load a shared library, which
wasn't compiled with -fPIC or -fpic. So if we disable the DO_MPROTECT_HACKS
option we are sure, that we don't waste memory by shared libraries which
aren't able to share their text segment. I think this is a helpful option on
little embedded systems.
Eric Andersen [Tue, 19 Nov 2002 01:56:30 +0000 (01:56 -0000)]
cut-n-paste typo
Eric Andersen [Tue, 19 Nov 2002 01:54:07 +0000 (01:54 -0000)]
Update to sync up with glibc 2.3
Eric Andersen [Fri, 15 Nov 2002 14:37:59 +0000 (14:37 -0000)]
For now, revert Ronald Wahl's change to dlopen. We need to
look into what is breaking dlclose() further...
-Erik
Eric Andersen [Fri, 15 Nov 2002 14:12:12 +0000 (14:12 -0000)]
This draws from an old patch by David Blythe for the now-dead
unified syscall interface. I reworked his old patch considerably
and cleaned up his version of bits/syscalls.h with some sneaky macro
magic. And I implemented a powerpc correct version of pread/pwrite
-Erik
Eric Andersen [Fri, 15 Nov 2002 14:06:44 +0000 (14:06 -0000)]
Cleanup a few structural wierdnesses
Eric Andersen [Fri, 15 Nov 2002 13:46:14 +0000 (13:46 -0000)]
Stefan Allius writes:
I attached a patch, which revise the clone.S and vfork.S:
- Use PIC code.
- include new file syscall.S, so we can simply make a branch to
__syscall_error instead of a PLT/GOT call
- call errno_location to store the syscall error (for pthreads)
- avoid to use the 'shad' statement on SH2 targets
- call fork if vfork isn't available
- some cleanups and optimization
Eric Andersen [Fri, 15 Nov 2002 13:04:10 +0000 (13:04 -0000)]
Remove obsolete files
Eric Andersen [Fri, 15 Nov 2002 13:03:08 +0000 (13:03 -0000)]
Fix it for real this time.
Eric Andersen [Fri, 15 Nov 2002 13:00:18 +0000 (13:00 -0000)]
Doh! I screwed that one all up. Lets try that again...
-Erik
Eric Andersen [Fri, 15 Nov 2002 11:03:30 +0000 (11:03 -0000)]
Only build the 64 tests when relevant
Eric Andersen [Fri, 15 Nov 2002 10:55:31 +0000 (10:55 -0000)]
Add in a pread/pwrite test
Eric Andersen [Fri, 15 Nov 2002 09:25:16 +0000 (09:25 -0000)]
Patch from Luc Van Oostenryck to fix a buffer overflow
in getlogin_r
Eric Andersen [Fri, 15 Nov 2002 09:21:07 +0000 (09:21 -0000)]
Stefan Allius writes:
Hi Erik,
I added the FPU support for the setjmp/longjmp stuff.
This patch also moves the code from the bsd*.S files to the setjmp.S file, so
we can use simple branch instructions instead of referencing over the
.GOT/.PLT section. This makes the PIC code much easier, smaller and faster.
(The idea comes from the SPARC target)
Bye Stefan
Eric Andersen [Fri, 15 Nov 2002 09:17:09 +0000 (09:17 -0000)]
Fixup minislang link
Eric Andersen [Fri, 15 Nov 2002 01:10:48 +0000 (01:10 -0000)]
Ronald Wahl writes:
since uclibc-0.9.16 I have to specify -fpic during _link_-time or else
I get an error from the dynamic linker when I load shared objects. Patch
is appended.
Eric Andersen [Fri, 15 Nov 2002 01:06:42 +0000 (01:06 -0000)]
Ronald Wahl writes:
I noticed that dlclose() does not work since libraries loaded with
dlopen are not marked as "loaded_file". This breaks apache with dynamic
modules. I append a small fix against uClibc-0.9.16.
Eric Andersen [Fri, 15 Nov 2002 00:52:59 +0000 (00:52 -0000)]
I was an idiot and put _fini into the wrong register. Duh.
This patch from David Meggy fixes it...
Eric Andersen [Thu, 14 Nov 2002 04:06:07 +0000 (04:06 -0000)]
As released in uClibc 0.9.16, regex was being compiled without
wide char support, even when the rest of uClibc was. This led
to anyone using regex segfaulting...
-Erik
Eric Andersen [Thu, 14 Nov 2002 00:56:49 +0000 (00:56 -0000)]
Minor cleanup
-Erik
Eric Andersen [Thu, 14 Nov 2002 00:55:46 +0000 (00:55 -0000)]
Implement sendfile64
-Erik
Eric Andersen [Thu, 14 Nov 2002 00:53:49 +0000 (00:53 -0000)]
Add missing quotes
-Erik
Eric Andersen [Tue, 12 Nov 2002 20:09:29 +0000 (20:09 -0000)]
A powerpc patch from Ronald Wahl:
Ok, now i got it after a day of work.
I have had a look into glibc and found the following:
sysdeps/powerpc/dl-machine.c:
...
case R_PPC_JMP_SLOT:
/* It used to be that elf_machine_fixup_plt was used here,
but that doesn't work when ld.so relocates itself
for the second time. On the bright side, there's
no need to worry about thread-safety here. */
{
Elf32_Sword delta = finaladdr - (Elf32_Word) reloc_addr;
...
The comment made me suspicious. The same position in uClibc looks like this:
ldso/ldso/powerpc/elfinterp.c:
...
case R_PPC_JMP_SLOT:
{
unsigned long targ_addr = (unsigned long)_dl_linux_resolve;
int delta = targ_addr - (unsigned long)reloc_addr;
...
When I change it to the following it works:
...
case R_PPC_JMP_SLOT:
{
unsigned long targ_addr = *reloc_addr;
int delta = targ_addr - (unsigned long)reloc_addr;
...
I hope it will not break anything. Can anyone review this change and
commit it into CVS?
thanks,
ron
"Steven J. Hill" [Mon, 11 Nov 2002 14:46:26 +0000 (14:46 -0000)]
Add in 'ldso' to directory list since 'make clean' was not recursing
into it.
Eric Andersen [Sun, 10 Nov 2002 02:24:11 +0000 (02:24 -0000)]
Don't link to us.kernel.org
Aaron Lehmann [Sat, 9 Nov 2002 21:09:17 +0000 (21:09 -0000)]
fix typo
Eric Andersen [Sat, 9 Nov 2002 20:58:05 +0000 (20:58 -0000)]
Update from upstream
Eric Andersen [Sat, 9 Nov 2002 07:38:43 +0000 (07:38 -0000)]
For arm use -mcpu for the moment, since it seems to work
Eric Andersen [Sat, 9 Nov 2002 07:37:52 +0000 (07:37 -0000)]
typo fixes
Eric Andersen [Sat, 9 Nov 2002 07:36:45 +0000 (07:36 -0000)]
Make sure we have __linux__ defined
Eric Andersen [Sat, 9 Nov 2002 04:53:05 +0000 (04:53 -0000)]
Manditory typo..
Eric Andersen [Sat, 9 Nov 2002 04:25:54 +0000 (04:25 -0000)]
Final update for 0.9.16
Eric Andersen [Sat, 9 Nov 2002 00:21:19 +0000 (00:21 -0000)]
Patch from Simon Rowe to try and build asm libm code
only when HAS_FPU is set. If you don't have an FPU
then usm FPU code isn't going to help much...
Eric Andersen [Sat, 9 Nov 2002 00:13:35 +0000 (00:13 -0000)]
Patch from Stefan Allius, rebuild extra/config/conf if it is missing
following a make clean
Eric Andersen [Sat, 9 Nov 2002 00:11:58 +0000 (00:11 -0000)]
Patch from Stefan Allius: avoid implicit casting of void *(64bit) to int(32bit)
Eric Andersen [Fri, 8 Nov 2002 19:34:22 +0000 (19:34 -0000)]
Re-enable the strchrnul and rawmemchr tests