Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 162589 | Differences between
and this patch

Collapse All | Expand All

(-)revdep-rebuild (-1 / +8 lines)
Lines 430-439 Link Here
430
	set_trap "$LLIST.3_rebuild"
430
	set_trap "$LLIST.3_rebuild"
431
	LD_MASK="\\(	$(echo "$LD_LIBRARY_MASK" | sed 's/\./\\./g;s/ / \\|	/g') \\)"
431
	LD_MASK="\\(	$(echo "$LD_LIBRARY_MASK" | sed 's/\./\\./g;s/ / \\|	/g') \\)"
432
	echo -n >$LLIST.3_rebuild
432
	echo -n >$LLIST.3_rebuild
433
	echo -n >$LLIST.3_unresolved
433
	cat $LIST.1_files | egrep -v '*\.la$' | while read FILE ; do
434
	cat $LIST.1_files | egrep -v '*\.la$' | while read FILE ; do
434
	# Note: double checking seems to be faster than single
435
	# Note: double checking seems to be faster than single
435
	# with complete path (special add ons are rare).
436
	# with complete path (special add ons are rare).
436
	if ldd "$FILE" 2>/dev/null | grep -v "$LD_MASK" | $SONAME_GREP -q "$SONAME_SEARCH" ; then
437
	if ldd -d -r "$FILE" 2>>$LLIST.3_unresolved | grep -v "$LD_MASK" | $SONAME_GREP -q "$SONAME_SEARCH" ; then
437
		if $SEARCH_BROKEN && $FULL_LD_PATH ; then
438
		if $SEARCH_BROKEN && $FULL_LD_PATH ; then
438
			if LD_LIBRARY_PATH="$COMPLETE_LD_LIBRARY_PATH" ldd "$FILE" 2>/dev/null | grep -v "$LD_MASK" | $SONAME_GREP -q "$SONAME_SEARCH" ; then
439
			if LD_LIBRARY_PATH="$COMPLETE_LD_LIBRARY_PATH" ldd "$FILE" 2>/dev/null | grep -v "$LD_MASK" | $SONAME_GREP -q "$SONAME_SEARCH" ; then
439
				# FIX: I hate duplicating code
440
				# FIX: I hate duplicating code
Lines 480-485 Link Here
480
	fi
481
	fi
481
	done
482
	done
482
	if $SEARCH_BROKEN ; then
483
	if $SEARCH_BROKEN ; then
484
		# Look for unresolved symbols
485
		for FILE in $(grep "undefined symbol" $LLIST.3_unresolved | awk '{print $NF}' | sed 's/[()]//g' | sort -u) ; do
486
			echo "obj $FILE" >>$LLIST.3_rebuild
487
			echo_v "  broken $FILE (unresolved symbols)"
488
		done
489
		# Look for broken .la files
483
		cat $LIST.1_files | egrep '*\.la$' | while read FILE ; do
490
		cat $LIST.1_files | egrep '*\.la$' | while read FILE ; do
484
			for depend in $(grep '^dependency_libs' $FILE | awk -F'=' '{print $2}' | sed "s/'//g") ; do
491
			for depend in $(grep '^dependency_libs' $FILE | awk -F'=' '{print $2}' | sed "s/'//g") ; do
485
				[ ${depend:0:1} != '/' ] && continue
492
				[ ${depend:0:1} != '/' ] && continue

Return to bug 162589