OSDN Git Service

fix.
authorvisor <visor@users.sourceforge.jp>
Mon, 13 Feb 2012 13:44:52 +0000 (22:44 +0900)
committervisor <visor@users.sourceforge.jp>
Mon, 13 Feb 2012 13:44:52 +0000 (22:44 +0900)
bin/MKID.pl
bin/MKTABLE.pl
bin/MKWTABLE.pl
ml/Makefile

index e5697b5..a6aab57 100755 (executable)
@@ -2,47 +2,50 @@
 
 my @ID;
 my @SRCS;
-my $target = "ml-id.h";
-my $targetTmp = "$target-$$";
-my $FileList = $ARGV[0];
+#my $target = "ml-id.h";
+#my $targetTmp = "$target-$$";
 my %CClass = ('MLFunc' => 1);
+my $Target;
 
-foreach (@ARGV) {
+while ($_ = shift) {
     if (/^-/) {
-       if (/^-[DI]/) {
+       if ($_ eq "-o") {
+           $Target = shift;
+       } elsif (/^-[DI]/) {
 #          push (@CPPFLAGS, $_);
        }
     } else {
        if (-f $_) {
            push (@SRCS, $_);
-       } elsif (-f "../ext/$_") {
-           push (@SRCS, "../ext/$_");
-       } elsif (-f "../modules/$_") {
-           push (@SRCS, "../modules/$_");
+#      } elsif (-f "../ext/$_") {
+#          push (@SRCS, "../ext/$_");
+#      } elsif (-f "../modules/$_") {
+#          push (@SRCS, "../modules/$_");
        } else {
            die "$_: not found\n";
        }
     }
 }
 
-if (-f $target) {
-    my $targetTime = &mtime ($target);
-    my $f = undef;
-    foreach (@SRCS) {
-       if ($targetTime < &mtime ($_)) {
-           $f = 1;
-           last;
-       }
-    }
-    if (! $f) {
-       exit;
-    }
-}
+#if (-f $target) {
+#    my $targetTime = &mtime ($target);
+#    my $f = undef;
+#    foreach (@SRCS) {
+#      if ($targetTime < &mtime ($_)) {
+#          $f = 1;
+#          last;
+#      }
+#    }
+#    if (! $f) {
+#      exit;
+#    }
+#}
 
 foreach (@SRCS) {
     &p ($_);
 }
 
+my $targetTmp = ".tmp-$Target";
 open (OUT, "> $targetTmp");
 print OUT "#ifndef ML_ID_H\n";
 print OUT "#define ML_ID_H\n\n";
@@ -60,7 +63,7 @@ close (OUT);
 #@#    rename ($targetTmp, $target);
 #@#    print "$target\n";
 #@#}
-rename ($targetTmp, $target);
+rename ($targetTmp, $Target);
 
 exit;
 
index cfd9271..3097b16 100755 (executable)
@@ -9,47 +9,33 @@ my @WFN;
 my @HDR;
 my @SRCS;
 my @CPPFLAGS;
-my $target = "ftable.cc";
-my $targetTmp = "$target-$$";
+#my $target = "ftable.cc";
+#my $targetTmp = "$target-$$";
+my $Target;
+my $TargetTmp;
 
-foreach (@ARGV) {
+while ($_ = shift) {
     if (/^-/) {
-       if (/^-[DI]/) {
+       if ($_ eq "-o") {
+           $Target = shift;
+           $TargetTmp = ".tmp-$Target";
+       } elsif (/^-[DI]/) {
            push (@CPPFLAGS, $_);
        }
     } else {
-#@#    push (@SRCS, $_);
        if (-f $_) {
            push (@SRCS, $_);
-       } elsif (-f "../ext/$_") {
-           push (@SRCS, "../ext/$_");
-       } elsif (-f "../modules/$_") {
-           push (@SRCS, "../modules/$_");
        } else {
            die "$_: not found\n";
        }
     }
 }
 
-if (-f $target) {
-    my $targetTime = &mtime ($target);
-    my $f = undef;
-    foreach (@SRCS) {
-       if ($targetTime < &mtime ($_)) {
-           $f = 1;
-           last;
-       }
-    }
-    if (! $f) {
-       exit;
-    }
-}
-
 foreach (@SRCS) {
     &p ($_);
 }
 
-open (OUT, "> $targetTmp");
+open (OUT, "> $TargetTmp");
 print OUT "#include \"ftable.h\"\n";
 print OUT "#include \"mftable.h\"\n";
 foreach (@HDR) {
@@ -63,13 +49,7 @@ print OUT "//============================================================\n";
 &wikiftable;
 close (OUT);
 
-#@#if (-f $target && ! cmpFile ($target, $targetTmp)) {
-#@#    unlink ($targetTmp);
-#@#} else {
-#@#    rename ($targetTmp, $target);
-#@#    print "$target\n";
-#@#}
-rename ($targetTmp, $target);
+rename ($TargetTmp, $Target);
 
 exit;
 
index 76ce92c..0392297 100755 (executable)
@@ -5,15 +5,25 @@ my @FN;
 my @FN2;
 my @HDR;
 my @SRCS;
-my $target = "wikitable.cc";
-my $targetTmp = "$target-$$";
+#my $target = "wikitable.cc";
+#my $targetTmp = "$target-$$";
+my $Target;
+my $TargetTmp;
 
-opendir (DIR, "../wiki");
-@a = readdir (DIR);
-closedir (DIR);
-foreach (@a) {
-    if (/^wiki.*\.cc$/) {
-       push (@SRCS, "../wiki/$_");
+while ($_ = shift) {
+    if (/^-/) {
+       if ($_ eq "-o") {
+           $Target = shift;
+           $TargetTmp = ".tmp-$Target";
+       } elsif (/^-[DI]/) {
+           push (@CPPFLAGS, $_);
+       }
+    } else {
+       if (-f $_) {
+           push (@SRCS, $_);
+       } else {
+           die "$_: not found\n";
+       }
     }
 }
 
@@ -21,7 +31,7 @@ foreach (@SRCS) {
     &p ($_);
 }
 
-open (OUT, "> $targetTmp");
+open (OUT, "> $TargetTmp");
 print OUT "#include \"wikitable.h\"\n";
 foreach (@HDR) {
     print OUT "#include \"$_\"\n";
@@ -59,12 +69,7 @@ print OUT "WikiFuncTable  GWikiFuncTable (wftable);\n";
 print OUT "//============================================================\n";
 close (OUT);
 
-if (-f $target && ! cmpFile ($target, $targetTmp)) {
-    unlink ($targetTmp);
-} else {
-    rename ($targetTmp, $target);
-    print "$target\n";
-}
+rename ($TargetTmp, $Target);
 
 exit;
 
index 650e744..b3fe971 100644 (file)
@@ -124,12 +124,12 @@ dist: ${PROG}
 beforedepend: ml-id.h ftable.cc wikitable.cc
 
 ftable.cc: ${MSRCS} ../Makefile.src
-       ../bin/MKTABLE.pl ${CFLAGS} ${MSRCS}
+       ../bin/MKTABLE.pl -o ftable.cc ${CFLAGS} ${.ALLSRC:M*.cc}
 
 wikitable.cc: wikicmd.cc wikiline.cc
-       ../bin/MKWTABLE.pl
+       ../bin/MKWTABLE.pl -o wikitable.cc ${.ALLSRC:M*.cc}
 
 ml-id.h: ${MSRCS} ../Makefile.src
-       ../bin/MKID.pl ${MSRCS}
+       ../bin/MKID.pl -o ml-id.h ${.ALLSRC:M*.cc}
 
 .include <bsd.prog.mk>