mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
8d292a08df
compiled output file name explicitly. * enc/Makefile.in, enc/depend: now makes compiler to put generated files under directories corresnponding to the each source. enc/trans supported. * enc/make_encmake.rb: evaluates depend file before Makefile.in so that the former can influence to CONFIG. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
29 lines
679 B
Ruby
29 lines
679 B
Ruby
#! ./miniruby
|
|
|
|
dir = File.expand_path("../..", __FILE__)
|
|
$:.unshift(File.join(dir, "lib"))
|
|
$:.unshift(dir)
|
|
$:.unshift(".")
|
|
require 'mkmf'
|
|
require 'erb'
|
|
|
|
if /--builtin-encs=/ =~ ARGV[0]
|
|
BUILTIN_ENCS = $'.split.map {|e| File.basename(e, '.*') << '.c'}
|
|
ARGV.shift
|
|
else
|
|
BUILTIN_ENCS = []
|
|
end
|
|
|
|
if File.exist?(depend = File.join($srcdir, "depend"))
|
|
erb = ERB.new(File.read(depend), nil, '%')
|
|
erb.filename = depend
|
|
tmp = erb.result(binding)
|
|
dep = "\n#### depend ####\n\n" << depend_rules(tmp).join
|
|
else
|
|
dep = ""
|
|
end
|
|
mkin = File.read(File.join($srcdir, "Makefile.in"))
|
|
mkin.gsub!(/@(#{CONFIG.keys.join('|')})@/) {CONFIG[$1]}
|
|
open(ARGV[0], 'wb') {|f|
|
|
f.puts mkin, dep
|
|
}
|