xref: /original-bsd/lib/libc/Makefile (revision f0fd5f8a)
1#	@(#)Makefile	4.4	{Berkeley}	82/12/17
2#
3#	The system has two monitoring schemes, utilizing either ``prof''
4#	or ``gprof''. DFLMON determines the default profiler; mon.o
5#	specifies that ``prof'' is the default, gmon.o specifies that
6#	``gprof'' is the default.
7#
8DESTDIR=
9INSTALL=install -m 644
10DFLMON=	mon.o
11ALL=	csu sys gen stdio net
12
13libc.a libc_p.a: ${ALL}
14	cd csu; make
15	cd sys; make
16	cd gen; make
17	cd stdio; make
18	cd net; make
19	-mkdir tmp
20	cd tmp; ar x ../sys/syslib
21	cd tmp; ar x ../gen/genlib
22	cd tmp; ar x ../stdio/stdiolib
23	cd tmp; ar x ../net/netlib
24	ls tmp/*.o | sort -t/ +1 > t1
25	ar cr libc.a `lorder \`cat t1\` | tsort` csu/${DFLMON}
26	ar ma flsbuf.o libc.a exit.o
27	rm -f t1 tmp/*
28	cd tmp; ar x ../sys/syslib_p
29	cd tmp; ar x ../gen/genlib_p
30	cd tmp; ar x ../stdio/stdiolib_p
31	cd tmp; ar x ../net/netlib_p
32	ls tmp/*.o | sort -t/ +1 > t1
33	ar cr libc_p.a `lorder \`cat t1\` | tsort` csu/${DFLMON}
34	ar ma flsbuf.o libc_p.a exit.o
35	rm -rf t1 tmp
36
37clean:
38	for i in ${ALL}; do cd $$i; make clean; cd ..; done
39	rm -f t1 *.o
40
41errlst.o: gen/errlst.c
42	cc -S gen/errlst.c
43	ed - <gen/:errfix errlst.s
44	as -o errlst.o errlst.s
45	rm errlst.s
46
47install: libc.a libc_p.a
48	${INSTALL} libc.a ${DESTDIR}/lib/libc.a
49	ranlib ${DESTDIR}/lib/libc.a
50	${INSTALL} libc_p.a ${DESTDIR}/usr/lib/libc_p.a
51	ranlib ${DESTDIR}/usr/lib/libc_p.a
52	cd csu; make DESTDIR=${DESTDIR} install
53