This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc 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]

Re: example add-on ports of glibc


On Oct 20, 2004, Peter Barada <peter@the-baradas.com> wrote:

> From: Roland McGrath <roland@redhat.com>
>>> Are there any glibc ports done that are structured as an add-on using
>>> the framework in the ports module that Roland put together?
>> 
>> Alexandre Oliva <aoliva@redhat.com> has done some work on getting a port of
>> his working that way.  I'm sure there are still some loose ends, since this
>> is still a new procedure.  I don't think Alex has had the spare time lately
>> to finalize the tweaks so we can verify that the build setup works.  

>> See the ports/README file for some basic info on what you need to supply.
>> It should not be much different than the files that you plop into the main
>> glibc source tree to add a port directly.  I'll be happy to help you with
>> any issues that come up.

> Do you have an example glibc port that I could look at so I can
> figure out how to get code that I'm writing for ColdFire v4e to
> configure/make as an add-on in glibc's complex framework?

I was just waiting for a `go ahead' from Roland.  Having talked to him
earlier today and got it, I updated the port such that it built and
checked the am33 port in glibc ports directory, sibling to the
libc directory in the glibc CVS repository.

I still need the elf.h patch below to be installed in the generic
code.

I enclose the complete port I checked in, for reference.

Index: ChangeLog
from  Alexandre Oliva  <aoliva@redhat.com>

	2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
	* elf/elf.h: Defined R_MN10300_* relocation numbers.

Index: elf/elf.h
===================================================================
RCS file: /cvs/glibc/libc/elf/elf.h,v
retrieving revision 1.141
diff -u -p -r1.141 elf.h
--- elf/elf.h 10 Sep 2004 03:38:09 -0000 1.141
+++ elf/elf.h 22 Oct 2004 21:49:18 -0000
@@ -2464,6 +2464,35 @@ typedef Elf32_Addr Elf32_Conflict;
 #define R_X86_64_NUM		24
 
 
+/* AM33 relocations.  */
+#define R_MN10300_NONE		0	/* No reloc.  */
+#define R_MN10300_32		1	/* Direct 32 bit.  */
+#define R_MN10300_16		2	/* Direct 16 bit.  */
+#define R_MN10300_8		3	/* Direct 8 bit.  */
+#define R_MN10300_PCREL32	4	/* PC-relative 32-bit.  */
+#define R_MN10300_PCREL16	5	/* PC-relative 16-bit signed.  */
+#define R_MN10300_PCREL8	6	/* PC-relative 8-bit signed.  */
+#define R_MN10300_GNU_VTINHERIT	7	/* Ancient C++ vtable garbage... */
+#define R_MN10300_GNU_VTENTRY	8	/* ... collection annotation.  */
+#define R_MN10300_24		9	/* Direct 24 bit.  */
+#define R_MN10300_GOTPC32	10	/* 32-bit PCrel offset to GOT.  */
+#define R_MN10300_GOTPC16	11	/* 16-bit PCrel offset to GOT.  */
+#define R_MN10300_GOTOFF32	12	/* 32-bit offset from GOT.  */
+#define R_MN10300_GOTOFF24	13	/* 24-bit offset from GOT.  */
+#define R_MN10300_GOTOFF16	14	/* 16-bit offset from GOT.  */
+#define R_MN10300_PLT32		15	/* 32-bit PCrel to PLT entry.  */
+#define R_MN10300_PLT16		16	/* 16-bit PCrel to PLT entry.  */
+#define R_MN10300_GOT32		17	/* 32-bit offset to GOT entry.  */
+#define R_MN10300_GOT24		18	/* 24-bit offset to GOT entry.  */
+#define R_MN10300_GOT16		19	/* 16-bit offset to GOT entry.  */
+#define R_MN10300_COPY		20	/* Copy symbol at runtime.  */
+#define R_MN10300_GLOB_DAT	21	/* Create GOT entry.  */
+#define R_MN10300_JMP_SLOT	22	/* Create PLT entry.  */
+#define R_MN10300_RELATIVE	23	/* Adjust by program base.  */
+
+#define R_MN10300_NUM 24
+
+
 /* M32R relocs.  */
 #define R_M32R_NONE		0	/* No reloc. */
 #define R_M32R_16		1	/* Direct 16 bit. */

Attachment: am33-drop-in-port.patch.bz2
Description: BZip2 compressed data

-- 
Alexandre Oliva             http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   aoliva@{redhat.com, gcc.gnu.org}
Free Software Evangelist  oliva@{lsd.ic.unicamp.br, gnu.org}

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