Pristine Ack-5.5
[Ack-5.5.git] / lib / vax4 / descr
1 # $Revision: 1.6 $
2 var w=4
3 var p=4
4 var s=2
5 var l=4
6 var f=4
7 var d=8
8 var NAME=vax4
9 var M=vax4
10 var LIB=lib/{M}/tail_
11 var RT=lib/{M}/head_
12 var CPP_F=-D__unix -D__vax
13 var CC_ALIGN=-Vw4.1
14 # 413 align is the default, rom in text
15 var ALIGN=-a0:4 -a1:4 -a2:0x400 -a3:4
16 var C_LIB={EM}/{LIB}cc.1s {EM}/{LIB}cc.2g
17 var OLD_C_LIB={C_LIB}
18 var MACHOPT_F=-ml8
19 name be
20         from .m.g
21         to .s
22         program {EM}/lib.bin/{M}/cg
23         mapflag -gdb GF=-gdb
24         args {GF?} <
25         stdout
26         need .e
27 end
28 name asopt
29         from .s
30         to .so
31         program {EM}/lib.bin/{M}/top
32         args
33         optimizer
34         stdin
35         stdout
36 end
37 name as
38         from .s.so
39         to .o
40         program {EM}/lib.bin/{M}/as
41         args - -o > <
42         prep cond
43 end
44 name led
45         from .o.a
46         to .out
47         program {EM}/lib.bin/em_led
48         mapflag -l* LNAME={EM}/{LIB}*
49         mapflag -N ALIGN=-a0:4 -a1:4 -a2:4 -a3:4
50         mapflag -r ALIGN=-a0:4 -a1:0x400 -a2:4 -a3:4
51         mapflag -ansi C_LIB={EM}/{LIB}ac
52         mapflag -g LIBDB={EM}/{LIB}db
53         args {ALIGN} (.e:{HEAD}= {EM}/{RT}em) \
54                 ({RTS}:.ocm.b={EM}/{RT}cc) \
55                 ({RTS}{ANSI?}:.c={EM}/{RT}cc) \
56                 ({RTS}{ANSI?}:.cansi={EM}/{RT}ac) \
57                 ({RTS}:.mod={EM}/{RT}m2) \
58                 ({RTS}:.f={EM}/{RT}ac) \
59                 ({RTS}:.p.8={EM}/{RT}pc) \
60                 -o > < \
61                 (.8:{TAIL}={EM}/{LIB}a68s) \
62                 (.p.8:{TAIL}={EM}/{LIB}pc) \
63                 (.b:{TAIL}={EM}/{LIB}bc) \
64                 (.ocm:{TAIL}={EM}/{LIB}ocm) \
65                 (.mod:{TAIL}={EM}/{LIB}m2) \
66                 (.f:{TAIL}={EM}/{LIB}f77 {EM}/{LIB}ac) \
67                 (.ocm.b:{TAIL}={OLD_C_LIB}) \
68                 (.c:{TAIL}={C_LIB}) \
69                 {LIBDB?} \
70                 (.e:{TAIL}={EM}/{LIB}em {EM}/{LIB}mon {EM}/lib/{M}/end_em)
71         linker
72 end
73 name cv
74         from .out
75         to .cv
76         program {EM}/lib.bin/{M}/cv
77         mapflag -n CV_ARG=-n
78         args {CV_ARG?} < >
79         outfile a.out
80 end