hdf5/bin/checkapi
Quincey Koziol e3d9211fa9 [svn-r11596] Purpose:
Update copyrights

Description:
    Updated copyright information in hdf5/bin and top-level and added some
more files to be skipped to the chkcopyright config file.

Platforms tested:
    None - just eyeballed
2005-10-22 10:35:28 -05:00

49 lines
1.5 KiB
Perl
Executable File

#!/usr/bin/perl -w
#
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the files COPYING and Copyright.html. COPYING can be found at the root
# of the source code distribution tree; Copyright.html can be found at the
# root level of an installed copy of the electronic HDF5 document set and
# is linked from the top-level documents page. It can also be found at
# http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have
# access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu.
#
require 5.003;
# Purpose: insures that API functions aren't called internally.
# Usage: checkapi H5*.c
my $comment = 0;
while (<>) {
# Remove comments within the line.
s/\/\*.*?\*\///g;
# Process comment begin and end tokens on this line.
$comment-- if /\*\//; # count comment ends
next if $comment; # skip line if in comment
$comment++ if /\/\*/; # count comment starts
s/(.*)\/\*.*/$1/; # remove comments that begin on this line
# Remove character strings
s/\\.//g; # remove escaped characters
s/\".*?\"//g; # remove string constants
# Disregard the following hits
next if /^H5/;
next if /^\#/;
next if /FUNC_ENTER(_NOINIT)*/;
next unless /(H5[A-Z]{1,2}[a-z]\w*)/;
print "$ARGV:$.: $1\n";
} continue {
if (eof) {
print "$ARGV:$.: bad comment nesting\n" if $comment;
$comment = 0;
close ARGV; # reset line number
}
}