]> git.lizzy.rs Git - plan9front.git/blob - sys/src/cmd/troff/unansi
fix filetype detecton by suffix so that multiple dots dont confuse it. (thanks kvik)
[plan9front.git] / sys / src / cmd / troff / unansi
1 # The awk program cvt will convert the relatively sterotyped ansi c
2 # in this troff distribution into older-style c, by munging function
3 # declarations.
4
5 # You will also have to edit fns.h, by
6 #       sed 's/(.*)/()/g' fns.h >foo; mv foo fns.h
7 # check this before doing the move!
8
9 # you will also have to make some editing changes in
10 # tdef.h in the Contab structure: s/(void)/()/
11 # you may have to fix up some function declarations
12 # in n4.c, the ones with (*f)(Tchar).
13
14 # you will surely also have header files to deal with.
15
16 # the most obvious cases are dealt with by the following
17 # commands.  make sure you do this stuff on a copy!
18
19 # function prototypes in n8.c probably belong in fns.h. readpats(void) must
20 # be readpats() before cvt runs.
21
22 sed \
23         -e 's/(void)/()/' \
24         -e 's/(Tchar[^)]*);/();/' \
25         -e 's/(char[^)]*);/();/' \
26         -e 's/(int[^)]*);/();/' \
27 n8.c >foo
28 mv foo n8.c
29
30 for i in *.c
31 do
32         cvt $i >foo
33         mv foo $i
34 done
35
36 sed 's/(.*)/()/g' fns.h >foo
37 mv foo fns.h
38
39 sed -e 's/(void)/()/g' -e '/stdlib/d' tdef.h >foo
40 mv foo tdef.h
41
42 # Compliers may not approve of void *setbrk() in fns.h and n3.c.
43
44 sed 's/^void\*[         ]setbrk/char*   setbrk/' fns.h >foo
45 mv foo fns.h
46
47 sed 's/^void \*setbrk/char *setbrk/' n3.c >foo
48 mv foo n3.c
49