From 4623c289b26b1de9c2fc4df72767821e7d75fb02 Mon Sep 17 00:00:00 2001 From: visor Date: Mon, 13 Feb 2012 22:44:52 +0900 Subject: [PATCH] fix. --- bin/MKID.pl | 49 ++++++++++++++++++++++++++----------------------- bin/MKTABLE.pl | 42 +++++++++++------------------------------- bin/MKWTABLE.pl | 35 ++++++++++++++++++++--------------- ml/Makefile | 6 +++--- 4 files changed, 60 insertions(+), 72 deletions(-) diff --git a/bin/MKID.pl b/bin/MKID.pl index e5697b5..a6aab57 100755 --- a/bin/MKID.pl +++ b/bin/MKID.pl @@ -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; diff --git a/bin/MKTABLE.pl b/bin/MKTABLE.pl index cfd9271..3097b16 100755 --- a/bin/MKTABLE.pl +++ b/bin/MKTABLE.pl @@ -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; diff --git a/bin/MKWTABLE.pl b/bin/MKWTABLE.pl index 76ce92c..0392297 100755 --- a/bin/MKWTABLE.pl +++ b/bin/MKWTABLE.pl @@ -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; diff --git a/ml/Makefile b/ml/Makefile index 650e744..b3fe971 100644 --- a/ml/Makefile +++ b/ml/Makefile @@ -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 -- 2.11.0