[SCM] live-boot branch, debian-next, updated. debian/3.0_a20-1-4-ga8ee91a

Tails developers amnesia at boum.org
Wed Sep 7 12:43:44 UTC 2011


The following commit has been merged in the debian-next branch:
commit a8ee91a515eb774deb072cdc3b0c2c7591b7d7f6
Author: Tails developers <amnesia at boum.org>
Date:   Sat Jan 8 18:43:38 2011 +0100

    Fixing cache_path: taking into account the three forms of ldd output lines.

diff --git a/debian/live-boot.init b/debian/live-boot.init
index 1130730..5799c44 100644
--- a/debian/live-boot.init
+++ b/debian/live-boot.init
@@ -49,8 +49,24 @@ cache_path()
 	then
 		if file -L "${path}" | grep -q 'dynamically linked'
 		then
-			for lib in $(ldd "${path}" | awk '{ print $3 }')
+			# ldd output can be of three forms:
+			# 1. linux-vdso.so.1 =>  (0x00007fffe3fb4000)
+			#    This is a virtual, kernel shared library and we want to skip it
+			# 2. libc.so.6 => /lib/libc.so.6 (0x00007f5e9dc0c000)
+			#    We want to cache the third word.
+			# 3. /lib64/ld-linux-x86-64.so.2 (0x00007f5e9df8b000)
+			#    We want to cache the first word.
+			ldd "${path}" | while read line
 			do
+				if echo "$line" | grep -qs ' =>  '
+				then
+					continue
+				elif echo "$line" | grep -qs ' => '
+				then
+					lib=$(echo "${line}" | awk '{ print $3 }')
+				else
+					lib=$(echo "${line}" | awk '{ print $1 }')
+				fi
 				cache_path "${lib}"
 			done
 		fi

-- 
live-boot



More information about the debian-live-changes mailing list