This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Arch maintainers: new approach for crti.o and crtn.o
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: libc-alpha at sourceware dot org, libc-ports at sourceware dot org
- Date: Wed, 8 Feb 2012 01:56:03 +0000 (UTC)
- Subject: Arch maintainers: new approach for crti.o and crtn.o
glibc now supports building crti.o and crtn.o (both the csu/ versions and
the nptl/ versions) from .S files, instead of the very fragile approach
(which kept breaking with GCC changes) of postprocessing .s output from
initfini.c and pt-initfini.c to separate function prologues and epilogues
into separate files.
I have converted i386 to the new scheme so it serves as an example. The
maintainers of each other architecture should convert it; the crt[in].S
files generated in csu/ and nptl/ in the object directory from a glibc
build may serve as a starting point to clean up and check in.
(You will of course want the checked-in files to work on all supported
variants of your architecture, not just the one for which your compiler
was configured when building initfini.c and pt-initfini.c. Some
architectures have CFLAGS settings forcing particular CPU options when
building those C files, others do not. In any case, after the conversion
for a particular architecture, any special makefile settings for the old
approach with that architecture can be removed, as can any
architecture-specific versions of initfini.c and pt-initfini.c.)
The deadline for the conversion, after which the transitional support for
the old mechanism is expected to be removed, is 1 April (it may be removed
before then if all libc architectures are converted sooner).
--
Joseph S. Myers
joseph@codesourcery.com