-#
-# Copyright (c) 1980 Regents of the University of California.
-# All rights reserved. The Berkeley software License Agreement
-# specifies the terms and conditions for redistribution.
-#
-# @(#)Makefile 5.20 (Berkeley) 88/03/24
+# @(#)Makefile 5.41 (Berkeley) %G%
#
# Doing a make install builds /usr/include
#
-# Define SHARED to indicate whether you want
-# symbolic links to the system source (``symlinks''),
-# or a separate copy (``copies'').
-# (latter useful in environments where it's
-# not possible to keep /sys publicly readable)
+# The ``rm -rf''s used below are safe because rm doesn't follow symbolic
+# links.
#
-# The ``rm -rf''s used below are safe because rm doesn't
-# follow symbolic links.
-#
-DESTDIR=
-SUBDIRS=arpa pascal protocols
-STD= a.out.h ar.h assert.h ctype.h curses.h ndbm.h disktab.h \
- fcntl.h fstab.h grp.h lastlog.h math.h memory.h mp.h mtab.h \
- netdb.h nlist.h pcc.h pwd.h ranlib.h regexp.h resolv.h setjmp.h \
- sgtty.h stab.h stdio.h string.h strings.h struct.h syscall.h \
- sysexits.h time.h ttyent.h tzfile.h utmp.h varargs.h vfont.h
-LINKS= errno.h signal.h syslog.h
+all clean cleandir depend lint tags:
-NETDIRS= net netimp netinet netns
-TAHOEDIRS= tahoe tahoemath tahoevba tahoeif
-VAXDIRS= vax vaxmba vaxuba vaxif
-SHARED= symlinks
-TAGSFILE=tags
+FILES= a.out.h ar.h assert.h bitstring.h ctype.h db.h dirent.h disktab.h \
+ fstab.h fts.h glob.h grp.h kvm.h limits.h math.h memory.h mp.h \
+ ndbm.h netdb.h nlist.h paths.h pcc.h pwd.h ranlib.h regexp.h \
+ resolv.h setjmp.h sgtty.h stab.h stdarg.h stddef.h stdio.h \
+ stdlib.h string.h strings.h struct.h sysexits.h time.h ttyent.h \
+ tzfile.h utmp.h varargs.h vfont.h vis.h
+MFILES= float.h frame.h
+LFILES= errno.h fcntl.h signal.h syslog.h termios.h unistd.h
-all:
+DIRS=arpa protocols
+LDIRS= sys net netimp netinet netiso netns ufs nfs
+.if (${MACHINE} == "i386")
+MDIRS= i386
+.elif (${MACHINE} == "hp300")
+MDIRS= hp300 dev
+.elif (${MACHINE} == "tahoe")
+MDIRS= tahoe math vba if
+.elif (${MACHINE} == "vax")
+MDIRS= vax bi if mba uba
+.endif
+
+NOOBJ= noobj
+
+# Define SHARED to indicate whether you want symbolic links to the system
+# source (``symlinks''), or a separate copy (``copies''); (latter useful
+# in environments where it's not possible to keep /sys publicly readable)
+# SHARED= copies
+SHARED= symlinks
install: ${SHARED}
- -for i in ${STD}; do \
+ @echo installing ${FILES}
+ @-for i in ${FILES}; do \
cmp -s $$i ${DESTDIR}/usr/include/$$i || \
- install -c -m 444 $$i ${DESTDIR}/usr/include/$$i; \
+ install -c -o ${BINOWN} -g ${BINGRP} -m 444 $$i \
+ ${DESTDIR}/usr/include/$$i; \
done
- -for i in ${SUBDIRS}; do \
+ @echo installing ${DIRS}
+ @-for i in ${DIRS}; do \
if [ ! -d ${DESTDIR}/usr/include/$$i ]; \
then \
mkdir ${DESTDIR}/usr/include/$$i; \
fi; \
+ chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
+ chmod 755 ${DESTDIR}/usr/include/$$i; \
(cd $$i; for j in *.[ih]; do \
cmp -s $$j ${DESTDIR}/usr/include/$$i/$$j || \
- install -c -m 444 $$j ${DESTDIR}/usr/include/$$i/$$j; \
+ install -c -o ${BINOWN} -g ${BINGRP} -m 444 $$j \
+ ${DESTDIR}/usr/include/$$i/$$j; \
done); \
done
- -cmp -s Makefile.install ${DESTDIR}/usr/include/Makefile || \
- install -c -m 444 Makefile.install ${DESTDIR}/usr/include/Makefile
- -for i in ${LINKS}; do \
+ @echo installing ${LFILES}
+ @-for i in ${LFILES}; do \
rm -f ${DESTDIR}/usr/include/$$i; \
ln -s sys/$$i ${DESTDIR}/usr/include/$$i; \
+ chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
done
- rm -f ${DESTDIR}/usr/include/machine
- ln -s ./${MACHINE} ${DESTDIR}/usr/include/machine
- rm -f ${DESTDIR}/usr/include/frame.h
- ln -s machine/frame.h ${DESTDIR}/usr/include/frame.h
-
-symlinks: ${MACHINE}.symlinks
- rm -rf ${DESTDIR}/usr/include/sys
- -if [ ! -s ${DESTDIR}/usr/include/sys ]; \
- then \
- ln -s /sys/h ${DESTDIR}/usr/include/sys; \
- else \
- echo ${DESTDIR}/usr/include/sys not removed; \
- fi
-
-tahoe.symlinks:
- -for i in ${NETDIRS} ${TAHOEDIRS}; do \
- rm -rf ${DESTDIR}/usr/include/$$i; \
- if [ ! -s ${DESTDIR}/usr/include/$$i ]; \
- then \
- ln -s /sys/$$i ${DESTDIR}/usr/include/$$i; \
- else \
- echo ${DESTDIR}/usr/include/$$i not removed; \
- fi; \
- done
-
-vax.symlinks:
- -for i in ${NETDIRS} ${VAXDIRS}; do \
- rm -rf ${DESTDIR}/usr/include/$$i; \
- if [ ! -s ${DESTDIR}/usr/include/$$i ]; \
- then \
- ln -s /sys/$$i ${DESTDIR}/usr/include/$$i; \
- else \
- echo ${DESTDIR}/usr/include/$$i not removed; \
- fi; \
+ @echo installing ${MFILES}
+ @-for i in ${MFILES}; do \
+ rm -f ${DESTDIR}/usr/include/$$i; \
+ ln -s machine/$$i ${DESTDIR}/usr/include/$$i; \
+ chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
done
-copies: ${MACHINE}.copies
- rm -rf ${DESTDIR}/usr/include/sys;
- mkdir ${DESTDIR}/usr/include/sys;
- chmod 775 ${DESTDIR}/usr/include/sys;
- -(cd /sys/h; tar cf - *.h | (cd ${DESTDIR}/usr/include/sys; tar xpfB -))
-
-tahoe.copies:
- -for i in ${NETDIRS} ${TAHOEDIRS}; do \
+copies:
+ @echo copies: ${LDIRS} ${MDIRS}
+ @-for i in ${LDIRS}; do \
rm -rf ${DESTDIR}/usr/include/$$i; \
cd /sys; \
tar cf - $$i/*.h | (cd ${DESTDIR}/usr/include; tar xpfB -); \
done
-
-vax.copies:
- -for i in ${NETDIRS} ${VAXDIRS}; do \
+ @-for i in ${MDIRS}; do \
rm -rf ${DESTDIR}/usr/include/$$i; \
- cd /sys; \
+ cd /sys/${MACHINE}; \
tar cf - $$i/*.h | (cd ${DESTDIR}/usr/include; tar xpfB -); \
done
+ rm -f ${DESTDIR}/usr/include/machine
+ mkdir ${DESTDIR}/usr/include/machine
+ cd /sys/${MACHINE}/include; \
+ tar cf - *.h | (cd ${DESTDIR}/usr/include/machine; tar xpfB -); \
-tags:
- cwd=/usr/include; \
- for i in ${STD} ${LINKS}; do \
- ctags -a -f ${TAGSFILE} $$cwd/$$i; \
+ rm -rf ${DESTDIR}/usr/include/$$i; \
+ ln -s /sys/$$i ${DESTDIR}/usr/include/$$i; \
+ chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
done
+ @for i in ${MDIRS}; do \
+ rm -rf ${DESTDIR}/usr/include/$$i; \
+ ln -s /sys/${MACHINE}/$$i ${DESTDIR}/usr/include/$$i; \
+ chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
+ done
+ rm -f ${DESTDIR}/usr/include/machine
+ ln -s /sys/${MACHINE}/include ${DESTDIR}/usr/include/machine
+ chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/machine
-clean:
- rm -f tags
-
-depend:
+.include <bsd.prog.mk>