diff options
Diffstat (limited to 'sysui/util/checksize.pl')
-rw-r--r-- | sysui/util/checksize.pl | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/sysui/util/checksize.pl b/sysui/util/checksize.pl new file mode 100644 index 000000000000..559dcc45f68e --- /dev/null +++ b/sysui/util/checksize.pl @@ -0,0 +1,87 @@ +: +eval 'exec perl -wS $0 ${1+"$@"}' + if 0; +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org 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 Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* +# +# +# + +my +$is_debug=0; +my $err = 0; +my $path = "../" . $ENV{'INPATH'} . "/"; + +#Path of the directory from which the recursion starts (must have ending '/'). +print "Checking:$path\n"; +# Initiate the recursion +&RecurseDirs($path); +if ($err > 0) +{ + print "Error: $err damaged files encountered\n"; + exit(1); # stop dmake +} else +{ + print "ok.\n"; +} +exit; + +#### SUBROUTINES SECTION #### + +# Function that recurses through the directory tree calling FileFunction on all files +sub RecurseDirs { + my ($path) = @_; + my $file; #Variable for a file + + opendir (DIRECTORY, $path) or + die "Error: Can't read $path\n"; + my @all_files = grep (!/^\.\.?$/, readdir (DIRECTORY)); #Read all the files except for '.' and '..' + closedir (DIRECTORY); + + foreach $file (@all_files) { + if (-d "$path$file/") { + &RecurseDirs("$path$file/"); + } else { + &check($path, $file); + } + } +} + +############################################################################ +sub check #04.02.2005 13:40 +############################################################################ + { + my $path = shift; + my $file = shift; + print "$path$file\n" if ((-e "$path$file") && $is_debug); + # don't check dpc,flag,rpmflag,sdf [obj for UNX] files, or etc subdirectory + return if ( ($file =~ /.+\.(dpc|\w*?flag)/) || ($file =~ /.+\.obj/ && $ENV{GUI} eq 'UNX') || ($path =~ /.+etc/) || ($path =~ /.+logs/) || ($path =~ /.+sdf/) ); + if ( -z "$path$file" ) { + print "Error: $path$file 0 Bytes!\n"; + $err++; + } + } |