Makefile revision 1917
1#	From: @(#)Makefile	8.2 (Berkeley) 1/4/94
2#	$Id: Makefile,v 1.7 1994/08/04 20:49:28 wollman Exp $
3#
4# Doing a make install builds /usr/include
5#
6# The ``rm -rf''s used below are safe because rm doesn't follow symbolic
7# links.
8#
9all clean cleandir depend lint tags:
10
11SUBDIR= rpcsvc
12# XXX MISSING:	mp.h
13FILES=	a.out.h ar.h assert.h bitstring.h ctype.h db.h dirent.h disktab.h \
14	err.h fnmatch.h fstab.h fts.h glob.h grp.h histedit.h kvm.h \
15	limits.h link.h \
16	locale.h \
17	math.h memory.h mpool.h ndbm.h netdb.h nlist.h paths.h pwd.h \
18	ranlib.h regex.h regexp.h resolv.h rune.h runetype.h setjmp.h \
19	sgtty.h signal.h stab.h stddef.h stdio.h stdlib.h string.h strings.h \
20	struct.h sysexits.h tar.h time.h ttyent.h tzfile.h unistd.h utime.h \
21	utmp.h vis.h
22
23MFILES=	float.h floatingpoint.h frame.h stdarg.h varargs.h
24LFILES=	errno.h fcntl.h syslog.h termios.h
25
26DIRS=	arpa protocols rpc
27LDIRS=	net netccitt netinet netiso netns nfs sys vm
28LUDIR=	ufs
29UDIRS=	ufs/ffs ufs/lfs ufs/mfs ufs/ufs
30
31NOOBJ=	noobj
32
33# Define SHARED to indicate whether you want symbolic links to the system
34# source (``symlinks''), or a separate copy (``copies''); (latter useful
35# in environments where it's not possible to keep /sys publicly readable)
36# SHARED=	copies
37SHARED?=	symlinks
38
39beforeinstall: ${SHARED}
40	@echo installing ${FILES}
41	@-for i in ${FILES}; do \
42		cmp -s $$i ${DESTDIR}/usr/include/$$i > /dev/null 2>&1 || \
43		    install -c -o ${BINOWN} -g ${BINGRP} -m 444 $$i \
44		    ${DESTDIR}/usr/include/$$i; \
45	done
46	@echo installing ${DIRS}
47	@-for i in ${DIRS}; do \
48		if [ ! -d ${DESTDIR}/usr/include/$$i ]; \
49		then \
50			mkdir ${DESTDIR}/usr/include/$$i; \
51		fi; \
52		chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
53		chmod 755 ${DESTDIR}/usr/include/$$i; \
54		(cd $$i; for j in *.[ih]; do \
55			cmp -s $$j ${DESTDIR}/usr/include/$$i/$$j > \
56			    /dev/null 2>&1 || \
57			    install -c -o ${BINOWN} -g ${BINGRP} -m 444 $$j \
58			    ${DESTDIR}/usr/include/$$i/$$j; \
59		done); \
60	done
61	@echo installing ${LFILES}
62	@-for i in ${LFILES}; do \
63		rm -f ${DESTDIR}/usr/include/$$i; \
64		ln -s sys/$$i ${DESTDIR}/usr/include/$$i; \
65		chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
66	done
67	@echo installing ${MFILES}
68	@-for i in ${MFILES}; do \
69		rm -f ${DESTDIR}/usr/include/$$i; \
70		ln -s machine/$$i ${DESTDIR}/usr/include/$$i; \
71		chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
72	done
73
74copies:
75	rm -rf ${DESTDIR}/usr/include/${LUDIR}
76	@-for i in ${LDIRS} ${UDIRS}; do				\
77		echo ${SHARED} $$i;					\
78		rm -rf ${DESTDIR}/usr/include/$$i;			\
79		cd ../sys;						\
80		tar cf - $$i/*.h |					\
81			(cd ${DESTDIR}/usr/include; tar xpfB -);	\
82		chown -R ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i;\
83		chmod -R 444 ${DESTDIR}/usr/include/$$i;		\
84		chmod 755 ${DESTDIR}/usr/include/$$i;			\
85	done
86	rm -rf ${DESTDIR}/usr/include/machine
87	mkdir ${DESTDIR}/usr/include/machine
88	cd ../sys/${MACHINE}/include && \
89	    tar cf - *.h | (cd ${DESTDIR}/usr/include/machine; tar xpfB -);
90	chown -R ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/machine;
91	chmod -R 444 ${DESTDIR}/usr/include/machine;
92	chmod 755 ${DESTDIR}/usr/include/machine;
93
94symlinks:
95	@for i in ${LDIRS} ${LUDIR}; do					\
96		echo ${SHARED} $$i;					\
97		rm -rf ${DESTDIR}/usr/include/$$i;			\
98		ln -s /sys/$$i ${DESTDIR}/usr/include/$$i;		\
99		chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i;	\
100	done
101	rm -rf ${DESTDIR}/usr/include/machine
102	ln -s /sys/${MACHINE}/include ${DESTDIR}/usr/include/machine
103
104.include <bsd.prog.mk>
105