Makefile revision 255775
140496Sbde# @(#)Makefile 8.2 (Berkeley) 1/4/94 250473Speter# $FreeBSD: head/include/Makefile 255775 2013-09-21 22:36:07Z ian $ 31539Srgrimes# 4114731Sbde# Doing a "make install" builds /usr/include. 51539Srgrimes 6156813Sru.include <bsd.own.mk> 7156813Sru 818420SbdeCLEANFILES= osreldate.h version vers.c 9232498StheravenSUBDIR= arpa gssapi protocols rpcsvc rpc xlocale 10133567StjrINCS= a.out.h ar.h assert.h bitstring.h complex.h cpio.h _ctype.h ctype.h \ 11133559Stjr db.h \ 12107046Smarcel dirent.h dlfcn.h elf.h elf-hints.h err.h fmtmsg.h fnmatch.h fstab.h \ 13153838Sdfr fts.h ftw.h getopt.h glob.h grp.h gssapi.h \ 14220370Sobrien ieeefp.h ifaddrs.h \ 15107046Smarcel inttypes.h iso646.h kenv.h langinfo.h libgen.h limits.h link.h \ 16157236Sjasone locale.h malloc.h malloc_np.h memory.h monetary.h mpool.h mqueue.h \ 17152994Sru ndbm.h netconfig.h \ 18166243Speter netdb.h nl_types.h nlist.h nss.h nsswitch.h paths.h \ 19153486Sphk printf.h proc_service.h pthread.h \ 20205146Sed pthread_np.h pwd.h ranlib.h readpassphrase.h regex.h \ 21201546Sdavidxu res_update.h resolv.h runetype.h search.h semaphore.h setjmp.h \ 22251230Sed signal.h spawn.h stab.h stdalign.h stdbool.h stddef.h \ 23228879Sed stdnoreturn.h stdio.h stdlib.h string.h stringlist.h \ 24199898Sed strings.h sysexits.h tar.h termios.h tgmath.h \ 25133333Sstefanf time.h timeconv.h timers.h ttyent.h \ 26250883Sed uchar.h ulimit.h unistd.h utime.h utmpx.h uuid.h varargs.h \ 27232498Stheraven wchar.h wctype.h wordexp.h xlocale.h 281539Srgrimes 29244401Sbrooks.PATH: ${.CURDIR}/../contrib/libc-vis 30244401SbrooksINCS+= vis.h 31244401Sbrooks 32119630SkanMHDRS= float.h floatingpoint.h stdarg.h 3334030Sdufault 34201546SdavidxuPHDRS= sched.h _semaphore.h 3534030Sdufault 36251230SedLHDRS= aio.h errno.h fcntl.h linker_set.h poll.h stdatomic.h stdint.h \ 37251230Sed syslog.h ucontext.h 381539Srgrimes 39171453SrwatsonLDIRS= bsm cam geom net net80211 netatalk netgraph netinet netinet6 \ 40252356Sdavide netipsec ${_netipx} netnatm netsmb \ 41156905Sru nfs nfsclient nfsserver \ 42188642Snyan sys vm 4317900Speter 44195534SscottlLSUBDIRS= cam/ata cam/scsi \ 45246367Sjhb dev/acpica dev/agp dev/an dev/bktr dev/ciss dev/filemon dev/firewire \ 46246367Sjhb dev/hwpmc \ 47240621Sjimharris dev/ic dev/iicbus ${_dev_ieee488} dev/io dev/lmc dev/mfi dev/nvme \ 48246367Sjhb dev/ofw dev/pbio dev/pci ${_dev_powermac_nvram} dev/ppbus dev/smbus \ 49172397Sru dev/speaker dev/usb dev/utopia dev/vkbd dev/wi \ 50241636Sattilio fs/devfs fs/fdescfs fs/msdosfs fs/nandfs fs/nfs fs/nullfs \ 51252356Sdavide fs/procfs fs/smbfs fs/udf fs/unionfs \ 52163851Spjd geom/cache geom/concat geom/eli geom/gate geom/journal geom/label \ 53202437Strasz geom/mirror geom/mountver geom/multipath geom/nop \ 54219974Smav geom/raid geom/raid3 geom/shsec geom/stripe geom/virstor \ 55135339Sglebius netgraph/atm netgraph/netflow \ 56156885Srwatson security/audit \ 57135339Sglebius security/mac_biba security/mac_bsdextended security/mac_lomac \ 58135339Sglebius security/mac_mls security/mac_partition \ 59137556Smarkm ufs/ffs ufs/ufs 6077031Sru 61192901SthompsaLSUBSUBDIRS= dev/mpt/mpilib 62178818Sjhb 63210024Snwhitehorn.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64" 64160892Ssobomax_dev_powermac_nvram= dev/powermac_nvram 65160892Ssobomax.endif 66160892Ssobomax 67156813Sru.if ${MK_GPIB} != "no" 68141397Sphk_dev_ieee488= dev/ieee488 69141397Sphk.endif 70141397Sphk 71156813Sru.if ${MK_HESIOD} != "no" 72148796SphkINCS+= hesiod.h 73148796Sphk.endif 74148796Sphk 75156813Sru.if ${MK_BLUETOOTH} != "no" 76178818SjhbLSUBSUBDIRS+= netgraph/bluetooth/include 77125123Semax.endif 78107139Sjulian 79252356Sdavide# XXX unconditionally needed by <netsmb/netbios.h> 80156905Sru#.if ${MK_IPX} != "no" 81156905Sru_netipx= netipx 82156905Sru#.endif 83156905Sru 84254273Speter# Handle the #define aliases for libiconv 85254273Speter.if ${MK_ICONV} == "yes" 86254273SpeterCLEANFILES+= _libiconv_compat.h 87254273SpeterINCS+= _libiconv_compat.h iconv.h 88254273Speter_libiconv_compat.h: ${.CURDIR}/Makefile 89254273Speter echo "/* Indicate whether libiconv symbols are present */" > _libiconv_compat.h 90254273Speter.if ${MK_LIBICONV_COMPAT} == "yes" 91254273Speter echo "#define __LIBICONV_COMPAT" >> _libiconv_compat.h 92254273Speter.else 93254273Speter echo "#undef __LIBICONV_COMPAT" >> _libiconv_compat.h 94254273Speter.endif 95254273Speter.endif 96254273Speter 97254273Speter 9854351Smarcel# Define SHARED to indicate whether you want symbolic links to the system 9954351Smarcel# source (``symlinks''), or a separate copy (``copies''). ``symlinks'' is 10054351Smarcel# probably only useful for developers and should be avoided if you do not 10154351Smarcel# wish to tie your /usr/include and /usr/src together. 10254351Smarcel#SHARED= symlinks 10354351SmarcelSHARED?= copies 10454351Smarcel 10596462SruINCS+= osreldate.h 10625734Speter 107255775SianNEWVERS_SH= ${.CURDIR}/../sys/conf/newvers.sh 108255775SianPARAM_H= ${.CURDIR}/../sys/sys/param.h 109255775SianMK_OSRELDATE_SH= ${.CURDIR}/mk-osreldate.sh 11025734Speter 111255775Sianosreldate.h vers.c: ${NEWVERS_SH} ${PARAM_H} ${MK_OSRELDATE_SH} 112255775Sian env ECHO="${ECHO}" \ 113255775Sian MAKE="${MAKE}" \ 114255775Sian NEWVERS_SH=${NEWVERS_SH} \ 115255775Sian PARAM_H=${PARAM_H} \ 116255775Sian ${MK_OSRELDATE_SH} 117255775Sian 11888055Sru.for i in ${LHDRS} 11996462SruINCSLINKS+= sys/$i ${INCLUDEDIR}/$i 12017900Speter.endfor 12188055Sru.for i in ${MHDRS} 12296462SruINCSLINKS+= machine/$i ${INCLUDEDIR}/$i 12317900Speter.endfor 12488055Sru.for i in ${PHDRS} 125164184StrhodesINCSLINKS+= sys/$i ${INCLUDEDIR}/$i 12634030Sdufault.endfor 12754351Smarcel 128211725Simp.if ${MACHINE} != ${MACHINE_CPUARCH} 129214629Sjhb_MARCHS= ${MACHINE_CPUARCH} 130144514Simp.endif 131214629Sjhb.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 132214629Sjhb_MARCHS+= x86 133214629Sjhb.endif 134144514Simp 135114731Sbde.include <bsd.prog.mk> 136114731Sbde 137114731Sbdeinstallincludes: ${SHARED} 138114731Sbde${SHARED}: compat 139114731Sbde 140114731Sbde# Take care of stale directory-level symlinks. 141114731Sbdecompat: 142214629Sjhb.for i in ${LDIRS} ${LSUBDIRS} machine ${_MARCHS} crypto 143114731Sbde if [ -L ${DESTDIR}${INCLUDEDIR}/$i ]; then \ 144114731Sbde rm -f ${DESTDIR}${INCLUDEDIR}/$i; \ 14554351Smarcel fi 14654351Smarcel.endfor 147114731Sbde mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \ 148114731Sbde -f ${.CURDIR}/../etc/mtree/BSD.include.dist \ 149114731Sbde -p ${DESTDIR}${INCLUDEDIR} 150156813Sru.if ${MK_BIND_LIBS} != "no" 151135851Sdougb mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \ 152135851Sdougb -f ${.CURDIR}/../etc/mtree/BIND.include.dist \ 153135851Sdougb -p ${DESTDIR}${INCLUDEDIR} 154135851Sdougb.endif 155114731Sbde 156114731Sbdecopies: 157144514Simp.for i in ${LDIRS} ${LSUBDIRS} ${LSUBSUBDIRS} altq crypto machine machine/pc \ 158214629Sjhb ${_MARCHS} 159114731Sbde.if exists(${DESTDIR}${INCLUDEDIR}/$i) 160114731Sbde cd ${DESTDIR}${INCLUDEDIR}/$i; \ 161114731Sbde for h in *.h; do \ 162114731Sbde if [ -L $$h ]; then rm -f $$h; fi; \ 163114731Sbde done 164114731Sbde.endif 165114731Sbde.endfor 166246367Sjhb.for i in ${LDIRS} ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/bktr:Ndev/nand:Ndev/pci} ${LSUBSUBDIRS} 16754351Smarcel cd ${.CURDIR}/../sys; \ 168114731Sbde ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 $i/*.h \ 169114731Sbde ${DESTDIR}${INCLUDEDIR}/$i 17054351Smarcel.endfor 171143013Snjl cd ${.CURDIR}/../sys/dev/acpica; \ 172143013Snjl ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 acpiio.h \ 173143013Snjl ${DESTDIR}${INCLUDEDIR}/dev/acpica 174246367Sjhb cd ${.CURDIR}/../sys/dev/agp; \ 175246367Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 agpreg.h \ 176246367Sjhb ${DESTDIR}${INCLUDEDIR}/dev/agp 177123288Sobrien cd ${.CURDIR}/../sys/dev/bktr; \ 178123288Sobrien ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 ioctl_*.h \ 179123288Sobrien ${DESTDIR}${INCLUDEDIR}/dev/bktr 180235537Sgber.if ${MK_NAND} != "no" 181235537Sgber cd ${.CURDIR}/../sys/dev/nand; \ 182235537Sgber ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 nandsim.h \ 183235537Sgber ${DESTDIR}${INCLUDEDIR}/dev/nand; \ 184235537Sgber ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 nand_dev.h \ 185235537Sgber ${DESTDIR}${INCLUDEDIR}/dev/nand 186235537Sgber.endif 187246367Sjhb cd ${.CURDIR}/../sys/dev/pci; \ 188246367Sjhb ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 pcireg.h \ 189246367Sjhb ${DESTDIR}${INCLUDEDIR}/dev/pci 190130416Smlaier cd ${.CURDIR}/../sys/contrib/altq/altq; \ 191130416Smlaier ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 192130416Smlaier ${DESTDIR}${INCLUDEDIR}/altq 193166640Srodrigc cd ${.CURDIR}/../sys/fs/cd9660/; \ 194166640Srodrigc ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 195166640Srodrigc ${DESTDIR}${INCLUDEDIR}/isofs/cd9660 196156813Sru.if ${MK_IPFILTER} != "no" 197116734Sru cd ${.CURDIR}/../sys/contrib/ipfilter/netinet; \ 198116734Sru ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 199116734Sru ${DESTDIR}${INCLUDEDIR}/netinet 200145539Sscottl.endif 201143423Sume cd ${.CURDIR}/../sys/crypto; \ 202143423Sume ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 rijndael/rijndael.h \ 203143423Sume ${DESTDIR}${INCLUDEDIR}/crypto 204116734Sru cd ${.CURDIR}/../sys/opencrypto; \ 205116734Sru ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 206114731Sbde ${DESTDIR}${INCLUDEDIR}/crypto 207144514Simp cd ${.CURDIR}/../sys/${MACHINE}/include; \ 208114731Sbde ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 209114731Sbde ${DESTDIR}${INCLUDEDIR}/machine 210144514Simp.if exists(${.CURDIR}/../sys/${MACHINE}/include/pc) 211144514Simp cd ${.CURDIR}/../sys/${MACHINE}/include/pc; \ 212114731Sbde ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 213114731Sbde ${DESTDIR}${INCLUDEDIR}/machine/pc 21477857Sjlemon.endif 215214629Sjhb.for _MARCH in ${_MARCHS} 216214629Sjhb.if exists(${.CURDIR}/../sys/${_MARCH}/include) 217144561Simp ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 218144561Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH}; \ 219144514Simp cd ${.CURDIR}/../sys/${_MARCH}/include; \ 220144514Simp ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 221144514Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH} 222144514Simp.if exists(${.CURDIR}/../sys/${_MARCH}/include/pc) 223144561Simp ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 224144561Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 225144514Simp cd ${.CURDIR}/../sys/${_MARCH}/include/pc; \ 226144514Simp ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 227144514Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc 228144514Simp.endif 229144514Simp.endif 230214629Sjhb.endfor 231168677Spjd cd ${.CURDIR}/../sys/rpc; \ 232168677Spjd ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 types.h \ 233168677Spjd ${DESTDIR}${INCLUDEDIR}/rpc 2341539Srgrimes 23554351Smarcelsymlinks: 23654351Smarcel @${ECHO} "Setting up symlinks to kernel source tree..." 23756645Speter.for i in ${LDIRS} 238114731Sbde cd ${.CURDIR}/../sys/$i; \ 239114731Sbde for h in *.h; do \ 240114731Sbde ln -fs ../../../sys/$i/$$h ${DESTDIR}${INCLUDEDIR}/$i; \ 241114731Sbde done 24254351Smarcel.endfor 243246367Sjhb.for i in ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/bktr:Ndev/nand:Ndev/pci} 244114731Sbde cd ${.CURDIR}/../sys/$i; \ 245114731Sbde for h in *.h; do \ 246114731Sbde ln -fs ../../../../sys/$i/$$h ${DESTDIR}${INCLUDEDIR}/$i; \ 247114731Sbde done 24877046Sru.endfor 249143013Snjl cd ${.CURDIR}/../sys/dev/acpica; \ 250143013Snjl for h in acpiio.h; do \ 251143013Snjl ln -fs ../../../../sys/dev/acpica/$$h \ 252143013Snjl ${DESTDIR}${INCLUDEDIR}/dev/acpica; \ 253143013Snjl done 254246367Sjhb cd ${.CURDIR}/../sys/dev/agp; \ 255246367Sjhb for h in agpreg.h; do \ 256246367Sjhb ln -fs ../../../../sys/dev/agp/$$h \ 257246367Sjhb ${DESTDIR}${INCLUDEDIR}/dev/agp; \ 258246367Sjhb done 259142992Sru cd ${.CURDIR}/../sys/dev/bktr; \ 260142992Sru for h in ioctl_*.h; do \ 261142992Sru ln -fs ../../../../sys/dev/bktr/$$h \ 262142992Sru ${DESTDIR}${INCLUDEDIR}/dev/bktr; \ 263142992Sru done 264235537Sgber.if ${MK_NAND} != "no" 265235537Sgber cd ${.CURDIR}/../sys/dev/nand; \ 266235537Sgber for h in nandsim.h nand_dev.h; do \ 267235537Sgber ln -fs ../../../../sys/dev/nand/$$h \ 268235537Sgber ${DESTDIR}${INCLUDEDIR}/dev/nand; \ 269235537Sgber done 270235537Sgber.endif 271246367Sjhb cd ${.CURDIR}/../sys/dev/pci; \ 272246367Sjhb for h in pcireg.h; do \ 273246367Sjhb ln -fs ../../../../sys/dev/pci/$$h \ 274246367Sjhb ${DESTDIR}${INCLUDEDIR}/dev/pci; \ 275246367Sjhb done 276114731Sbde.for i in ${LSUBSUBDIRS} 277114731Sbde cd ${.CURDIR}/../sys/$i; \ 278114731Sbde for h in *.h; do \ 279114731Sbde ln -fs ../../../../../sys/$i/$$h ${DESTDIR}${INCLUDEDIR}/$i; \ 280114731Sbde done 281114731Sbde.endfor 282130416Smlaier cd ${.CURDIR}/../sys/contrib/altq/altq; \ 283130416Smlaier for h in *.h; do \ 284130416Smlaier ln -fs ../../../sys/contrib/altq/altq/$$h \ 285130416Smlaier ${DESTDIR}${INCLUDEDIR}/altq; \ 286130416Smlaier done 287156813Sru.if ${MK_IPFILTER} != "no" 288116734Sru cd ${.CURDIR}/../sys/contrib/ipfilter/netinet; \ 289116734Sru for h in *.h; do \ 290116734Sru ln -fs ../../../sys/contrib/ipfilter/netinet/$$h \ 291116734Sru ${DESTDIR}${INCLUDEDIR}/netinet; \ 292116734Sru done 293145539Sscottl.endif 294143423Sume cd ${.CURDIR}/../sys/crypto; \ 295143423Sume for h in rijndael/rijndael.h; do \ 296143423Sume ln -fs ../../../sys/crypto/$$h \ 297143423Sume ${DESTDIR}${INCLUDEDIR}/crypto; \ 298143423Sume done 299114731Sbde cd ${.CURDIR}/../sys/opencrypto; \ 300114731Sbde for h in *.h; do \ 301114731Sbde ln -fs ../../../sys/opencrypto/$$h \ 302114731Sbde ${DESTDIR}${INCLUDEDIR}/crypto; \ 303114731Sbde done 304144514Simp cd ${.CURDIR}/../sys/${MACHINE}/include; \ 305114731Sbde for h in *.h; do \ 306144514Simp ln -fs ../../../sys/${MACHINE}/include/$$h \ 307114731Sbde ${DESTDIR}${INCLUDEDIR}/machine; \ 308114731Sbde done 309144514Simp.if exists(${.CURDIR}/../sys/${MACHINE}/include/pc) 310144514Simp cd ${.CURDIR}/../sys/${MACHINE}/include/pc; \ 311114731Sbde for h in *.h; do \ 312144514Simp ln -fs ../../../../sys/${MACHINE}/include/pc/$$h \ 313114731Sbde ${DESTDIR}${INCLUDEDIR}/machine/pc; \ 314114731Sbde done 315114731Sbde.endif 316214629Sjhb.for _MARCH in ${_MARCHS} 317214629Sjhb.if exists(${.CURDIR}/../sys/${_MARCH}/include) 318144561Simp ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 319144561Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH}; \ 320144514Simp cd ${.CURDIR}/../sys/${_MARCH}/include; \ 321144514Simp for h in *.h; do \ 322144514Simp ln -fs ../../../sys/${_MARCH}/include/$$h \ 323144514Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH}; \ 324144514Simp done 325144514Simp.if exists(${.CURDIR}/../sys/${_MARCH}/include/pc) 326144561Simp ${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 \ 327144561Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 328144514Simp cd ${.CURDIR}/../sys/${_MARCH}/include/pc; \ 329144514Simp for h in *.h; do \ 330144514Simp ln -fs ../../../../sys/${_MARCH}/include/pc/$$h \ 331144514Simp ${DESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 332144514Simp done 333144514Simp.endif 334144514Simp.endif 335214629Sjhb.endfor 336166640Srodrigc cd ${.CURDIR}/../sys/fs/cd9660; \ 337166640Srodrigc for h in *.h; do \ 338166640Srodrigc ln -fs ../../../../sys/fs/cd9660/$$h \ 339166640Srodrigc ${DESTDIR}${INCLUDEDIR}/isofs/cd9660; \ 340166640Srodrigc done 341168677Spjd cd ${.CURDIR}/../sys/rpc; \ 342168677Spjd for h in types.h; do \ 343168677Spjd ln -fs ../../../sys/rpc/$$h \ 344168677Spjd ${DESTDIR}${INCLUDEDIR}/rpc; \ 345168677Spjd done 346