diff --git a/tool/make-snapshot b/tool/make-snapshot index 7868846f77..f278286b70 100755 --- a/tool/make-snapshot +++ b/tool/make-snapshot @@ -205,7 +205,6 @@ def package(vcs, rev, destdir, tmp = nil) end end - srcdir = File.realpath($srcdir) Dir.chdir(tmp) if tmp if !File.directory?(v) @@ -221,7 +220,7 @@ def package(vcs, rev, destdir, tmp = nil) unless /\Ar(\d+) / =~ f.readline abort "Cannot find revision from '#{last_ChangeLog}'" end - vcs.export_changelog(srcdir, url, $1.to_i+1, revision.to_i, "#{v}/ChangeLog") + vcs.export_changelog($1.to_i+1, revision.to_i, "#{v}/ChangeLog") end open("#{v}/revision.h", "wb") {|f| f.puts "#define RUBY_REVISION #{revision}"} diff --git a/tool/vcs.rb b/tool/vcs.rb index 140dcb72ec..fd56b42eca 100644 --- a/tool/vcs.rb +++ b/tool/vcs.rb @@ -117,6 +117,7 @@ class VCS def initialize(path) @srcdir = path + @abs_srcdir = File.realpath(path) super() end @@ -304,7 +305,7 @@ class VCS FileUtils.rm_rf(dir+"/.svn") end - def export_changelog(srcdir, url, from, to, path) + def export_changelog(from, to, path) IO.popen({'TZ' => 'JST-9', 'LANG' => 'C', 'LC_ALL' => 'C'}, %W"svn log -r#{to}:#{from} #{url}") do |r| open(path, 'w') do |w| @@ -388,16 +389,16 @@ class VCS FileUtils.rm_rf("#{dir}/.git") end - def export_changelog(srcdir, url, from, to, path) + def export_changelog(from, to, path) from = IO.pread(%W"git log -n1 --format=format:%H" + ["--grep=^ *git-svn-id: .*@#{from} "], - :chdir => srcdir) + :chdir => @abs_srcdir) to &&= IO.pread(%W"git log -n1 --format=format:%H" + ["--grep=^ *git-svn-id: .*@#{to} "], - :chdir => srcdir) + :chdir => @abs_srcdir) IO.popen({'TZ' => 'JST-9', 'LANG' => 'C', 'LC_ALL' => 'C'}, %W"git log --date=iso-local --topo-order #{from}..#{to}", - :chdir => srcdir) do |r| + :chdir => @abs_srcdir) do |r| open(path, 'w') do |w| IO.copy_stream(r, w) end