summaryrefslogtreecommitdiff
path: root/ext/aix_mksym.rb
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1999-08-13 05:37:52 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1999-08-13 05:37:52 +0000
commit0a64817fb80016030c03518fb9459f63c11605ea (patch)
tree3ea2e607f9ea08c56830ef7b803cd259e3d67c7f /ext/aix_mksym.rb
parent210367ec889f5910e270d6ea2c7ddb8a8d939e61 (diff)
remove marshal/gtk/kconv
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/aix_mksym.rb')
-rw-r--r--ext/aix_mksym.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/ext/aix_mksym.rb b/ext/aix_mksym.rb
new file mode 100644
index 0000000000..7e1af283dc
--- /dev/null
+++ b/ext/aix_mksym.rb
@@ -0,0 +1,33 @@
+
+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
+extract(open("|/usr/ccs/bin/nm -p ../libruby.a"), "../ruby.imp")