File: lib-uses.sh

package info (click to toggle)
xconq 7.2.2-2
  • links: PTS
  • area: main
  • in suites: slink
  • size: 8,296 kB
  • ctags: 9,199
  • sloc: ansic: 107,849; sh: 2,108; perl: 2,057; makefile: 1,177; sed: 161; csh: 50; awk: 49; lisp: 39
file content (47 lines) | stat: -rwxr-xr-x 1,331 bytes parent folder | download | duplicates (2)
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
#!/bin/sh

# This script counts the references to GDL symbols in all Xconq library games.

savedir=`pwd`

/bin/rm -rf /tmp/xc7

mkdir -p /tmp/xc7/lib
mkdir -p /tmp/xc7/test

# Filter out non-symbol stuff in library and test files.

cd $1/..

for libfile in lib/*.g lib/*.imf test/*.g test/*.imf ; do
	sed -e 's/"[^"]*"/ /g' $libfile | sed -e 's/;.*$//g' | tr '() ' '\012' >/tmp/xc7/$libfile
done

# Count uses of keywords.

# We need to be in an empty directory so "m*" doesn't get expanded into
# a list of file names.

if [ ! -d ../empty ] ; then
	mkdir ../empty
fi

cd $savedir/../empty

for file in keyword.def action.def history.def plan.def task.def goal.def ; do
	for sym in `grep DEF_ $1/../kernel/${file} | sed -e 's/^[^"]*"\([^"]*\)".*$/\1/' | grep -v '^zz-'` ; do
		sym=$sym
		rslt=`fgrep -c -x ${sym} /tmp/xc7/*/*.g /tmp/xc7/*/*.imf | grep -v ':0$' | sed -e 's/:1$//' | sed -e 's,/tmp/xc7/,,' | tr '\012' ' '`
		echo ${sym} '	' ${file} '	' ${rslt}
	done
done

for file in utype.def mtype.def ttype.def table.def gvar.def ; do
	for sym in `grep DEF_ $1/../kernel/${file} | sed -e 's/^[^"]*"\([^"]*\)".*$/\1/' | grep -v '^zz-'` ; do
		rslt=`fgrep -c -x ${sym} /tmp/xc7/*/*.g /tmp/xc7/*/*.imf | grep -v ':0$' | sed -e 's/:1$//' | sed -e 's,/tmp/xc7/,,' | tr '\012' ' '`
		echo ${sym} '	' ${file} '	' ${rslt}
	done
done