Makefile revision 171271
1155517Sambrisko# @(#)Makefile 8.2 (Berkeley) 1/4/94 2155517Sambrisko# $FreeBSD: head/include/Makefile 171271 2007-07-06 07:20:59Z bz $ 3155517Sambrisko# 4155517Sambrisko# Doing a "make install" builds /usr/include. 5155517Sambrisko 6155517Sambrisko.include <bsd.own.mk> 7155517Sambrisko 8155517SambriskoCLEANFILES= osreldate.h version vers.c 9155517SambriskoSUBDIR= arpa gssapi protocols rpcsvc rpc 10155517SambriskoINCS= a.out.h ar.h assert.h bitstring.h complex.h cpio.h _ctype.h ctype.h \ 11155517Sambrisko db.h \ 12155517Sambrisko dirent.h dlfcn.h elf.h elf-hints.h err.h fmtmsg.h fnmatch.h fstab.h \ 13155517Sambrisko fts.h ftw.h getopt.h glob.h grp.h gssapi.h \ 14155517Sambrisko histedit.h ieeefp.h ifaddrs.h \ 15155517Sambrisko inttypes.h iso646.h kenv.h langinfo.h libgen.h limits.h link.h \ 16155517Sambrisko locale.h malloc.h malloc_np.h memory.h monetary.h mpool.h mqueue.h \ 17155517Sambrisko ndbm.h netconfig.h \ 18155517Sambrisko netdb.h nl_types.h nlist.h nss.h nsswitch.h paths.h \ 19155517Sambrisko printf.h proc_service.h pthread.h \ 20155517Sambrisko pthread_np.h pwd.h ranlib.h readpassphrase.h regex.h regexp.h \ 21155517Sambrisko res_update.h resolv.h runetype.h search.h setjmp.h sgtty.h \ 22155517Sambrisko signal.h stab.h \ 23155517Sambrisko stdbool.h stddef.h stdio.h stdlib.h string.h stringlist.h \ 24155517Sambrisko strings.h sysexits.h tar.h tgmath.h \ 25155517Sambrisko time.h timeconv.h timers.h ttyent.h \ 26155517Sambrisko ulimit.h unistd.h utime.h utmp.h uuid.h varargs.h vis.h wchar.h \ 27155517Sambrisko wctype.h wordexp.h 28155517Sambrisko 29155517SambriskoI4BHDRS=i4b_cause.h i4b_debug.h i4b_ioctl.h i4b_rbch_ioctl.h \ 30155517Sambrisko i4b_tel_ioctl.h i4b_trace.h 31155517Sambrisko 32162562SjhbMHDRS= float.h floatingpoint.h stdarg.h 33162562Sjhb 34162562SjhbPHDRS= sched.h semaphore.h _semaphore.h 35155517Sambrisko 36155517SambriskoLHDRS= aio.h errno.h fcntl.h linker_set.h poll.h stdint.h syslog.h \ 37162562Sjhb termios.h ucontext.h 38155517Sambrisko 39162562SjhbLDIRS= bsm cam geom net net80211 netatalk netatm netgraph netinet netinet6 \ 40155517Sambrisko netipsec ${_netipx} netnatm ${_netncp} netsmb \ 41162562Sjhb nfs nfsclient nfsserver \ 42155517Sambrisko pccard sys vm 43155517Sambrisko 44155517SambriskoLSUBDIRS= cam/scsi \ 45155517Sambrisko dev/acpica dev/an dev/bktr dev/firewire dev/hwpmc \ 46155517Sambrisko dev/ic dev/iicbus ${_dev_ieee488} dev/lmc dev/ofw \ 47155517Sambrisko dev/pbio ${_dev_powermac_nvram} dev/ppbus dev/smbus dev/speaker dev/usb dev/utopia dev/vkbd dev/wi \ 48155517Sambrisko fs/devfs fs/fdescfs fs/fifofs fs/msdosfs fs/ntfs fs/nullfs \ 49155517Sambrisko ${_fs_nwfs} fs/portalfs fs/procfs fs/smbfs fs/udf fs/unionfs \ 50155517Sambrisko geom/cache geom/concat geom/eli geom/gate geom/journal geom/label \ 51155517Sambrisko geom/mirror geom/nop geom/raid3 geom/shsec geom/stripe \ 52278321Sjhb netatm/ipatm netatm/sigpvc netatm/spans netatm/uni \ 53278321Sjhb netgraph/atm netgraph/netflow \ 54278321Sjhb security/audit \ 55278321Sjhb security/mac_biba security/mac_bsdextended security/mac_lomac \ 56278321Sjhb security/mac_mls security/mac_partition \ 57278321Sjhb ufs/ffs ufs/ufs 58278321Sjhb 59278321Sjhb.if ${MACHINE_ARCH} == "powerpc" 60278321Sjhb_dev_powermac_nvram= dev/powermac_nvram 61278321Sjhb.endif 62278321Sjhb 63278321Sjhb.if ${MK_GPIB} != "no" 64278321Sjhb_dev_ieee488= dev/ieee488 65278321Sjhb.endif 66278321Sjhb 67278321Sjhb.if ${MK_HESIOD} != "no" 68278321SjhbINCS+= hesiod.h 69155517Sambrisko.endif 70155517Sambrisko 71155517Sambrisko.if ${MK_BLUETOOTH} != "no" 72155517SambriskoLSUBSUBDIRS= netgraph/bluetooth/include 73155517Sambrisko.endif 74155517Sambrisko 75155517Sambrisko# XXX unconditionally needed by <netsmb/netbios.h> 76155517Sambrisko#.if ${MK_IPX} != "no" 77155517Sambrisko_netipx= netipx 78182322Sjhb#.endif 79155517Sambrisko 80155517Sambrisko.if ${MK_NCP} != "no" 81155517Sambrisko_netncp= netncp 82155517Sambrisko_fs_nwfs= fs/nwfs 83227309Sed.endif 84227309Sed 85155517Sambrisko# Define SHARED to indicate whether you want symbolic links to the system 86162562Sjhb# source (``symlinks''), or a separate copy (``copies''). ``symlinks'' is 87155517Sambrisko# probably only useful for developers and should be avoided if you do not 88155517Sambrisko# wish to tie your /usr/include and /usr/src together. 89155517Sambrisko#SHARED= symlinks 90155517SambriskoSHARED?= copies 91155517Sambrisko 92155517SambriskoINCS+= osreldate.h 93155517Sambrisko 94155517Sambriskoosreldate.h: ${.CURDIR}/../sys/conf/newvers.sh ${.CURDIR}/../sys/sys/param.h \ 95155517Sambrisko ${.CURDIR}/Makefile 96227293Sed @${ECHO} creating osreldate.h from newvers.sh 97155517Sambrisko @MAKE=${MAKE}; \ 98162562Sjhb PARAMFILE=${.CURDIR}/../sys/sys/param.h; \ 99162562Sjhb . ${.CURDIR}/../sys/conf/newvers.sh; \ 100155517Sambrisko echo "$$COPYRIGHT" > osreldate.h; \ 101162562Sjhb echo "#ifdef _KERNEL" >> osreldate.h; \ 102155517Sambrisko echo "#error \"<osreldate.h> cannot be used in the kernel, use <sys/param.h>\"" >> osreldate.h; \ 103182322Sjhb echo "#else" >> osreldate.h; \ 104155517Sambrisko echo "#undef __FreeBSD_version" >> osreldate.h; \ 105155517Sambrisko echo "#define __FreeBSD_version $$RELDATE" >> osreldate.h; \ 106162562Sjhb echo "#endif" >> osreldate.h 107155517Sambrisko 108182322Sjhb.for i in ${LHDRS} 109182322SjhbINCSLINKS+= sys/$i ${INCLUDEDIR}/$i 110182322Sjhb.endfor 111182322Sjhb.for i in ${MHDRS} 112182322SjhbINCSLINKS+= machine/$i ${INCLUDEDIR}/$i 113182322Sjhb.endfor 114182322Sjhb.for i in ${PHDRS} 115182322SjhbINCSLINKS+= sys/$i ${INCLUDEDIR}/$i 116182322Sjhb.endfor 117182322Sjhb 118182322Sjhb.if ${MACHINE} != ${MACHINE_ARCH} 119182322Sjhb_MARCH=${MACHINE_ARCH} 120182322Sjhb.endif 121162562Sjhb 122182322Sjhb.include <bsd.prog.mk> 123162562Sjhb 124155517Sambriskoinstallincludes: ${SHARED} 125162562Sjhb${SHARED}: compat 126155517Sambrisko 127155517Sambrisko# Take care of stale directory-level symlinks. 128162562Sjhbcompat: 129162562Sjhb.for i in ${LDIRS} ${LSUBDIRS} machine ${_MARCH} crypto 130155517Sambrisko if [ -L ${DESTDIR}${INCLUDEDIR}/$i ]; then \ 131162562Sjhb rm -f ${DESTDIR}${INCLUDEDIR}/$i; \ 132155517Sambrisko fi 133155517Sambrisko.endfor 134155517Sambrisko mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \ 135182322Sjhb -f ${.CURDIR}/../etc/mtree/BSD.include.dist \ 136182322Sjhb -p ${DESTDIR}${INCLUDEDIR} 137155517Sambrisko.if ${MK_BIND_LIBS} != "no" 138182322Sjhb mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \ 139162562Sjhb -f ${.CURDIR}/../etc/mtree/BIND.include.dist \ 140155517Sambrisko -p ${DESTDIR}${INCLUDEDIR} 141162562Sjhb.endif 142155517Sambrisko 143162562Sjhbcopies: 144155517Sambrisko.for i in ${LDIRS} ${LSUBDIRS} ${LSUBSUBDIRS} altq crypto machine machine/pc \ 145155517Sambrisko ${_MARCH} 146155517Sambrisko.if exists(${DESTDIR}${INCLUDEDIR}/$i) 147155517Sambrisko cd ${DESTDIR}${INCLUDEDIR}/$i; \ 148155517Sambrisko for h in *.h; do \ 149162562Sjhb if [ -L $$h ]; then rm -f $$h; fi; \ 150155517Sambrisko done 151162562Sjhb.endif 152155517Sambrisko.endfor 153162562Sjhb.for i in ${LDIRS} ${LSUBDIRS:Ndev/acpica:Ndev/bktr} ${LSUBSUBDIRS} 154155517Sambrisko cd ${.CURDIR}/../sys; \ 155155517Sambrisko ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 $i/*.h \ 156162562Sjhb ${DESTDIR}${INCLUDEDIR}/$i 157162562Sjhb.endfor 158155517Sambrisko cd ${.CURDIR}/../sys/dev/acpica; \ 159162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 acpiio.h \ 160162562Sjhb ${DESTDIR}${INCLUDEDIR}/dev/acpica 161162562Sjhb cd ${.CURDIR}/../sys/dev/bktr; \ 162162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 ioctl_*.h \ 163162562Sjhb ${DESTDIR}${INCLUDEDIR}/dev/bktr 164162562Sjhb cd ${.CURDIR}/../sys/contrib/altq/altq; \ 165162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 166162562Sjhb ${DESTDIR}${INCLUDEDIR}/altq 167162562Sjhb cd ${.CURDIR}/../sys/fs/cd9660/; \ 168162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 169182322Sjhb ${DESTDIR}${INCLUDEDIR}/isofs/cd9660 170182322Sjhb.if ${MK_IPFILTER} != "no" 171162562Sjhb cd ${.CURDIR}/../sys/contrib/ipfilter/netinet; \ 172162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 173162562Sjhb ${DESTDIR}${INCLUDEDIR}/netinet 174155517Sambrisko.endif 175155517Sambrisko cd ${.CURDIR}/../sys/contrib/pf/net; \ 176182322Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 177162562Sjhb ${DESTDIR}${INCLUDEDIR}/net 178155517Sambrisko cd ${.CURDIR}/../sys/crypto; \ 179162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 rijndael/rijndael.h \ 180162562Sjhb ${DESTDIR}${INCLUDEDIR}/crypto 181162562Sjhb.if ${MACHINE_ARCH} == "i386" 182162562Sjhb.if ${MK_I4B} != "no" 183162562Sjhb cd ${.CURDIR}/../sys/i4b/include; \ 184162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 ${I4BHDRS} \ 185162562Sjhb ${DESTDIR}${INCLUDEDIR}/i4b 186162562Sjhb.endif 187162562Sjhb.endif 188162562Sjhb cd ${.CURDIR}/../sys/opencrypto; \ 189162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 190162562Sjhb ${DESTDIR}${INCLUDEDIR}/crypto 191155517Sambrisko cd ${.CURDIR}/../sys/${MACHINE}/include; \ 192162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 193162562Sjhb ${DESTDIR}${INCLUDEDIR}/machine 194162562Sjhb.if exists(${.CURDIR}/../sys/${MACHINE}/include/pc) 195162562Sjhb cd ${.CURDIR}/../sys/${MACHINE}/include/pc; \ 196162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 197162562Sjhb ${DESTDIR}${INCLUDEDIR}/machine/pc 198162562Sjhb.endif 199162562Sjhb.if defined(_MARCH) 200162562Sjhb ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 201278321Sjhb ${DESTDIR}${INCLUDEDIR}/${_MARCH}; \ 202278321Sjhb cd ${.CURDIR}/../sys/${_MARCH}/include; \ 203162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 204162562Sjhb ${DESTDIR}${INCLUDEDIR}/${_MARCH} 205162562Sjhb.if exists(${.CURDIR}/../sys/${_MARCH}/include/pc) 206182322Sjhb ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 207162562Sjhb ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 208162562Sjhb cd ${.CURDIR}/../sys/${_MARCH}/include/pc; \ 209162562Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 210162562Sjhb ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc 211155517Sambrisko.endif 212155517Sambrisko.endif 213155517Sambrisko cd ${.CURDIR}/../sys/rpc; \ 214155517Sambrisko ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 types.h \ 215155517Sambrisko ${DESTDIR}${INCLUDEDIR}/rpc 216155517Sambrisko 217155517Sambriskosymlinks: 218155517Sambrisko @${ECHO} "Setting up symlinks to kernel source tree..." 219155517Sambrisko.for i in ${LDIRS} 220155517Sambrisko cd ${.CURDIR}/../sys/$i; \ 221155517Sambrisko for h in *.h; do \ 222162562Sjhb ln -fs ../../../sys/$i/$$h ${DESTDIR}${INCLUDEDIR}/$i; \ 223155517Sambrisko done 224155517Sambrisko.endfor 225162562Sjhb.for i in ${LSUBDIRS:Ndev/acpica:Ndev/bktr} 226155517Sambrisko cd ${.CURDIR}/../sys/$i; \ 227155517Sambrisko for h in *.h; do \ 228155517Sambrisko ln -fs ../../../../sys/$i/$$h ${DESTDIR}${INCLUDEDIR}/$i; \ 229155517Sambrisko done 230155517Sambrisko.endfor 231162562Sjhb cd ${.CURDIR}/../sys/dev/acpica; \ 232162562Sjhb for h in acpiio.h; do \ 233155517Sambrisko ln -fs ../../../../sys/dev/acpica/$$h \ 234155517Sambrisko ${DESTDIR}${INCLUDEDIR}/dev/acpica; \ 235278321Sjhb done 236162562Sjhb cd ${.CURDIR}/../sys/dev/bktr; \ 237162562Sjhb for h in ioctl_*.h; do \ 238162562Sjhb ln -fs ../../../../sys/dev/bktr/$$h \ 239162562Sjhb ${DESTDIR}${INCLUDEDIR}/dev/bktr; \ 240162562Sjhb done 241162562Sjhb.for i in ${LSUBSUBDIRS} 242162562Sjhb cd ${.CURDIR}/../sys/$i; \ 243162562Sjhb for h in *.h; do \ 244155517Sambrisko ln -fs ../../../../../sys/$i/$$h ${DESTDIR}${INCLUDEDIR}/$i; \ 245162562Sjhb done 246162562Sjhb.endfor 247162562Sjhb cd ${.CURDIR}/../sys/contrib/altq/altq; \ 248155517Sambrisko for h in *.h; do \ 249162562Sjhb ln -fs ../../../sys/contrib/altq/altq/$$h \ 250162562Sjhb ${DESTDIR}${INCLUDEDIR}/altq; \ 251155517Sambrisko done 252162562Sjhb.if ${MK_IPFILTER} != "no" 253155517Sambrisko cd ${.CURDIR}/../sys/contrib/ipfilter/netinet; \ 254155517Sambrisko for h in *.h; do \ 255155517Sambrisko ln -fs ../../../sys/contrib/ipfilter/netinet/$$h \ 256162562Sjhb ${DESTDIR}${INCLUDEDIR}/netinet; \ 257155517Sambrisko done 258162562Sjhb.endif 259155517Sambrisko cd ${.CURDIR}/../sys/contrib/pf/net; \ 260155517Sambrisko for h in *.h; do \ 261155517Sambrisko ln -fs ../../../sys/contrib/pf/net/$$h \ 262278321Sjhb ${DESTDIR}${INCLUDEDIR}/net; \ 263162562Sjhb done 264155517Sambrisko cd ${.CURDIR}/../sys/crypto; \ 265162562Sjhb for h in rijndael/rijndael.h; do \ 266162562Sjhb ln -fs ../../../sys/crypto/$$h \ 267162562Sjhb ${DESTDIR}${INCLUDEDIR}/crypto; \ 268162562Sjhb done 269155517Sambrisko cd ${.CURDIR}/../sys/i4b/include; \ 270155517Sambrisko for h in ${I4BHDRS}; do \ 271162562Sjhb ln -fs ../../../sys/i4b/include/$$h \ 272155517Sambrisko ${DESTDIR}${INCLUDEDIR}/i4b; \ 273155517Sambrisko done 274155517Sambrisko cd ${.CURDIR}/../sys/opencrypto; \ 275162562Sjhb for h in *.h; do \ 276278321Sjhb ln -fs ../../../sys/opencrypto/$$h \ 277162562Sjhb ${DESTDIR}${INCLUDEDIR}/crypto; \ 278162562Sjhb done 279162562Sjhb cd ${.CURDIR}/../sys/${MACHINE}/include; \ 280155517Sambrisko for h in *.h; do \ 281155517Sambrisko ln -fs ../../../sys/${MACHINE}/include/$$h \ 282155517Sambrisko ${DESTDIR}${INCLUDEDIR}/machine; \ 283162562Sjhb done 284162562Sjhb.if exists(${.CURDIR}/../sys/${MACHINE}/include/pc) 285162562Sjhb cd ${.CURDIR}/../sys/${MACHINE}/include/pc; \ 286162562Sjhb for h in *.h; do \ 287155517Sambrisko ln -fs ../../../../sys/${MACHINE}/include/pc/$$h \ 288155517Sambrisko ${DESTDIR}${INCLUDEDIR}/machine/pc; \ 289155517Sambrisko done 290162562Sjhb.endif 291162562Sjhb.if defined(_MARCH) 292162562Sjhb ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 293155517Sambrisko ${DESTDIR}${INCLUDEDIR}/${_MARCH}; \ 294155517Sambrisko cd ${.CURDIR}/../sys/${_MARCH}/include; \ 295155517Sambrisko for h in *.h; do \ 296162562Sjhb ln -fs ../../../sys/${_MARCH}/include/$$h \ 297155517Sambrisko ${DESTDIR}${INCLUDEDIR}/${_MARCH}; \ 298155517Sambrisko done 299155517Sambrisko.if exists(${.CURDIR}/../sys/${_MARCH}/include/pc) 300162562Sjhb ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 301162562Sjhb ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 302155517Sambrisko cd ${.CURDIR}/../sys/${_MARCH}/include/pc; \ 303155517Sambrisko for h in *.h; do \ 304155517Sambrisko ln -fs ../../../../sys/${_MARCH}/include/pc/$$h \ 305162562Sjhb ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 306162562Sjhb done 307162562Sjhb.endif 308162562Sjhb.endif 309162562Sjhb cd ${.CURDIR}/../sys/fs/cd9660; \ 310162562Sjhb for h in *.h; do \ 311162562Sjhb ln -fs ../../../../sys/fs/cd9660/$$h \ 312162562Sjhb ${DESTDIR}${INCLUDEDIR}/isofs/cd9660; \ 313155517Sambrisko done 314155517Sambrisko cd ${.CURDIR}/../sys/rpc; \ 315182322Sjhb for h in types.h; do \ 316182322Sjhb ln -fs ../../../sys/rpc/$$h \ 317182322Sjhb ${DESTDIR}${INCLUDEDIR}/rpc; \ 318155517Sambrisko done 319182322Sjhb