[uClibc-cvs] CVS uClibc/utils

CVS User jocke jocke at codepoet.org
Mon Sep 27 09:40:55 UTC 2004


Update of /var/cvs/uClibc/utils
In directory nail:/tmp/cvs-serv14287

Modified Files:
	ldconfig.c 
Log Message:
Remove /usr/X11R6/lib from default list. 
Move /lib and /usr/lib first in ld.so.cache.
Ignore duplicate /lib and /usr/lib in ld.so.conf 


--- /var/cvs/uClibc/utils/ldconfig.c	2004/02/10 09:41:56	1.3
+++ /var/cvs/uClibc/utils/ldconfig.c	2004/09/27 09:40:55	1.4
@@ -874,18 +874,28 @@
 	/* look ma, no defaults */
 	if (!nodefault)
 	{
+	    scan_dir(UCLIBC_RUNTIME_PREFIX "lib");
+	    scan_dir(UCLIBC_RUNTIME_PREFIX "usr/lib");
+
 	    /* I guess the defaults aren't good enough */
 	    if ((extpath = get_extpath()))
 	    {
-		for (cp = strtok(extpath, DIR_SEP); cp;
-			cp = strtok(NULL, DIR_SEP))
+		for (cp = strtok(extpath, DIR_SEP); cp; cp = strtok(NULL, DIR_SEP)) {
+			/* strip traling slashes */
+			int len = strlen(cp);
+			if (len) 
+				while (cp[--len] == '/' && len)
+					cp[len] = 0;
+			if (strcmp(UCLIBC_RUNTIME_PREFIX "lib", cp) == 0 ||
+			    strcmp(UCLIBC_RUNTIME_PREFIX "usr/lib", cp) == 0) {
+				if (verbose >= 0)
+					warnx("Path `%s' given more than once\n", cp);
+				continue;
+			}
 		    scan_dir(cp);
+		}
 		free(extpath);
 	    }
-
-	    scan_dir(UCLIBC_RUNTIME_PREFIX "/usr/X11R6/lib");
-	    scan_dir(UCLIBC_RUNTIME_PREFIX "/usr/lib");
-	    scan_dir(UCLIBC_RUNTIME_PREFIX "/lib");
 	}
 
 #ifdef USE_CACHE



More information about the uClibc-cvs mailing list