File: aix_mksym.rb

package info (click to toggle)
ruby 1.4.3-6
  • links: PTS
  • area: main
  • in suites: potato
  • size: 4,068 kB
  • ctags: 7,509
  • sloc: ansic: 60,668; ruby: 23,106; yacc: 4,122; sh: 1,753; lisp: 997; makefile: 597; sed: 68; awk: 36; tcl: 31; perl: 17; python: 6
file content (33 lines) | stat: -rw-r--r-- 520 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
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")