Makefile revision 19175
12061Sjkh# 219175Sbde# $Id: Makefile,v 1.107 1996/10/14 12:58:47 peter Exp $ 32061Sjkh# 42061Sjkh# Make command line options: 515603Smarkm# -DCLOBBER will remove /usr/include 62061Sjkh# -DMAKE_LOCAL to add ./local to the SUBDIR list 72061Sjkh# -DMAKE_PORTS to add ./ports to the SUBDIR list 83197Scsgr# -DMAKE_EBONES to build eBones (KerberosIV) 93197Scsgr# 102061Sjkh# -DNOCLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir 1112483Speter# -DNOCLEAN do not clean at all 122160Scsgr# -DNOCRYPT will prevent building of crypt versions 132834Swollman# -DNOLKM do not build loadable kernel modules 142061Sjkh# -DNOOBJDIR do not run ``${MAKE} obj'' 152061Sjkh# -DNOPROFILE do not build profiled libraries 162160Scsgr# -DNOSECURE do not go into secure subdir 1717308Speter# -DNOGAMES do not go into games subdir 181594Srgrimes 1917308Speter# 2017308Speter# The intended user-driven targets are: 2117308Speter# world - rebuild *everything*, including glue to help do upgrades. 2217308Speter# reinstall - use an existing (eg: NFS mounted) build to do an update. 2317308Speter# update - convenient way to update your source tree (eg: sup/cvs) 2417308Speter# most - build user commands, no libraries or include files 2517308Speter# installmost - install user commands, no libraries or include files 2619175Sbde# 2719175Sbde# Standard targets (not defined here) are documented in the makefiles in 2819175Sbde# /usr/share/mk. These include: 2919175Sbde# obj depend all install clean cleandepend cleanobj 3017308Speter 3117308Speter 322061Sjkh# Put initial settings here. 332061SjkhSUBDIR= 341594Srgrimes 357407Srgrimes# We must do include and lib first so that the perl *.ph generation 367407Srgrimes# works correctly as it uses the header files installed by this. 377108Sphk.if exists(include) 387108SphkSUBDIR+= include 397108Sphk.endif 407407Srgrimes.if exists(lib) 417407SrgrimesSUBDIR+= lib 427407Srgrimes.endif 437108Sphk 442061Sjkh.if exists(bin) 452061SjkhSUBDIR+= bin 462061Sjkh.endif 4717308Speter.if exists(games) && !defined(NOGAMES) 482061SjkhSUBDIR+= games 492061Sjkh.endif 502061Sjkh.if exists(gnu) 512061SjkhSUBDIR+= gnu 522061Sjkh.endif 533197Scsgr.if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES) 542626ScsgrSUBDIR+= eBones 552626Scsgr.endif 562061Sjkh.if exists(libexec) 572061SjkhSUBDIR+= libexec 582061Sjkh.endif 592061Sjkh.if exists(sbin) 602061SjkhSUBDIR+= sbin 612061Sjkh.endif 622061Sjkh.if exists(share) 632061SjkhSUBDIR+= share 642061Sjkh.endif 652061Sjkh.if exists(sys) 662061SjkhSUBDIR+= sys 672061Sjkh.endif 682061Sjkh.if exists(usr.bin) 692061SjkhSUBDIR+= usr.bin 702061Sjkh.endif 712061Sjkh.if exists(usr.sbin) 722061SjkhSUBDIR+= usr.sbin 732061Sjkh.endif 742834Swollman.if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE) 752834SwollmanSUBDIR+= secure 762834Swollman.endif 772834Swollman.if exists(lkm) && !defined(NOLKM) 782834SwollmanSUBDIR+= lkm 792834Swollman.endif 801594Srgrimes 814486Sphk# etc must be last for "distribute" to work 824486Sphk.if exists(etc) && make(distribute) 834486SphkSUBDIR+= etc 844486Sphk.endif 854486Sphk 862061Sjkh# These are last, since it is nice to at least get the base system 872061Sjkh# rebuilt before you do them. 882061Sjkh.if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile) 892061SjkhSUBDIR+= local 902061Sjkh.endif 912061Sjkh.if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile) 922061SjkhSUBDIR+= ports 932061Sjkh.endif 942061Sjkh 9517308Speter# Handle -DNOOBJDIR, -DNOCLEAN and -DNOCLEANDIR 962061Sjkh.if defined(NOOBJDIR) 972061SjkhOBJDIR= 982061Sjkh.else 992061SjkhOBJDIR= obj 1002061Sjkh.endif 10112483Speter 10212483Speter.if defined(NOCLEAN) 10312483SpeterCLEANDIR= 10412483Speter.else 1052061Sjkh.if defined(NOCLEANDIR) 1062061SjkhCLEANDIR= clean 1078854Srgrimes.else 1082061SjkhCLEANDIR= cleandir 1092061Sjkh.endif 11012483Speter.endif 1112061Sjkh 11218714SacheSUP?= sup 11318714SacheSUPFLAGS?= -v 11418714Sache 11517308Speter# 11617308Speter# While building tools for bootstrapping, we dont need to waste time on 11717308Speter# profiled libraries or man pages. This speeds things up somewhat. 11817308Speter# 11915603SmarkmMK_FLAGS= -DNOMAN -DNOPROFILE 12015603Smarkm 12117308Speter# 12217308Speter# world 12317308Speter# 12417308Speter# Attempt to rebuild and reinstall *everything*, with reasonable chance of 12517308Speter# success, regardless of how old your existing system is. 12617308Speter# 12717308Speter# >> Beware, it overwrites the local build environment! << 12817308Speter# 12917308Speterworld: 13018362Sjkh @echo "--------------------------------------------------------------" 13118434Sache @echo "make world started on `LC_TIME= date`" 13218362Sjkh @echo "--------------------------------------------------------------" 13317308Speter.if target(pre-world) 13417308Speter @echo "--------------------------------------------------------------" 13517308Speter @echo " Making 'pre-world' target" 13617308Speter @echo "--------------------------------------------------------------" 13717308Speter cd ${.CURDIR} && ${MAKE} pre-world 13817308Speter @echo 13916550Sjkh.endif 1402061Sjkh @echo "--------------------------------------------------------------" 14117308Speter @echo " Making hierarchy" 1422061Sjkh @echo "--------------------------------------------------------------" 14317308Speter cd ${.CURDIR} && ${MAKE} hierarchy 1442061Sjkh @echo 14517308Speter @echo "--------------------------------------------------------------" 14617308Speter @echo " Rebuilding /usr/share/mk" 14717308Speter @echo "--------------------------------------------------------------" 14817308Speter cd ${.CURDIR} && ${MAKE} mk 14917308Speter @echo 15017308Speter @echo "--------------------------------------------------------------" 15117308Speter @echo " Cleaning up the source tree" 15217308Speter @echo "--------------------------------------------------------------" 15317308Speter.if defined(NOCLEAN) 15417308Speter @echo "Not cleaning anything! I sure hope you know what you are doing!" 15517308Speter.else 15617466Speter cd ${.CURDIR} && ${MAKE} ${CLEANDIR} 15717308Speter.endif 15817308Speter @echo 15917466Speter.if !defined(NOOBJDIR) 16017308Speter @echo "--------------------------------------------------------------" 16117308Speter @echo " Rebuilding the obj tree" 16217308Speter @echo "--------------------------------------------------------------" 16317308Speter cd ${.CURDIR} && ${MAKE} obj 16417466Speter @echo 16517308Speter.endif 16617308Speter @echo "--------------------------------------------------------------" 16717308Speter @echo " Rebuilding bootstrap tools" 16817308Speter @echo "--------------------------------------------------------------" 16917308Speter cd ${.CURDIR} && ${MAKE} bootstrap 17017308Speter @echo 17117308Speter @echo "--------------------------------------------------------------" 17217308Speter @echo " Rebuilding tools necessary to build the include files" 17317308Speter @echo "--------------------------------------------------------------" 17417308Speter cd ${.CURDIR} && ${MAKE} include-tools 17517308Speter @echo 17617308Speter @echo "--------------------------------------------------------------" 17717308Speter @echo " Rebuilding /usr/include" 17817308Speter @echo "--------------------------------------------------------------" 17917308Speter cd ${.CURDIR} && ${MAKE} includes 18017308Speter @echo 18117308Speter @echo "--------------------------------------------------------------" 18217308Speter @echo " Rebuilding tools needed to build the libraries" 18317308Speter @echo "--------------------------------------------------------------" 18417308Speter cd ${.CURDIR} && ${MAKE} lib-tools 18517308Speter @echo 18617308Speter @echo "--------------------------------------------------------------" 18717308Speter @echo " Rebuilding /usr/lib" 18817308Speter @echo "--------------------------------------------------------------" 18917308Speter cd ${.CURDIR} && ${MAKE} libraries 19017308Speter @echo 19117308Speter @echo "--------------------------------------------------------------" 19218392Speter @echo " Rebuilding sgml tools, symorder, groff and zic(8)" 19317308Speter @echo "--------------------------------------------------------------" 19417308Speter cd ${.CURDIR} && ${MAKE} build-tools 19517308Speter @echo 19617308Speter @echo "--------------------------------------------------------------" 19717962Speter @echo " Rebuilding dependencies" 19817308Speter @echo "--------------------------------------------------------------" 19917962Speter cd ${.CURDIR} && ${MAKE} depend 20017962Speter @echo 20117962Speter @echo "--------------------------------------------------------------" 20217962Speter @echo " Building everything.." 20317962Speter @echo "--------------------------------------------------------------" 20417962Speter cd ${.CURDIR} && ${MAKE} all 20517962Speter @echo 20617962Speter @echo "--------------------------------------------------------------" 20717962Speter @echo " Installing everything.." 20817962Speter @echo "--------------------------------------------------------------" 20917962Speter cd ${.CURDIR} && ${MAKE} install 21017962Speter @echo 21117962Speter @echo "--------------------------------------------------------------" 21217962Speter @echo " Rebuilding man page indexes" 21317962Speter @echo "--------------------------------------------------------------" 21417308Speter cd ${.CURDIR}/share/man && ${MAKE} makedb 21516550Sjkh.if target(post-world) 21617308Speter @echo 21717308Speter @echo "--------------------------------------------------------------" 21817308Speter @echo " Making 'post-world' target" 21917308Speter @echo "--------------------------------------------------------------" 22016550Sjkh cd ${.CURDIR} && ${MAKE} post-world 22116550Sjkh.endif 22217308Speter @echo 22317308Speter @echo "--------------------------------------------------------------" 22418434Sache @echo "make world completed on `LC_TIME= date`" 22517962Speter @echo "--------------------------------------------------------------" 2262061Sjkh 22717308Speter# 22817308Speter# reinstall 22917308Speter# 23017308Speter# If you have a build server, you can NFS mount the source and obj directories 23117308Speter# and do a 'make reinstall' on the *client* to install new binaries from the 23217308Speter# most recent server build. 23317308Speter# 23417308Speterreinstall: 23512483Speter @echo "--------------------------------------------------------------" 23617308Speter @echo " Making hierarchy" 23712483Speter @echo "--------------------------------------------------------------" 23817308Speter cd ${.CURDIR} && ${MAKE} hierarchy 23912483Speter @echo 2402061Sjkh @echo "--------------------------------------------------------------" 24117308Speter @echo " Rebuilding /usr/share/mk" 2422061Sjkh @echo "--------------------------------------------------------------" 24317308Speter cd ${.CURDIR} && ${MAKE} mk 24417308Speter @echo 24517308Speter @echo "--------------------------------------------------------------" 24617962Speter @echo " Installing everything.." 24717962Speter @echo "--------------------------------------------------------------" 24817308Speter cd ${.CURDIR} && ${MAKE} install 24917962Speter @echo 25017962Speter @echo "--------------------------------------------------------------" 25117962Speter @echo " Rebuilding man page indexes" 25217962Speter @echo "--------------------------------------------------------------" 25317308Speter cd ${.CURDIR}/share/man && ${MAKE} makedb 2542061Sjkh 25517308Speter 25617308Speter# 25717308Speter# update 25817308Speter# 25917308Speter# Update the source tree, by running sup and/or running cvs to update to the 26017308Speter# latest copy. 26117308Speter# 2622302Spaulupdate: 2632302Spaul.if defined(SUP_UPDATE) 2642302Spaul @echo "--------------------------------------------------------------" 2652302Spaul @echo "Running sup" 2662302Spaul @echo "--------------------------------------------------------------" 26718714Sache @${SUP} ${SUPFLAGS} ${SUPFILE} 26810760Sache.if defined(SUPFILE1) 26918714Sache @${SUP} ${SUPFLAGS} ${SUPFILE1} 2702302Spaul.endif 27110760Sache.if defined(SUPFILE2) 27218714Sache @${SUP} ${SUPFLAGS} ${SUPFILE2} 27310760Sache.endif 27410760Sache.endif 2752302Spaul.if defined(CVS_UPDATE) 2762302Spaul @echo "--------------------------------------------------------------" 2772302Spaul @echo "Updating /usr/src from cvs repository" ${CVSROOT} 2782302Spaul @echo "--------------------------------------------------------------" 27916591Spst cd ${.CURDIR} && cvs -q update -P -d 2802302Spaul.endif 2812302Spaul 28217308Speter 28317308Speter# 28417308Speter# most 28517308Speter# 28617308Speter# Build most of the user binaries on the existing system libs and includes. 28717308Speter# 28817308Spetermost: 2892061Sjkh @echo "--------------------------------------------------------------" 29017308Speter @echo " Building programs only" 2912061Sjkh @echo "--------------------------------------------------------------" 29217308Speter cd ${.CURDIR}/bin && ${MAKE} ${.MAKEFLAGS} all 29317308Speter cd ${.CURDIR}/sbin && ${MAKE} ${.MAKEFLAGS} all 29417308Speter cd ${.CURDIR}/libexec && ${MAKE} ${.MAKEFLAGS} all 29517308Speter cd ${.CURDIR}/usr.bin && ${MAKE} ${.MAKEFLAGS} all 29617308Speter cd ${.CURDIR}/usr.sbin && ${MAKE} ${.MAKEFLAGS} all 29717308Speter cd ${.CURDIR}/gnu/libexec && ${MAKE} ${.MAKEFLAGS} all 29817308Speter cd ${.CURDIR}/gnu/usr.bin && ${MAKE} ${.MAKEFLAGS} all 29917308Speter cd ${.CURDIR}/gnu/usr.sbin && ${MAKE} ${.MAKEFLAGS} all 30017308Speter#.if defined(MAKE_EBONES) && !defined(NOCRYPT) 30117308Speter# cd ${.CURDIR}/eBones && ${MAKE} ${.MAKEFLAGS} most 30217308Speter#.endif 30317308Speter#.if !defined(NOSECURE) && !defined(NOCRYPT) 30417308Speter# cd ${.CURDIR}/secure && ${MAKE} ${.MAKEFLAGS} most 30517308Speter#.endif 3062061Sjkh 30717308Speter# 30817308Speter# installmost 30917308Speter# 31017308Speter# Install the binaries built by the 'most' target. This does not include 31117308Speter# libraries or include files. 31217308Speter# 3133626Swollmaninstallmost: 3143626Swollman @echo "--------------------------------------------------------------" 3153626Swollman @echo " Installing programs only" 3163626Swollman @echo "--------------------------------------------------------------" 3173626Swollman cd ${.CURDIR}/bin && ${MAKE} ${.MAKEFLAGS} install 3183626Swollman cd ${.CURDIR}/sbin && ${MAKE} ${.MAKEFLAGS} install 3193626Swollman cd ${.CURDIR}/libexec && ${MAKE} ${.MAKEFLAGS} install 3203626Swollman cd ${.CURDIR}/usr.bin && ${MAKE} ${.MAKEFLAGS} install 3213626Swollman cd ${.CURDIR}/usr.sbin && ${MAKE} ${.MAKEFLAGS} install 3223626Swollman cd ${.CURDIR}/gnu/libexec && ${MAKE} ${.MAKEFLAGS} install 3233626Swollman cd ${.CURDIR}/gnu/usr.bin && ${MAKE} ${.MAKEFLAGS} install 3247059Sroberto cd ${.CURDIR}/gnu/usr.sbin && ${MAKE} ${.MAKEFLAGS} install 3253626Swollman#.if defined(MAKE_EBONES) && !defined(NOCRYPT) 3263626Swollman# cd ${.CURDIR}/eBones && ${MAKE} ${.MAKEFLAGS} installmost 3273626Swollman#.endif 3283626Swollman#.if !defined(NOSECURE) && !defined(NOCRYPT) 3293626Swollman# cd ${.CURDIR}/secure && ${MAKE} ${.MAKEFLAGS} installmost 3303626Swollman#.endif 3313626Swollman 33217308Speter# 33317308Speter# ------------------------------------------------------------------------ 33417308Speter# 33517308Speter# From here onwards are utility targets used by the 'make world' and 33617308Speter# related targets. If your 'world' breaks, you may like to try to fix 33717308Speter# the problem and manually run the following targets to attempt to 33817308Speter# complete the build. Beware, this is *not* guaranteed to work, you 33917308Speter# need to have a pretty good grip on the current state of the system 34017308Speter# to attempt to manually finish it. If in doubt, 'make world' again. 34117308Speter# 3423626Swollman 34317308Speter# 34417308Speter# heirarchy - ensure that all the needed directories are present 34517308Speter# 34617308Speterhierarchy: 34717308Speter cd ${.CURDIR}/etc && ${MAKE} distrib-dirs 34817308Speter 34917308Speter# 35017308Speter# mk - update the /usr/share/mk makefiles. 35117308Speter# 3522061Sjkhmk: 35316663Sjkh cd ${.CURDIR}/share/mk && ${MAKE} install 3542061Sjkh 35517308Speter# 35617308Speter# bootstrap - [re]build tools needed to run the actual build, this includes 35717308Speter# tools needed by 'make depend', as some tools are needed to generate source 35817308Speter# for the dependency information to be gathered from. 35917308Speter# 36017308Speterbootstrap: 36117820Sjkh cd ${.CURDIR}/usr.bin/make && ${MAKE} depend && \ 36217308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 36317820Sjkh cd ${.CURDIR}/usr.bin/xinstall && ${MAKE} depend && \ 36417308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 36517820Sjkh cd ${.CURDIR}/usr.bin/lex && ${MAKE} bootstrap && ${MAKE} depend && \ 36617467Speter ${MAKE} ${MK_FLAGS} -DNOLIB all install ${CLEANDIR} ${OBJDIR} 36717308Speter 36817308Speter# 36917308Speter# include-tools - generally the same as 'bootstrap', except that it's for 37017308Speter# things that are specifically needed to generate include files. 37117308Speter# 37217308Speter# XXX should be merged with bootstrap, it's not worth keeeping them seperate 37317308Speter# 37417308Speterinclude-tools: 37517820Sjkh cd ${.CURDIR}/usr.bin/rpcgen && ${MAKE} depend && \ 37617820Sjkh ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR} 37717308Speter 37817308Speter# 37917308Speter# includes - possibly generate and install the include files. 38017308Speter# 38114119Speterincludes: 3822061Sjkh.if defined(CLOBBER) 3837130Srgrimes rm -rf ${DESTDIR}/usr/include/* 3847130Srgrimes mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ 3857130Srgrimes -p ${DESTDIR}/usr/include 3862061Sjkh.endif 38717962Speter cd ${.CURDIR}/include/rpcsvc && ${MAKE} all 3882061Sjkh cd ${.CURDIR}/include && ${MAKE} install 38917308Speter cd ${.CURDIR}/gnu/include && ${MAKE} install 3902685Srgrimes cd ${.CURDIR}/gnu/lib/libreadline && ${MAKE} beforeinstall 3916927Snate cd ${.CURDIR}/gnu/lib/libregex && ${MAKE} beforeinstall 39218674Speter cd ${.CURDIR}/gnu/lib/libstdc++ && ${MAKE} beforeinstall 3932685Srgrimes cd ${.CURDIR}/gnu/lib/libg++ && ${MAKE} beforeinstall 3943518Sache cd ${.CURDIR}/gnu/lib/libdialog && ${MAKE} beforeinstall 3953197Scsgr.if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES) 3963197Scsgr cd ${.CURDIR}/eBones/include && ${MAKE} beforeinstall 39712166Sjkh cd ${.CURDIR}/eBones/lib/libkrb && ${MAKE} beforeinstall 39812485Sjkh cd ${.CURDIR}/eBones/lib/libkadm && ${MAKE} beforeinstall 3993197Scsgr.endif 4002061Sjkh cd ${.CURDIR}/lib/libc && ${MAKE} beforeinstall 4012061Sjkh cd ${.CURDIR}/lib/libcurses && ${MAKE} beforeinstall 4022061Sjkh cd ${.CURDIR}/lib/libedit && ${MAKE} beforeinstall 40316786Snate cd ${.CURDIR}/lib/libftpio && ${MAKE} beforeinstall 4042883Sphk cd ${.CURDIR}/lib/libmd && ${MAKE} beforeinstall 40517308Speter cd ${.CURDIR}/lib/libmytinfo && ${MAKE} beforeinstall 40617308Speter cd ${.CURDIR}/lib/libncurses && ${MAKE} beforeinstall 4077281Srgrimes.if !defined(WANT_CSRG_LIBM) 4083242Spaul cd ${.CURDIR}/lib/msun && ${MAKE} beforeinstall 4093242Spaul.endif 4107171Sats cd ${.CURDIR}/lib/libpcap && ${MAKE} beforeinstall 4112061Sjkh cd ${.CURDIR}/lib/librpcsvc && ${MAKE} beforeinstall 4123213Spst cd ${.CURDIR}/lib/libskey && ${MAKE} beforeinstall 41317308Speter cd ${.CURDIR}/lib/libtcl && ${MAKE} beforeinstall 41417308Speter cd ${.CURDIR}/lib/libtermcap && ${MAKE} beforeinstall 4155749Swollman cd ${.CURDIR}/lib/libcom_err && ${MAKE} beforeinstall 4165772Swollman cd ${.CURDIR}/lib/libss && ${MAKE} beforeinstall 41717308Speter cd ${.CURDIR}/lib/libscsi && ${MAKE} beforeinstall 41817308Speter cd ${.CURDIR}/lib/libutil && ${MAKE} beforeinstall 4192061Sjkh 42017308Speter# 42117308Speter# lib-tools - build tools to compile and install the libraries. 42217308Speter# 4235366Snatelib-tools: 42417820Sjkh cd ${.CURDIR}/usr.bin/tsort && ${MAKE} depend && \ 42517467Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 42617820Sjkh cd ${.CURDIR}/gnu/usr.bin/ld && ${MAKE} depend && \ 42717308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 42818674Speter cd ${.CURDIR}/gnu/usr.bin/as && ${MAKE} depend && \ 42918674Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 43017820Sjkh cd ${.CURDIR}/usr.bin/ar && ${MAKE} depend && \ 43117308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 43217820Sjkh cd ${.CURDIR}/usr.bin/ranlib && ${MAKE} depend && \ 43317308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 43417820Sjkh cd ${.CURDIR}/usr.bin/nm && ${MAKE} depend && \ 43517308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 43617820Sjkh cd ${.CURDIR}/usr.bin/lex/lib && ${MAKE} depend && \ 43717308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 43817820Sjkh cd ${.CURDIR}/usr.bin/compile_et && ${MAKE} depend && \ 43917308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} && \ 4405728Swollman rm -f /usr/sbin/compile_et 44117820Sjkh cd ${.CURDIR}/usr.bin/mk_cmds && ${MAKE} depend && \ 44217308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 44318392Speter cd ${.CURDIR}/gnu/usr.bin/bison && ${MAKE} depend && \ 44418392Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 44518392Speter cd ${.CURDIR}/gnu/usr.bin/gperf && ${MAKE} depend && \ 44618392Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 44718392Speter cd ${.CURDIR}/gnu/usr.bin/cc && ${MAKE} depend && \ 44818392Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4495366Snate 45017308Speter# 45117308Speter# libraries - build and install the libraries 45217308Speter# 4532061Sjkhlibraries: 4548295Srgrimes.if exists(lib/libcompat) 45517820Sjkh cd ${.CURDIR}/lib/libcompat && ${MAKE} depend && \ 45617308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4578295Srgrimes.endif 4588489Srgrimes.if exists(lib/libncurses) 45917820Sjkh cd ${.CURDIR}/lib/libncurses && ${MAKE} depend && \ 46017308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4618489Srgrimes.endif 4628489Srgrimes.if exists(lib/libtermcap) 46317820Sjkh cd ${.CURDIR}/lib/libtermcap && ${MAKE} depend && \ 46417308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4658489Srgrimes.endif 46617308Speter.if exists(lib) 46717820Sjkh cd ${.CURDIR}/lib/csu/i386 && ${MAKE} depend && \ 46817308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 46917308Speter.endif 4708295Srgrimes.if exists(gnu) 47117820Sjkh cd ${.CURDIR}/gnu/lib && ${MAKE} depend && \ 47217308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4738295Srgrimes.endif 4742160Scsgr.if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE) 47517820Sjkh cd ${.CURDIR}/secure/lib && ${MAKE} depend && \ 47617308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4772160Scsgr.endif 4782279Spaul.if exists(lib) 47917820Sjkh cd ${.CURDIR}/lib && ${MAKE} depend && \ 48017308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4812279Spaul.endif 48217234Sjraynard.if exists(usr.bin/lex/lib) 48317820Sjkh cd ${.CURDIR}/usr.bin/lex/lib && ${MAKE} depend && \ 48417308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 48511772Snate.endif 4863197Scsgr.if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES) 48717820Sjkh cd ${.CURDIR}/eBones/lib && ${MAKE} depend && \ 48817308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4892626Scsgr.endif 4908304Srgrimes.if exists(usr.sbin/pcvt/keycap) 49117820Sjkh cd ${.CURDIR}/usr.sbin/pcvt/keycap && ${MAKE} depend && \ 49217308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 4938304Srgrimes.endif 4942061Sjkh 49517308Speter# 49617308Speter# build-tools - build and install any other tools needed to complete the 49717308Speter# compile and install. 49817308Speter# 49911806Sphkbuild-tools: 50019175Sbde.for d in \ 50119175Sbde usr.bin/symorder \ 50219175Sbde usr.bin/sgmls \ 50319175Sbde usr.bin/sgmlfmt \ 50419175Sbde share/sgml \ 50519175Sbde usr.sbin/zic \ 50619175Sbde gnu/usr.bin/awk \ 50719175Sbde gnu/usr.bin/groff 50819175Sbde cd ${.CURDIR}/$d && ${MAKE} depend && \ 50917308Speter ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 51019175Sbde.endfor 5112061Sjkh 5121594Srgrimes.include <bsd.subdir.mk> 513