From 30e90a335d15a0b7766ea0f0c981a523d5ba0be8 Mon Sep 17 00:00:00 2001 From: akr Date: Sun, 10 Aug 2008 09:10:58 +0000 Subject: [PATCH] * tool/transcode-tblgen.rb: record checksum of transcode-tblgen.rb itself. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ tool/transcode-tblgen.rb | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3020d7a799..172b4d8e86 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Aug 10 18:09:16 2008 Tanaka Akira + + * tool/transcode-tblgen.rb: record checksum of + transcode-tblgen.rb itself. + Sun Aug 10 12:34:41 2008 Nobuyoshi Nakada * config.guess ({powerpc-apple,i586-pc}-haiku): re-applied r18403. diff --git a/tool/transcode-tblgen.rb b/tool/transcode-tblgen.rb index 4e7cbc516f..3459bd8bf1 100644 --- a/tool/transcode-tblgen.rb +++ b/tool/transcode-tblgen.rb @@ -565,7 +565,11 @@ dir = File.dirname(arg) $:.unshift dir unless $:.include? dir src = File.read(arg) src.force_encoding("ascii-8bit") if src.respond_to? :force_encoding +this_script = File.read(__FILE__) +this_script.force_encoding("ascii-8bit") if this_script.respond_to? :force_encoding + base_signature = "/* autogenerated. */\n" +base_signature << "/* #{make_signature(File.basename(__FILE__), this_script)} */\n" base_signature << "/* #{make_signature(File.basename(arg), src)} */\n" if !force_mode && output_filename && File.readable?(output_filename) @@ -574,14 +578,14 @@ if !force_mode && output_filename && File.readable?(output_filename) old_signature.each_line {|line| if %r{/\* src="([0-9a-z_.-]+)",} =~ line name = $1 - next if name == File.basename(arg) + next if name == File.basename(arg) || name == File.basename(__FILE__) path = File.join(dir, name) if File.readable? path chk_signature << "/* #{make_signature(name, File.read(path))} */\n" end end } - if old_signature == chk_signature && File.mtime(__FILE__) < File.mtime(output_filename) + if old_signature == chk_signature now = Time.now File.utime(now, now, output_filename) STDERR.puts "already up-to-date: #{output_filename}" if VERBOSE_MODE