1996997fdSBruce Evans# @(#)Makefile 8.2 (Berkeley) 1/4/94 2a4add9a9SPeter Wemm# $FreeBSD$ 359deaec5SRodney W. Grimes# 459deaec5SRodney W. Grimes# Doing a make install builds /usr/include 515f3c66cSMarcel Moolenaar# 615f3c66cSMarcel Moolenaar# The ``rm -rf''s used below are safe because rm doesn't follow symbolic 715f3c66cSMarcel Moolenaar# links. 859deaec5SRodney W. Grimes 9976cca35SBruce EvansCLEANFILES= osreldate.h version vers.c 10c7b111cbSRuslan ErmilovSUBDIR= arpa protocols rpcsvc rpc 11c7b111cbSRuslan ErmilovINCS= a.out.h ar.h assert.h bitstring.h complex.h ctype.h db.h \ 126ba22b48SPoul-Henning Kamp dirent.h \ 13385789f5SDavid E. O'Brien dlfcn.h elf.h elf-hints.h err.h fnmatch.h fstab.h \ 148203d651SRuslan Ermilov fts.h glob.h grp.h \ 15d786139cSMaxime Henrion hesiod.h histedit.h ieeefp.h ifaddrs.h inttypes.h iso646.h kenv.h \ 16d786139cSMaxime Henrion langinfo.h \ 178203d651SRuslan Ermilov libgen.h limits.h link.h locale.h malloc.h memory.h monetary.h mpool.h \ 188203d651SRuslan Ermilov ndbm.h netconfig.h netdb.h nl_types.h nlist.h nsswitch.h objformat.h \ 19917e476dSPeter Dufault paths.h pthread.h pthread_np.h pwd.h \ 2013d98e8cSBrian Feldman ranlib.h readpassphrase.h regex.h regexp.h resolv.h rune.h runetype.h \ 2164566a3eSAlfred Perlstein search.h setjmp.h sgtty.h \ 228203d651SRuslan Ermilov signal.h stab.h stdbool.h stddef.h stdio.h stdlib.h strhash.h \ 238203d651SRuslan Ermilov string.h stringlist.h strings.h sysexits.h tar.h time.h timers.h \ 24c424b7d0SRuslan Ermilov ttyent.h unistd.h utime.h utmp.h vis.h wchar.h wctype.h 2559deaec5SRodney W. Grimes 26a7aaf57eSRuslan ErmilovMHDRS= float.h floatingpoint.h stdarg.h varargs.h 27917e476dSPeter Dufault 28917e476dSPeter Dufault# posix4/aio.h conflicts with dysons and isn't installed: 29a7aaf57eSRuslan ErmilovPHDRS= mqueue.h sched.h semaphore.h # aio.h 30917e476dSPeter Dufault 31a7aaf57eSRuslan ErmilovLHDRS= aio.h errno.h fcntl.h linker_set.h poll.h stdint.h syslog.h \ 320e8911b3SJohn Baldwin termios.h ucontext.h 3359deaec5SRodney W. Grimes 341166fb51SRuslan ErmilovLDIRS= cam net netatalk netatm netgraph netinet netinet6 \ 3591196234SPeter Wemm netipx netkey netnatm netncp netns netsmb nfs nfsclient nfsserver \ 3691196234SPeter Wemm pccard posix4 sys vm 3715f3c66cSMarcel Moolenaar 380d6fcb5cSDoug AmbriskoLSUBDIRS= cam/scsi dev/ic dev/ppbus dev/usb dev/wi dev/an fs/devfs \ 398a8402d3SRuslan Ermilov fs/fdescfs fs/fifofs fs/msdosfs fs/ntfs fs/nullfs fs/nwfs fs/portalfs \ 401166fb51SRuslan Ermilov fs/procfs fs/smbfs fs/umapfs fs/unionfs isofs/cd9660 \ 419f1207d5SRuslan Ermilov netatm/ipatm netatm/sigpvc netatm/spans netatm/uni \ 429f1207d5SRuslan Ermilov security/lomac \ 43c3154730SPoul-Henning Kamp ufs/ffs ufs/ufs 4415f3c66cSMarcel Moolenaar 459f1207d5SRuslan Ermilov# For SHARED=symlinks, cam and netatm are symlinks, so cam/scsi and netatm/* 469f1207d5SRuslan Ermilov# are taken care of 479f1207d5SRuslan ErmilovLSYMSUBDIRS= ${LSUBDIRS:Ncam/scsi:Nnetatm/*} 48c2608318SRuslan Ermilov 4915f3c66cSMarcel Moolenaar# Define SHARED to indicate whether you want symbolic links to the system 5015f3c66cSMarcel Moolenaar# source (``symlinks''), or a separate copy (``copies''). ``symlinks'' is 5115f3c66cSMarcel Moolenaar# probably only useful for developers and should be avoided if you do not 5215f3c66cSMarcel Moolenaar# wish to tie your /usr/include and /usr/src together. 5315f3c66cSMarcel Moolenaar#SHARED= symlinks 5415f3c66cSMarcel MoolenaarSHARED?= copies 5559deaec5SRodney W. Grimes 56c7b111cbSRuslan ErmilovINCS+= osreldate.h 573672faeaSPeter Wemm 583933c622SEivind Eklundosreldate.h: ${.CURDIR}/../sys/conf/newvers.sh \ 59766ea92bSPeter Wemm ${.CURDIR}/../sys/sys/param.h \ 60766ea92bSPeter Wemm ${.CURDIR}/Makefile 613672faeaSPeter Wemm @${ECHO} creating osreldate.h from newvers.sh 623933c622SEivind Eklund setvar PARAMFILE ${.CURDIR}/../sys/sys/param.h; \ 633672faeaSPeter Wemm . ${.CURDIR}/../sys/conf/newvers.sh; \ 643672faeaSPeter Wemm echo "$$COPYRIGHT" > osreldate.h; \ 6544cde775SPeter Wemm echo "#ifdef _KERNEL" >> osreldate.h; \ 66766ea92bSPeter Wemm echo '#error "/usr/include/osreldate.h cannot be used in the kernel, use sys/param.h"' >> osreldate.h; \ 6744cde775SPeter Wemm echo "#else" >> osreldate.h; \ 683672faeaSPeter Wemm echo \#'undef __FreeBSD_version' >> osreldate.h; \ 6944cde775SPeter Wemm echo \#'define __FreeBSD_version' $$RELDATE >> osreldate.h; \ 7044cde775SPeter Wemm echo "#endif" >> osreldate.h 713672faeaSPeter Wemm 72a7aaf57eSRuslan Ermilov.for i in ${LHDRS} 73c7b111cbSRuslan ErmilovINCSLINKS+= sys/$i ${INCLUDEDIR}/$i 7402cca882SMarcel Moolenaar.endfor 75a7aaf57eSRuslan Ermilov.for i in ${MHDRS} 76c7b111cbSRuslan ErmilovINCSLINKS+= machine/$i ${INCLUDEDIR}/$i 7702cca882SMarcel Moolenaar.endfor 78a7aaf57eSRuslan Ermilov.for i in ${PHDRS} 79c7b111cbSRuslan ErmilovINCSLINKS+= posix4/$i ${INCLUDEDIR}/$i 8002cca882SMarcel Moolenaar.endfor 8115f3c66cSMarcel Moolenaar 8215f3c66cSMarcel Moolenaarcopies: 83c2608318SRuslan Ermilov.for i in ${LDIRS} ${LSYMSUBDIRS} machine 8415f3c66cSMarcel Moolenaar if [ -h ${DESTDIR}/usr/include/$i ]; then \ 8515f3c66cSMarcel Moolenaar rm -f ${DESTDIR}/usr/include/$i; \ 8615f3c66cSMarcel Moolenaar fi 8715f3c66cSMarcel Moolenaar.endfor 8840a9e718SAndrey A. Chernov mtree -deU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/../etc/mtree/BSD.include.dist \ 8915f3c66cSMarcel Moolenaar -p ${DESTDIR}/usr/include 9015f3c66cSMarcel Moolenaar.for i in ${LDIRS} ${LSUBDIRS} 9115f3c66cSMarcel Moolenaar cd ${.CURDIR}/../sys; \ 9215f3c66cSMarcel Moolenaar ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 $i/*.h \ 9315f3c66cSMarcel Moolenaar ${DESTDIR}/usr/include/$i 9415f3c66cSMarcel Moolenaar.endfor 9586663b44SJonathan Lemon.if exists(${.CURDIR}/../sys/${MACHINE_ARCH}/include) 9686663b44SJonathan Lemon cd ${.CURDIR}/../sys/${MACHINE_ARCH}/include; \ 9786663b44SJonathan Lemon ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 9886663b44SJonathan Lemon ${DESTDIR}/usr/include/machine 999f1207d5SRuslan Ermilov.if exists(${.CURDIR}/../sys/${MACHINE_ARCH}/include/pc) 1009f1207d5SRuslan Ermilov cd ${.CURDIR}/../sys/${MACHINE_ARCH}/include/pc; \ 1019f1207d5SRuslan Ermilov ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 1029f1207d5SRuslan Ermilov ${DESTDIR}/usr/include/machine/pc 10386663b44SJonathan Lemon.endif 1049f1207d5SRuslan Ermilov.endif 10559deaec5SRodney W. Grimes 10615f3c66cSMarcel Moolenaarsymlinks: 10715f3c66cSMarcel Moolenaar @${ECHO} "Setting up symlinks to kernel source tree..." 108400dc950SPeter Wemm.for i in ${LDIRS} 10915f3c66cSMarcel Moolenaar rm -rf ${DESTDIR}/usr/include/$i 11015f3c66cSMarcel Moolenaar ln -s ../../sys/$i ${DESTDIR}/usr/include/$i 11115f3c66cSMarcel Moolenaar.endfor 112c2608318SRuslan Ermilov.for i in ${LSYMSUBDIRS} 11382813a8cSRuslan Ermilov rm -rf ${DESTDIR}/usr/include/$i 114c2608318SRuslan Ermilov ln -s ../../../sys/$i ${DESTDIR}/usr/include/$i 115400dc950SPeter Wemm.endfor 11615f3c66cSMarcel Moolenaar rm -rf ${DESTDIR}/usr/include/machine 11715f3c66cSMarcel Moolenaar ln -s ../../sys/${MACHINE_ARCH}/include ${DESTDIR}/usr/include/machine 11815f3c66cSMarcel Moolenaar 119c7b111cbSRuslan Ermilov_incsinstall: ${SHARED} 120c7b111cbSRuslan Ermilov 12159deaec5SRodney W. Grimes.include <bsd.prog.mk> 122