[project @ 2000-07-26 20:47:21 by michaelw]
authormichaelw <unknown>
Wed, 26 Jul 2000 20:47:21 +0000 (20:47 +0000)
committermichaelw <unknown>
Wed, 26 Jul 2000 20:47:21 +0000 (20:47 +0000)
* backup files are only generated, if there is an old dependency file.

* if $Makefile is "-", print dependencies to STDOUT *without* creating
  a backup file.

*** MERGE with 4.08.1 ***

ghc/utils/mkdependHS/mkdependHS.prl

index 6548101..47ec677 100644 (file)
@@ -176,41 +176,60 @@ foreach $sf (@Src_files) {
     }
 }
 
-
 #
-# Create backup version of output file.
-# 
-if ( ! -f $Makefile ) {
-   # truncate() may not be implemented, so we
-   # play it safe here.
-   local(*TRUNC);
-   open(TRUNC,"> $Makefile.bak") && close(TRUNC);
+# print dependencies
+#
+if ( $Makefile eq "-" ) {
+   #
+   # print dependencies to STDOUT
+   #
+   &print_deps();
+} elsif ( ! -f $Makefile ) {
+   #
+   # $Makefile does not exist, just print the deps.
+   #
+   open(NMKF,"> $Makefile") || die "$Pgm: can't open $Makefile: $!\n";
+   select(NMKF);
+   &print_deps();
+   close(NMKF);
 } else {
-   rename($Makefile,"$Makefile.bak");
-}
-# now copy Makefile.bak into Makefile, rm'ing old dependencies
-# and adding the new
-open(OMKF,"< $Makefile.bak") || die "$Pgm: can't open $Makefile.bak: $!\n";
-open(NMKF,"> $Makefile") || die "$Pgm: can't open $Makefile: $!\n";
-select(NMKF);
-$_ = <OMKF>;
-while ($_ && $_ ne $Begin_magic_str) { # copy through, 'til Begin_magic_str
-    print $_;
-    $_ = <OMKF>;
-}
-while ($_ && $_ ne $End_magic_str) { # delete 'til End_magic_str
-    $_ = <OMKF>;
-}
-# insert dependencies
-print "$Begin_magic_str", @Depend_lines, $End_magic_str || die "Failed to write out dependencies ($!)";
+   #
+   # Create backup version of output file, then generate a new one.
+   # 
+   rename($Makefile,"$Makefile.bak") || die "$Pgm: can't rename $Makefile: $!\n";
+   
+   # now copy Makefile.bak into Makefile, rm'ing old dependencies
+   # and adding the new
+   open(OMKF,"< $Makefile.bak") || die "$Pgm: can't open $Makefile.bak: $!\n";
+   open(NMKF,"> $Makefile") || die "$Pgm: can't open $Makefile: $!\n";
+   select(NMKF);
+
+   $_ = <OMKF>;
+   while ($_ && $_ ne $Begin_magic_str) { # copy through, 'til Begin_magic_str
+       print $_;
+       $_ = <OMKF>;
+   }
+   while ($_ && $_ ne $End_magic_str) { # delete 'til End_magic_str
+       $_ = <OMKF>;
+   }
 
-while (<OMKF>) { # copy the rest through
-    print $_ || die "Failed to write out dependencies ($!)";
+   &print_deps();
+   
+   while (<OMKF>) { # copy the rest through
+       print $_ || die "Failed to write out dependencies ($!)";
+   }
+   close(NMKF) || exit(1);
+   close(OMKF) || exit(1);
 }
-close(NMKF) || exit(1);
-close(OMKF) || exit(1);
+
 exit 0;
 
+
+sub print_deps {
+    # insert dependencies
+    print "$Begin_magic_str", @Depend_lines, $End_magic_str || die "Failed to write out dependencies ($!)";
+}
+
 sub mangle_command_line_args {
     local(@Args) = @_;