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