1c6063d0dSWarner Losh.include <src.opts.mk> 2a8b8edb2SMaxim Sobolev.include <src.tools.mk> 3e1fe3dbaSRuslan Ermilov 4949199a2SJessica Clarke.include <bsd.compat.pre.mk> 5949199a2SJessica Clarke 6dd181acaSGlen BarberFILESGROUPS= FILES 7874e7db1SBaptiste DaroussinNLS_ALIASES= POSIX C \ 8874e7db1SBaptiste Daroussin en_US.US_ASCII C 9dd181acaSGlen Barber 10d5cc0579SBryan Drewery# No need as it is empty and just causes rebuilds since this file does so much. 11d5cc0579SBryan DreweryUPDATE_DEPENDFILE= no 125e497231SEnji Cooper 133078531dSMaxim SobolevSUBDIR+=termcap 14e1fe3dbaSRuslan Ermilov.if ${MK_SENDMAIL} != "no" 155e497231SEnji CooperSUBDIR+=sendmail 16193f471dSGregory Neil Shapiro.endif 171bf9d5d9SRodney W. Grimes 18690f477dSSam Leffler# NB: keep these sorted by MK_* knobs 19690f477dSSam Leffler 20cb99e935SKyle EvansETCMAIL=aliases 21cb99e935SKyle Evans.if ${MK_SENDMAIL} != "no" 228cd7841dSBaptiste DaroussinETCMAIL_SENDMAIL+=Makefile README access.sample virtusertable.sample \ 23cb99e935SKyle Evans mailertable.sample 246e82f17aSGregory Neil Shapiro.endif 251bf9d5d9SRodney W. Grimes 26f9b4e354SRodney W. Grimes# Special top level files for FreeBSD 27831568b9SRuslan ErmilovFREEBSD=COPYRIGHT 28990baf30SRodney W. Grimes 294a63ae11SBrooks Davis# Sanitize DESTDIR 304a63ae11SBrooks DavisDESTDIR:= ${DESTDIR:C://*:/:g} 314a63ae11SBrooks Davis 32bbe8270cSRuslan Ermilovafterinstall: 33e1fe3dbaSRuslan Ermilov.if ${MK_MAN} != "no" 346dcff5b7SWarner Losh ${_+_}cd ${SRCTOP}/share/man; ${MAKE} makedb 35bbe8270cSRuslan Ermilov.endif 36bbe8270cSRuslan Ermilov 3748327bc9SPoul-Henning Kampdistribute: 38e8a34402SJulio Merino # Avoid installing tests here; "make distribution" will do this and 39e8a34402SJulio Merino # correctly place them in the right location. 40e8a34402SJulio Merino ${_+_}cd ${.CURDIR} ; ${MAKE} MK_TESTS=no install \ 41ce047ebfSJessica Clarke DISTBASE=/${DISTRIBUTION} DESTDIR=${DISTDIR}/${DISTRIBUTION} 42ce047ebfSJessica Clarke ${_+_}cd ${.CURDIR} ; ${MAKE} distribution \ 43ce047ebfSJessica Clarke DISTBASE=/${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 56*1b735665SCy Schubert.if ${MK_MITKRB5} != "no" 57*1b735665SCy Schubert ${_+_}cd ${.CURDIR}/gss-krb5; ${MAKE} install 58*1b735665SCy Schubert.else 59e0cb3d9cSYaroslav Tykhiy ${_+_}cd ${.CURDIR}/gss; ${MAKE} install 60*1b735665SCy Schubert.endif 61e017348aSEnji Cooper ${_+_}cd ${.CURDIR}/mtree; ${MAKE} install 626dcff5b7SWarner Losh ${_+_}cd ${SRCTOP}/share/termcap; ${MAKE} etc-termcap 636dcff5b7SWarner Losh ${_+_}cd ${SRCTOP}/usr.sbin/rmt; ${MAKE} etc-rmt 64156ebad6SKyle Evans ${INSTALL_SYMLINK} -T "package=runtime" ../var/run/os-release \ 656467506bSWarner Losh ${DESTDIR}/etc/os-release 6663d39beaSDag-Erling Smørgrav.if ${MK_UNBOUND} != "no" 6763d39beaSDag-Erling Smørgrav if [ ! -e ${DESTDIR}/etc/unbound ]; then \ 6815779434SEmmanuel Vadot ${INSTALL_SYMLINK} -T "package=unbound" \ 6915779434SEmmanuel Vadot ../var/unbound ${DESTDIR}/etc/unbound; \ 7063d39beaSDag-Erling Smørgrav fi 7163d39beaSDag-Erling Smørgrav.endif 72e1fe3dbaSRuslan Ermilov.if ${MK_SENDMAIL} != "no" 73e0cb3d9cSYaroslav Tykhiy ${_+_}cd ${.CURDIR}/sendmail; ${MAKE} distribution 74193f471dSGregory Neil Shapiro.endif 75e1fe3dbaSRuslan Ermilov.if ${MK_KERBEROS} != "no" 7699d38d6cSPoul-Henning Kamp cd ${.CURDIR}/root; \ 7799d38d6cSPoul-Henning Kamp ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ 78eef0c78eSLexi Winter -T "package=runtime,config" \ 7999d38d6cSPoul-Henning Kamp dot.k5login ${DESTDIR}/root/.k5login; 8099d38d6cSPoul-Henning Kamp.endif 81b26c7f7fSBrad Davis 82dfdf74eaSEnji Cooper.if ${MK_MAIL} != "no" 83d2893b16SRuslan Ermilov cd ${.CURDIR}/mail; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ 848cd7841dSBaptiste Daroussin -T "package=runtime,config" ${ETCMAIL} ${DESTDIR}/etc/mail 857ccabb05SEitan Adler if [ -d ${DESTDIR}/etc/mail -a -f ${DESTDIR}/etc/mail/aliases -a \ 864bcefa96SGregory Neil Shapiro ! -f ${DESTDIR}/etc/aliases ]; then \ 878cd7841dSBaptiste Daroussin ${INSTALL_SYMLINK} -T "package=runtime" \ 8815779434SEmmanuel Vadot mail/aliases ${DESTDIR}/etc/aliases; \ 894bcefa96SGregory Neil Shapiro fi 90690f477dSSam Leffler.endif 918cd7841dSBaptiste Daroussin.if ${MK_SENDMAIL} != "no" 928cd7841dSBaptiste Daroussin cd ${.CURDIR}/mail; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ 938cd7841dSBaptiste Daroussin -T "package=sendmail" ${ETCMAIL_SENDMAIL} ${DESTDIR}/etc/mail 948cd7841dSBaptiste Daroussin.endif 95d2893b16SRuslan Ermilov cd ${.CURDIR}/..; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \ 9615779434SEmmanuel Vadot -T "package=runtime" ${FREEBSD} ${DESTDIR}/ 97ac796179SAndriy Gapon.if ${MK_BOOT} != "no" 986dcff5b7SWarner Losh.if exists(${SRCTOP}/sys/${MACHINE}/conf/GENERIC.hints) 99920fa8dcSRuslan Ermilov ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \ 100c016c891SEmmanuel Vadot -T "package=bootloader,config" \ 1016dcff5b7SWarner Losh ${SRCTOP}/sys/${MACHINE}/conf/GENERIC.hints \ 102920fa8dcSRuslan Ermilov ${DESTDIR}/boot/device.hints 103b906fea6SWarner Losh.endif 104ac796179SAndriy Gapon.endif 1051bf9d5d9SRodney W. Grimes 10675534bdaSBrooks DavisMTREES= mtree/BSD.root.dist / \ 10775534bdaSBrooks Davis mtree/BSD.var.dist /var \ 10875534bdaSBrooks Davis mtree/BSD.usr.dist /usr \ 1095dd72ff5SEd Maste mtree/BSD.include.dist /usr/include \ 1105dd72ff5SEd Maste mtree/BSD.debug.dist /usr/lib 111949199a2SJessica Clarke.for LIBCOMPAT libcompat in ${_ALL_LIBCOMPATS_libcompats} 112949199a2SJessica Clarke.if ${MK_LIB${LIBCOMPAT}} != "no" 113949199a2SJessica ClarkeMTREES+= mtree/BSD.lib${libcompat}.dist /usr 114949199a2SJessica ClarkeMTREES+= mtree/BSD.lib${libcompat}.dist /usr/lib/debug/usr 11574c52c65SJulio Merino.endif 116949199a2SJessica Clarke.endfor 117e2197f80SRui Paulo.if ${MK_TESTS} != "no" 118f703589eSEnji CooperMTREES+= mtree/BSD.tests.dist ${TESTSBASE} 11901ff67f4SJose Luis DuranMTREES+= mtree/BSD.tests.dist /usr/lib/debug${TESTSBASE} 120e2197f80SRui Paulo.endif 121e1fe3dbaSRuslan Ermilov.if ${MK_SENDMAIL} != "no" 12275534bdaSBrooks DavisMTREES+= mtree/BSD.sendmail.dist / 1238f1bb389SDoug Barton.endif 12475534bdaSBrooks Davis.for mtree in ${LOCAL_MTREE} 12575534bdaSBrooks DavisMTREES+= ../${mtree} / 12675534bdaSBrooks Davis.endfor 12775534bdaSBrooks Davis 128fcaf7f86SDimitry Andric# Clean up files that have changed into directories, as mtree cannot handle this 129fcaf7f86SDimitry Andric# scenario. 130fcaf7f86SDimitry AndricDISTRIB_CLEANUP_FILES+= ${INCLUDEDIR}/c++/v1/__string 131ca217224SDimitry AndricDISTRIB_CLEANUP_FILES+= ${INCLUDEDIR}/c++/v1/__tuple 132e368e9b7SDimitry AndricDISTRIB_CLEANUP_FILES+= ${LIBEXECDIR}/kgdb 13326de3a17SBrad Davisdistrib-cleanup: .PHONY 134fcaf7f86SDimitry Andric for file in ${DISTRIB_CLEANUP_FILES}; do \ 13526de3a17SBrad Davis if [ -f ${DESTDIR}/$${file} ]; then \ 13626de3a17SBrad Davis rm -f ${DESTDIR}/$${file}; \ 13726de3a17SBrad Davis fi; \ 13826de3a17SBrad Davis done 13926de3a17SBrad Davis 14026de3a17SBrad Davisdistrib-dirs: ${MTREES:N/*} distrib-cleanup .PHONY 14197dc79f2SBaptiste Daroussin.for _m _d in ${MTREES} 14297dc79f2SBaptiste Daroussin @m=${.CURDIR}/${_m}; \ 14397dc79f2SBaptiste Daroussin d=${DESTDIR}${_d}; \ 144f703589eSEnji Cooper test -d $$d || mkdir -p $$d; \ 14515482f3fSBryan Drewery ${ECHO} ${MTREE_CMD} -deU ${MTREE_FSCHG} \ 14615482f3fSBryan Drewery ${MTREE_FOLLOWS_SYMLINKS} -f $$m -p $$d; \ 147e8f617fdSSimon J. Gerraty ${MTREE_FILTER} $$m | \ 14815482f3fSBryan Drewery ${MTREE_CMD} -deU ${MTREE_FSCHG} ${MTREE_FOLLOWS_SYMLINKS} \ 1494dd729a5SBaptiste Daroussin -p $$d 15097dc79f2SBaptiste Daroussin.endfor 1514a63ae11SBrooks Davis.if defined(NO_ROOT) 15297dc79f2SBaptiste Daroussin.for _m _d in ${MTREES} 15397dc79f2SBaptiste Daroussin @m=${.CURDIR}/${_m}; \ 15497dc79f2SBaptiste Daroussin d=${_d}; \ 15576c100d6SJessica Clarke test "$$d" = "/" && d=""; \ 1564a63ae11SBrooks Davis d=${DISTBASE}$$d; \ 15725f0135cSKyle Evans ${ECHO} "${MTREE_CMD:N-W} -C -f $$m -K all | " \ 1588caedc2aSBrooks Davis "sed s#^\.#.$$d# | ${METALOG.add}" ; \ 159e8f617fdSSimon J. Gerraty ${MTREE_FILTER} $$m | \ 16025f0135cSKyle Evans ${MTREE_CMD:N-W} -C -K all | sed s#^\.#.$$d# | \ 1614dd729a5SBaptiste Daroussin ${METALOG.add} 16297dc79f2SBaptiste Daroussin.endfor 1634a63ae11SBrooks Davis.endif 164f515b598SEnji Cooper.if ${MK_NLS} != "no" 165874e7db1SBaptiste Daroussin.for alias nls in ${NLS_ALIASES} 166d3c87514SEd Maste ${INSTALL_SYMLINK} -T "package=utilities" \ 167d3c87514SEd Maste "${nls}" "${DESTDIR}${SHAREDIR}/nls/${alias}" 168874e7db1SBaptiste Daroussin.endfor 169f515b598SEnji Cooper.endif 1706e1a887cSRodney W. Grimes 1711bf9d5d9SRodney W. Grimes.include <bsd.prog.mk> 17227f3f39aSBryan Drewery 17327f3f39aSBryan Drewery.if ${MK_INSTALL_AS_USER} == "yes" && ${_uid} != 0 17427f3f39aSBryan DreweryMTREE_FILTER= sed -e 's,\([gu]\)name=,\1id=,g' \ 17527f3f39aSBryan Drewery -e 's,\(uid=\)[^ ]* ,\1${_uid} ,' \ 17627f3f39aSBryan Drewery -e 's,\(gid=\)[^ ]* ,\1${_gid} ,' \ 17727f3f39aSBryan Drewery -e 's,\(uid=\)[^ ]*$$,\1${_uid},' \ 17827f3f39aSBryan Drewery -e 's,\(gid=\)[^ ]*$$,\1${_gid},' 17927f3f39aSBryan Drewery.else 18027f3f39aSBryan DreweryMTREE_FILTER= cat 18127f3f39aSBryan Drewery.if !defined(NO_FSCHG) 18227f3f39aSBryan DreweryMTREE_FSCHG= -i 18327f3f39aSBryan Drewery.endif 18427f3f39aSBryan Drewery.endif 185