1246149Ssjg#	$NetBSD: Darwin.sys.mk,v 1.3 2003/02/16 09:44:41 grant Exp $
2246149Ssjg#	@(#)sys.mk	8.2 (Berkeley) 3/21/94
3246149Ssjg
4246149SsjgOS=		Darwin
5246149Ssjgunix?=		We run ${OS}.
6246149Ssjg
7246149Ssjg.SUFFIXES: .out .a .ln .o .s .S .c .cc .cpp .cxx .C .F .f .r .y .l .cl .p .h
8246149Ssjg.SUFFIXES: .sh .m4 .dylib
9246149Ssjg
10246149Ssjg.LIBS:		.a .dylib
11246149Ssjg
12246149SsjgSHLIBEXT =	.dylib
13246149SsjgHOST_LIBEXT =	.dylib
14246149SsjgDSHLIBEXT =	.dylib
15246149Ssjg
16246149SsjgAR?=		ar
17246149SsjgARFLAGS?=	rl
18246149SsjgRANLIB =
19246149Ssjg
20246149SsjgAS?=		as
21246149SsjgAFLAGS?=
22246149SsjgCOMPILE.s?=	${AS} ${AFLAGS}
23246149SsjgLINK.s?=	${CC} ${AFLAGS} ${LDFLAGS}
24246149SsjgCOMPILE.S?=	${CC} ${AFLAGS} ${CPPFLAGS} -c
25246149SsjgLINK.S?=	${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS}
26246149Ssjg
27246149Ssjg.if exists(/usr/bin/gcc)
28246149SsjgCC?=		gcc -pipe
29246149Ssjg.else
30246149SsjgCC?=		cc -pipe
31246149Ssjg.endif
32246149SsjgDBG?=		-O2
33246149SsjgCFLAGS?=	${DBG}
34246149SsjgCOMPILE.c?=	${CC} ${CFLAGS} ${CPPFLAGS} -c
35246149SsjgLINK.c?=	${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
36246149Ssjg
37246149Ssjg.if exists(/usr/bin/g++)
38246149SsjgCXX?=		g++
39246149Ssjg.else
40246149SsjgCXX?=		c++
41246149Ssjg.endif
42246149SsjgCXXFLAGS?=	${CFLAGS}
43246149SsjgCOMPILE.cc?=	${CXX} ${CXXFLAGS} ${CPPFLAGS} -c
44246149SsjgLINK.cc?=	${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}
45246149Ssjg
46246149SsjgOBJC?=		${CC}
47246149SsjgOBJCFLAGS?=	${CFLAGS}
48246149SsjgCOMPILE.m?=	${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c
49246149SsjgLINK.m?=	${OBJC} ${OBJCFLAGS} ${CPPFLAGS} ${LDFLAGS}
50246149Ssjg
51246149SsjgCPP?=		cpp
52246149SsjgNOLINT=		1
53246149SsjgCPPFLAGS?=
54246149Ssjg
55246149SsjgMK_DEP?=	mkdeps.sh -N
56246149Ssjg
57246149SsjgFC?=		f77
58246149SsjgFFLAGS?=	-O
59246149SsjgRFLAGS?=
60246149SsjgCOMPILE.f?=	${FC} ${FFLAGS} -c
61246149SsjgLINK.f?=	${FC} ${FFLAGS} ${LDFLAGS}
62246149SsjgCOMPILE.F?=	${FC} ${FFLAGS} ${CPPFLAGS} -c
63246149SsjgLINK.F?=	${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS}
64246149SsjgCOMPILE.r?=	${FC} ${FFLAGS} ${RFLAGS} -c
65246149SsjgLINK.r?=	${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS}
66246149Ssjg
67246149SsjgINSTALL?=	install
68246149Ssjg
69246149SsjgLEX?=		lex
70246149SsjgLFLAGS?=
71246149SsjgLEX.l?=		${LEX} ${LFLAGS}
72246149Ssjg
73246149SsjgLD?=		ld
74246149SsjgLDFLAGS?=
75246149Ssjg
76246149SsjgSHLIB_TEENY = 0
77246149SsjgSHLIB_MINOR = 0
78246149Ssjg
79246149SsjgMKPICLIB = no
80246149SsjgLIBEXT = .dylib
81246149Ssjg
82246149SsjgLINT?=		lint
83246149SsjgLINTFLAGS?=	-chapbx
84246149Ssjg
85246149SsjgLORDER?=	lorder
86246149Ssjg
87246149SsjgMAKE?=		bmake
88246149Ssjg
89246149SsjgNM?=		nm
90246149Ssjg
91246149SsjgPC?=		pc
92246149SsjgPFLAGS?=
93246149SsjgCOMPILE.p?=	${PC} ${PFLAGS} ${CPPFLAGS} -c
94246149SsjgLINK.p?=	${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
95246149Ssjg
96246149SsjgSHELL?=		sh
97246149Ssjg
98246149SsjgSIZE?=		size
99246149Ssjg
100246149SsjgTSORT?=		tsort -q
101246149Ssjg
102246149SsjgYACC?=		bison -y
103246149SsjgYFLAGS?=	-d
104246149SsjgYACC.y?=	${YACC} ${YFLAGS}
105246149Ssjg
106246149Ssjg# C
107246149Ssjg.c:
108246149Ssjg	${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
109246149Ssjg.c.o:
110246149Ssjg	${COMPILE.c} ${.IMPSRC}
111246149Ssjg.c.a:
112246149Ssjg	${COMPILE.c} ${.IMPSRC}
113246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
114246149Ssjg	rm -f $*.o
115246149Ssjg
116246149Ssjg# C++
117246149Ssjg.cc:
118246149Ssjg	${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
119246149Ssjg.cc.o:
120246149Ssjg	${COMPILE.cc} ${.IMPSRC}
121246149Ssjg.cc.a:
122246149Ssjg	${COMPILE.cc} ${.IMPSRC}
123246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
124246149Ssjg	rm -f $*.o
125246149Ssjg
126246149Ssjg.C:
127246149Ssjg	${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
128246149Ssjg.C.o:
129246149Ssjg	${COMPILE.cc} ${.IMPSRC}
130246149Ssjg.C.a:
131246149Ssjg	${COMPILE.cc} ${.IMPSRC}
132246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
133246149Ssjg	rm -f $*.o
134246149Ssjg
135246149Ssjg# Fortran/Ratfor
136246149Ssjg.f:
137246149Ssjg	${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
138246149Ssjg.f.o:
139246149Ssjg	${COMPILE.f} ${.IMPSRC}
140246149Ssjg.f.a:
141246149Ssjg	${COMPILE.f} ${.IMPSRC}
142246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
143246149Ssjg	rm -f $*.o
144246149Ssjg
145246149Ssjg.F:
146246149Ssjg	${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
147246149Ssjg.F.o:
148246149Ssjg	${COMPILE.F} ${.IMPSRC}
149246149Ssjg.F.a:
150246149Ssjg	${COMPILE.F} ${.IMPSRC}
151246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
152246149Ssjg	rm -f $*.o
153246149Ssjg
154246149Ssjg.r:
155246149Ssjg	${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
156246149Ssjg.r.o:
157246149Ssjg	${COMPILE.r} ${.IMPSRC}
158246149Ssjg.r.a:
159246149Ssjg	${COMPILE.r} ${.IMPSRC}
160246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
161246149Ssjg	rm -f $*.o
162246149Ssjg
163246149Ssjg# Pascal
164246149Ssjg.p:
165246149Ssjg	${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
166246149Ssjg.p.o:
167246149Ssjg	${COMPILE.p} ${.IMPSRC}
168246149Ssjg.p.a:
169246149Ssjg	${COMPILE.p} ${.IMPSRC}
170246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
171246149Ssjg	rm -f $*.o
172246149Ssjg
173246149Ssjg# Assembly
174246149Ssjg.s:
175246149Ssjg	${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
176246149Ssjg.s.o:
177246149Ssjg	${COMPILE.s} -o ${.TARGET} ${.IMPSRC} 
178246149Ssjg.s.a:
179246149Ssjg	${COMPILE.s} ${.IMPSRC}
180246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
181246149Ssjg	rm -f $*.o
182246149Ssjg.S:
183246149Ssjg	${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
184246149Ssjg.S.o:
185246149Ssjg	${COMPILE.S} ${.IMPSRC}
186246149Ssjg.S.a:
187246149Ssjg	${COMPILE.S} ${.IMPSRC}
188246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
189246149Ssjg	rm -f $*.o
190246149Ssjg
191246149Ssjg# Lex
192246149Ssjg.l:
193246149Ssjg	${LEX.l} ${.IMPSRC}
194246149Ssjg	${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll
195246149Ssjg	rm -f lex.yy.c
196246149Ssjg.l.c:
197246149Ssjg	${LEX.l} ${.IMPSRC}
198246149Ssjg	mv lex.yy.c ${.TARGET}
199246149Ssjg.l.o:
200246149Ssjg	${LEX.l} ${.IMPSRC}
201246149Ssjg	${COMPILE.c} -o ${.TARGET} lex.yy.c 
202246149Ssjg	rm -f lex.yy.c
203246149Ssjg
204246149Ssjg# Yacc
205246149Ssjg.y:
206246149Ssjg	${YACC.y} ${.IMPSRC}
207246149Ssjg	${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS}
208246149Ssjg	rm -f y.tab.c
209246149Ssjg.y.c:
210246149Ssjg	${YACC.y} ${.IMPSRC}
211246149Ssjg	mv y.tab.c ${.TARGET}
212246149Ssjg.y.o:
213246149Ssjg	${YACC.y} ${.IMPSRC}
214246149Ssjg	${COMPILE.c} -o ${.TARGET} y.tab.c
215246149Ssjg	rm -f y.tab.c
216246149Ssjg
217246149Ssjg# Shell
218246149Ssjg.sh:
219246149Ssjg	rm -f ${.TARGET}
220246149Ssjg	cp ${.IMPSRC} ${.TARGET}
221