[prev in list] [next in list] [prev in thread] [next in thread]
List: uclibc
Subject: svn commit: branches/uClibc-nptl: ldso ldso/ldso ldso/ldso/i386 ldso/ldso/ etc...
From: ps.m () gmx ! net (Peter S ! Mazinger)
Date: 2005-11-27 16:55:00
Message-ID: Pine.LNX.4.44.0511280145160.30592-100000 () lnx ! bridge ! intra
[Download RAW message or body]
On Tue, 22 Nov 2005, Steven J. Hill wrote:
> Peter S. Mazinger wrote:
> >
> > PTINC is added to CFLAGS (Rules.mak), so no need to add it separately
> > -DSHARED shouldn't be added at all to any CFLAGS (in libdl it will build
> > incorrect libdl.a)
> > -DSHARED is automagically used for .oS targets (and libdl.oS is already
> > built w/ -DSHARED). If you need a file built w/ -DSHARED you add
> > lib*-so-y += file.oS to the list (see libdl/Makefile.in)
> >
> Too bad the 'ldso/ldso' directory Makefile.in file is broke. How about
> you fix it since I am trying to pick up the pieces of this effect on
> NPTL. 'ldso' should be built with '.oS' targets not '.os'.
ldso/ldso does not have 2 variants, only the shared one, looking at the
source files only dl-elf.c (newly) has a reference to -DSHARED, but that
was added for libdl.so. I can't see why you would need to do separation
based on ifdef SHARED for ld.so itself.
the line is #ifdef IS_IN_rtld || (defined IS_IN_libdl && !defined SHARED)
so the section applies always to ld.so (and will apply only to libdl.o[s],
but not libdl.oS
Something I can think of is that you use the libc-symbols.h file, that
uses different options for files based on SHARED, maybe you should look
there for your trouble.
There is a main difference between glibc and uclibc that you should take
into account. glibc builds always 2 objects, one for lib*.so (w/ -DSHARED)
and one for lib*.a w/o SHARED). That would be an overkill for uClibc I
can't see justified, so I decided to build only one (if DO_PIC is
enabled, else there are .os(PIC) and .o(non-PIC)) and only where it is
needed (like libdl.c, __uClibc_main.c) there are always 2.
Peter
--
Peter S. Mazinger <ps dot m at gmx dot net> ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08 BB6E C389 975E A5F0 59F2
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic