diff options
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/rsp.awk | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/scripts/rsp.awk b/scripts/rsp.awk new file mode 100644 index 00000000..d157e249 --- /dev/null +++ b/scripts/rsp.awk @@ -0,0 +1,34 @@ +function line() { + if (match($0, /\.d$/)) + read($0) + else + libs[++n] = $0 +} + +function read(name) { + for (;;) { + ret = getline < name + if (ret < 0) { + print "failed to read line from " name > "/proc/self/fd/2" + exit(1) + } + if (ret == 0) + break + line() + } + close(name) +} + +{line()} + +END { + for (i = n; i > 0; --i) { + lib = libs[i] + if (lib in seen) + continue + seen[lib] = 1 + uniq[++m] = lib + } + for (i = m; i > 0; --i) + print uniq[i] +} |
