1bb90b105SRodney W. Grimes# from: @(#)Makefile 5.11 (Berkeley) 5/21/91 29b7a44a6SPeter Wemm# $FreeBSD$ 3b58c36c9SPeter Wemm 4c6063d0dSWarner Losh.include <src.opts.mk> 5a8b8edb2SMaxim Sobolev.include <src.tools.mk> 6e1fe3dbaSRuslan Ermilov 7dd181acaSGlen BarberFILESGROUPS= FILES 8874e7db1SBaptiste DaroussinNLS_ALIASES= POSIX C \ 9874e7db1SBaptiste Daroussin en_US.US_ASCII C 10dd181acaSGlen Barber 11d5cc0579SBryan Drewery# No need as it is empty and just causes rebuilds since this file does so much. 12d5cc0579SBryan DreweryUPDATE_DEPENDFILE= no 135e497231SEnji Cooper 143078531dSMaxim SobolevSUBDIR+=termcap 15e1fe3dbaSRuslan Ermilov.if ${MK_SENDMAIL} != "no" 165e497231SEnji CooperSUBDIR+=sendmail 17193f471dSGregory Neil Shapiro.endif 181bf9d5d9SRodney W. Grimes 19690f477dSSam Leffler# NB: keep these sorted by MK_* knobs 20690f477dSSam Leffler 21cb99e935SKyle EvansETCMAIL=aliases 22cb99e935SKyle Evans.if ${MK_SENDMAIL} != "no" 23cb99e935SKyle EvansETCMAIL+=Makefile README access.sample virtusertable.sample \ 24cb99e935SKyle Evans mailertable.sample 256e82f17aSGregory Neil Shapiro.endif 261bf9d5d9SRodney W. Grimes 27f9b4e354SRodney W. Grimes# Special top level files for FreeBSD 28831568b9SRuslan ErmilovFREEBSD=COPYRIGHT 29990baf30SRodney W. Grimes 304a63ae11SBrooks Davis# Sanitize DESTDIR 314a63ae11SBrooks DavisDESTDIR:= ${DESTDIR:C://*:/:g} 324a63ae11SBrooks Davis 33bbe8270cSRuslan Ermilovafterinstall: 34e1fe3dbaSRuslan Ermilov.if ${MK_MAN} != "no" 356dcff5b7SWarner Losh ${_+_}cd ${SRCTOP}/share/man; ${MAKE} makedb 36bbe8270cSRuslan Ermilov.endif 37bbe8270cSRuslan Ermilov 3848327bc9SPoul-Henning Kampdistribute: 39e8a34402SJulio Merino # Avoid installing tests here; "make distribution" will do this and 40e8a34402SJulio Merino # correctly place them in the right location. 41e8a34402SJulio Merino ${_+_}cd ${.CURDIR} ; ${MAKE} MK_TESTS=no install \ 42e8a34402SJulio Merino DESTDIR=${DISTDIR}/${DISTRIBUTION} 43e0cb3d9cSYaroslav Tykhiy ${_+_}cd ${.CURDIR} ; ${MAKE} distribution DESTDIR=${DISTDIR}/${DISTRIBUTION} 44012f2ce7SPaul Traina 4580f64943SRuslan Ermilov.include <bsd.endian.mk> 4680f64943SRuslan Ermilov 4764dc091fSBrooks Davis.if defined(NO_ROOT) 4864dc091fSBrooks DavisMETALOG.add?= cat -l >> ${METALOG} 4964dc091fSBrooks Davis.endif 5064dc091fSBrooks Davis 5148327bc9SPoul-Henning Kampdistribution: 521ede9a7dSRuslan Ermilov.if !defined(DESTDIR) 531ede9a7dSRuslan Ermilov @echo "set DESTDIR before running \"make ${.TARGET}\"" 541ede9a7dSRuslan Ermilov @false 551ede9a7dSRuslan Ermilov.endif 56e0cb3d9cSYaroslav Tykhiy ${_+_}cd ${.CURDIR}/gss; ${MAKE} install 57e017348aSEnji Cooper ${_+_}cd ${.CURDIR}/mtree; ${MAKE} install 586dcff5b7SWarner Losh ${_+_}cd ${SRCTOP}/share/termcap; ${MAKE} etc-termcap 596dcff5b7SWarner Losh ${_+_}cd ${SRCTOP}/usr.sbin/rmt; ${MAKE} etc-rmt 60156ebad6SKyle Evans ${INSTALL_SYMLINK} -T "package=runtime" ../var/run/os-release \ 616467506bSWarner Losh ${DESTDIR}/etc/os-release 6262a149bfSTobias C. Berner ${INSTALL_SYMLINK} -T "package=runtime" ../var/db/machine-id \ 6362a149bfSTobias C. Berner ${DESTDIR}/etc/machine-id 6463d39beaSDag-Erling Smørgrav.if ${MK_UNBOUND} != "no" 6563d39beaSDag-Erling Smørgrav if [ ! -e ${DESTDIR}/etc/unbound ]; then \ 6615779434SEmmanuel Vadot ${INSTALL_SYMLINK} -T "package=unbound" \ 6715779434SEmmanuel Vadot ../var/unbound ${DESTDIR}/etc/unbound; \ 6863d39beaSDag-Erling Smørgrav fi 6963d39beaSDag-Erling Smørgrav.endif 70e1fe3dbaSRuslan Ermilov.if ${MK_SENDMAIL} != "no" 71e0cb3d9cSYaroslav Tykhiy ${_+_}cd ${.CURDIR}/sendmail; ${MAKE} distribution 72193f471dSGregory Neil Shapiro.endif 73e1fe3dbaSRuslan Ermilov.if ${MK_KERBEROS} != "no" 7499d38d6cSPoul-Henning Kamp cd ${.CURDIR}/root; \ 7599d38d6cSPoul-Henning Kamp ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ 7615779434SEmmanuel Vadot -T "package=runtime" \ 7799d38d6cSPoul-Henning Kamp dot.k5login ${DESTDIR}/root/.k5login; 7899d38d6cSPoul-Henning Kamp.endif 79b26c7f7fSBrad Davis 80dfdf74eaSEnji Cooper.if ${MK_MAIL} != "no" 81d2893b16SRuslan Ermilov cd ${.CURDIR}/mail; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ 82ed0a582dSEmmanuel Vadot -T "package=sendmail" ${ETCMAIL} ${DESTDIR}/etc/mail 837ccabb05SEitan Adler if [ -d ${DESTDIR}/etc/mail -a -f ${DESTDIR}/etc/mail/aliases -a \ 844bcefa96SGregory Neil Shapiro ! -f ${DESTDIR}/etc/aliases ]; then \ 85ed0a582dSEmmanuel Vadot ${INSTALL_SYMLINK} -T "package=sendmail" \ 8615779434SEmmanuel Vadot mail/aliases ${DESTDIR}/etc/aliases; \ 874bcefa96SGregory Neil Shapiro fi 88690f477dSSam Leffler.endif 89f515b598SEnji Cooper.if ${MK_LOCATE} != "no" 9015779434SEmmanuel Vadot ${INSTALL} -o nobody -g ${BINGRP} -m 644 -T "package=runtime"\ 9115779434SEmmanuel Vadot /dev/null ${DESTDIR}/var/db/locate.database 92f515b598SEnji Cooper.endif 93d2893b16SRuslan Ermilov cd ${.CURDIR}/..; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \ 9415779434SEmmanuel Vadot -T "package=runtime" ${FREEBSD} ${DESTDIR}/ 95ac796179SAndriy Gapon.if ${MK_BOOT} != "no" 966dcff5b7SWarner Losh.if exists(${SRCTOP}/sys/${MACHINE}/conf/GENERIC.hints) 97920fa8dcSRuslan Ermilov ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \ 98c016c891SEmmanuel Vadot -T "package=bootloader,config" \ 996dcff5b7SWarner Losh ${SRCTOP}/sys/${MACHINE}/conf/GENERIC.hints \ 100920fa8dcSRuslan Ermilov ${DESTDIR}/boot/device.hints 101b906fea6SWarner Losh.endif 102ac796179SAndriy Gapon.endif 1031bf9d5d9SRodney W. Grimes 10475534bdaSBrooks DavisMTREES= mtree/BSD.root.dist / \ 10575534bdaSBrooks Davis mtree/BSD.var.dist /var \ 10675534bdaSBrooks Davis mtree/BSD.usr.dist /usr \ 1075dd72ff5SEd Maste mtree/BSD.include.dist /usr/include \ 1085dd72ff5SEd Maste mtree/BSD.debug.dist /usr/lib 10974c52c65SJulio Merino.if ${MK_LIB32} != "no" 11074c52c65SJulio MerinoMTREES+= mtree/BSD.lib32.dist /usr 11174c52c65SJulio MerinoMTREES+= mtree/BSD.lib32.dist /usr/lib/debug/usr 11274c52c65SJulio Merino.endif 113e2197f80SRui Paulo.if ${MK_TESTS} != "no" 114f703589eSEnji CooperMTREES+= mtree/BSD.tests.dist ${TESTSBASE} 11507670b30SEd MasteMTREES+= mtree/BSD.tests.dist /usr/lib/debug/${TESTSBASE} 116e2197f80SRui Paulo.endif 117e1fe3dbaSRuslan Ermilov.if ${MK_SENDMAIL} != "no" 11875534bdaSBrooks DavisMTREES+= mtree/BSD.sendmail.dist / 1198f1bb389SDoug Barton.endif 12075534bdaSBrooks Davis.for mtree in ${LOCAL_MTREE} 12175534bdaSBrooks DavisMTREES+= ../${mtree} / 12275534bdaSBrooks Davis.endfor 12375534bdaSBrooks Davis 124*fcaf7f86SDimitry Andric# Clean up files that have changed into directories, as mtree cannot handle this 125*fcaf7f86SDimitry Andric# scenario. 126*fcaf7f86SDimitry AndricDISTRIB_CLEANUP_FILES+= ${INCLUDEDIR}/c++/v1/__string 12726de3a17SBrad Davisdistrib-cleanup: .PHONY 128*fcaf7f86SDimitry Andric for file in ${DISTRIB_CLEANUP_FILES}; do \ 12926de3a17SBrad Davis if [ -f ${DESTDIR}/$${file} ]; then \ 13026de3a17SBrad Davis rm -f ${DESTDIR}/$${file}; \ 13126de3a17SBrad Davis fi; \ 13226de3a17SBrad Davis done 13326de3a17SBrad Davis 13426de3a17SBrad Davisdistrib-dirs: ${MTREES:N/*} distrib-cleanup .PHONY 13597dc79f2SBaptiste Daroussin.for _m _d in ${MTREES} 13697dc79f2SBaptiste Daroussin @m=${.CURDIR}/${_m}; \ 13797dc79f2SBaptiste Daroussin d=${DESTDIR}${_d}; \ 138f703589eSEnji Cooper test -d $$d || mkdir -p $$d; \ 13915482f3fSBryan Drewery ${ECHO} ${MTREE_CMD} -deU ${MTREE_FSCHG} \ 14015482f3fSBryan Drewery ${MTREE_FOLLOWS_SYMLINKS} -f $$m -p $$d; \ 141e8f617fdSSimon J. Gerraty ${MTREE_FILTER} $$m | \ 14215482f3fSBryan Drewery ${MTREE_CMD} -deU ${MTREE_FSCHG} ${MTREE_FOLLOWS_SYMLINKS} \ 1434dd729a5SBaptiste Daroussin -p $$d 14497dc79f2SBaptiste Daroussin.endfor 1454a63ae11SBrooks Davis.if defined(NO_ROOT) 14697dc79f2SBaptiste Daroussin.for _m _d in ${MTREES} 14797dc79f2SBaptiste Daroussin @m=${.CURDIR}/${_m}; \ 14897dc79f2SBaptiste Daroussin d=${_d}; \ 14976c100d6SJessica Clarke test "$$d" = "/" && d=""; \ 1504a63ae11SBrooks Davis d=${DISTBASE}$$d; \ 1518c507534SAndrew Turner test -d ${DESTDIR}/$$d || mkdir -p ${DESTDIR}/$$d; \ 15225f0135cSKyle Evans ${ECHO} "${MTREE_CMD:N-W} -C -f $$m -K all | " \ 1538caedc2aSBrooks Davis "sed s#^\.#.$$d# | ${METALOG.add}" ; \ 154e8f617fdSSimon J. Gerraty ${MTREE_FILTER} $$m | \ 15525f0135cSKyle Evans ${MTREE_CMD:N-W} -C -K all | sed s#^\.#.$$d# | \ 1564dd729a5SBaptiste Daroussin ${METALOG.add} 15797dc79f2SBaptiste Daroussin.endfor 1584a63ae11SBrooks Davis.endif 159f515b598SEnji Cooper.if ${MK_NLS} != "no" 160874e7db1SBaptiste Daroussin.for alias nls in ${NLS_ALIASES} 161d3c87514SEd Maste ${INSTALL_SYMLINK} -T "package=utilities" \ 162d3c87514SEd Maste "${nls}" "${DESTDIR}${SHAREDIR}/nls/${alias}" 163874e7db1SBaptiste Daroussin.endfor 164f515b598SEnji Cooper.endif 1656e1a887cSRodney W. Grimes 1661bf9d5d9SRodney W. Grimes.include <bsd.prog.mk> 16727f3f39aSBryan Drewery 16827f3f39aSBryan Drewery.if ${MK_INSTALL_AS_USER} == "yes" && ${_uid} != 0 16927f3f39aSBryan DreweryMTREE_FILTER= sed -e 's,\([gu]\)name=,\1id=,g' \ 17027f3f39aSBryan Drewery -e 's,\(uid=\)[^ ]* ,\1${_uid} ,' \ 17127f3f39aSBryan Drewery -e 's,\(gid=\)[^ ]* ,\1${_gid} ,' \ 17227f3f39aSBryan Drewery -e 's,\(uid=\)[^ ]*$$,\1${_uid},' \ 17327f3f39aSBryan Drewery -e 's,\(gid=\)[^ ]*$$,\1${_gid},' 17427f3f39aSBryan Drewery.else 17527f3f39aSBryan DreweryMTREE_FILTER= cat 17627f3f39aSBryan Drewery.if !defined(NO_FSCHG) 17727f3f39aSBryan DreweryMTREE_FSCHG= -i 17827f3f39aSBryan Drewery.endif 17927f3f39aSBryan Drewery.endif 180