]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libiberty/maint-tool
Imported gcc-4.4.3
[msp430-gcc.git] / libiberty / maint-tool
index ceeb48dbf39ff14a338e91850f819667fa4323e5..e6e87070d3714c1aac0394d8720527dda68acca6 100644 (file)
@@ -1,7 +1,7 @@
 #!/usr/bin/perl
 # -*- perl -*-
 
-#   Copyright (C) 2001
+#   Copyright (C) 2001, 2007
 #   Free Software Foundation
 #
 # This file is part of the libiberty library.
@@ -17,8 +17,8 @@
 #
 # 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., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
+# 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>
 
@@ -145,7 +145,6 @@ sub undoc {
            next unless /^\# *define/;
            s/\# *define *//;
        }
-       next if $filename =~ /mpw\.c/;
 
        s/ VPARAMS//;
        s/ *\177.*//;
@@ -213,6 +212,12 @@ sub locals_first {
 
 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);
@@ -223,6 +228,14 @@ sub deps {
     }
     $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>) {
@@ -252,10 +265,10 @@ sub deps {
            @deps = sort { &locals_first($a,$b) } keys %scanned;
            $obj = $f;
            $obj =~ s/\.c$/.o/;
-           $obj = "$obj:";
+           $obj = "./$obj:";
            if ($#deps >= 0) {
-               print OUT $obj;
-               $len = length($obj);
+               print OUT "$obj \$(srcdir)/$f";
+               $len = length("$obj $f");
                for $dt (@deps) {
                    $d = $mine{$dt};
                    if ($len + length($d) > 70) {
@@ -267,7 +280,12 @@ sub deps {
                    }
                }
                print OUT "\n";
+           } else {
+               print OUT "$obj \$(srcdir)/$f\n";
            }
+           $c = $crule;
+           $c =~ s@\$\<@\$\(srcdir\)\/$f@g;
+           print OUT $c;
        }
     }
     closedir(S);