#! /bin/bash # FS QA Test No. 040 # # compare-libxfs test # #----------------------------------------------------------------------- # Copyright (c) 2000-2001 Silicon Graphics, Inc. All Rights Reserved. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation. # # This program is distributed in the hope that it would be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write the Free Software Foundation, # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # #----------------------------------------------------------------------- # seq=`basename $0` seqres=$RESULT_DIR/$seq echo "QA output created by $seq" here=`pwd` tmp=/tmp/$$ status=1 # failure is the default! trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15 # get standard environment, filters and checks . ./common/rc . ./common/filter [ -z "$KWORKAREA" ] && \ _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 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 exit