xfs/040: use compare-libxfs in xfsprogs
[xfstests-dev.git] / tests / xfs / 040
index 7c2a0088b37409f5678906b19f47132d0f5f3138..fadb888cbfaf274faf9564c81511af6bb92c3e60 100755 (executable)
@@ -1,7 +1,7 @@
 #! /bin/bash
 # FS QA Test No. 040
 #
-# srcdiff test
+# compare-libxfs test
 #
 #-----------------------------------------------------------------------
 # Copyright (c) 2000-2001 Silicon Graphics, Inc.  All Rights Reserved.
@@ -36,25 +36,23 @@ trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
 . ./common/filter
 
 [ -z "$KWORKAREA" ] && \
-       _notrun "Can't run srcdiff without KWORKAREA set"
+       _notrun "Can't run libxfs-diff without KWORKAREA set"
 [ -d "$KWORKAREA/fs/xfs" ] || \
        _notrun "Can't find XFS source under \"$KWORKAREA\""
 
 [ -z "$WORKAREA" ] && \
-       _notrun "Can't run srcdiff without WORKAREA set"
-[ -f "$WORKAREA/xfstests/tools/srcdiff" ] || \
-       _notrun "Can't find srcdiff tool under \"$WORKAREA\""
-[ -d "$WORKAREA/xfsprogs/include" ] || \
-       _notrun "Can't find XFS command headers under \"$WORKAREA\""
-
-# real QA test starts here
-cd "$WORKAREA/xfstests"
-echo Silence is golden.
-perl tools/srcdiff -q >$seqres.full
-if ! diff $seqres.full $seq.good >/dev/null; then
-    echo "FAILED: srcdiff output $seqres.full differs to $seq.good"
-    exit 1
-fi
+       _notrun "Can't run libxfs-diff without WORKAREA set"
+[ -f "$WORKAREA/tools/libxfs-diff" ] || \
+       _notrun "Can't find libxfs-diff tool under \"$WORKAREA\""
+
+filter_libxfs_diff() {
+       sed -e 's/^--- libxfs/--- xfsprogs\/libxfs/g' \
+           -e 's/^+++ .*libxfs/+++ kernel\/libxfs/g' \
+           -e 's/^@@.*$/@@ -XXXX,X +YYYY,Y @@/g'
+}
+
+# Compare the two libxfses
+(cd "$WORKAREA" ; ./tools/libxfs-diff "$KWORKAREA/fs/xfs/libxfs") | filter_libxfs_diff | tee -a $seqres.full
 
 # success, all done
 status=0