Additional refinements of auto-bench stuff.
[xfstests-dev.git] / tools / srcdiff
index 195bf1441ef8cb5acfabc22b35e1a7fa69155a28..22afda3d101f82fa6660aac5dc1efbad0f8fae24 100755 (executable)
@@ -20,7 +20,7 @@ use strict;
 #     > s/^.* (xfs\w+|\*xfs\w+|xlog\w+|\*xlog\w+) \(.*/\1/ && { $count++ }'
 #     > echo $file
 #     > done
-# (compare this to "srcdiff | fgrep Total:") ... repeat for logprint.
+# (compare this to "srcdiff | fgrep Total:")
 # 
 
 die "WORKAREA not set" unless defined $ENV{'WORKAREA'};
@@ -30,12 +30,12 @@ my $quiet=0;
 my $usage=0;
 
 foreach (@ARGV) {
-    if (/^-q$/) {
-        $quiet++;
-    } else {
-        print STDERR "Illegal option $_\n";
-        $usage++;
-    }
+       if (/^-q$/) {
+               $quiet++;
+       } else {
+               print STDERR "Illegal option $_\n";
+               $usage++;
+       }
 }
 
 if ($usage) {
@@ -43,6 +43,7 @@ if ($usage) {
     exit 1;
 }
 
+my @pkglist = qw( attr acl dmapi xfsdump xfsprogs );
 my @difflist = qw(
        xfs_ag.h  xfs_alloc.h  xfs_alloc_btree.h xfs_arch.h
        xfs_attr_leaf.h  xfs_attr_sf.h  xfs_bit.h  xfs_bmap.h
@@ -56,35 +57,35 @@ my @difflist = qw(
        xfs_inum.h  xfs_log.h  xfs_log_priv.h  xfs_log_recover.h
        xfs_mount.h  xfs_quota.h  xfs_rtalloc.h
        xfs_sb.h  xfs_trans.h  xfs_trans_space.h  xfs_types.h
+       xfs_fs.h xfs_acl.h xfs_cap.h xfs_mac.h
 );
 
 sub straightdiff {
        my ( $file, $prefix1, $prefix2 ) = @_;
 
        `diff $prefix1/$file $prefix2/$file >/dev/null 2>&1`;
-        if (!$quiet) {
-           print sprintf("\t%-35s ... ", $file);
-           if ($? != 0)        { print "FAILED\n"; }
-           else                { print "ok\n"; }
-        } elsif ($? != 0) { 
+       if (!$quiet) {
+               print sprintf("\t%-35s ... ", $file);
+               if ($? != 0)    { print "FAILED\n"; }
+               else            { print "ok\n"; }
+       } elsif ($? != 0) { 
                printf("\t%-35s ... ", $file);
-                print "FAILED\n"; 
-        }
+               print "FAILED\n"; 
+       }
 }
 
+my $first = shift @pkglist;
+foreach (@pkglist) {
+       print "\n=== Checking $_ package ===\n";
+       straightdiff 'buildrules', "cmd/$first/include", "cmd/$_/include";
+       straightdiff 'buildmacros', "cmd/$first/include", "cmd/$_/include";
+}
 print "\n=== Checking headers ===\n";
 foreach (@difflist) {
        straightdiff $_, 'cmd/xfsprogs/include', 'linux/fs/xfs';
 }
-straightdiff 'xfs_cred.h', 'cmd/xfsprogs/include', 'linux/fs/xfs/linux';
-straightdiff 'xfs_fs.h', 'cmd/xfsprogs/include', 'linux/include/linux';
-straightdiff 'attr_kern.h', 'cmd/attr/include', 'linux/include/linux';
-straightdiff 'attributes.h', 'cmd/attr/include', 'linux/include/linux';
-straightdiff 'dmapi_kern.h', 'cmd/dmapi/include', 'linux/include/linux';
-straightdiff 'dmapi.h', 'cmd/dmapi/include', 'linux/include/linux';
-straightdiff 'acl.h', 'cmd/acl/include', 'linux/include/linux';
-straightdiff 'arch.h', 'cmd/xfsprogs/include', 'linux/fs/xfs_support';
-straightdiff 'xqm.h', 'cmd/xfsprogs/include', 'linux/include/linux';
+straightdiff 'dmapi_kern.h', 'cmd/dmapi/include', 'linux/fs/xfs/dmapi';
+straightdiff 'dmapi.h', 'cmd/dmapi/include', 'linux/fs/xfs/dmapi';
 
 # 
 # setstate
@@ -251,20 +252,19 @@ sub functiondiff {
        print "( Total: $count routine$plural checked in $file )\n" unless ($quiet);
 }
 
-# cmd/xfsprogs/{libxfs,logprint}/* fs/xfs/*
+# cmd/xfsprogs/{libxfs,libxlog}/* fs/xfs/*
 my @funclist = qw(
-       xfs_alloc.c  xfs_alloc_btree.c  xfs_attr_leaf.c  xfs_bit.c
+       xfs_alloc.c  xfs_alloc_btree.c  xfs_attr_leaf.c
        xfs_bmap.c  xfs_bmap_btree.c  xfs_btree.c  xfs_da_btree.c
        xfs_dir.c  xfs_dir2.c  xfs_dir2_block.c  xfs_dir2_data.c
        xfs_dir2_leaf.c  xfs_dir2_node.c  xfs_dir2_sf.c
        xfs_dir_leaf.c  xfs_ialloc.c  xfs_ialloc_btree.c
-       xfs_inode.c  xfs_rtalloc.c  xfs_rtbit.c xfs_mount.c
-       xfs_trans.c
+       xfs_inode.c  xfs_rtalloc.c  xfs_mount.c  xfs_trans.c
 );
 
 print "\n=== Checking libxfs code ===\n";
 foreach (@funclist) {
        functiondiff $_, 'cmd/xfsprogs/libxfs', 'linux/fs/xfs';
 }
-print "\n=== Checking logprint code ===\n";
-functiondiff 'xfs_log_recover.c', 'cmd/xfsprogs/logprint', 'linux/fs/xfs';
+print "\n=== Checking libxlog code ===\n";
+functiondiff 'xfs_log_recover.c', 'cmd/xfsprogs/libxlog', 'linux/fs/xfs';