summaryrefslogtreecommitdiffstats
path: root/Makefile.alpha
diff options
context:
space:
mode:
authorjb <jb@FreeBSD.org>1998-01-11 04:46:02 +0000
committerjb <jb@FreeBSD.org>1998-01-11 04:46:02 +0000
commit4ddffa382cbf1705c6e4b80e565e9c82eab61c15 (patch)
treea8dfbc3e3bd76037b24069623eeeedc9c1b530fe /Makefile.alpha
parentf9813a46f55692ebf78572f94050ef6d1ab72f85 (diff)
downloadFreeBSD-src-4ddffa382cbf1705c6e4b80e565e9c82eab61c15.zip
FreeBSD-src-4ddffa382cbf1705c6e4b80e565e9c82eab61c15.tar.gz
This makefile provides a bootstrap installation of FreeBSD on an installed
NetBSD/Alpha 1.3 system. It currently skips things like libc, ld, gas but correctly (I think) builds gcc, cpp, g++ and other FreeBSD build tools that are needed to build the rest of the system.
Diffstat (limited to 'Makefile.alpha')
-rw-r--r--Makefile.alpha477
1 files changed, 477 insertions, 0 deletions
diff --git a/Makefile.alpha b/Makefile.alpha
new file mode 100644
index 0000000..1ed2e10
--- /dev/null
+++ b/Makefile.alpha
@@ -0,0 +1,477 @@
+# $Id$
+#
+# NOTE:
+#
+# This is a makefile for use while porting FreeBSD to the Alpha
+# architecture. It is based on src/Makefile and is included by
+# it rather than filling it with a lot of temporary crud.
+#
+# To use this Makefile on a NetBSD/Alpha 1.3 system, load the
+# entire FreeBSD source tree, or mount /usr/src via NFS. From
+# /usr/src type:
+#
+# make -m /usr/src/share/mk buildworld
+#
+# and you're away. Don't expect the build to complete. It will fail
+# where the porting effort is up to. This will be somewhere in the
+# build of the bootstrap libraries that are needed for the second
+# set of bootstrap tools. The build will deliberately skip the
+# build of libc because that involves considerable porting effort.
+# The build will also create symbolic links to several of the GNU
+# tools that are currently being ported/imported to FreeBSD.
+#
+# Warning: This build is not supposed to clobber anything on the
+# ======= system you are building on, but you should consider what
+# ======= you would do if that happened.
+#
+SUBDIR = share/info lib bin gnu libexec sbin share sys usr.bin usr.sbin
+
+OBJDIR = obj
+
+.MAKEFLAGS:= ${.MAKEFLAGS} -m ${.CURDIR}/share/mk
+
+#
+# While building tools for bootstrapping, we dont need to waste time on
+# profiled libraries or man pages. This speeds things up somewhat.
+#
+MK_FLAGS= -DNOINFO -DNOMAN -DNOPROFILE
+
+.if defined(MAKEOBJDIRPREFIX)
+WORLDTMP= ${MAKEOBJDIRPREFIX}${.CURDIR}/tmp
+.else
+WORLDTMP= /usr/obj${.CURDIR}/tmp
+.endif
+STRICTTMPPATH= ${WORLDTMP}/sbin:${WORLDTMP}/usr/sbin:${WORLDTMP}/bin:${WORLDTMP}/usr/bin
+TMPPATH= ${STRICTTMPPATH}:${PATH}
+
+# XXX COMPILER_PATH is needed for finding cc1, ld and as
+# XXX GCC_EXEC_PREFIX is for *crt.o. It is probably unnecssary now
+# tbat LIBRARY_PATH is set. We still can't use -nostdlib, since gcc
+# wouldn't link *crt.o or libgcc if it were used.
+# XXX LD_LIBRARY_PATH is for ld.so. It is also used by ld, although we don't
+# want that - all compile-time library paths should be resolved by gcc.
+# It fails for set[ug]id executables (are any used?).
+COMPILER_ENV= BISON_SIMPLE=${WORLDTMP}/usr/share/misc/bison.simple \
+ COMPILER_PATH=${WORLDTMP}/usr/libexec:${WORLDTMP}/usr/bin \
+ GCC_EXEC_PREFIX=${WORLDTMP}/usr/lib/ \
+ LD_LIBRARY_PATH=${WORLDTMP}${SHLIBDIR} \
+ LIBRARY_PATH=${WORLDTMP}${SHLIBDIR}:${WORLDTMP}/usr/lib
+
+BMAKEENV= PATH=${TMPPATH} ${COMPILER_ENV} NOEXTRADEPEND=t
+LMAKEENV= PATH=${TMPPATH} ${COMPILER_ENV} CC='cc -nostdinc' \
+ MKDEP_CPP='cc -E -nostdinc'
+XMAKEENV= PATH=${STRICTTMPPATH} ${COMPILER_ENV} \
+ CC='cc -nostdinc' MKDEP_CPP='cc -nostdinc -E'
+
+# used to compile and install 'make' in temporary build tree
+IBMAKE= ${BMAKEENV} ${MAKE} DESTDIR=${WORLDTMP}
+# bootstrap make
+BMAKE= ${BMAKEENV} ${WORLDTMP}/usr/bin/${MAKE} DESTDIR=${WORLDTMP}
+# library make
+LMAKE= ${LMAKEENV} ${WORLDTMP}/usr/bin/${MAKE} DESTDIR=${WORLDTMP}
+# cross make used for compilation
+XMAKE= ${XMAKEENV} ${WORLDTMP}/usr/bin/${MAKE} DESTDIR=${WORLDTMP}
+# cross make used for final installation
+IXMAKE= ${XMAKEENV} ${WORLDTMP}/usr/bin/${MAKE}
+
+#
+# buildworld
+#
+# Attempt to rebuild the entire system, with reasonable chance of
+# success, regardless of how old your existing system is.
+#
+buildworld:
+ @echo " Warning: This build is not supposed to clobber anything on the"
+ @echo " ======= system you are building on, but you should consider what"
+ @echo " ======= you would do if that happened."
+ @echo
+ @echo " ABORT NOW IF UNSURE!"
+ @sleep 10
+ @echo " OK, here we go......"
+ @echo "--------------------------------------------------------------"
+ @echo " Cleaning up the temporary build tree"
+ @echo "--------------------------------------------------------------"
+ mkdir -p ${WORLDTMP}
+ chflags -R noschg ${WORLDTMP}/
+ rm -rf ${WORLDTMP}
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Install the FreeBSD mkdep ('cause the NetBSD one isn't good enough!)"
+ @echo "--------------------------------------------------------------"
+ mkdir -p ${WORLDTMP}/usr/bin
+ cd ${.CURDIR}/usr.bin/mkdep && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${MK_FLAGS} install
+ @echo
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Making a FreeBSD make using the NetBSD one"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR}/usr.bin/make && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${CLEANDIR} ${OBJDIR}
+ cd ${.CURDIR}/usr.bin/make && \
+ ${IBMAKE} -I${.CURDIR}/share/mk depend && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${MK_FLAGS} all && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${MK_FLAGS} install && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${MK_FLAGS} clean cleandepend
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Making a FreeBSD find which knows the -L argument"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR}/usr.bin/find && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${CLEANDIR} ${OBJDIR}
+ cd ${.CURDIR}/usr.bin/find && \
+ ${IBMAKE} -I${.CURDIR}/share/mk depend && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${MK_FLAGS} all && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${MK_FLAGS} install && \
+ ${IBMAKE} -I${.CURDIR}/share/mk ${MK_FLAGS} clean cleandepend
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Making hierarchy like normal"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${BMAKE} hierarchy
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Rebuilding the obj tree like normal"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${BMAKE} par-obj
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Rebuilding FreeBSD bootstrap tools using the NetBSD ones"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${BMAKE} bootstrap
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Rebuilding FreeBSD tools necessary to build the include files"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${BMAKE} include-tools
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Rebuilding FreeBSD tools needed to build the libraries"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${BMAKE} lib-tools
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " AT THIS POINT, THE TEMPORARY TREE IS SUPPOSED TO HAVE ALL"
+ @echo " THE TOOLS TO BUILD THE ENTIRE FreeBSD TREE USING FreeBSD"
+ @echo " HEADER FILES"
+ @echo
+ @echo " Rebuilding /usr/include"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && SHARED=copies ${BMAKE} includes
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Rebuilding /usr/lib"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${LMAKE} libraries
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Rebuilding all other tools needed to build the world"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${LMAKE} build-tools
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Rebuilding dependencies"
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${XMAKE} par-depend
+ @echo
+ @echo "--------------------------------------------------------------"
+ @echo " Building everything.."
+ @echo "--------------------------------------------------------------"
+ cd ${.CURDIR} && ${XMAKE} all
+
+#
+# ------------------------------------------------------------------------
+#
+# From here onwards are utility targets used by the 'make world' and
+# related targets. If your 'world' breaks, you may like to try to fix
+# the problem and manually run the following targets to attempt to
+# complete the build. Beware, this is *not* guaranteed to work, you
+# need to have a pretty good grip on the current state of the system
+# to attempt to manually finish it. If in doubt, 'make world' again.
+#
+
+#
+# heirarchy - ensure that all the needed directories are present
+#
+hierarchy:
+ cd ${.CURDIR}/etc && ${MAKE} distrib-dirs
+
+#
+# bootstrap - [re]build tools needed to run the actual build, this includes
+# tools needed by 'make depend', as some tools are needed to generate source
+# for the dependency information to be gathered from.
+#
+bootstrap:
+ cd ${.CURDIR}/usr.bin/make && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+ cd ${.CURDIR}/usr.bin/xinstall && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+ cd ${.CURDIR}/usr.bin/lex && ${MAKE} bootstrap && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} -DNOLIB all && \
+ ${MAKE} ${MK_FLAGS} -DNOLIB -B install ${CLEANDIR}
+ cd ${.CURDIR}/usr.bin/lex && ${MAKE} obj
+
+#
+# include-tools - generally the same as 'bootstrap', except that it's for
+# things that are specifically needed to generate include files.
+#
+# XXX should be merged with bootstrap, it's not worth keeeping them separate.
+# Well, maybe it is now. We force 'cleandepend' here to avoid dependencies
+# on cleaned away headers in ${WORLDTMP}.
+#
+include-tools:
+ cd ${.CURDIR}/usr.bin/rpcgen && ${MAKE} -B cleandepend depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+
+#
+# includes - possibly generate and install the include files.
+#
+includes:
+ cd ${.CURDIR}/include && ${MAKE} -B all install
+ cd ${.CURDIR}/gnu/include && ${MAKE} install
+ cd ${.CURDIR}/gnu/lib/libmp && ${MAKE} beforeinstall
+ cd ${.CURDIR}/gnu/lib/libobjc && ${MAKE} beforeinstall
+ cd ${.CURDIR}/gnu/lib/libreadline && ${MAKE} beforeinstall
+ cd ${.CURDIR}/gnu/lib/libregex && ${MAKE} beforeinstall
+ cd ${.CURDIR}/gnu/lib/libstdc++ && ${MAKE} beforeinstall
+ cd ${.CURDIR}/gnu/lib/libg++ && ${MAKE} beforeinstall
+ cd ${.CURDIR}/gnu/lib/libdialog && ${MAKE} beforeinstall
+ cd ${.CURDIR}/gnu/lib/libgmp && ${MAKE} beforeinstall
+.if exists(secure) && !defined(NOCRYPT)
+ cd ${.CURDIR}/secure/lib/libdes && ${MAKE} beforeinstall
+.endif
+.if exists(kerberosIV) && !defined(NOCRYPT) && defined(MAKE_KERBEROS4)
+ cd ${.CURDIR}/kerberosIV/lib/libacl && ${MAKE} beforeinstall
+ cd ${.CURDIR}/kerberosIV/lib/libkadm && ${MAKE} beforeinstall
+ cd ${.CURDIR}/kerberosIV/lib/libkafs && ${MAKE} beforeinstall
+ cd ${.CURDIR}/kerberosIV/lib/libkdb && ${MAKE} beforeinstall
+ cd ${.CURDIR}/kerberosIV/lib/libkrb && ${MAKE} beforeinstall
+ cd ${.CURDIR}/kerberosIV/lib/libtelnet && ${MAKE} beforeinstall
+.else
+ cd ${.CURDIR}/lib/libtelnet && ${MAKE} beforeinstall
+.endif
+.if exists(${.CURDIR}/lib/csu/${MACHINE})
+ cd ${.CURDIR}/lib/csu/${MACHINE} && ${MAKE} beforeinstall
+.endif
+ cd ${.CURDIR}/lib/libalias && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libc && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libcurses && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libdisk && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libedit && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libftpio && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libmd && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libmytinfo && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libncurses && ${MAKE} beforeinstall
+.if !defined(WANT_CSRG_LIBM)
+ cd ${.CURDIR}/lib/msun && ${MAKE} beforeinstall
+.endif
+ cd ${.CURDIR}/lib/libopie && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libpcap && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/librpcsvc && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libskey && ${MAKE} beforeinstall
+.if !defined(NOTCL) && exists (${.CURDIR}/contrib/tcl) && \
+ exists(${.CURDIR}/usr.bin/tclsh) && exists (${.CURDIR}/lib/libtcl)
+ cd ${.CURDIR}/lib/libtcl && ${MAKE} installhdrs
+.endif
+ cd ${.CURDIR}/lib/libtermcap && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libcom_err && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libss && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libscsi && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libutil && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libvgl && ${MAKE} beforeinstall
+ cd ${.CURDIR}/lib/libz && ${MAKE} beforeinstall
+ cd ${.CURDIR}/usr.bin/f2c && ${MAKE} beforeinstall
+ cd ${.CURDIR}/usr.bin/lex && ${MAKE} beforeinstall
+
+#
+# lib-tools - build tools to compile and install the libraries.
+#
+# XXX gperf is required for cc
+# XXX a new ld and tsort is required for cc
+# gnu/usr.bin/ld
+# gnu/usr.bin/as
+# gnu/usr.bin/cc
+lib-tools:
+ cd ${.CURDIR}/lib/csu/alpha && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+ @-rm -f ${WORLDTMP}/usr/bin/ld
+ @-rm -f ${WORLDTMP}/usr/bin/as
+ @-rm -f ${WORLDTMP}/usr/bin/g++
+ @-rm -f ${WORLDTMP}/usr/bin/nm
+ @-rm -f ${WORLDTMP}/usr/bin/ranlib
+ ln -s /usr/local/bin/ld ${WORLDTMP}/usr/bin/ld
+ ln -s /usr/local/bin/as ${WORLDTMP}/usr/bin/as
+ ln -s /usr/local/bin/g++ ${WORLDTMP}/usr/bin/g++
+ ln -s /usr/local/bin/nm ${WORLDTMP}/usr/bin/nm
+ ln -s /usr/local/bin/ranlib ${WORLDTMP}/usr/bin/ranlib
+.for d in \
+ gnu/usr.bin/gperf \
+ usr.bin/tsort \
+ gnu/usr.bin/bison \
+ gnu/usr.bin/cc \
+ usr.bin/ar \
+ usr.bin/compile_et \
+ usr.bin/lex/lib \
+ usr.bin/mk_cmds \
+ usr.bin/uudecode
+ cd ${.CURDIR}/$d && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endfor
+
+#
+# libraries - build and install the libraries
+#
+libraries:
+.if exists(lib/csu/${MACHINE})
+ cd ${.CURDIR}/lib/csu/${MACHINE} && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+ cd ${.CURDIR}/lib/libc && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.if exists(lib/libcompat)
+ cd ${.CURDIR}/lib/libcompat && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(lib/libmytinfo)
+ cd ${.CURDIR}/lib/libmytinfo && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(lib/libncurses)
+ cd ${.CURDIR}/lib/libncurses && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(lib/libtermcap)
+ cd ${.CURDIR}/lib/libtermcap && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(gnu)
+ cd ${.CURDIR}/gnu/lib && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE)
+ cd ${.CURDIR}/secure/lib && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(lib)
+ cd ${.CURDIR}/lib && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(usr.bin/lex/lib)
+ cd ${.CURDIR}/usr.bin/lex/lib && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(kerberosIV) && !defined(NOCRYPT) && defined(MAKE_KERBEROS4)
+ cd ${.CURDIR}/kerberosIV/lib && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+.if exists(usr.sbin/pcvt/keycap)
+ cd ${.CURDIR}/usr.sbin/pcvt/keycap && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endif
+
+#
+# build-tools - build and install any other tools needed to complete the
+# compile and install.
+# ifdef stale
+# bc and cpp are required to build groff. Otherwise, the order here is
+# mostly historical, i.e., bogus.
+# chmod is used to build gcc's tmpmultilib[2] at obscure times.
+# endif stale
+# XXX uname is a bug - the target should not depend on the host.
+#
+build-tools:
+.for d in \
+ bin/cat \
+ bin/chmod \
+ bin/cp \
+ bin/date \
+ bin/dd \
+ bin/echo \
+ bin/expr \
+ bin/hostname \
+ bin/ln \
+ bin/ls \
+ bin/mkdir \
+ bin/mv \
+ bin/rm \
+ bin/sh \
+ bin/test \
+ gnu/usr.bin/awk \
+ gnu/usr.bin/bc \
+ gnu/usr.bin/grep \
+ gnu/usr.bin/groff \
+ gnu/usr.bin/gzip \
+ gnu/usr.bin/man/makewhatis \
+ gnu/usr.bin/sort \
+ gnu/usr.bin/texinfo \
+ share/info \
+ usr.bin/basename \
+ usr.bin/cap_mkdb \
+ usr.bin/chflags \
+ usr.bin/cmp \
+ usr.bin/col \
+ usr.bin/cpp \
+ usr.bin/expand \
+ usr.bin/file2c \
+ usr.bin/find \
+ usr.bin/gencat \
+ usr.bin/lorder \
+ usr.bin/m4 \
+ usr.bin/mkdep \
+ usr.bin/paste \
+ usr.bin/sed \
+ usr.bin/size \
+ usr.bin/soelim \
+ usr.bin/strip \
+ usr.bin/symorder \
+ usr.bin/touch \
+ usr.bin/tr \
+ usr.bin/true \
+ usr.bin/uname \
+ usr.bin/uuencode \
+ usr.bin/vgrind \
+ usr.bin/vi \
+ usr.bin/wc \
+ usr.bin/yacc \
+ usr.sbin/chown \
+ usr.sbin/mtree \
+ usr.sbin/zic
+ cd ${.CURDIR}/$d && ${MAKE} depend && \
+ ${MAKE} ${MK_FLAGS} all && \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+.endfor
+
+.for __target in clean cleandir obj depend
+.for entry in ${SUBDIR}
+${entry}.${__target}__D: .PHONY
+ if test -d ${.CURDIR}/${entry}.${MACHINE}; then \
+ ${ECHODIR} "===> ${DIRPRFX}${entry}.${MACHINE}"; \
+ edir=${entry}.${MACHINE}; \
+ cd ${.CURDIR}/$${edir}; \
+ else \
+ ${ECHODIR} "===> ${DIRPRFX}${entry}"; \
+ edir=${entry}; \
+ cd ${.CURDIR}/$${edir}; \
+ fi; \
+ ${MAKE} ${__target} DIRPRFX=${DIRPRFX}$${edir}/
+.endfor
+par-${__target}: ${SUBDIR:S/$/.${__target}__D/}
+.endfor
+
OpenPOWER on IntegriCloud