This is the mail archive of the mailing list for the libc-ports project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]