xref: /freebsd/lib/csu/i386/Makefile (revision 2546665afcaf0d53dc2c7058fee96354b3680f5a)
1#	from: @(#)Makefile	5.6 (Berkeley) 5/22/91
2# $FreeBSD$
3
4CFLAGS+=        -DLIBC_SCCS -fno-omit-frame-pointer \
5		-I${.CURDIR}/../../libc/include
6OBJS=		crt0.o c++rt0.o gcrt0.o scrt0.o sgcrt0.o
7CLEANFILES=	a.out crt0.o.tmp c++rt0.o.tmp gcrt0.o.tmp scrt0.o.tmp \
8		sgcrt0.o.tmp
9
10all: ${OBJS}
11
12crt0.o: crt0.c
13	${CC} ${CFLAGS} -c -DCRT0 -DDYNAMIC ${.CURDIR}/crt0.c -o ${.TARGET}
14	${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
15	@mv ${.TARGET}.tmp ${.TARGET}
16
17c++rt0.o: c++rt0.c
18	${CC} ${CFLAGS} -fpic -c ${.CURDIR}/c++rt0.c
19	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
20	@mv ${.TARGET}.tmp ${.TARGET}
21
22#
23# gcrt0.o doesn't really depend on crt0.o, but this is the easiest way
24# to get the dependencies mostly correct.
25#
26gcrt0.o: crt0.o
27	${CC} ${CFLAGS} -c -DMCRT0 -DDYNAMIC ${.CURDIR}/crt0.c -o ${.TARGET}
28	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
29	@mv ${.TARGET}.tmp ${.TARGET}
30
31# dependencies fudged as for gcrt0.o
32scrt0.o: crt0.o
33	${CC} ${CFLAGS} -c -DCRT0 ${.CURDIR}/crt0.c -o ${.TARGET}
34	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
35	@mv ${.TARGET}.tmp ${.TARGET}
36
37# dependencies fudged as for gcrt0.o
38sgcrt0.o: scrt0.o
39	${CC} ${CFLAGS} -c -DMCRT0 ${.CURDIR}/crt0.c -o ${.TARGET}
40	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
41	@mv ${.TARGET}.tmp ${.TARGET}
42
43realinstall:
44	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 ${OBJS} \
45		${DESTDIR}${LIBDIR}
46
47depend:	.depend
48
49.depend:	crt0.c c++rt0.c
50	rm -f .depend
51	mkdep ${CFLAGS} -DCRT0 -DDYNAMIC ${.CURDIR}/crt0.c
52	mkdep -a ${CFLAGS} ${.CURDIR}/c++rt0.c
53
54cleandepend:
55	rm -f .depend
56
57lint tags:
58
59.include <bsd.prog.mk>
60