1:
2:
3: dir = File.expand_path("../..", __FILE__)
4: $:.unshift(File.join(dir, "lib"))
5: $:.unshift(dir)
6: $:.unshift(".")
7: require 'mkmf'
8: require 'erb'
9:
10: if /--builtin-encs=/ =~ ARGV[0]
11: BUILTIN_ENCS = $'.split.map {|e| File.basename(e, '.*') << '.c'}
12: ARGV.shift
13: else
14: BUILTIN_ENCS = []
15: end
16:
17: if File.exist?(depend = File.join($srcdir, "depend"))
18: erb = ERB.new(File.read(depend), nil, '%')
19: erb.filename = depend
20: tmp = erb.result(binding)
21: dep = "\n#### depend ####\n\n" << depend_rules(tmp).join
22: else
23: dep = ""
24: end
25: mkin = File.read(File.join($srcdir, "Makefile.in"))
26: mkin.gsub!(/@(#{CONFIG.keys.join('|')})@/) {CONFIG[$1]}
27: open(ARGV[0], 'wb') {|f|
28: f.puts mkin, dep
29: }