aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.2.1-5666.3/libiberty/maint-tool
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.2.1-5666.3/libiberty/maint-tool')
-rw-r--r--gcc-4.2.1-5666.3/libiberty/maint-tool296
1 files changed, 0 insertions, 296 deletions
diff --git a/gcc-4.2.1-5666.3/libiberty/maint-tool b/gcc-4.2.1-5666.3/libiberty/maint-tool
deleted file mode 100644
index 5584d9b55..000000000
--- a/gcc-4.2.1-5666.3/libiberty/maint-tool
+++ /dev/null
@@ -1,296 +0,0 @@
-#!/usr/bin/perl
-# -*- perl -*-
-
-# Copyright (C) 2001
-# Free Software Foundation
-#
-# This file is part of the libiberty library.
-# Libiberty is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library General Public
-# License as published by the Free Software Foundation; either
-# version 2 of the License, or (at your option) any later version.
-#
-# Libiberty 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
-# Library General Public License for more details.
-#
-# You should have received a copy of the GNU Library General Public
-# License along with libiberty; see the file COPYING.LIB. If not,
-# write to the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-# Boston, MA 02110-1301, USA.
-#
-# Originally written by DJ Delorie <dj@redhat.com>
-
-
-# This is a trivial script which checks the lists of C and O files in
-# the Makefile for consistency.
-
-$mode = shift;
-$srcdir = ".";
-
-if ($mode eq "-s") {
- $srcdir = shift;
- $mode = shift;
-}
-
-&missing() if $mode eq "missing";
-&undoc() if $mode eq "undoc";
-&deps() if $mode eq "deps";
-
-exit 0;
-
-format STDOUT =
-^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~
-$out
- ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~~
-$out
-.
-
-######################################################################
-
-sub missing {
-
- opendir(S, $srcdir);
- while ($f = readdir S) {
- $have{$f} = 1;
- }
- closedir(S);
- opendir(S, ".");
- while ($f = readdir S) {
- $have{$f} = 1;
- }
- closedir(S);
-
- for $a (@ARGV) {
- $listed{$a} = 1;
- $have{$a} = 0;
- }
-
- for $f (sort keys %have) {
- next unless $have{$f};
- if ($f =~ /\.c$/) {
- print "S $f\n";
- }
- }
- for $f (sort keys %listed) {
- if ($f =~ /(.*)\.c$/) {
- $base = $1;
- if (! $listed{"$base.o"}) {
- print "O $f\n";
- }
- }
- }
-}
-
-######################################################################
-
-sub undoc {
-
- opendir(S, $srcdir);
- while ($file = readdir S) {
- if ($file =~ /\.texi$/) {
- open(T, "$srcdir/$file");
- while (<T>) {
- if (/^\@deftype[^\(]* ([^\s\(]+) *\(/) {
- $documented{$1} = 1;
- }
- }
- close(T);
- }
- if ($file =~ /\.c$/) {
- open(C, "$srcdir/$file");
- while (<C>) {
- if (/\@undocumented (\S+)/) {
- $documented{$1} = 1;
- }
- if (/^static /) {
- if (! /[\(;]/) {
- s/[\r\n]+$/ /;
- $_ .= <C>;
- }
- while ($_ =~ /\([^\)]*$/) {
- s/[\r\n]+$/ /;
- $_ .= <C>;
- }
- }
- s/ VPARAMS([ \(])/$1/;
- s/PREFIX\(([^\)]*)\)/byte_$1/;
- if (/^static [^\(]* ([^\s\(]+) *\(.*\)$/) {
- $documented{$1} = 1;
- }
- }
- }
- }
- closedir(D);
-
- # $out = join(' ', sort keys %documented);
- # write;
- # print "\n";
-
- system "etags $srcdir/*.c $srcdir/../include/*.h";
- open(TAGS, "TAGS");
- while (<TAGS>) {
- s/[\r\n]+$//;
- if (/^\014$/) {
- $filename = <TAGS>;
- $filename =~ s/[\r\n]+$//;
- $filename =~ s/,\d+$//;
- $filename =~ s@.*[/\\]@@;
- next;
- }
- if ($filename =~ /\.c$/ ) {
- next unless /^[_a-zA-Z]/;
- } else {
- next unless /^\# *define/;
- s/\# *define *//;
- }
-
- s/ VPARAMS//;
- s/ *\177.*//;
- s/,$//;
- s/DEFUN\(//;
- s/\(//;
-
- next if /^static /;
- next if /\s/;
- next if /^_/;
- next if $documented{$_};
- next if /_H_?$/;
-
- if ($seen_in{$_} ne $filename) {
- $saw{$_} ++;
- }
- $seen_in{$_} = $filename;
- }
-
- for $k (keys %saw) {
- delete $saw{$k} if $saw{$k} > 1;
- }
-
- for $k (sort keys %saw) {
- $fromfile{$seen_in{$k}} .= " " if $fromfile{$seen_in{$k}};
- $fromfile{$seen_in{$k}} .= $k;
- }
-
- for $f (sort keys %fromfile) {
- $out = "$f: $fromfile{$f}";
- write;
- }
-}
-
-######################################################################
-
-sub deps_for {
- my($f) = @_;
- my(%d);
- open(F, $f);
- %d = ();
- while (<F>) {
- if (/^#\s*include\s+["<](.*)[">]/) {
- $d{$1} = 1;
- }
- }
- close(F);
- return keys %d;
-}
-
-sub canonicalize {
- my ($p) = @_;
- 0 while $p =~ s@/\./@/@g;
- 0 while $p =~ s@^\./@@g;
- 0 while $p =~ s@/[^/]+/\.\./@/@g;
- return $p;
-}
-
-sub locals_first {
- my ($a,$b) = @_;
- return -1 if $a eq "config.h";
- return 1 if $b eq "config.h";
- return $a cmp $b;
-}
-
-sub deps {
-
- $crule = "\tif [ x\"\$(PICFLAG)\" != x ]; then \\\n";
- $crule .= "\t \$(COMPILE.c) \$(PICFLAG) \$< -o pic/\$@; \\\n";
- $crule .= "\telse true; fi\n";
- $crule .= "\t\$(COMPILE.c) \$< \$(OUTPUT_OPTION)\n";
- $crule .= "\n";
-
- $incdir = shift @ARGV;
-
- opendir(INC, $incdir);
- while ($f = readdir INC) {
- next unless $f =~ /\.h$/;
- $mine{$f} = "\$(INCDIR)/$f";
- $deps{$f} = join(' ', &deps_for("$incdir/$f"));
- }
- $mine{'config.h'} = "config.h";
-
- opendir(INC, $srcdir);
- while ($f = readdir INC) {
- next unless $f =~ /\.h$/;
- $mine{$f} = "\$(srcdir)/$f";
- $deps{$f} = join(' ', &deps_for("$srcdir/$f"));
- }
- $mine{'config.h'} = "config.h";
-
- open(IN, "$srcdir/Makefile.in");
- open(OUT, ">$srcdir/Makefile.tmp");
- while (<IN>) {
- last if /remainder of this file/;
- print OUT;
- }
- print OUT "# The dependencies in the remainder of this file are automatically\n";
- print OUT "# generated by \"make maint-deps\". Manual edits will be lost.\n\n";
-
- opendir(S, $srcdir);
- for $f (sort readdir S) {
- if ($f =~ /\.c$/) {
-
- %scanned = ();
- @pending = &deps_for("$srcdir/$f");
- while (@pending) {
- @tmp = @pending;
- @pending = ();
- for $p (@tmp) {
- next unless $mine{$p};
- if (!$scanned{$p}) {
- push(@pending, split(' ', $deps{$p}));
- $scanned{$p} = 1;
- }
- }
- }
- @deps = sort { &locals_first($a,$b) } keys %scanned;
- $obj = $f;
- $obj =~ s/\.c$/.o/;
- $obj = "./$obj:";
- if ($#deps >= 0) {
- print OUT "$obj \$(srcdir)/$f";
- $len = length("$obj $f");
- for $dt (@deps) {
- $d = $mine{$dt};
- if ($len + length($d) > 70) {
- printf OUT " \\\n\t$d";
- $len = 8 + length($d);
- } else {
- print OUT " $d";
- $len += length($d) + 1;
- }
- }
- print OUT "\n";
- } else {
- print OUT "$obj \$(srcdir)/$f\n";
- }
- $c = $crule;
- $c =~ s@\$\<@\$\(srcdir\)\/$f@g;
- print OUT $c;
- }
- }
- closedir(S);
- close(IN);
- close(OUT);
-
- rename("$srcdir/Makefile.tmp", "$srcdir/Makefile.in");
-}