Makefile revision 1.47
1#	from: @(#)Makefile	5.45.1.1 (Berkeley) 5/6/91
2#	$Id: Makefile,v 1.47 1994/10/15 04:57:10 cgd 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
9# Missing: mp.h
10
11FILES=	a.out.h ar.h assert.h bitstring.h bm.h ctype.h db.h dirent.h disktab.h \
12	err.h fnmatch.h fstab.h fts.h glob.h grp.h kvm.h langinfo.h limits.h \
13	locale.h math.h memory.h mpool.h ndbm.h netdb.h nlist.h nl_types.h \
14	paths.h pwd.h ranlib.h regex.h regexp.h resolv.h \
15	search.h setjmp.h sgtty.h signal.h stab.h stddef.h \
16	stdio.h stdlib.h string.h strings.h struct.h sysexits.h time.h \
17	ttyent.h tzfile.h unistd.h utime.h utmp.h vis.h malloc.h \
18	link.h
19
20MFILES=	float.h frame.h stdarg.h varargs.h
21LFILES=	errno.h fcntl.h syslog.h termios.h
22
23DIRS=	arpa protocols rpc rpcsvc
24LDIRS=	dev net netinet netccitt netiso netns nfs sys ufs vm 
25
26NOOBJ=	noobj
27
28# Change SYS_INCLUDE in bsd.own.mk to "symlinks" if you don't want copies
29.include <bsd.own.mk>
30SYS_INCLUDE?=	copies
31
32realinstall:
33	@echo installing ${FILES}
34	@-for i in ${FILES}; do \
35		cmp -s $$i ${DESTDIR}/usr/include/$$i || \
36		    install -c -m 444 $$i ${DESTDIR}/usr/include/$$i; \
37	done
38	@echo installing ${DIRS}
39	@-for i in ${DIRS}; do \
40		install -d -o bin -g bin -m 755 ${DESTDIR}/usr/include/$$i; \
41		(cd $$i; for j in *.[ih]; do \
42			cmp -s $$j ${DESTDIR}/usr/include/$$i/$$j || \
43			install -c -m 444 $$j ${DESTDIR}/usr/include/$$i/$$j; \
44		done); \
45	done
46	@echo installing ${LFILES}
47	@-for i in ${LFILES}; do \
48		rm -f ${DESTDIR}/usr/include/$$i; \
49		ln -s sys/$$i ${DESTDIR}/usr/include/$$i; \
50	done
51	@echo installing ${MFILES}
52	@-for i in ${MFILES}; do \
53		rm -f ${DESTDIR}/usr/include/$$i; \
54		ln -s machine/$$i ${DESTDIR}/usr/include/$$i; \
55	done
56	chown -R ${BINOWN}:${BINGRP} ${DESTDIR}/usr/include
57	find ${DESTDIR}/usr/include -type f | \
58		xargs chmod a=r
59	find ${DESTDIR}/usr/include -type d | \
60		xargs chmod u=rwx,go=rx
61
62beforeinstall:
63	install -d -o bin -g bin -m 755 ${DESTDIR}/usr/include
64
65copies:
66	@echo copies: ${LDIRS}
67	@-for i in ${LDIRS}; do \
68		rm -rf ${DESTDIR}/usr/include/$$i; \
69		install -d -o bin -g bin -m 755 ${DESTDIR}/usr/include/$$i ; \
70	done
71	cd ../sys; \
72	pax -rw -pa -L \
73	    `find ${LDIRS} -type f -name '*.h' '!' -path 'netiso/xebec/*' \
74	    -print` ${DESTDIR}/usr/include
75	rm -rf ${DESTDIR}/usr/include/machine
76	install -d -o bin -g bin -m 755 ${DESTDIR}/usr/include/machine
77	pax -rw -pa -s "|../sys/arch/${MACHINE}/include||" \
78	    ../sys/arch/${MACHINE}/include/*.h \
79	    ${DESTDIR}/usr/include/machine   
80	rm -rf ${DESTDIR}/usr/include/${MACHINE_ARCH}
81	if test ${MACHINE} != ${MACHINE_ARCH} -a \
82	    -d ../sys/arch/${MACHINE_ARCH}/include; then \
83		install -d -o bin -g bin -m 755 \
84    	    	    ${DESTDIR}/usr/include/${MACHINE_ARCH}; \
85		pax -rw -pa -s "|../sys/arch/${MACHINE_ARCH}/include||" \
86		    ../sys/arch/${MACHINE_ARCH}/include/*.h \
87		    ${DESTDIR}/usr/include/${MACHINE_ARCH}; \
88	else \
89		ln -s machine ${DESTDIR}/usr/include/${MACHINE_ARCH}; \
90	fi
91
92symlinks:
93	@echo symlinks: ${LDIRS}
94	@for i in ${LDIRS}; do \
95		rm -rf ${DESTDIR}/usr/include/$$i; \
96		ln -s /sys/$$i ${DESTDIR}/usr/include/$$i; \
97	done
98	rm -rf ${DESTDIR}/usr/include/machine
99	ln -s /sys/arch/${MACHINE}/include ${DESTDIR}/usr/include/machine
100	rm -rf ${DESTDIR}/usr/include/${MACHINE_ARCH}
101	if test ${MACHINE} != ${MACHINE_ARCH} -a \
102	    -d ../sys/arch/${MACHINE_ARCH}/include ; then \
103		ln -s /sys/arch/${MACHINE_ARCH}/include \
104		    ${DESTDIR}/usr/include/${MACHINE_ARCH} ; \
105	else \
106		ln -s machine ${DESTDIR}/usr/include/${MACHINE_ARCH} ; \
107	fi
108
109.include <bsd.prog.mk>
110
111realinstall: ${SYS_INCLUDE}
112