xref: /original-bsd/include/Makefile (revision 2bb802fc)
1#
2# Copyright (c) 1980 Regents of the University of California.
3# All rights reserved.  The Berkeley software License Agreement
4# specifies the terms and conditions for redistribution.
5#
6#	@(#)Makefile	5.21 (Berkeley) 88/07/14
7#
8# Doing a make install builds /usr/include
9#
10# Define SHARED to indicate whether you want
11# symbolic links to the system source (``symlinks''),
12# or a separate copy (``copies'').
13# (latter useful in environments where it's
14# not possible to keep /sys publicly readable)
15#
16# The ``rm -rf''s used below are safe because rm doesn't
17# follow symbolic links.
18#
19DESTDIR=
20SUBDIRS=arpa pascal protocols
21STD=	a.out.h ar.h assert.h ctype.h curses.h ndbm.h disktab.h \
22	fcntl.h fstab.h ftw.h grp.h lastlog.h math.h memory.h mp.h mtab.h \
23	netdb.h nlist.h pcc.h pwd.h ranlib.h regexp.h resolv.h setjmp.h \
24	sgtty.h stab.h stdio.h string.h strings.h struct.h \
25	sysexits.h time.h ttyent.h tzfile.h utmp.h varargs.h vfont.h
26LINKS=	errno.h signal.h syslog.h
27
28NETDIRS=	net netimp netinet netns
29TAHOEDIRS=	tahoe tahoemath tahoevba tahoeif
30VAXDIRS=	vax vaxmba vaxuba vaxif
31SHARED=	symlinks
32TAGSFILE=tags
33
34all:
35
36install: ${SHARED}
37	-for i in ${STD}; do \
38		cmp -s $$i ${DESTDIR}/usr/include/$$i || \
39		    install -c -m 444 $$i ${DESTDIR}/usr/include/$$i; \
40	done
41	-for i in ${SUBDIRS}; do \
42		if [ ! -d ${DESTDIR}/usr/include/$$i ]; \
43		then \
44			mkdir ${DESTDIR}/usr/include/$$i; \
45		fi; \
46		(cd $$i; for j in *.[ih]; do \
47			cmp -s $$j ${DESTDIR}/usr/include/$$i/$$j || \
48			install -c -m 444 $$j ${DESTDIR}/usr/include/$$i/$$j; \
49		done); \
50	done
51	-cmp -s Makefile.install ${DESTDIR}/usr/include/Makefile || \
52	    install -c -m 444 Makefile.install ${DESTDIR}/usr/include/Makefile
53	-for i in ${LINKS}; do \
54		rm -f ${DESTDIR}/usr/include/$$i; \
55		ln -s sys/$$i ${DESTDIR}/usr/include/$$i; \
56	done
57	rm -f ${DESTDIR}/usr/include/machine
58	ln -s ./${MACHINE} ${DESTDIR}/usr/include/machine
59	rm -f ${DESTDIR}/usr/include/frame.h
60	ln -s machine/frame.h ${DESTDIR}/usr/include/frame.h
61
62symlinks: ${MACHINE}.symlinks
63	rm -rf ${DESTDIR}/usr/include/sys
64	-if [ ! -s ${DESTDIR}/usr/include/sys ]; \
65	then \
66		ln -s /sys/h ${DESTDIR}/usr/include/sys; \
67	else \
68		echo ${DESTDIR}/usr/include/sys not removed; \
69	fi
70
71tahoe.symlinks:
72	-for i in ${NETDIRS} ${TAHOEDIRS}; do \
73		rm -rf ${DESTDIR}/usr/include/$$i; \
74		if [ ! -s ${DESTDIR}/usr/include/$$i ]; \
75		then \
76			ln -s /sys/$$i ${DESTDIR}/usr/include/$$i; \
77		else \
78			echo ${DESTDIR}/usr/include/$$i not removed; \
79		fi; \
80	done
81
82vax.symlinks:
83	-for i in ${NETDIRS} ${VAXDIRS}; do \
84		rm -rf ${DESTDIR}/usr/include/$$i; \
85		if [ ! -s ${DESTDIR}/usr/include/$$i ]; \
86		then \
87			ln -s /sys/$$i ${DESTDIR}/usr/include/$$i; \
88		else \
89			echo ${DESTDIR}/usr/include/$$i not removed; \
90		fi; \
91	done
92
93copies: ${MACHINE}.copies
94	rm -rf ${DESTDIR}/usr/include/sys;
95	mkdir ${DESTDIR}/usr/include/sys;
96	chmod 775 ${DESTDIR}/usr/include/sys;
97	-(cd /sys/h; tar cf - *.h | (cd ${DESTDIR}/usr/include/sys; tar xpfB -))
98
99tahoe.copies:
100	-for i in ${NETDIRS} ${TAHOEDIRS}; do \
101		rm -rf ${DESTDIR}/usr/include/$$i; \
102		cd /sys; \
103		tar cf - $$i/*.h | (cd ${DESTDIR}/usr/include; tar xpfB -); \
104	done
105
106vax.copies:
107	-for i in ${NETDIRS} ${VAXDIRS}; do \
108		rm -rf ${DESTDIR}/usr/include/$$i; \
109		cd /sys; \
110		tar cf - $$i/*.h | (cd ${DESTDIR}/usr/include; tar xpfB -); \
111	done
112
113tags:
114	cwd=/usr/include; \
115	for i in ${STD} ${LINKS}; do \
116		ctags -a -f ${TAGSFILE} $$cwd/$$i; \
117	done
118
119clean:
120	rm -f tags
121
122depend:
123