File: makevcdef

package info (click to toggle)
qdbm 1.8.78-15
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 7,076 kB
  • sloc: ansic: 31,454; cpp: 3,623; perl: 2,167; java: 2,079; ruby: 1,690; makefile: 1,315; javascript: 627; sh: 396
file content (48 lines) | stat: -rwxr-xr-x 834 bytes parent folder | download | duplicates (15)
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#! /bin/sh

#================================================================
# makevcdef
# Generator of module definition file for Visual C++
#================================================================


# check arguments
file="$1"
if [ -f "$file" ]
then
  true
else
  printf 'usage: makevcdef library\n' 1>&2
  exit 1
fi


# show headers
name=`echo $file | sed -e 's/^lib//' -e 's/\..*//'`
printf 'EXPORTS\r\n'


# show variables
nm -g "$file" | grep ' [BDR] '  | sed 's/.* [BDR] //' | grep -v '^_' | sort | uniq |
while read name
do
  num=$((num + 1))
  printf '  %s = %s DATA\r\n' "$name" "$name"
done


# show functions
nm -g "$file" | grep ' T '  | sed 's/.* T //' | grep -v '^_' | sort | uniq |
while read name
do
  num=$((num + 1))
  printf '  %s = %s\r\n' "$name" "$name"
done


# exit normally
exit 0



# END OF FILE