svn commit: branches/uClibc-nptl: docs/uclibc.org ldso/include ldso/ldso l etc...

sjhill at uclibc.org sjhill at uclibc.org
Tue Aug 30 04:26:27 UTC 2005


Author: sjhill
Date: 2005-08-29 21:26:25 -0700 (Mon, 29 Aug 2005)
New Revision: 11286

Log:
Sync with trunk.


Modified:
   branches/uClibc-nptl/docs/uclibc.org/lists.html
   branches/uClibc-nptl/ldso/include/dl-hash.h
   branches/uClibc-nptl/ldso/include/ldso.h
   branches/uClibc-nptl/ldso/ldso/dl-elf.c
   branches/uClibc-nptl/ldso/ldso/dl-hash.c
   branches/uClibc-nptl/libc/misc/internals/__uClibc_main.c


Changeset:
Modified: branches/uClibc-nptl/docs/uclibc.org/lists.html
===================================================================
--- branches/uClibc-nptl/docs/uclibc.org/lists.html	2005-08-30 04:25:11 UTC (rev 11285)
+++ branches/uClibc-nptl/docs/uclibc.org/lists.html	2005-08-30 04:26:25 UTC (rev 11286)
@@ -6,7 +6,7 @@
 <h3>Mailing List Information</h3>
 uClibc has a <a href="/lists/uclibc/">mailing list</a> for discussion and
 development.  You can subscribe by visiting
-<a href="http://codepoet.org/mailman/listinfo/uclibc">this page</a>.
+<a href="http://uclibc.org/mailman/listinfo/uclibc">this page</a>.
 Only subscribers to the uClibc mailing list are allowed to post
 to this list.
 
@@ -14,7 +14,7 @@
 There is also a mailing list for <a href="/lists/uclibc-cvs/">active developers</a>
 wishing to read the complete diff of each and every change to uClibc -- not for the
 faint of heart.  Active developers can subscribe by visiting
-<a href="http://codepoet.org/mailman/listinfo/uclibc-cvs">this page</a>.
+<a href="http://uclibc.org/mailman/listinfo/uclibc-cvs">this page</a>.
 The Subversion server is the only one permtted to post to this list.  And yes,
 this list name uses the word 'cvs' even though we don't use that anymore...
 

Modified: branches/uClibc-nptl/ldso/include/dl-hash.h
===================================================================
--- branches/uClibc-nptl/ldso/include/dl-hash.h	2005-08-30 04:25:11 UTC (rev 11285)
+++ branches/uClibc-nptl/ldso/include/dl-hash.h	2005-08-30 04:26:25 UTC (rev 11286)
@@ -32,15 +32,15 @@
   unsigned short usage_count;
   unsigned short int init_flag;
   unsigned long rtld_flags; /* RTLD_GLOBAL, RTLD_NOW etc. */
-  Elf32_Word nbucket;
-  Elf32_Word *elf_buckets;
+  Elf_Symndx nbucket;
+  Elf_Symndx *elf_buckets;
   struct init_fini_list *init_fini;
   struct init_fini_list *rtld_local; /* keep tack of RTLD_LOCAL libs in same group */
   /*
    * These are only used with ELF style shared libraries
    */
-  Elf32_Word nchain;
-  Elf32_Word *chains;
+  Elf_Symndx nchain;
+  Elf_Symndx *chains;
   unsigned long dynamic_info[DYNAMIC_SIZE];
 
   unsigned long n_phent;

Modified: branches/uClibc-nptl/ldso/include/ldso.h
===================================================================
--- branches/uClibc-nptl/ldso/include/ldso.h	2005-08-30 04:25:11 UTC (rev 11285)
+++ branches/uClibc-nptl/ldso/include/ldso.h	2005-08-30 04:26:25 UTC (rev 11286)
@@ -20,6 +20,7 @@
 /* Pull in compiler and arch stuff */
 #include <stdlib.h>
 #include <stdarg.h>
+#include <bits/wordsize.h>
 /* Pull in the arch specific type information */
 #include <sys/types.h>
 /* Pull in the ldso syscalls and string functions */

Modified: branches/uClibc-nptl/ldso/ldso/dl-elf.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/dl-elf.c	2005-08-30 04:25:11 UTC (rev 11285)
+++ branches/uClibc-nptl/ldso/ldso/dl-elf.c	2005-08-30 04:26:25 UTC (rev 11286)
@@ -693,7 +693,7 @@
 	if (lpnt) {
 		lpnt = (unsigned long *) (dynamic_info[DT_PLTGOT]);
 		INIT_GOT(lpnt, tpnt);
-	};
+	}
 
 	_dl_if_debug_dprint("\n\tfile='%s';  generating link map\n", libname);
 	_dl_if_debug_dprint("\t\tdynamic: %x  base: %x\n", dynamic_addr, libaddr);
