1 # from: @(#)Makefile 5.45.1.1 (Berkeley) 5/6/91 2 # $Id: Makefile,v 1.43 1994/06/22 15:09:35 mycroft 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 11 FILES= 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 stdarg.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 20 MFILES= float.h frame.h varargs.h 21 LFILES= errno.h fcntl.h syslog.h termios.h 22 23 DIRS= arpa protocols rpc rpcsvc 24 LDIRS= dev net netinet netccitt netiso netns nfs sys ufs vm 25 # the following only used when making copies 26 LSUBDIRS= ufs/ffs ufs/lfs ufs/mfs ufs/ufs 27 28 NOOBJ= noobj 29 30 # Change SYS_INCLUDE in bsd.own.mk to "symlinks" if you don't want copies 31 .include <bsd.own.mk> 32 SYS_INCLUDE?= copies 33 34 realinstall: 35 @echo installing ${FILES} 36 @-for i in ${FILES}; do \ 37 cmp -s $$i ${DESTDIR}/usr/include/$$i || \ 38 install -c -m 444 $$i ${DESTDIR}/usr/include/$$i; \ 39 done 40 @echo installing ${DIRS} 41 @-for i in ${DIRS}; do \ 42 install -d -o bin -g bin -m 755 ${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-w 61 62 beforeinstall: 63 install -d -o bin -g bin -m 755 ${DESTDIR}/usr/include 64 65 copies: 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 # This would be simpler if we didn't care whether netiso/xebec gets installed. 72 cd ../sys; \ 73 pax -rw -pa -L `find ${LDIRS} '(' -type d -path '*/*' -prune ')' -o \ 74 '(' -type f -name '*.h' -print ')'; \ 75 find ${LSUBDIRS} -type f -name '*.h' -print` ${DESTDIR}/usr/include 76 rm -rf ${DESTDIR}/usr/include/machine 77 install -d -o bin -g bin -m 755 ${DESTDIR}/usr/include/machine 78 cd ../sys/arch/${MACHINE}/include; \ 79 tar cf - *.h | (cd ${DESTDIR}/usr/include/machine; tar xpfB -); 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 cd ../sys/arch/${MACHINE_ARCH}/include ; \ 86 tar cf - *.h | \ 87 (cd ${DESTDIR}/usr/include/${MACHINE_ARCH} ; tar xpfB -); \ 88 else \ 89 ln -s machine ${DESTDIR}/usr/include/${MACHINE_ARCH} ; \ 90 fi 91 92 symlinks: 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 111 realinstall: ${SYS_INCLUDE} 112