Ryujinx-GtkSharp/audit/get-apidiff.pl
Mike Kestner eee80b2e26 2005-05-21 Mike Kestner <mkestner@novell.com>
* audit : add a compatibility auditing framework.
	* audit/base/*.apiinfo : initial checkin of 1.0.10 API for diffs.
	* audit/extract-missing.cs : XPath tool to grab presence='missing'.
	* audit/get-apidiff.pl : diffs api-infos to the base.
	* audit/get-apiinfo.pl : drives a module-wide api-info extraction.
	* audit/get-missing.pl : drives the extract-missing.exe tool.
	* audit/makefile : all and check targets. no dist support.
	* audit/mono-api-info.cs: copied from mcs/tools/corcompare.
	* audit/mono-api-diff.cs: copied from mcs/tools/corcompare.

svn path=/trunk/gtk-sharp/; revision=44872
2005-05-21 16:41:11 +00:00

44 lines
1.4 KiB
Perl
Executable File

#!/usr/bin/perl
#
# get-apidiff.pl : gets apidiff files for the apiinfo files in
# base_dir that have corresponding files in revised_dir
#
# Authors: Mike Kestner <mkestner@novell.com>
#
# Copyright (c) 2005 Novell, Inc.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of version 2 of the GNU General Public
# License as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will 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 to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
die "Usage: get-apidiff.pl <base_dir> <revised_dir> <outdir>" if (@ARGV != 3);
$base_dir = $ARGV[0];
$revised_dir = $ARGV[1];
$outdir = $ARGV[2];
`mkdir -p $outdir`;
print "comparing api to base: ";
foreach $baseapi (`ls $base_dir/*.apiinfo`) {
chomp ($baseapi);
$baseapi =~ /$base_dir\/(.*)\.apiinfo/;
if (-e "$revised_dir/$1.apiinfo") {
print "*";
`mono mono-api-diff.exe $base_dir/$1.apiinfo $revised_dir/$1.apiinfo > $outdir/$1.apidiff`;
} else {
die "Warning: no $1 apiinfo file found in $revised_dir\n";
}
}
print " Completed\n\n";