Makefile revision 21586
1130803Smarcel# 2130803Smarcel# $Id: Makefile,v 1.113 1997/01/11 10:53:01 jmacd Exp $ 3130803Smarcel# 4130803Smarcel# Make command line options: 5130803Smarcel# -DCLOBBER will remove /usr/include 6130803Smarcel# -DMAKE_LOCAL to add ./local to the SUBDIR list 7130803Smarcel# -DMAKE_PORTS to add ./ports to the SUBDIR list 8130803Smarcel# -DMAKE_EBONES to build eBones (KerberosIV) 9130803Smarcel# -DALLLANG to build documentation for all languages 10130803Smarcel# (where available -- see share/doc/Makefile) 11130803Smarcel# 12130803Smarcel# -DNOCLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir 13130803Smarcel# -DNOCLEAN do not clean at all 14130803Smarcel# -DNOCRYPT will prevent building of crypt versions 15130803Smarcel# -DNOLKM do not build loadable kernel modules 16130803Smarcel# -DNOOBJDIR do not run ``${MAKE} obj'' 17130803Smarcel# -DNOPROFILE do not build profiled libraries 18130803Smarcel# -DNOSECURE do not go into secure subdir 19130803Smarcel# -DNOGAMES do not go into games subdir 20130803Smarcel# -DNOSHARE do not go into share subdir 21130803Smarcel# -DNOINFO do not make or install info files 22130803Smarcel 23130803Smarcel# 24130803Smarcel# The intended user-driven targets are: 25130803Smarcel# world - rebuild *everything*, including glue to help do upgrades. 26130803Smarcel# reinstall - use an existing (eg: NFS mounted) build to do an update. 27130803Smarcel# update - convenient way to update your source tree (eg: sup/cvs) 28130803Smarcel# most - build user commands, no libraries or include files 29130803Smarcel# installmost - install user commands, no libraries or include files 30130803Smarcel# 31130803Smarcel# Standard targets (not defined here) are documented in the makefiles in 32130803Smarcel# /usr/share/mk. These include: 33130803Smarcel# obj depend all install clean cleandepend cleanobj 34130803Smarcel 35130803Smarcel 36130803Smarcel# Put initial settings here. 37130803SmarcelSUBDIR= 38130803Smarcel 39130803Smarcel# We must do include and lib first so that the perl *.ph generation 40130803Smarcel# works correctly as it uses the header files installed by this. 41130803Smarcel.if exists(include) 42130803SmarcelSUBDIR+= include 43130803Smarcel.endif 44130803Smarcel.if exists(lib) 45130803SmarcelSUBDIR+= lib 46130803Smarcel.endif 47130803Smarcel 48130803Smarcel.if exists(bin) 49130803SmarcelSUBDIR+= bin 50130803Smarcel.endif 51130803Smarcel.if exists(games) && !defined(NOGAMES) 52130803SmarcelSUBDIR+= games 53130803Smarcel.endif 54130803Smarcel.if exists(gnu) 55130803SmarcelSUBDIR+= gnu 56130803Smarcel.endif 57130803Smarcel.if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES) 58130803SmarcelSUBDIR+= eBones 59130803Smarcel.endif 60130803Smarcel.if exists(libexec) 61130803SmarcelSUBDIR+= libexec 62130803Smarcel.endif 63130803Smarcel.if exists(sbin) 64130803SmarcelSUBDIR+= sbin 65130803Smarcel.endif 66130803Smarcel.if exists(share) && !defined(NOSHARE) 67130803SmarcelSUBDIR+= share 68130803Smarcel.endif 69130803Smarcel.if exists(sys) 70130803SmarcelSUBDIR+= sys 71130803Smarcel.endif 72130803Smarcel.if exists(usr.bin) 73130803SmarcelSUBDIR+= usr.bin 74130803Smarcel.endif 75130803Smarcel.if exists(usr.sbin) 76130803SmarcelSUBDIR+= usr.sbin 77130803Smarcel.endif 78130803Smarcel.if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE) 79130803SmarcelSUBDIR+= secure 80130803Smarcel.endif 81130803Smarcel.if exists(lkm) && !defined(NOLKM) 82130803SmarcelSUBDIR+= lkm 83130803Smarcel.endif 84130803Smarcel 85130803Smarcel# etc must be last for "distribute" to work 86130803Smarcel.if exists(etc) && make(distribute) 87130803SmarcelSUBDIR+= etc 88130803Smarcel.endif 89130803Smarcel 90130803Smarcel# These are last, since it is nice to at least get the base system 91130803Smarcel# rebuilt before you do them. 92130803Smarcel.if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile) 93130803SmarcelSUBDIR+= local 94130803Smarcel.endif 95130803Smarcel.if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile) 96130803SmarcelSUBDIR+= ports 97130803Smarcel.endif 98130803Smarcel 99130803Smarcel# Handle -DNOOBJDIR, -DNOCLEAN and -DNOCLEANDIR 100130803Smarcel.if defined(NOOBJDIR) 101130803SmarcelOBJDIR= 102130803Smarcel.else 103130803SmarcelOBJDIR= obj 104130803Smarcel.endif 105130803Smarcel 106130803Smarcel.if defined(NOCLEAN) 107130803SmarcelCLEANDIR= 108130803Smarcel.else 109130803Smarcel.if defined(NOCLEANDIR) 110CLEANDIR= clean 111.else 112CLEANDIR= cleandir 113.endif 114.endif 115 116SUP?= sup 117SUPFLAGS?= -v 118 119# 120# While building tools for bootstrapping, we dont need to waste time on 121# profiled libraries or man pages. This speeds things up somewhat. 122# 123MK_FLAGS= -DNOINFO -DNOMAN -DNOPROFILE 124 125# 126# world 127# 128# Attempt to rebuild and reinstall *everything*, with reasonable chance of 129# success, regardless of how old your existing system is. 130# 131# >> Beware, it overwrites the local build environment! << 132# 133world: 134 @echo "--------------------------------------------------------------" 135 @echo "make world started on `LC_TIME=C date`" 136 @echo "--------------------------------------------------------------" 137.if target(pre-world) 138 @echo "--------------------------------------------------------------" 139 @echo " Making 'pre-world' target" 140 @echo "--------------------------------------------------------------" 141 cd ${.CURDIR} && ${MAKE} pre-world 142 @echo 143.endif 144 @echo "--------------------------------------------------------------" 145 @echo " Making hierarchy" 146 @echo "--------------------------------------------------------------" 147 cd ${.CURDIR} && ${MAKE} hierarchy 148 @echo 149 @echo "--------------------------------------------------------------" 150 @echo " Rebuilding /usr/share/mk" 151 @echo "--------------------------------------------------------------" 152 cd ${.CURDIR} && ${MAKE} mk 153 @echo 154 @echo "--------------------------------------------------------------" 155 @echo " Cleaning up the source tree" 156 @echo "--------------------------------------------------------------" 157.if defined(NOCLEAN) 158 @echo "Not cleaning anything! I sure hope you know what you are doing!" 159.else 160 cd ${.CURDIR} && ${MAKE} ${CLEANDIR} 161.endif 162 @echo 163.if !defined(NOOBJDIR) 164 @echo "--------------------------------------------------------------" 165 @echo " Rebuilding the obj tree" 166 @echo "--------------------------------------------------------------" 167 cd ${.CURDIR} && ${MAKE} obj 168 @echo 169.endif 170 @echo "--------------------------------------------------------------" 171 @echo " Rebuilding bootstrap tools" 172 @echo "--------------------------------------------------------------" 173 cd ${.CURDIR} && ${MAKE} bootstrap 174 @echo 175 @echo "--------------------------------------------------------------" 176 @echo " Rebuilding tools necessary to build the include files" 177 @echo "--------------------------------------------------------------" 178 cd ${.CURDIR} && ${MAKE} include-tools 179 @echo 180 @echo "--------------------------------------------------------------" 181 @echo " Rebuilding /usr/include" 182 @echo "--------------------------------------------------------------" 183 cd ${.CURDIR} && ${MAKE} includes 184 @echo 185 @echo "--------------------------------------------------------------" 186 @echo " Rebuilding tools needed to build the libraries" 187 @echo "--------------------------------------------------------------" 188 cd ${.CURDIR} && ${MAKE} lib-tools 189 @echo 190 @echo "--------------------------------------------------------------" 191 @echo " Rebuilding /usr/lib" 192 @echo "--------------------------------------------------------------" 193 cd ${.CURDIR} && ${MAKE} libraries 194 @echo 195 @echo "--------------------------------------------------------------" 196 @echo " Rebuilding sgml tools, symorder, groff and zic(8)" 197 @echo "--------------------------------------------------------------" 198 cd ${.CURDIR} && ${MAKE} build-tools 199 @echo 200 @echo "--------------------------------------------------------------" 201 @echo " Rebuilding dependencies" 202 @echo "--------------------------------------------------------------" 203 cd ${.CURDIR} && ${MAKE} depend 204 @echo 205 @echo "--------------------------------------------------------------" 206 @echo " Building everything.." 207 @echo "--------------------------------------------------------------" 208 cd ${.CURDIR} && ${MAKE} all 209 @echo 210 @echo "--------------------------------------------------------------" 211 @echo " Installing everything.." 212 @echo "--------------------------------------------------------------" 213 cd ${.CURDIR} && ${MAKE} install 214 @echo 215 @echo "--------------------------------------------------------------" 216 @echo " Rebuilding man page indexes" 217 @echo "--------------------------------------------------------------" 218 cd ${.CURDIR}/share/man && ${MAKE} makedb 219.if target(post-world) 220 @echo 221 @echo "--------------------------------------------------------------" 222 @echo " Making 'post-world' target" 223 @echo "--------------------------------------------------------------" 224 cd ${.CURDIR} && ${MAKE} post-world 225.endif 226 @echo 227 @echo "--------------------------------------------------------------" 228 @echo "make world completed on `LC_TIME=C date`" 229 @echo "--------------------------------------------------------------" 230 231# 232# reinstall 233# 234# If you have a build server, you can NFS mount the source and obj directories 235# and do a 'make reinstall' on the *client* to install new binaries from the 236# most recent server build. 237# 238reinstall: 239 @echo "--------------------------------------------------------------" 240 @echo " Making hierarchy" 241 @echo "--------------------------------------------------------------" 242 cd ${.CURDIR} && ${MAKE} hierarchy 243 @echo 244 @echo "--------------------------------------------------------------" 245 @echo " Rebuilding /usr/share/mk" 246 @echo "--------------------------------------------------------------" 247 cd ${.CURDIR} && ${MAKE} mk 248 @echo 249 @echo "--------------------------------------------------------------" 250 @echo " Installing everything.." 251 @echo "--------------------------------------------------------------" 252 cd ${.CURDIR} && ${MAKE} install 253 @echo 254 @echo "--------------------------------------------------------------" 255 @echo " Rebuilding man page indexes" 256 @echo "--------------------------------------------------------------" 257 cd ${.CURDIR}/share/man && ${MAKE} makedb 258 259 260# 261# update 262# 263# Update the source tree, by running sup and/or running cvs to update to the 264# latest copy. 265# 266update: 267.if defined(SUP_UPDATE) 268 @echo "--------------------------------------------------------------" 269 @echo "Running sup" 270 @echo "--------------------------------------------------------------" 271 @${SUP} ${SUPFLAGS} ${SUPFILE} 272.if defined(SUPFILE1) 273 @${SUP} ${SUPFLAGS} ${SUPFILE1} 274.endif 275.if defined(SUPFILE2) 276 @${SUP} ${SUPFLAGS} ${SUPFILE2} 277.endif 278.endif 279.if defined(CVS_UPDATE) 280 @echo "--------------------------------------------------------------" 281 @echo "Updating /usr/src from cvs repository" ${CVSROOT} 282 @echo "--------------------------------------------------------------" 283 cd ${.CURDIR} && cvs -q update -P -d 284.endif 285 286 287# 288# most 289# 290# Build most of the user binaries on the existing system libs and includes. 291# 292most: 293 @echo "--------------------------------------------------------------" 294 @echo " Building programs only" 295 @echo "--------------------------------------------------------------" 296 cd ${.CURDIR}/bin && ${MAKE} ${.MAKEFLAGS} all 297 cd ${.CURDIR}/sbin && ${MAKE} ${.MAKEFLAGS} all 298 cd ${.CURDIR}/libexec && ${MAKE} ${.MAKEFLAGS} all 299 cd ${.CURDIR}/usr.bin && ${MAKE} ${.MAKEFLAGS} all 300 cd ${.CURDIR}/usr.sbin && ${MAKE} ${.MAKEFLAGS} all 301 cd ${.CURDIR}/gnu/libexec && ${MAKE} ${.MAKEFLAGS} all 302 cd ${.CURDIR}/gnu/usr.bin && ${MAKE} ${.MAKEFLAGS} all 303 cd ${.CURDIR}/gnu/usr.sbin && ${MAKE} ${.MAKEFLAGS} all 304#.if defined(MAKE_EBONES) && !defined(NOCRYPT) 305# cd ${.CURDIR}/eBones && ${MAKE} ${.MAKEFLAGS} most 306#.endif 307#.if !defined(NOSECURE) && !defined(NOCRYPT) 308# cd ${.CURDIR}/secure && ${MAKE} ${.MAKEFLAGS} most 309#.endif 310 311# 312# installmost 313# 314# Install the binaries built by the 'most' target. This does not include 315# libraries or include files. 316# 317installmost: 318 @echo "--------------------------------------------------------------" 319 @echo " Installing programs only" 320 @echo "--------------------------------------------------------------" 321 cd ${.CURDIR}/bin && ${MAKE} ${.MAKEFLAGS} install 322 cd ${.CURDIR}/sbin && ${MAKE} ${.MAKEFLAGS} install 323 cd ${.CURDIR}/libexec && ${MAKE} ${.MAKEFLAGS} install 324 cd ${.CURDIR}/usr.bin && ${MAKE} ${.MAKEFLAGS} install 325 cd ${.CURDIR}/usr.sbin && ${MAKE} ${.MAKEFLAGS} install 326 cd ${.CURDIR}/gnu/libexec && ${MAKE} ${.MAKEFLAGS} install 327 cd ${.CURDIR}/gnu/usr.bin && ${MAKE} ${.MAKEFLAGS} install 328 cd ${.CURDIR}/gnu/usr.sbin && ${MAKE} ${.MAKEFLAGS} install 329#.if defined(MAKE_EBONES) && !defined(NOCRYPT) 330# cd ${.CURDIR}/eBones && ${MAKE} ${.MAKEFLAGS} installmost 331#.endif 332#.if !defined(NOSECURE) && !defined(NOCRYPT) 333# cd ${.CURDIR}/secure && ${MAKE} ${.MAKEFLAGS} installmost 334#.endif 335 336# 337# ------------------------------------------------------------------------ 338# 339# From here onwards are utility targets used by the 'make world' and 340# related targets. If your 'world' breaks, you may like to try to fix 341# the problem and manually run the following targets to attempt to 342# complete the build. Beware, this is *not* guaranteed to work, you 343# need to have a pretty good grip on the current state of the system 344# to attempt to manually finish it. If in doubt, 'make world' again. 345# 346 347# 348# heirarchy - ensure that all the needed directories are present 349# 350hierarchy: 351 cd ${.CURDIR}/etc && ${MAKE} distrib-dirs 352 353# 354# mk - update the /usr/share/mk makefiles. 355# 356mk: 357 cd ${.CURDIR}/share/mk && ${MAKE} install 358 359# 360# bootstrap - [re]build tools needed to run the actual build, this includes 361# tools needed by 'make depend', as some tools are needed to generate source 362# for the dependency information to be gathered from. 363# 364bootstrap: 365 cd ${.CURDIR}/usr.bin/make && ${MAKE} depend && \ 366 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 367 cd ${.CURDIR}/usr.bin/xinstall && ${MAKE} depend && \ 368 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 369 cd ${.CURDIR}/usr.bin/lex && ${MAKE} bootstrap && ${MAKE} depend && \ 370 ${MAKE} ${MK_FLAGS} -DNOLIB all install ${CLEANDIR} ${OBJDIR} 371 372# 373# include-tools - generally the same as 'bootstrap', except that it's for 374# things that are specifically needed to generate include files. 375# 376# XXX should be merged with bootstrap, it's not worth keeeping them seperate 377# 378include-tools: 379 cd ${.CURDIR}/usr.bin/rpcgen && ${MAKE} depend && \ 380 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR} 381 382# 383# includes - possibly generate and install the include files. 384# 385includes: 386.if defined(CLOBBER) 387 rm -rf ${DESTDIR}/usr/include/* 388 mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ 389 -p ${DESTDIR}/usr/include 390.endif 391 cd ${.CURDIR}/include/rpcsvc && ${MAKE} all 392 cd ${.CURDIR}/include && ${MAKE} install 393 cd ${.CURDIR}/gnu/include && ${MAKE} install 394 cd ${.CURDIR}/gnu/lib/libreadline && ${MAKE} beforeinstall 395 cd ${.CURDIR}/gnu/lib/libregex && ${MAKE} beforeinstall 396 cd ${.CURDIR}/gnu/lib/libstdc++ && ${MAKE} beforeinstall 397 cd ${.CURDIR}/gnu/lib/libg++ && ${MAKE} beforeinstall 398 cd ${.CURDIR}/gnu/lib/libdialog && ${MAKE} beforeinstall 399.if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES) 400 cd ${.CURDIR}/eBones/include && ${MAKE} beforeinstall 401 cd ${.CURDIR}/eBones/lib/libkrb && ${MAKE} beforeinstall 402 cd ${.CURDIR}/eBones/lib/libkadm && ${MAKE} beforeinstall 403.endif 404 cd ${.CURDIR}/lib/libc && ${MAKE} beforeinstall 405 cd ${.CURDIR}/lib/libcurses && ${MAKE} beforeinstall 406 cd ${.CURDIR}/lib/libedit && ${MAKE} beforeinstall 407 cd ${.CURDIR}/lib/libftpio && ${MAKE} beforeinstall 408 cd ${.CURDIR}/lib/libmd && ${MAKE} beforeinstall 409 cd ${.CURDIR}/lib/libmytinfo && ${MAKE} beforeinstall 410 cd ${.CURDIR}/lib/libncurses && ${MAKE} beforeinstall 411.if !defined(WANT_CSRG_LIBM) 412 cd ${.CURDIR}/lib/msun && ${MAKE} beforeinstall 413.endif 414 cd ${.CURDIR}/lib/libpcap && ${MAKE} beforeinstall 415 cd ${.CURDIR}/lib/librpcsvc && ${MAKE} beforeinstall 416 cd ${.CURDIR}/lib/libskey && ${MAKE} beforeinstall 417 cd ${.CURDIR}/lib/libtcl && ${MAKE} beforeinstall 418 cd ${.CURDIR}/lib/libtermcap && ${MAKE} beforeinstall 419 cd ${.CURDIR}/lib/libcom_err && ${MAKE} beforeinstall 420 cd ${.CURDIR}/lib/libss && ${MAKE} beforeinstall 421 cd ${.CURDIR}/lib/libscsi && ${MAKE} beforeinstall 422 cd ${.CURDIR}/lib/libutil && ${MAKE} beforeinstall 423 424# 425# lib-tools - build tools to compile and install the libraries. 426# 427lib-tools: 428 cd ${.CURDIR}/usr.bin/tsort && ${MAKE} depend && \ 429 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 430 cd ${.CURDIR}/gnu/usr.bin/ld && ${MAKE} depend && \ 431 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 432 cd ${.CURDIR}/gnu/usr.bin/as && ${MAKE} depend && \ 433 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 434 cd ${.CURDIR}/usr.bin/ar && ${MAKE} depend && \ 435 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 436 cd ${.CURDIR}/usr.bin/ranlib && ${MAKE} depend && \ 437 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 438 cd ${.CURDIR}/usr.bin/nm && ${MAKE} depend && \ 439 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 440 cd ${.CURDIR}/usr.bin/lex/lib && ${MAKE} depend && \ 441 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 442 cd ${.CURDIR}/usr.bin/compile_et && ${MAKE} depend && \ 443 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} && \ 444 rm -f /usr/sbin/compile_et 445 cd ${.CURDIR}/usr.bin/mk_cmds && ${MAKE} depend && \ 446 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 447 cd ${.CURDIR}/gnu/usr.bin/bison && ${MAKE} depend && \ 448 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 449 cd ${.CURDIR}/gnu/usr.bin/gperf && ${MAKE} depend && \ 450 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 451 cd ${.CURDIR}/gnu/usr.bin/cc && ${MAKE} depend && \ 452 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 453 454# 455# libraries - build and install the libraries 456# 457libraries: 458.if exists(lib/libcompat) 459 cd ${.CURDIR}/lib/libcompat && ${MAKE} depend && \ 460 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 461.endif 462.if exists(lib/libncurses) 463 cd ${.CURDIR}/lib/libncurses && ${MAKE} depend && \ 464 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 465.endif 466.if exists(lib/libtermcap) 467 cd ${.CURDIR}/lib/libtermcap && ${MAKE} depend && \ 468 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 469.endif 470.if exists(lib) 471 cd ${.CURDIR}/lib/csu/i386 && ${MAKE} depend && \ 472 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 473.endif 474.if exists(gnu) 475 cd ${.CURDIR}/gnu/lib && ${MAKE} depend && \ 476 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 477.endif 478.if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE) 479 cd ${.CURDIR}/secure/lib && ${MAKE} depend && \ 480 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 481.endif 482.if exists(lib) 483 cd ${.CURDIR}/lib && ${MAKE} depend && \ 484 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 485.endif 486.if exists(usr.bin/lex/lib) 487 cd ${.CURDIR}/usr.bin/lex/lib && ${MAKE} depend && \ 488 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 489.endif 490.if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES) 491 cd ${.CURDIR}/eBones/lib && ${MAKE} depend && \ 492 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 493.endif 494.if exists(usr.sbin/pcvt/keycap) 495 cd ${.CURDIR}/usr.sbin/pcvt/keycap && ${MAKE} depend && \ 496 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 497.endif 498 499# 500# build-tools - build and install any other tools needed to complete the 501# compile and install. 502# 503build-tools: 504.for d in \ 505 gnu/usr.bin/texinfo \ 506 usr.bin/symorder \ 507 usr.bin/sgmls \ 508 usr.bin/sgmlfmt \ 509 share/sgml \ 510 usr.sbin/zic \ 511 gnu/usr.bin/awk \ 512 gnu/usr.bin/groff 513 cd ${.CURDIR}/$d && ${MAKE} depend && \ 514 ${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 515.endfor 516 517.include <bsd.subdir.mk> 518