@@ -770,7 +770,11 @@
 /* Minimal printf which handles only %s, %d, and %x */
 void _dl_dprintf(int fd, const char *fmt, ...)
 {
-	long num;
+#if __WORDSIZE > 32
+	long int num;
+#else
+	int num;
+#endif
 	va_list args;
 	char *start, *ptr, *string;
 	static char *buf;
@@ -818,8 +822,11 @@
 				case 'd':
 					{
 						char tmp[22];
-						num = va_arg(args, long);
-
+#if __WORDSIZE > 32
+						num = va_arg(args, long int);
+#else
+						num = va_arg(args, int);
+#endif
 						string = _dl_simple_ltoa(tmp, num);
 						_dl_write(fd, string, _dl_strlen(string));
 						break;
@@ -828,8 +835,11 @@
 				case 'X':
 					{
 						char tmp[22];
-						num = va_arg(args, long);
-
+#if __WORDSIZE > 32
+						num = va_arg(args, long int);
+#else
+						num = va_arg(args, int);
+#endif
 						string = _dl_simple_ltoahex(tmp, num);
 						_dl_write(fd, string, _dl_strlen(string));
 						break;

Modified: branches/uClibc-nptl/ldso/ldso/dl-hash.c
===================================================================
--- branches/uClibc-nptl/ldso/ldso/dl-hash.c	2005-08-30 04:25:11 UTC (rev 11285)
+++ branches/uClibc-nptl/ldso/ldso/dl-hash.c	2005-08-30 04:26:25 UTC (rev 11286)
@@ -57,7 +57,7 @@
 /* This is the hash function that is used by the ELF linker to generate the
  * hash table that each executable and library is required to have.  We need
  * it to decode the hash table.  */
-static inline Elf32_Word _dl_elf_hash(const char *name)
+static inline Elf_Symndx _dl_elf_hash(const char *name)
 {
 	unsigned long hash=0;
 	unsigned long tmp;
@@ -101,7 +101,7 @@
 	char *loadaddr, unsigned long *dynamic_info, unsigned long dynamic_addr,
 	unsigned long dynamic_size)
 {
-	Elf32_Word *hash_addr;
+	Elf_Symndx *hash_addr;
 	struct elf_resolve *tpnt;
 	int i;
 
@@ -125,7 +125,7 @@
 	tpnt->libtype = loaded_file;
 
 	if (dynamic_info[DT_HASH] != 0) {
-		hash_addr = (Elf32_Word*)dynamic_info[DT_HASH];
+		hash_addr = (Elf_Symndx*)dynamic_info[DT_HASH];
 		tpnt->nbucket = *hash_addr++;
 		tpnt->nchain = *hash_addr++;
 		tpnt->elf_buckets = hash_addr;

Modified: branches/uClibc-nptl/libc/misc/internals/__uClibc_main.c
===================================================================
--- branches/uClibc-nptl/libc/misc/internals/__uClibc_main.c	2005-08-30 04:25:11 UTC (rev 11285)
+++ branches/uClibc-nptl/libc/misc/internals/__uClibc_main.c	2005-08-30 04:26:25 UTC (rev 11286)
@@ -17,6 +17,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <elf.h>
+#include <link.h>
 #include <bits/uClibc_page.h>
 #include <paths.h>
 #include <unistd.h>
@@ -171,7 +172,7 @@
 {
 #ifdef __ARCH_HAS_MMU__
     unsigned long *aux_dat;
-    Elf32_auxv_t auxvt[AT_EGID + 1];
+    ElfW(auxv_t) auxvt[AT_EGID + 1];
 #endif
     __libc_stack_end = stack_end;
     /* We need to initialize uClibc.  If we are dynamically linked this
@@ -199,9 +200,9 @@
     }
     aux_dat++;
     while (*aux_dat) {
-	Elf32_auxv_t *auxv_entry = (Elf32_auxv_t *) aux_dat;
+	ElfW(auxv_t) *auxv_entry = (ElfW(auxv_t) *) aux_dat;
 	if (auxv_entry->a_type <= AT_EGID) {
-	    memcpy(&(auxvt[auxv_entry->a_type]), auxv_entry, sizeof(Elf32_auxv_t));
+	    memcpy(&(auxvt[auxv_entry->a_type]), auxv_entry, sizeof(ElfW(auxv_t)));
 	}
 	aux_dat += 2;
     }




More information about the uClibc-cvs mailing list