Make RUBY_REVISION full length
This commit is contained in:
parent
d819d97cf0
commit
a205e24747
@ -45,6 +45,7 @@ parser = OptionParser.new {|opts|
|
|||||||
}
|
}
|
||||||
parser.parse! rescue abort "#{File.basename(Program)}: #{$!}\n#{parser}"
|
parser.parse! rescue abort "#{File.basename(Program)}: #{$!}\n#{parser}"
|
||||||
|
|
||||||
|
vcs = nil
|
||||||
@output =
|
@output =
|
||||||
case @output
|
case @output
|
||||||
when :changed, nil
|
when :changed, nil
|
||||||
@ -54,7 +55,8 @@ parser.parse! rescue abort "#{File.basename(Program)}: #{$!}\n#{parser}"
|
|||||||
when :revision_h
|
when :revision_h
|
||||||
Proc.new {|last, changed, modified, branch, title|
|
Proc.new {|last, changed, modified, branch, title|
|
||||||
[
|
[
|
||||||
"#define RUBY_REVISION #{last.dump}",
|
"#define RUBY_REVISION #{vcs.short_revision(last).dump}",
|
||||||
|
"#define RUBY_FULL_REVISION #{last.dump}",
|
||||||
if branch
|
if branch
|
||||||
e = '..'
|
e = '..'
|
||||||
limit = 16
|
limit = 16
|
||||||
|
21
tool/vcs.rb
21
tool/vcs.rb
@ -224,6 +224,10 @@ class VCS
|
|||||||
self.class.revision_name(rev)
|
self.class.revision_name(rev)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def short_revision(rev)
|
||||||
|
self.class.short_revision(rev)
|
||||||
|
end
|
||||||
|
|
||||||
class SVN < self
|
class SVN < self
|
||||||
register(".svn")
|
register(".svn")
|
||||||
COMMAND = ENV['SVN'] || 'svn'
|
COMMAND = ENV['SVN'] || 'svn'
|
||||||
@ -232,6 +236,10 @@ class VCS
|
|||||||
"r#{rev}"
|
"r#{rev}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.short_revision(rev)
|
||||||
|
rev
|
||||||
|
end
|
||||||
|
|
||||||
def self.get_revisions(path, srcdir = nil)
|
def self.get_revisions(path, srcdir = nil)
|
||||||
if srcdir and local_path?(path)
|
if srcdir and local_path?(path)
|
||||||
path = File.join(srcdir, path)
|
path = File.join(srcdir, path)
|
||||||
@ -392,10 +400,9 @@ class VCS
|
|||||||
|
|
||||||
def self.get_revisions(path, srcdir = nil)
|
def self.get_revisions(path, srcdir = nil)
|
||||||
gitcmd = [COMMAND]
|
gitcmd = [COMMAND]
|
||||||
last = cmd_read_at(srcdir, [[*gitcmd, 'rev-parse', '--short=10', 'HEAD']]).rstrip
|
last = cmd_read_at(srcdir, [[*gitcmd, 'rev-parse', 'HEAD']]).rstrip
|
||||||
log = cmd_read_at(srcdir, [[*gitcmd, 'log', '-n1', '--date=iso', *path]])
|
log = cmd_read_at(srcdir, [[*gitcmd, 'log', '-n1', '--date=iso', *path]])
|
||||||
changed = log[/\Acommit (\h+)/, 1]
|
changed = log[/\Acommit (\h+)/, 1]
|
||||||
changed = changed[0, last.size]
|
|
||||||
modified = log[/^Date:\s+(.*)/, 1]
|
modified = log[/^Date:\s+(.*)/, 1]
|
||||||
branch = cmd_read_at(srcdir, [gitcmd + %W[symbolic-ref --short HEAD]])
|
branch = cmd_read_at(srcdir, [gitcmd + %W[symbolic-ref --short HEAD]])
|
||||||
if branch.empty?
|
if branch.empty?
|
||||||
@ -413,7 +420,11 @@ class VCS
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.revision_name(rev)
|
def self.revision_name(rev)
|
||||||
rev
|
short_revision(rev)
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.short_revision(rev)
|
||||||
|
rev[0, 10]
|
||||||
end
|
end
|
||||||
|
|
||||||
def initialize(*)
|
def initialize(*)
|
||||||
@ -533,6 +544,10 @@ class VCS
|
|||||||
SVN.revision_name(rev)
|
SVN.revision_name(rev)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.short_revision(rev)
|
||||||
|
SVN.short_revision(rev)
|
||||||
|
end
|
||||||
|
|
||||||
def format_changelog(r, path)
|
def format_changelog(r, path)
|
||||||
open(path, 'w') do |w|
|
open(path, 'w') do |w|
|
||||||
sep = "-"*72
|
sep = "-"*72
|
||||||
|
@ -33,7 +33,7 @@ const int ruby_api_version[] = {
|
|||||||
STRINGIZE(RUBY_VERSION_MINOR) "." \
|
STRINGIZE(RUBY_VERSION_MINOR) "." \
|
||||||
STRINGIZE(RUBY_VERSION_TEENY) ""
|
STRINGIZE(RUBY_VERSION_TEENY) ""
|
||||||
const char ruby_version[] = RUBY_VERSION;
|
const char ruby_version[] = RUBY_VERSION;
|
||||||
const char ruby_revision[] = RUBY_REVISION;
|
const char ruby_revision[] = RUBY_FULL_REVISION;
|
||||||
const char ruby_release_date[] = RUBY_RELEASE_DATE;
|
const char ruby_release_date[] = RUBY_RELEASE_DATE;
|
||||||
const char ruby_platform[] = RUBY_PLATFORM;
|
const char ruby_platform[] = RUBY_PLATFORM;
|
||||||
const int ruby_patchlevel = RUBY_PATCHLEVEL;
|
const int ruby_patchlevel = RUBY_PATCHLEVEL;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user