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
7300313Ssjg.SUFFIXES: .out .a .ln .o .s .S .c ${CXX_SUFFIXES} .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
87246149SsjgNM?=		nm
88246149Ssjg
89246149SsjgPC?=		pc
90246149SsjgPFLAGS?=
91246149SsjgCOMPILE.p?=	${PC} ${PFLAGS} ${CPPFLAGS} -c
92246149SsjgLINK.p?=	${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
93246149Ssjg
94246149SsjgSHELL?=		sh
95246149Ssjg
96246149SsjgSIZE?=		size
97246149Ssjg
98246149SsjgTSORT?=		tsort -q
99246149Ssjg
100246149SsjgYACC?=		bison -y
101246149SsjgYFLAGS?=	-d
102246149SsjgYACC.y?=	${YACC} ${YFLAGS}
103246149Ssjg
104246149Ssjg# C
105246149Ssjg.c:
106246149Ssjg	${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
107246149Ssjg.c.o:
108246149Ssjg	${COMPILE.c} ${.IMPSRC}
109246149Ssjg.c.a:
110246149Ssjg	${COMPILE.c} ${.IMPSRC}
111246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
112246149Ssjg	rm -f $*.o
113246149Ssjg
114246149Ssjg# C++
115300313Ssjg${CXX_SUFFIXES}:
116246149Ssjg	${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
117300313Ssjg${CXX_SUFFIXES:%=%.o}:
118246149Ssjg	${COMPILE.cc} ${.IMPSRC}
119300313Ssjg${CXX_SUFFIXES:%=%.a}:
120246149Ssjg	${COMPILE.cc} ${.IMPSRC}
121246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
122246149Ssjg	rm -f $*.o
123246149Ssjg
124246149Ssjg# Fortran/Ratfor
125246149Ssjg.f:
126246149Ssjg	${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
127246149Ssjg.f.o:
128246149Ssjg	${COMPILE.f} ${.IMPSRC}
129246149Ssjg.f.a:
130246149Ssjg	${COMPILE.f} ${.IMPSRC}
131246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
132246149Ssjg	rm -f $*.o
133246149Ssjg
134246149Ssjg.F:
135246149Ssjg	${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
136246149Ssjg.F.o:
137246149Ssjg	${COMPILE.F} ${.IMPSRC}
138246149Ssjg.F.a:
139246149Ssjg	${COMPILE.F} ${.IMPSRC}
140246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
141246149Ssjg	rm -f $*.o
142246149Ssjg
143246149Ssjg.r:
144246149Ssjg	${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
145246149Ssjg.r.o:
146246149Ssjg	${COMPILE.r} ${.IMPSRC}
147246149Ssjg.r.a:
148246149Ssjg	${COMPILE.r} ${.IMPSRC}
149246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
150246149Ssjg	rm -f $*.o
151246149Ssjg
152246149Ssjg# Pascal
153246149Ssjg.p:
154246149Ssjg	${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
155246149Ssjg.p.o:
156246149Ssjg	${COMPILE.p} ${.IMPSRC}
157246149Ssjg.p.a:
158246149Ssjg	${COMPILE.p} ${.IMPSRC}
159246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
160246149Ssjg	rm -f $*.o
161246149Ssjg
162246149Ssjg# Assembly
163246149Ssjg.s:
164246149Ssjg	${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
165246149Ssjg.s.o:
166246149Ssjg	${COMPILE.s} -o ${.TARGET} ${.IMPSRC} 
167246149Ssjg.s.a:
168246149Ssjg	${COMPILE.s} ${.IMPSRC}
169246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
170246149Ssjg	rm -f $*.o
171246149Ssjg.S:
172246149Ssjg	${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
173246149Ssjg.S.o:
174246149Ssjg	${COMPILE.S} ${.IMPSRC}
175246149Ssjg.S.a:
176246149Ssjg	${COMPILE.S} ${.IMPSRC}
177246149Ssjg	${AR} ${ARFLAGS} $@ $*.o
178246149Ssjg	rm -f $*.o
179246149Ssjg
180246149Ssjg# Lex
181246149Ssjg.l:
182246149Ssjg	${LEX.l} ${.IMPSRC}
183246149Ssjg	${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll
184246149Ssjg	rm -f lex.yy.c
185246149Ssjg.l.c:
186246149Ssjg	${LEX.l} ${.IMPSRC}
187246149Ssjg	mv lex.yy.c ${.TARGET}
188246149Ssjg.l.o:
189246149Ssjg	${LEX.l} ${.IMPSRC}
190246149Ssjg	${COMPILE.c} -o ${.TARGET} lex.yy.c 
191246149Ssjg	rm -f lex.yy.c
192246149Ssjg
193246149Ssjg# Yacc
194246149Ssjg.y:
195246149Ssjg	${YACC.y} ${.IMPSRC}
196246149Ssjg	${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS}
197246149Ssjg	rm -f y.tab.c
198246149Ssjg.y.c:
199246149Ssjg	${YACC.y} ${.IMPSRC}
200246149Ssjg	mv y.tab.c ${.TARGET}
201246149Ssjg.y.o:
202246149Ssjg	${YACC.y} ${.IMPSRC}
203246149Ssjg	${COMPILE.c} -o ${.TARGET} y.tab.c
204246149Ssjg	rm -f y.tab.c
205246149Ssjg
206246149Ssjg# Shell
207246149Ssjg.sh:
208246149Ssjg	rm -f ${.TARGET}
209246149Ssjg	cp ${.IMPSRC} ${.TARGET}
210