summaryrefslogtreecommitdiff
path: root/tool
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-17 12:56:10 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-17 12:56:10 +0000
commit63491598c6870c3097833d2a4666f38098b6b238 (patch)
tree1d192150ecd73eacda6255dcde096efd15ea5ca8 /tool
parent8cfce15387f3ff9d922e60b3ff53cf874215fdf5 (diff)
version.h: include branch name
* tool/file2lastrev.rb, tool/vcs.rb (get_revisions): define RUBY_BRANCH_NAME from the current branch name. * version.h (RUBY_REVISION_STR): include the current branch name not "trunk" always. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'tool')
-rwxr-xr-xtool/file2lastrev.rb5
-rw-r--r--tool/vcs.rb9
2 files changed, 10 insertions, 4 deletions
diff --git a/tool/file2lastrev.rb b/tool/file2lastrev.rb
index 616c5f7fe4..de4b928606 100755
--- a/tool/file2lastrev.rb
+++ b/tool/file2lastrev.rb
@@ -47,7 +47,7 @@ rescue VCS::NotFoundError => e
abort "#{File.basename(Program)}: #{e.message}" unless @suppress_not_found
else
begin
- last, changed, modified = vcs.get_revisions(ARGV.shift)
+ last, changed, modified, branch = vcs.get_revisions(ARGV.shift)
rescue => e
abort "#{File.basename(Program)}: #{e.message}" unless @suppress_not_found
exit false
@@ -58,7 +58,8 @@ case @output
when :changed, nil
puts changed
when :revision_h
- puts "#define RUBY_REVISION #{changed.to_i}"
+ puts "#define RUBY_REVISION #{changed || 0}"
+ puts "#define RUBY_BRANCH_NAME #{branch.dump}" if branch
when :doxygen
puts "r#{changed}/r#{last}"
when :modified
diff --git a/tool/vcs.rb b/tool/vcs.rb
index d7559a7406..9371ae287d 100644
--- a/tool/vcs.rb
+++ b/tool/vcs.rb
@@ -135,7 +135,8 @@ class VCS
info_xml = IO.pread(%W"svn info --xml #{path}")
_, last, _, changed, _ = info_xml.split(/revision="(\d+)"/)
modified = info_xml[/<date>([^<>]*)/, 1]
- [last, changed, modified]
+ branch = info_xml[%r'<relative-url>\^/(?:branches/|tags/)?([^<>]*)', 1]
+ [last, changed, modified, branch]
end
def url
@@ -205,7 +206,11 @@ class VCS
changed = last
end
modified = log[/^Date:\s+(.*)/, 1]
- [last, changed, modified]
+ cmd = %W[git]
+ cmd.push("-C", srcdir) if srcdir
+ cmd.push("symbolic-ref", "HEAD")
+ branch = IO.pread(cmd)[%r'\A(?:refs/heads/)?(.*)', 1]
+ [last, changed, modified, branch]
end
Branch = Struct.new(:to_str)