Added g/fbsd support patch from Bug #102255
authorfuzzyray <fuzzyray@gentoo.org>
Sat, 13 Aug 2005 04:48:51 +0000 (04:48 -0000)
committerfuzzyray <fuzzyray@gentoo.org>
Sat, 13 Aug 2005 04:48:51 +0000 (04:48 -0000)
svn path=/; revision=227

trunk/src/revdep-rebuild/revdep-rebuild

index b41fffbe767692b44697bd85f494e5fa8aa65413..c67fb875e9fdd1f3d101d38581166a3d4fd44800 100755 (executable)
@@ -256,13 +256,20 @@ else
        WORKING_TEXT=""
 fi
 
+# check if it's GNU's stat or BSD's stat...
+if stat 2>&1 | grep coreutils; then
+       STAT="stat -c %Y "
+else
+       STAT="stat -f %m "
+fi
+
 # If our temporary files are older than 1 day, don't use them
 TOO_OLD=$((`date +%s` - 86400))
 for file in ${LIST}*
 do
        if [ -f $file ]
        then
-               FILE_AGE="$(stat -c %Y $file)"
+               FILE_AGE="$(${STAT} $file)"
                if [ $FILE_AGE -lt $TOO_OLD ]
                then
                        rm -f ${LIST}*
@@ -369,7 +376,7 @@ else
                        if LD_LIBRARY_PATH="$COMPLETE_LD_LIBRARY_PATH" ldd "$FILE" 2>/dev/null | grep -v "$LD_MASK" | $SONAME_GREP -q "$SONAME_SEARCH" ; then
                                # FIX: I hate duplicating code
                                # Only build missing direct dependencies
-                               ALL_MISSING_LIBS=$(ldd "$FILE" 2>/dev/null | sort -u | sed -n 's/       \(.*\) => not found$/\1/p' | tr '\n' ' ' | sed 's/ $//' )
+                               ALL_MISSING_LIBS=$(ldd "$FILE" 2>/dev/null | sort -u | sed -n 's/       \(.*\) => not found/\1/p' | tr '\n' ' ' | sed 's/ $//' )
                                REQUIRED_LIBS=$(objdump -x $FILE | grep NEEDED | awk '{print $2}' | tr '\n' ' ' | sed 's/ $//')
                                MISSING_LIBS=""
                                for lib in $ALL_MISSING_LIBS