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