GtkSharp/audit/get-apiinfo.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

40 lines
1.2 KiB
Perl
Executable file

#!/usr/bin/perl
#
# get-apiinfo.pl : gets apiinfo files for the assemblies in a directory tree.
#
# 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-apiinfo.pl <root_dir> <outdir>" if (@ARGV != 2);
$root = $ARGV[0];
$outdir = $ARGV[1];
`mkdir -p $outdir`;
`mkdir -p apitmp`;
`cp $root/*/*.dll apitmp`;
print "getting api info: ";
foreach $assm (`ls apitmp/*.dll`) {
chomp ($assm);
$assm =~ /apitmp\/(.*)\.dll/;
print "*";
`mono mono-api-info.exe $assm > $outdir/$1.apiinfo`;
}
`rm -rf apitmp`;
print " Completed\n\n";