зеркало из https://github.com/github/ruby.git
* instruby.rb (parse_args, install): added --strip option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
29a6650d86
Коммит
9da504bbae
16
ChangeLog
16
ChangeLog
|
@ -1,11 +1,6 @@
|
||||||
Mon Jan 12 11:59:19 2009 Koichi Sasada <ko1@atdot.net>
|
Mon Jan 12 12:43:55 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
* gc.c (ruby_xmalloc, ruby_xrealloc, ruby_xfree):
|
* instruby.rb (parse_args, install): added --strip option.
|
||||||
enable to use them without GVL.
|
|
||||||
if GC is invoked, acquire GVL during GC.
|
|
||||||
if NoMemoryError is raised, acquire GVL and raise it.
|
|
||||||
|
|
||||||
Mon Jan 12 12:39:56 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
|
||||||
|
|
||||||
* instruby.rb (install_recursive): skips the directory if matched
|
* instruby.rb (install_recursive): skips the directory if matched
|
||||||
to a no_install pattern ending with a file separator.
|
to a no_install pattern ending with a file separator.
|
||||||
|
@ -15,6 +10,13 @@ Mon Jan 12 12:33:56 2009 Tanaka Akira <akr@fsij.org>
|
||||||
* ext/socket/mkconstants.rb: don't use bytesize because 1.9 dependent.
|
* ext/socket/mkconstants.rb: don't use bytesize because 1.9 dependent.
|
||||||
[ruby-core:21266]
|
[ruby-core:21266]
|
||||||
|
|
||||||
|
Mon Jan 12 11:59:19 2009 Koichi Sasada <ko1@atdot.net>
|
||||||
|
|
||||||
|
* gc.c (ruby_xmalloc, ruby_xrealloc, ruby_xfree):
|
||||||
|
enable to use them without GVL.
|
||||||
|
if GC is invoked, acquire GVL during GC.
|
||||||
|
if NoMemoryError is raised, acquire GVL and raise it.
|
||||||
|
|
||||||
Mon Jan 12 10:39:19 2009 Koichi Sasada <ko1@atdot.net>
|
Mon Jan 12 10:39:19 2009 Koichi Sasada <ko1@atdot.net>
|
||||||
|
|
||||||
* thread.c: fix comment (terminology: Global VM Lock).
|
* thread.c: fix comment (terminology: Global VM Lock).
|
||||||
|
|
35
instruby.rb
35
instruby.rb
|
@ -31,6 +31,7 @@ def parse_args(argv = ARGV)
|
||||||
$prog_mode = 0755
|
$prog_mode = 0755
|
||||||
$dir_mode = nil
|
$dir_mode = nil
|
||||||
$script_mode = nil
|
$script_mode = nil
|
||||||
|
$strip = false
|
||||||
$cmdtype = ('bat' if File::ALT_SEPARATOR == '\\')
|
$cmdtype = ('bat' if File::ALT_SEPARATOR == '\\')
|
||||||
mflags = []
|
mflags = []
|
||||||
opt = OptionParser.new
|
opt = OptionParser.new
|
||||||
|
@ -64,6 +65,7 @@ def parse_args(argv = ARGV)
|
||||||
opt.on('--installed-list [FILENAME]') {|name| $installed_list = name}
|
opt.on('--installed-list [FILENAME]') {|name| $installed_list = name}
|
||||||
opt.on('--rdoc-output [DIR]') {|dir| $rdocdir = dir}
|
opt.on('--rdoc-output [DIR]') {|dir| $rdocdir = dir}
|
||||||
opt.on('--cmd-type=TYPE', %w[bat cmd plain]) {|cmd| $cmdtype = (cmd unless cmd == 'plain')}
|
opt.on('--cmd-type=TYPE', %w[bat cmd plain]) {|cmd| $cmdtype = (cmd unless cmd == 'plain')}
|
||||||
|
opt.on('--[no-]strip') {|strip| $strip = strip}
|
||||||
|
|
||||||
opt.order!(argv) do |v|
|
opt.order!(argv) do |v|
|
||||||
case v
|
case v
|
||||||
|
@ -131,9 +133,28 @@ def install?(*types, &block)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def strip_file(file)
|
||||||
|
if !defined?($strip_command) and (cmd = CONFIG["STRIP"])
|
||||||
|
case cmd
|
||||||
|
when "", "true", ":" then return
|
||||||
|
else $strip_command = Shellwords.shellwords(cmd)
|
||||||
|
end
|
||||||
|
elsif !$strip_command
|
||||||
|
return
|
||||||
|
end
|
||||||
|
system(*($strip_command + [file]))
|
||||||
|
end
|
||||||
|
|
||||||
def install(src, dest, options = {})
|
def install(src, dest, options = {})
|
||||||
|
options = options.clone
|
||||||
|
strip = options.delete(:strip)
|
||||||
options[:preserve] = true
|
options[:preserve] = true
|
||||||
super(src, with_destdir(dest), options)
|
d = with_destdir(dest)
|
||||||
|
super(src, d, options)
|
||||||
|
if strip and cmd =
|
||||||
|
d = File.join(d, File.basename(src)) if $made_dirs[dest]
|
||||||
|
strip_file(d)
|
||||||
|
end
|
||||||
if $installed_list
|
if $installed_list
|
||||||
dest = File.join(dest, File.basename(src)) if $made_dirs[dest]
|
dest = File.join(dest, File.basename(src)) if $made_dirs[dest]
|
||||||
$installed_list.puts dest
|
$installed_list.puts dest
|
||||||
|
@ -268,17 +289,17 @@ install?(:local, :arch, :bin, :'bin-arch') do
|
||||||
|
|
||||||
makedirs [bindir, libdir, archlibdir]
|
makedirs [bindir, libdir, archlibdir]
|
||||||
|
|
||||||
install ruby_install_name+exeext, bindir, :mode => $prog_mode
|
install ruby_install_name+exeext, bindir, :mode => $prog_mode, :strip => $strip
|
||||||
if rubyw_install_name and !rubyw_install_name.empty?
|
if rubyw_install_name and !rubyw_install_name.empty?
|
||||||
install rubyw_install_name+exeext, bindir, :mode => $prog_mode
|
install rubyw_install_name+exeext, bindir, :mode => $prog_mode, :strip => $strip
|
||||||
end
|
end
|
||||||
if File.exist? goruby_install_name+exeext
|
if File.exist? goruby_install_name+exeext
|
||||||
install goruby_install_name+exeext, bindir, :mode => $prog_mode
|
install goruby_install_name+exeext, bindir, :mode => $prog_mode, :strip => $strip
|
||||||
end
|
end
|
||||||
if enable_shared and dll != lib
|
if enable_shared and dll != lib
|
||||||
install dll, bindir, :mode => $prog_mode
|
install dll, bindir, :mode => $prog_mode, :strip => $strip
|
||||||
end
|
end
|
||||||
install lib, libdir, :mode => $prog_mode unless lib == arc
|
install lib, libdir, :mode => $prog_mode, :strip => $strip unless lib == arc
|
||||||
install arc, libdir, :mode => $data_mode
|
install arc, libdir, :mode => $data_mode
|
||||||
install "rbconfig.rb", archlibdir, :mode => $data_mode
|
install "rbconfig.rb", archlibdir, :mode => $data_mode
|
||||||
if CONFIG["ARCHFILE"]
|
if CONFIG["ARCHFILE"]
|
||||||
|
@ -300,7 +321,7 @@ if $extout
|
||||||
puts "installing extension objects"
|
puts "installing extension objects"
|
||||||
makedirs [archlibdir, sitearchlibdir, vendorarchlibdir, archhdrdir]
|
makedirs [archlibdir, sitearchlibdir, vendorarchlibdir, archhdrdir]
|
||||||
noinst = %w[-*] | (CONFIG["no_install_files"] || "").split
|
noinst = %w[-*] | (CONFIG["no_install_files"] || "").split
|
||||||
install_recursive("#{extout}/#{CONFIG['arch']}", archlibdir, :no_install => noinst, :mode => $prog_mode)
|
install_recursive("#{extout}/#{CONFIG['arch']}", archlibdir, :no_install => noinst, :mode => $prog_mode, :strip => $strip)
|
||||||
install_recursive("#{extout}/include/#{CONFIG['arch']}", archhdrdir, :glob => "*.h", :mode => $data_mode)
|
install_recursive("#{extout}/include/#{CONFIG['arch']}", archhdrdir, :glob => "*.h", :mode => $data_mode)
|
||||||
end
|
end
|
||||||
install?(:ext, :comm, :'ext-comm') do
|
install?(:ext, :comm, :'ext-comm') do
|
||||||
|
|
Загрузка…
Ссылка в новой задаче