]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/bmake/mk/sys/UnixWare.mk
MFV r347989:
[FreeBSD/FreeBSD.git] / contrib / bmake / mk / sys / UnixWare.mk
1 #       $Id: UnixWare.mk,v 1.3 2017/05/05 18:02:17 sjg Exp $
2 #       based on "Id: SunOS.5.sys.mk,v 1.6 2003/09/30 16:42:23 sjg Exp "
3 #       $NetBSD: sys.mk,v 1.19.2.1 1994/07/26 19:58:31 cgd Exp $
4 #       @(#)sys.mk      5.11 (Berkeley) 3/13/91
5
6 OS?=            UnixWare
7 unix?=          We run ${OS}.
8 ROOT_GROUP=     root
9
10 # can't fine one anywhere, so just stop the dependency
11 LIBCRT0= /dev/null
12
13 PATH=/usr/sbin:/usr/bin:/usr/ccs/bin:/usr/ccs/lib:/usr/ucb:/usr/local/bin
14
15 .SUFFIXES: .out .a .ln .o .c ${CXX_SUFFIXES} .F .f .r .y .l .s .S .cl .p .h .sh .m4
16
17 .LIBS:          .a
18
19 # no -X
20 LD_X=
21 LD_x=
22 AR?=            ar
23 ARFLAGS?=       rl
24 RANLIB?=        :
25
26 AS?=            as
27 AS_STDIN?=      -
28 AFLAGS?=
29 COMPILE.s?=     ${AS} ${AFLAGS}
30 LINK.s?=        ${CC} ${AFLAGS} ${LDFLAGS}
31 COMPILE.S?=     ${CC} ${AFLAGS} ${CPPFLAGS} -c
32 LINK.S?=        ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS}
33
34 # at least gcc 2.95 on UnixWare has no internal macro to identify the system
35 .if exists(/usr/local/bin/gcc)
36 CC?=            gcc -pipe -DUNIXWARE
37 DBG?=           -O -g
38 STATIC?=        -static
39 .else
40 CC?=            cc
41 DBG?=           -g
42 STATIC?=        -Bstatic # XXX: don't know about UDK compilers
43 .endif
44 CFLAGS?=        ${DBG}
45 COMPILE.c?=     ${CC} ${CFLAGS} ${CPPFLAGS} -c
46 LINK.c?=        ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
47
48 .if exists(/usr/local/bin/g++)
49 CXX?=           g++ -DUNIXWARE
50 .else
51 CXX?=           c++ # XXX: don't know about UDK compilers
52 .endif
53 CXXFLAGS?=      ${CFLAGS}
54 COMPILE.cc?=    ${CXX} ${CXXFLAGS} ${CPPFLAGS} -c
55 LINK.cc?=       ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}
56
57 CPP?=           /usr/ccs/lib/cpp
58 .if defined(DESTDIR)
59 CPPFLAGS+=      -nostdinc -idirafter ${DESTDIR}/usr/include
60 .endif
61
62 MK_DEP?=        mkdeps.sh -N
63 .if exists(/usr/local/bin/g77)
64 FC?=            g77
65 .else
66 FC?=            f77 # XXX: don't know about UDK compilers
67 .endif
68 FFLAGS?=        -O
69 RFLAGS?=
70 COMPILE.f?=     ${FC} ${FFLAGS} -c
71 LINK.f?=        ${FC} ${FFLAGS} ${LDFLAGS}
72 COMPILE.F?=     ${FC} ${FFLAGS} ${CPPFLAGS} -c
73 LINK.F?=        ${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS}
74 COMPILE.r?=     ${FC} ${FFLAGS} ${RFLAGS} -c
75 LINK.r?=        ${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS}
76
77 INSTALL?=       /usr/ucb/install # BSD install
78
79 LEX?=           lex
80 LFLAGS?=
81 LEX.l?=         ${LEX} ${LFLAGS}
82
83 LD?=            ld
84 LDFLAGS?=
85
86 LIBC?=          ${DESTDIR}/usr/ccs/lib/libc.a
87 LIBCOMPAT?=
88 LIBCRYPT?=      ${DESTDIR}/usr/lib/libcrypt.a
89 LIBCURSES?=     ${DESTDIR}/usr/ccs/lib/libcurses.a
90 LIBDBM?=
91 LIBDES?=
92 LIBEDIT?=
93 LIBGCC?=
94 LIBKDB?=
95 LIBKRB?=
96 LIBKVM?=
97 LIBL?=          ${DESTDIR}/usr/ccs/lib/libl.a
98 LIBM?=          ${DESTDIR}/usr/ccs/lib/libm.a
99 LIBMP?=
100 LIBPC?=
101 LIBPCAP?=
102 LIBPLOT?=
103 LIBRESOLV?=
104 LIBRPCSVC?=     ${DESTDIR}/usr/lib/librpcsvc.a
105 LIBSKEY?=       ${DESTDIR}/usr/lib/libskey.a
106 LIBTERMCAP?=    ${DESTDIR}/usr/ccs/lib/libtermcap.a
107 LIBUTIL?=
108 LIBWRAP?=
109 LIBY?=          ${DESTDIR}/usr/ccs/lib/liby.a
110 LIBZ?=
111
112 LINT?=          lint
113 LINTFLAGS?=     -pF
114
115 LORDER?=        lorder
116
117 NM?=            nm
118
119 PC?=            pc # XXX: UDK probably does not have pc
120 PFLAGS?=
121 COMPILE.p?=     ${PC} ${PFLAGS} ${CPPFLAGS} -c
122 LINK.p?=        ${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
123
124 SHELL?=         sh
125
126 SIZE?=          size
127
128 TSORT?=         tsort
129
130 .if exists(/usr/local/bin/bison)
131 YACC?=          bison -y
132 .else
133 YACC?=          yacc
134 .endif
135 YFLAGS?=        -d
136 YACC.y?=        ${YACC} ${YFLAGS}
137
138 # C
139 .c:
140         ${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
141 .c.o:
142         ${COMPILE.c} ${.IMPSRC}
143 .c.a:
144         ${COMPILE.c} ${.IMPSRC}
145         ${AR} ${ARFLAGS} $@ $*.o
146         rm -f $*.o
147
148 # C++
149 ${CXX_SUFFIXES}:
150         ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
151 ${CXX_SUFFIXES:%=%.o}:
152         ${COMPILE.cc} ${.IMPSRC}
153 ${CXX_SUFFIXES:%=%.a}:
154         ${COMPILE.cc} ${.IMPSRC}
155         ${AR} ${ARFLAGS} $@ $*.o
156         rm -f $*.o
157
158 # Fortran/Ratfor
159 .f:
160         ${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
161 .f.o:
162         ${COMPILE.f} ${.IMPSRC}
163 .f.a:
164         ${COMPILE.f} ${.IMPSRC}
165         ${AR} ${ARFLAGS} $@ $*.o
166         rm -f $*.o
167
168 .F:
169         ${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
170 .F.o:
171         ${COMPILE.F} ${.IMPSRC}
172 .F.a:
173         ${COMPILE.F} ${.IMPSRC}
174         ${AR} ${ARFLAGS} $@ $*.o
175         rm -f $*.o
176
177 .r:
178         ${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
179 .r.o:
180         ${COMPILE.r} ${.IMPSRC}
181 .r.a:
182         ${COMPILE.r} ${.IMPSRC}
183         ${AR} ${ARFLAGS} $@ $*.o
184         rm -f $*.o
185
186 # Pascal
187 .p:
188         ${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
189 .p.o:
190         ${COMPILE.p} ${.IMPSRC}
191 .p.a:
192         ${COMPILE.p} ${.IMPSRC}
193         ${AR} ${ARFLAGS} $@ $*.o
194         rm -f $*.o
195
196 # Assembly
197 .s:
198         ${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
199 .s.o:
200         ${COMPILE.s} ${.IMPSRC}
201 .s.a:
202         ${COMPILE.s} ${.IMPSRC}
203         ${AR} ${ARFLAGS} $@ $*.o
204         rm -f $*.o
205 .S:
206         ${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
207 .S.o:
208         ${COMPILE.S} ${.IMPSRC}
209 .S.a:
210         ${COMPILE.S} ${.IMPSRC}
211         ${AR} ${ARFLAGS} $@ $*.o
212         rm -f $*.o
213
214 # Lex
215 .l:
216         ${LEX.l} ${.IMPSRC}
217         ${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll
218         rm -f lex.yy.c
219 .l.c:
220         ${LEX.l} ${.IMPSRC}
221         mv lex.yy.c ${.TARGET}
222 .l.o:
223         ${LEX.l} ${.IMPSRC}
224         ${COMPILE.c} -o ${.TARGET} lex.yy.c 
225         rm -f lex.yy.c
226
227 # Yacc
228 .y:
229         ${YACC.y} ${.IMPSRC}
230         ${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS}
231         rm -f y.tab.c
232 .y.c:
233         ${YACC.y} ${.IMPSRC}
234         mv y.tab.c ${.TARGET}
235 .y.o:
236         ${YACC.y} ${.IMPSRC}
237         ${COMPILE.c} -o ${.TARGET} y.tab.c
238         rm -f y.tab.c
239
240 # Shell
241 .sh:
242         rm -f ${.TARGET}
243         cp ${.IMPSRC} ${.TARGET}