diff options
Diffstat (limited to 'ext/aix_mksym.rb')
-rw-r--r-- | ext/aix_mksym.rb | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/ext/aix_mksym.rb b/ext/aix_mksym.rb new file mode 100644 index 0000000000..ae7cf4e5d1 --- /dev/null +++ b/ext/aix_mksym.rb @@ -0,0 +1,35 @@ + +def uniq(data) + last=nil + data.delete_if do |name| + if last == name + TRUE + else + last = name + FALSE + end + end +end + +def extract(nm, out) + data = nm.readlines.collect{|line| + line = line.split + case line[1] + when "B", "D" + line[0] + else + next + end + }.compact!.sort! + uniq(data) + exp = open(out, "w") + exp.printf "#!\n" + for line in data + exp.printf "%s\n", line + end + exp.close + nm.close +end +if older("../ruby.imp", "../miniruby") + extract(open("|/usr/ccs/bin/nm -p ../*.o"), "../ruby.imp") +end |