[uClibc-cvs] CVS uClibc/ldso/ldso

CVS User andersen andersen at codepoet.org
Sun Oct 3 07:52:02 UTC 2004


Update of /var/cvs/uClibc/ldso/ldso
In directory nail:/tmp/cvs-serv4061/ldso/ldso

Modified Files:
	Makefile dl-elf.c 
Log Message:
This patch from Mike Frysinger, extended from an earlier patch from Peter S.
Mazinger implements the changes suggested by me on the uclibc list.

On Tuesday 28 September 2004 02:24 pm, Erik Andersen wrote:
> What I think should be done is
> 
>     *) Someone that cares about USE_CACHE should fix that option
>         up to be sure it works, and give it a proper config entry
>         in extra/Configs/Config.in, and rename it to something
>         more appropriate such as LDSO_CACHE_SUPPORT.
> 
>     *) When LDSO_CACHE_SUPPORT=n, UCLIBC_RUNTIME_PREFIX /usr/X11R6/lib
>         should be included in the default library search path in
>         dl-elf.c, ldd, and ldconfig.
> 
>     *) When LDSO_CACHE_SUPPORT=y, UCLIBC_RUNTIME_PREFIX /usr/X11R6/lib
>         should be excluded from the default library search path in
>         dl-elf.c, ldd, and ldconfig, and those wishing to include
>         X11 stuff should add that into /etc/ld.so.conf and re-run
>         ldconfig.
> 
>     *) At present, LDSO_CONF and LDSO_CACHE use the same names
>         and same structure as glibc.  This precludes
>         LDSO_CACHE_SUPPORT being uses in any sane fashion on a
>         dial glibc and uClibc system.  Just as it was necessary
>         for use to use a different name for 'libuClibc' rather
>         than 'libc', and 'ld-uClibc.so.0' rather than
>         'ld-linux.so.2' it seems that these configuration files
>         really ought to be given different names.
> 



--- /var/cvs/uClibc/ldso/ldso/Makefile	2004/08/27 11:08:35	1.61
+++ /var/cvs/uClibc/ldso/ldso/Makefile	2004/10/03 07:52:00	1.62
@@ -23,7 +23,7 @@
 
 SSPFLAGS=$(call check_gcc,-fno-stack-protector,)
 
-XXFLAGS=$(XWARNINGS) $(LIBRARY_CACHE) $(SSPFLAGS)
+XXFLAGS=$(XWARNINGS) $(SSPFLAGS)
 ifeq ($(DODEBUG),y)
 # Not really much point in including debugging info, since gdb
 # can't really debug ldso, since gdb requires help from ldso to
--- /var/cvs/uClibc/ldso/ldso/dl-elf.c	2004/09/28 07:56:49	1.80
+++ /var/cvs/uClibc/ldso/ldso/dl-elf.c	2004/10/03 07:52:01	1.81
@@ -32,7 +32,7 @@
 
 #include "ldso.h"
 
-#ifdef USE_CACHE
+#ifdef __LDSO_CACHE_SUPPORT__
 
 static caddr_t _dl_cache_addr = NULL;
 static size_t _dl_cache_size = 0;
@@ -317,7 +317,7 @@
 	 * ABI, so we have some flexibility here.  For now, search it before
 	 * the hard coded paths that follow (i.e before /lib and /usr/lib).
 	 */
-#ifdef USE_CACHE
+#ifdef __LDSO_CACHE_SUPPORT__
 	if (_dl_cache_addr != NULL && _dl_cache_addr != (caddr_t) - 1) {
 		int i;
 		header_t *header = (header_t *) _dl_cache_addr;
@@ -358,6 +358,9 @@
 	if ((tpnt1 = search_for_named_library(libname, secure,
 					UCLIBC_RUNTIME_PREFIX "lib:"
 					UCLIBC_RUNTIME_PREFIX "usr/lib"
+#if !defined (__LDSO_CACHE_SUPPORT__)
+					":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib"
+#endif
 					, rpnt)
 		) != NULL)
 	{



More information about the uClibc-cvs mailing list