Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 545 lines (484 sloc) 16.646 kB
b660359 Sync with HEAD
bouyer authored
1 # $NetBSD: Makefile,v 1.281.2.1 2011/02/08 16:18:26 bouyer Exp $
4693743 Improve documentation.
cjs authored
2
69d1160 * Add two new (experimental) targets:
lukem authored
3 #
4693743 Improve documentation.
cjs authored
4 # This is the top-level makefile for building NetBSD. For an outline of
5 # how to build a snapshot or release, as well as other release engineering
4152b20 netbsd.org->NetBSD.org
salo authored
6 # information, see http://www.NetBSD.org/developers/releng/index.html
4693743 Improve documentation.
cjs authored
7 #
8 # Not everything you can set or do is documented in this makefile. In
9 # particular, you should review the files in /usr/share/mk (especially
10 # bsd.README) for general information on building programs and writing
11 # Makefiles within this structure, and see the comments in src/etc/Makefile
12 # for further information on installation and release set options.
13 #
14 # Variables listed below can be set on the make command line (highest
15 # priority), in /etc/mk.conf (middle priority), or in the environment
16 # (lowest priority).
17 #
18 # Variables:
f7a8ac6 Document MKOBJDIRS here, and sort the variable list in the comments
sommerfeld authored
19 # DESTDIR is the target directory for installation of the compiled
20 # software. It defaults to /. Note that programs are built against
21 # libraries installed in DESTDIR.
0f2c0be Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was d…
lukem authored
22 # MKMAN, if `no', will prevent building of manual pages.
23 # MKOBJDIRS, if not `no', will build object directories at
f7a8ac6 Document MKOBJDIRS here, and sort the variable list in the comments
sommerfeld authored
24 # an appropriate point in a build.
0f2c0be Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was d…
lukem authored
25 # MKSHARE, if `no', will prevent building and installing
4693743 Improve documentation.
cjs authored
26 # anything in /usr/share.
0f2c0be Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was d…
lukem authored
27 # MKUPDATE, if not `no', will avoid a `make cleandir' at the start of
6485a5c Fix whitespace usage in comment.
enami authored
28 # `make build', as well as having the effects listed in
29 # /usr/share/mk/bsd.README.
f40352f clarify some variable documentation; from cagney
mrg authored
30 # NOCLEANDIR, if defined, will avoid a `make cleandir' at the start
6485a5c Fix whitespace usage in comment.
enami authored
31 # of the `make build'.
f979063 Document the cool NOCLEANDIR/NOINCLUDES options that somebody added.
toddpw authored
32 # NOINCLUDES will avoid the `make includes' usually done by `make build'.
4693743 Improve documentation.
cjs authored
33 #
0f2c0be Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was d…
lukem authored
34 # See mk.conf(5) for more details.
35 #
36 #
4693743 Improve documentation.
cjs authored
37 # Targets:
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
38 # build:
4626503 Install release files under "${RELEASEDIR}/${MACHINE}/..." instead of
lukem authored
39 # Builds a full release of NetBSD in DESTDIR, except for the
40 # /etc configuration files.
41 # If BUILD_DONE is set, this is an empty target.
42 # distribution:
43 # Builds a full release of NetBSD in DESTDIR, including the /etc
44 # configuration files.
45 # buildworld:
46 # As per `make distribution', except that it ensures that DESTDIR
47 # is not the root directory.
48 # installworld:
49 # Install the distribution from DESTDIR to INSTALLWORLDDIR (which
50 # defaults to the root directory). Ensures that INSTALLWORLDDIR
51 # is the not root directory if cross compiling.
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
52 # release:
4903b14 Modify "release" to invoke "make distribution" instead of "make build",
lukem authored
53 # Does a `make distribution', and then tars up the DESTDIR files
97b91fc Consistently document RELEASEDIR/RELEASEMACHINEDIR.
lukem authored
54 # into ${RELEASEDIR}/${RELEASEMACHINEDIR}, in release(7) format.
4626503 Install release files under "${RELEASEDIR}/${MACHINE}/..." instead of
lukem authored
55 # (See etc/Makefile for more information on this.)
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
56 # regression-tests:
57 # Runs the regression tests in "regress" on this host.
b31e270 Add "sourcesets" argument/target, which builds source sets into
lukem authored
58 # sets:
97b91fc Consistently document RELEASEDIR/RELEASEMACHINEDIR.
lukem authored
59 # Populate ${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/sets
60 # from ${DESTDIR}
b31e270 Add "sourcesets" argument/target, which builds source sets into
lukem authored
61 # sourcesets:
62 # Populate ${RELEASEDIR}/source/sets from ${NETBSDSRCDIR}
0934a2e Add a new "syspkgs" target, which simply chains to the "syspkgs" target
apb authored
63 # syspkgs:
97b91fc Consistently document RELEASEDIR/RELEASEMACHINEDIR.
lukem authored
64 # Populate ${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/syspkgs
65 # from ${DESTDIR}
468bd5d * Add an "iso-image" target in the top level Makefile,
apb authored
66 # iso-image:
82d4f8d Add an iso-image-source option which does the same thing as iso-image…
jnemeth authored
67 # Create CD-ROM image in RELEASEDIR/iso.
468bd5d * Add an "iso-image" target in the top level Makefile,
apb authored
68 # RELEASEDIR must already have been populated by `make release'
69 # or equivalent.
82d4f8d Add an iso-image-source option which does the same thing as iso-image…
jnemeth authored
70 # iso-image-source:
71 # Create CD-ROM image with source in RELEASEDIR/iso.
72 # RELEASEDIR must already have been populated by
73 # `make release sourcesets' or equivalent.
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
74 #
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
75 # Targets invoked by `make build,' in order:
76 # cleandir: cleans the tree.
5b60ec5 Add a do-top-obj target, which builds the top-level obj directory.
apb authored
77 # do-top-obj: creates the top level object directory.
07f4031 Defer the "make obj" step until after tools are built and installed.
apb authored
78 # do-tools-obj: creates object directories for the host toolchain.
85a68ff Major overhaul of src/tools and host toolchain. Summary of changes:
tv authored
79 # do-tools: builds host toolchain.
07f4031 Defer the "make obj" step until after tools are built and installed.
apb authored
80 # obj: creates object directories.
a7041f0 Put do-make-tools before creating distrib-dirs (as binstall has to be
tv authored
81 # do-distrib-dirs: creates the distribution directories.
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
82 # includes: installs include files.
be4d05d update "targets invoked by make build" to match reality ...
lukem authored
83 # do-tools-compat: builds the "libnbcompat" library; needed for some
84 # random host tool programs in the source tree.
5b1b90c correct the comment describing the build order
lukem authored
85 # do-lib-csu: builds and installs prerequisites from lib/csu.
26b7b01 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necess…
lukem authored
86 # do-libgcc: builds and installs prerequisites from
87 # gnu/lib/crtstuff${LIBGCC_EXT} (if necessary) and
88 # gnu/lib/libgcc${LIBGCC_EXT}.
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
89 # do-libpcc: builds and install prerequisites from
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
90 # external/bsd/pcc/crtstuff (if necessary) and
91 # external/bsd/pcc/libpcc.
7c3b4fc Add a do-lib-libc target which is processed after do-lib-csu. This
thorpej authored
92 # do-lib-libc: builds and installs prerequisites from lib/libc.
b9e597f Re-add intermediate dependall/install targets (do-lib-csu, do-lib,
tv authored
93 # do-lib: builds and installs prerequisites from lib.
0ab9b9d build & install librumpdev_netsmb and librumpfs_smbfs components
pooka authored
94 # do-sys-rump-dev-lib: builds and installs prerequisites from sys/rump/dev/lib
c35eff1 add do-sys-rump-net-lib
pooka authored
95 # do-sys-rump-fs-lib: builds and installs prerequisites from sys/rump/fs/lib
b2814fa descend into sys/rump/kern
pooka authored
96 # do-sys-rump-kern-lib: builds and installs prereq. from sys/rump/kern/lib
c35eff1 add do-sys-rump-net-lib
pooka authored
97 # do-sys-rump-net-lib: builds and installs prerequisites from sys/rump/net/lib
40de13a Build kernel modules the same time as the rest of the system libraries.
pooka authored
98 # do-sys-modules: builds and installs kernel modules (used by rump binaries)
770f682 MKDYNAMICROOT for a.out
itohy authored
99 # do-ld.so: builds and installs prerequisites from libexec/ld.*_so.
82ead09 - enable 32-bit library builds on amd64 and sparc64
mrg authored
100 # do-compat-lib-csu: builds and installs prerequisites from compat/lib/csu
101 # if ${MKCOMPAT} != "no".
102 # do-compat-libgcc: builds and installs prerequisites from
103 # compat/gnu/lib/crtstuff${LIBGCC_EXT} (if necessary) and
104 # compat/gnu/lib/libgcc${LIBGCC_EXT} if ${MKCOMPAT} != "no".
105 # do-compat-lib-libc: builds and installs prerequisites from compat/lib/libc
106 # if ${MKCOMPAT} != "no".
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
107 # do-build: builds and installs the entire system.
4694719 - retire MKXORG from public use
mrg authored
108 # do-x11: builds and installs X11 if ${MKX11} != "no"; either
109 # X11R7 from src/external/mit/xorg if ${X11FLAVOUR} == "Xorg"
110 # or X11R6 from src/x11
358f392 Support "extsrc", externally added programs and libraries. Users can…
uebayasi authored
111 # do-extsrc: builds and installs extsrc if ${MKEXTSRC} != "no".
ed6f193 fix some comments
lukem authored
112 # do-obsolete: installs the obsolete sets (for the postinstall-* targets).
69d1160 * Add two new (experimental) targets:
lukem authored
113 #
448982f pull in bsd.own.mk earlier, to get configuration variables.
cgd authored
114
79154dd * Always descend into "tools" regardless of USETOOLS setting. Instead,
tv authored
115 .if ${.MAKEFLAGS:M${.CURDIR}/share/mk} == ""
116 .MAKEFLAGS: -m ${.CURDIR}/share/mk
117 .endif
118
69d1160 * Add two new (experimental) targets:
lukem authored
119 #
9d29a4f If _SRC_TOP_OBJ_ gets set here, we will end up with a directory that may
tv authored
120 # If _SRC_TOP_OBJ_ gets set here, we will end up with a directory that may
121 # not be the top level objdir, because "make obj" can happen in the *middle*
122 # of "make build" (long after <bsd.own.mk> is calculated it). So, pre-set
123 # _SRC_TOP_OBJ_ here so it will not be added to ${.MAKEOVERRIDES}.
69d1160 * Add two new (experimental) targets:
lukem authored
124 #
9d29a4f If _SRC_TOP_OBJ_ gets set here, we will end up with a directory that may
tv authored
125 _SRC_TOP_OBJ_=
126
79154dd * Always descend into "tools" regardless of USETOOLS setting. Instead,
tv authored
127 .include <bsd.own.mk>
a445358 change "Id" to "Header" in rcsid, and noted why etc was not in subdirs
cgd authored
128
69d1160 * Add two new (experimental) targets:
lukem authored
129 #
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
130 # Sanity check: make sure that "make build" is not invoked simultaneously
131 # with a standard recursive target.
69d1160 * Add two new (experimental) targets:
lukem authored
132 #
c2e4e20 Fix the rebuild of libgcc:
tv authored
133
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
134 .if make(build) || make(release) || make(snapshot)
135 .for targ in ${TARGETS:Nobj:Ncleandir}
136 .if make(${targ}) && !target(.BEGIN)
137 .BEGIN:
138 @echo 'BUILD ABORTED: "make build" and "make ${targ}" are mutually exclusive.'
139 @false
140 .endif
141 .endfor
046845e Add a 'NBUILDJOBS' variable which control the number of jobs started in
bouyer authored
142 .endif
143
69d1160 * Add two new (experimental) targets:
lukem authored
144 #
5b60ec5 Add a do-top-obj target, which builds the top-level obj directory.
apb authored
145 # _SUBDIR is used to set SUBDIR, after removing directories that have
146 # BUILD_${dir}=no, or that have no ${dir}/Makefile.
69d1160 * Add two new (experimental) targets:
lukem authored
147 #
0946e1f add crypto/external to the build.
christos authored
148 _SUBDIR= tools lib include gnu external crypto/external bin games
149 _SUBDIR+= libexec sbin usr.bin
82ead09 - enable 32-bit library builds on amd64 and sparc64
mrg authored
150 _SUBDIR+= usr.sbin share rescue sys etc tests compat .WAIT distrib regress
e2c2314 make sure include and include/sys are populated before starting to
assar authored
151
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
152 .for dir in ${_SUBDIR}
5b60ec5 Add a do-top-obj target, which builds the top-level obj directory.
apb authored
153 .if "${dir}" == ".WAIT" \
154 || (${BUILD_${dir}:Uyes} != "no" && exists(${dir}/Makefile))
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
155 SUBDIR+= ${dir}
634e8c1 allow builds to work if directory games is missing. Closes pr misc/19…
explorer authored
156 .endif
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
157 .endfor
c330d79 allow toplevel makefile to descend into sys
cgd authored
158
72a7b88 Make regress only if directory exists. It can be optional.
brezak authored
159 .if exists(regress)
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
160 regression-tests: .PHONY .MAKE
7e08344 oops, clean that up a bit
cgd authored
161 @echo Running regression tests...
8993a70 Convert lines of the form
lukem authored
162 ${MAKEDIRTARGET} regress regress
bc33876 if not installing man pages, don't remake whatis db
cgd authored
163 .endif
7413e10 add some new targets to DTRT when installing/building
cgd authored
164
0f2c0be Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was d…
lukem authored
165 .if ${MKUNPRIVED} != "no"
62b3892 Fix what rev. 1.176 broke, in particular, doing a priv'd build into
thorpej authored
166 NOPOSTINSTALL= # defined
167 .endif
168
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
169 afterinstall: .PHONY .MAKE
a0e7536 Add a new target (infodir-meta:) that synthesizes the share/info/dir
perry authored
170 .if ${MKMAN} != "no"
8993a70 Convert lines of the form
lukem authored
171 ${MAKEDIRTARGET} share/man makedb
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
172 .endif
0f2c0be Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was d…
lukem authored
173 .if (${MKUNPRIVED} != "no" && ${MKINFO} != "no")
8993a70 Convert lines of the form
lukem authored
174 ${MAKEDIRTARGET} gnu/usr.bin/texinfo/install-info infodir-meta
a0e7536 Add a new target (infodir-meta:) that synthesizes the share/info/dir
perry authored
175 .endif
62b3892 Fix what rev. 1.176 broke, in particular, doing a priv'd build into
thorpej authored
176 .if !defined(NOPOSTINSTALL)
8993a70 Convert lines of the form
lukem authored
177 ${MAKEDIRTARGET} . postinstall-check
52b0450 In afterinstall, only run postinstall check if DESTDIR == / (or equiv…
lukem authored
178 .endif
6c495ae move postinstall from afterinstall to separate "postinstall-check" ta…
lukem authored
179
c39ab16 use usr.sbin/postinstall/postinstall instead of etc/postinstall
lukem authored
180 _POSTINSTALL= ${.CURDIR}/usr.sbin/postinstall/postinstall
181
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
182 postinstall-check: .PHONY
ff9a5ba run "./etc/postinstall check" in afterinstall:
lukem authored
183 @echo " === Post installation checks ==="
361b5ec Disable grep host tool and unbreak NetBSD build until I can come up w…
sketch authored
184 AWK=${TOOL_AWK:Q} MAKE=${MAKE:Q} ${HOST_SH} ${_POSTINSTALL} -s ${.CURDIR} -d ${DESTDIR}/ check; if [ $$? -gt 1 ]; then exit 1; fi
ff9a5ba run "./etc/postinstall check" in afterinstall:
lukem authored
185 @echo " ================================"
186
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
187 postinstall-fix: .NOTMAIN .PHONY
84bb4a2 we might as well provide a handy "postinstall-fix" target whilst here
lukem authored
188 @echo " === Post installation fixes ==="
361b5ec Disable grep host tool and unbreak NetBSD build until I can come up w…
sketch authored
189 AWK=${TOOL_AWK:Q} MAKE=${MAKE:Q} ${HOST_SH} ${_POSTINSTALL} -s ${.CURDIR} -d ${DESTDIR}/ fix
6784880 Add postinstall-fix-obsolete (to invoke "postinstall fix obsolete" -
lukem authored
190 @echo " ==============================="
191
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
192 postinstall-fix-obsolete: .NOTMAIN .PHONY
6784880 Add postinstall-fix-obsolete (to invoke "postinstall fix obsolete" -
lukem authored
193 @echo " === Removing obsolete files ==="
361b5ec Disable grep host tool and unbreak NetBSD build until I can come up w…
sketch authored
194 AWK=${TOOL_AWK:Q} MAKE=${MAKE:Q} ${HOST_SH} ${_POSTINSTALL} -s ${.CURDIR} -d ${DESTDIR}/ fix obsolete
6784880 Add postinstall-fix-obsolete (to invoke "postinstall fix obsolete" -
lukem authored
195 @echo " ==============================="
84bb4a2 we might as well provide a handy "postinstall-fix" target whilst here
lukem authored
196
a0e7536 Add a new target (infodir-meta:) that synthesizes the share/info/dir
perry authored
197
69d1160 * Add two new (experimental) targets:
lukem authored
198 #
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
199 # Targets (in order!) called by "make build".
69d1160 * Add two new (experimental) targets:
lukem authored
200 #
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
201 .if defined(HAVE_GCC)
5b803cb remove support for building (with) GCC 2.95. also:
mrg authored
202 .if ${HAVE_GCC} == "3"
f99f07d maybe build gnu/lib/libgcc3 instead of libgcc[2]
mrg authored
203 LIBGCC_EXT=3
204 .else
5b803cb remove support for building (with) GCC 2.95. also:
mrg authored
205 LIBGCC_EXT=4
f99f07d maybe build gnu/lib/libgcc3 instead of libgcc[2]
mrg authored
206 .endif
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
207 .endif
a3028a2 If updating from a system which has a /usr/pkg/info/dir, move that to
tv authored
208
ca06aeb Warn when "make build" is started with USE_NEW_TOOLCHAIN on a platfor…
tv authored
209 BUILDTARGETS+= check-tools
0f2c0be Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was d…
lukem authored
210 .if ${MKUPDATE} == "no" && !defined(NOCLEANDIR)
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
211 BUILDTARGETS+= cleandir
a7041f0 Put do-make-tools before creating distrib-dirs (as binstall has to be
tv authored
212 .endif
5b60ec5 Add a do-top-obj target, which builds the top-level obj directory.
apb authored
213 .if ${MKOBJDIRS} != "no"
214 BUILDTARGETS+= do-top-obj
215 .endif
216 .if ${USETOOLS} == "yes" # {
c2c3d6f Reverse the order of "make cleandir" and "make obj" back to the way they
tv authored
217 .if ${MKOBJDIRS} != "no"
07f4031 Defer the "make obj" step until after tools are built and installed.
apb authored
218 BUILDTARGETS+= do-tools-obj
c2c3d6f Reverse the order of "make cleandir" and "make obj" back to the way they
tv authored
219 .endif
85a68ff Major overhaul of src/tools and host toolchain. Summary of changes:
tv authored
220 BUILDTARGETS+= do-tools
5b60ec5 Add a do-top-obj target, which builds the top-level obj directory.
apb authored
221 .endif # USETOOLS # }
07f4031 Defer the "make obj" step until after tools are built and installed.
apb authored
222 .if ${MKOBJDIRS} != "no"
223 BUILDTARGETS+= obj
224 .endif
71531eb Make clean_METALOG in distrib/sets early in the build, to ensure that
apb authored
225 BUILDTARGETS+= clean_METALOG
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
226 .if !defined(NODISTRIBDIRS)
227 BUILDTARGETS+= do-distrib-dirs
a7041f0 Put do-make-tools before creating distrib-dirs (as binstall has to be
tv authored
228 .endif
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
229 .if !defined(NOINCLUDES)
230 BUILDTARGETS+= includes
a7041f0 Put do-make-tools before creating distrib-dirs (as binstall has to be
tv authored
231 .endif
b042d91 Always build tools/compat, so that random host helper programs
thorpej authored
232 BUILDTARGETS+= do-tools-compat
8988beb Be more gcc like in the way we deal with libgcc so that sh3/hppa mill…
skrll authored
233 BUILDTARGETS+= do-lib-csu
f0e2d90 build libgcc early, if at all
drochner authored
234 .if ${MKGCC} != "no"
26b7b01 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necess…
lukem authored
235 BUILDTARGETS+= do-libgcc
f0e2d90 build libgcc early, if at all
drochner authored
236 .endif
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
237 .if ${MKPCC} != "no"
238 BUILDTARGET+= do-libpcc
239 .endif
8988beb Be more gcc like in the way we deal with libgcc so that sh3/hppa mill…
skrll authored
240 BUILDTARGETS+= do-lib-libc
4cb28da Remove the do-external-lib and do-gnu-lib targets, along with
plunky authored
241 BUILDTARGETS+= do-lib
825a0b4 Let us use MKKMOD=yes to leave the kernel modules out of the
dyoung authored
242 .if (${MACHINE} != "evbppc") && ${MKKMOD} != "no"
40de13a Build kernel modules the same time as the rest of the system libraries.
pooka authored
243 BUILDTARGETS+= do-sys-modules
244 .endif
b2814fa descend into sys/rump/kern
pooka authored
245 BUILDTARGETS+= do-sys-rump-dev-lib do-sys-rump-fs-lib
246 BUILDTARGETS+= do-sys-rump-kern-lib do-sys-rump-net-lib
82ead09 - enable 32-bit library builds on amd64 and sparc64
mrg authored
247 .if ${MKCOMPAT} != "no"
248 BUILDTARGETS+= do-compat-lib-csu
249 BUILDTARGETS+= do-compat-libgcc
250 BUILDTARGETS+= do-compat-lib-libc
251 .endif
5767649 only build do-lib-libdes if ${MKCRYPTO}!=no
lukem authored
252 BUILDTARGETS+= do-ld.so
253 BUILDTARGETS+= do-build
4694719 - retire MKXORG from public use
mrg authored
254 .if ${MKX11} != "no"
19423fd Implement do-x11, to run "make build" in ./x11/
lukem authored
255 BUILDTARGETS+= do-x11
256 .endif
358f392 Support "extsrc", externally added programs and libraries. Users can…
uebayasi authored
257 .if ${MKEXTSRC} != "no"
258 BUILDTARGETS+= do-extsrc
259 .endif
431157a all:
lukem authored
260 BUILDTARGETS+= do-obsolete
a7041f0 Put do-make-tools before creating distrib-dirs (as binstall has to be
tv authored
261
69d1160 * Add two new (experimental) targets:
lukem authored
262 #
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
263 # Enforce proper ordering of some rules.
69d1160 * Add two new (experimental) targets:
lukem authored
264 #
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
265
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
266 .ORDER: ${BUILDTARGETS}
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
267 includes-lib: .PHONY includes-include includes-sys
268 includes-gnu: .PHONY includes-lib
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
269
69d1160 * Add two new (experimental) targets:
lukem authored
270 #
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
271 # Build the system and install into DESTDIR.
69d1160 * Add two new (experimental) targets:
lukem authored
272 #
ae121f5 The final step -- hook src/tools into the main build. If USE_NEW_TOO…
tv authored
273
a9a889a show the start time at the end of the build as well.
lukem authored
274 START_TIME!= date
275
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
276 build: .PHONY .MAKE
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
277 .if defined(BUILD_DONE)
278 @echo "Build already installed into ${DESTDIR}"
279 .else
a9a889a show the start time at the end of the build as well.
lukem authored
280 @echo "Build started at: ${START_TIME}"
5d1bfa2 Work around parallelism lossage, because .ORDER doesn't work yet
tv authored
281 .for tgt in ${BUILDTARGETS}
8993a70 Convert lines of the form
lukem authored
282 ${MAKEDIRTARGET} . ${tgt}
5d1bfa2 Work around parallelism lossage, because .ORDER doesn't work yet
tv authored
283 .endfor
8993a70 Convert lines of the form
lukem authored
284 ${MAKEDIRTARGET} etc install-etc-release
a9a889a show the start time at the end of the build as well.
lukem authored
285 @echo "Build started at: ${START_TIME}"
63eda99 Use printf rather than echo -n, since the former works on all POSIX s…
bjh21 authored
286 @printf "Build finished at: " && date
3acd090 Do not build libgcc 3 times.
mycroft authored
287 .endif
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
288
69d1160 * Add two new (experimental) targets:
lukem authored
289 #
fa27277 Add a wrapper for the "distribution" target, similar to the wrapper
thorpej authored
290 # Build a full distribution, but not a release (i.e. no sets into
69d1160 * Add two new (experimental) targets:
lukem authored
291 # ${RELEASEDIR}). "buildworld" enforces a build to ${DESTDIR} != /
292 #
fa27277 Add a wrapper for the "distribution" target, similar to the wrapper
thorpej authored
293
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
294 distribution buildworld: .PHONY .MAKE
364a133 fix DESTDIR checks if !defined(DESTDIR)
lukem authored
295 .if make(buildworld) && \
296 (!defined(DESTDIR) || ${DESTDIR} == "" || ${DESTDIR} == "/")
69d1160 * Add two new (experimental) targets:
lukem authored
297 @echo "Won't make ${.TARGET} with DESTDIR=/"
298 @false
299 .endif
8993a70 Convert lines of the form
lukem authored
300 ${MAKEDIRTARGET} . build NOPOSTINSTALL=1
301 ${MAKEDIRTARGET} etc distribution INSTALL_DONE=1
12ac6dc After running the body of the "distribution" target, do a "checkflist…
thorpej authored
302 .if defined(DESTDIR) && ${DESTDIR} != "" && ${DESTDIR} != "/"
8993a70 Convert lines of the form
lukem authored
303 ${MAKEDIRTARGET} . postinstall-fix-obsolete
304 ${MAKEDIRTARGET} distrib/sets checkflist
12ac6dc After running the body of the "distribution" target, do a "checkflist…
thorpej authored
305 .endif
092e768 improve previous; show times at end of distribution/release/snapshot …
lukem authored
306 @echo "make ${.TARGET} started at: ${START_TIME}"
cf09c55 print date when make {distribution,release,snapshot} finished
lukem authored
307 @printf "make ${.TARGET} finished at: " && date
fa27277 Add a wrapper for the "distribution" target, similar to the wrapper
thorpej authored
308
69d1160 * Add two new (experimental) targets:
lukem authored
309 #
310 # Install the distribution from $DESTDIR to $INSTALLWORLDDIR (defaults to `/')
311 # If installing to /, ensures that the host's operating system is NetBSD and
312 # the host's `uname -m` == ${MACHINE}.
313 #
314
315 HOST_UNAME_S!= uname -s
316 HOST_UNAME_M!= uname -m
317
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
318 installworld: .PHONY .MAKE
364a133 fix DESTDIR checks if !defined(DESTDIR)
lukem authored
319 .if (!defined(DESTDIR) || ${DESTDIR} == "" || ${DESTDIR} == "/")
69d1160 * Add two new (experimental) targets:
lukem authored
320 @echo "Can't make ${.TARGET} to DESTDIR=/"
321 @false
322 .endif
323 .if !defined(INSTALLWORLDDIR) || \
324 ${INSTALLWORLDDIR} == "" || ${INSTALLWORLDDIR} == "/"
325 .if (${HOST_UNAME_S} != "NetBSD")
326 @echo "Won't cross-make ${.TARGET} from ${HOST_UNAME_S} to NetBSD with INSTALLWORLDDIR=/"
327 @false
328 .endif
329 .if (${HOST_UNAME_M} != ${MACHINE})
330 @echo "Won't cross-make ${.TARGET} from ${HOST_UNAME_M} to ${MACHINE} with INSTALLWORLDDIR=/"
331 @false
332 .endif
333 .endif
8993a70 Convert lines of the form
lukem authored
334 ${MAKEDIRTARGET} distrib/sets installsets \
b660359 Sync with HEAD
bouyer authored
335 INSTALLDIR=${INSTALLWORLDDIR:U/} INSTALLSETS=${INSTALLSETS:Q}
8993a70 Convert lines of the form
lukem authored
336 ${MAKEDIRTARGET} . postinstall-check DESTDIR=${INSTALLWORLDDIR}
69d1160 * Add two new (experimental) targets:
lukem authored
337 @echo "make ${.TARGET} started at: ${START_TIME}"
338 @printf "make ${.TARGET} finished at: " && date
339
340 #
b31e270 Add "sourcesets" argument/target, which builds source sets into
lukem authored
341 # Create sets from $DESTDIR or $NETBSDSRCDIR into $RELEASEDIR
ece364c - Add "sets" top-level Makefile target and build.sh operation.
lukem authored
342 #
343
0934a2e Add a new "syspkgs" target, which simply chains to the "syspkgs" target
apb authored
344 .for tgt in sets sourcesets syspkgs
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
345 ${tgt}: .PHONY .MAKE
8993a70 Convert lines of the form
lukem authored
346 ${MAKEDIRTARGET} distrib/sets ${tgt}
b31e270 Add "sourcesets" argument/target, which builds source sets into
lukem authored
347 .endfor
ece364c - Add "sets" top-level Makefile target and build.sh operation.
lukem authored
348
349 #
4903b14 Modify "release" to invoke "make distribution" instead of "make build",
lukem authored
350 # Build a release or snapshot (implies "make distribution"). Note that
12ac6dc After running the body of the "distribution" target, do a "checkflist…
thorpej authored
351 # in this case, the set lists will be checked before the tar files
352 # are made.
69d1160 * Add two new (experimental) targets:
lukem authored
353 #
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
354
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
355 release snapshot: .PHONY .MAKE
4903b14 Modify "release" to invoke "make distribution" instead of "make build",
lukem authored
356 ${MAKEDIRTARGET} . distribution
357 ${MAKEDIRTARGET} etc release DISTRIBUTION_DONE=1
092e768 improve previous; show times at end of distribution/release/snapshot …
lukem authored
358 @echo "make ${.TARGET} started at: ${START_TIME}"
cf09c55 print date when make {distribution,release,snapshot} finished
lukem authored
359 @printf "make ${.TARGET} finished at: " && date
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
360
69d1160 * Add two new (experimental) targets:
lukem authored
361 #
468bd5d * Add an "iso-image" target in the top level Makefile,
apb authored
362 # Create a CD-ROM image.
363 #
364
365 iso-image: .PHONY
fd7849c Add an iso_image target (iso-image as a target name doesn't play well…
bouyer authored
366 ${MAKEDIRTARGET} distrib iso_image
468bd5d * Add an "iso-image" target in the top level Makefile,
apb authored
367 ${MAKEDIRTARGET} etc iso-image
368 @echo "make ${.TARGET} started at: ${START_TIME}"
369 @printf "make ${.TARGET} finished at: " && date
370
82d4f8d Add an iso-image-source option which does the same thing as iso-image…
jnemeth authored
371 iso-image-source: .PHONY
372 ${MAKEDIRTARGET} distrib iso_image CDSOURCE=true
373 ${MAKEDIRTARGET} etc iso-image
374 @echo "make ${.TARGET} started at: ${START_TIME}"
375 @printf "make ${.TARGET} finished at: " && date
376
468bd5d * Add an "iso-image" target in the top level Makefile,
apb authored
377 #
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
378 # Special components of the "make build" process.
69d1160 * Add two new (experimental) targets:
lukem authored
379 #
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
380
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
381 check-tools: .PHONY
b97d965 Consistently check ${TOOLCHAIN_MISSING} against "no".
lukem authored
382 .if ${TOOLCHAIN_MISSING} != "no" && !defined(EXTERNAL_TOOLCHAIN)
b645c30 * Eliminate the USE_NEW_TOOLCHAIN variable. Instead, split it into
thorpej authored
383 @echo '*** WARNING: Building on MACHINE=${MACHINE} with missing toolchain.'
384 @echo '*** May result in a failed build or corrupt binaries!'
385 .elif defined(EXTERNAL_TOOLCHAIN)
386 @echo '*** Using external toolchain rooted at ${EXTERNAL_TOOLCHAIN}.'
ca06aeb Warn when "make build" is started with USE_NEW_TOOLCHAIN on a platfor…
tv authored
387 .endif
c74b501 Correct BUGS in BUILDING.mdoc now that most ports are USE_NEW_TOOLCHAIN
sommerfeld authored
388 .if defined(NBUILDJOBS)
389 @echo '*** WARNING: NBUILDJOBS is obsolete; use -j directly instead!'
390 .endif
ca06aeb Warn when "make build" is started with USE_NEW_TOOLCHAIN on a platfor…
tv authored
391
71531eb Make clean_METALOG in distrib/sets early in the build, to ensure that
apb authored
392 # Delete or sanitise a leftover METALOG from a previous build.
393 clean_METALOG: .PHONY .MAKE
394 .if ${MKUPDATE} != "no"
395 ${MAKEDIRTARGET} distrib/sets clean_METALOG
396 .endif
397
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
398 do-distrib-dirs: .PHONY .MAKE
bb154af Add back logic which forces DESTDIR=/ for the distrib-dirs rule if it…
jmc authored
399 .if !defined(DESTDIR) || ${DESTDIR} == ""
8993a70 Convert lines of the form
lukem authored
400 ${MAKEDIRTARGET} etc distrib-dirs DESTDIR=/
bb154af Add back logic which forces DESTDIR=/ for the distrib-dirs rule if it…
jmc authored
401 .else
8993a70 Convert lines of the form
lukem authored
402 ${MAKEDIRTARGET} etc distrib-dirs DESTDIR=${DESTDIR}
bb154af Add back logic which forces DESTDIR=/ for the distrib-dirs rule if it…
jmc authored
403 .endif
c76af6d fix PR#12832: split `make build' up into these steps (from new the
mrg authored
404
2205992 Add do-{target} aliases for: cleandir obj includes
lukem authored
405 .for targ in cleandir obj includes
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
406 do-${targ}: .PHONY ${targ}
2205992 Add do-{target} aliases for: cleandir obj includes
lukem authored
407 @true
408 .endfor
409
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
410 .if defined(HAVE_GCC)
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
411 .if ${USE_COMPILERCRTSTUFF} == "yes"
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
412 BUILD_CC_LIB= gnu/lib/crtstuff${LIBGCC_EXT}
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
413 .endif
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
414 BUILD_CC_LIB+= gnu/lib/libgcc${LIBGCC_EXT}
415 .elif defined(HAVE_PCC)
416 BUILD_CC_LIB+= external/bsd/pcc/crtstuff
417 BUILD_CC_LIB+= external/bsd/pcc/libpcc
418 .endif
419
4cb28da Remove the do-external-lib and do-gnu-lib targets, along with
plunky authored
420 .for dir in tools tools/compat lib/csu ${BUILD_CC_LIB} lib/libc lib sys/rump/dev/lib sys/rump/fs/lib sys/rump/kern/lib sys/rump/net/lib sys/modules
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
421 do-${dir:S/\//-/g}: .PHONY .MAKE
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
422 .for targ in dependall install
8993a70 Convert lines of the form
lukem authored
423 ${MAKEDIRTARGET} ${dir} ${targ}
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
424 .endfor
425 .endfor
b9e597f Re-add intermediate dependall/install targets (do-lib-csu, do-lib,
tv authored
426
8db3434 adjust the do-compat-* rules now that src/compat/lib and friends no l…
mrg authored
427 .if ${MKCOMPAT} != "no"
428 COMPAT_SUBDIR_LIST=lib/csu ${BUILD_CC_LIB} lib/libc
429 .for dir in ${COMPAT_SUBDIR_LIST}
430 do-compat-${dir:S/\//-/g}: .PHONY .MAKE
4cb28da Remove the do-external-lib and do-gnu-lib targets, along with
plunky authored
431 .for targ in dependall install
8db3434 adjust the do-compat-* rules now that src/compat/lib and friends no l…
mrg authored
432 ${MAKEDIRTARGET} compat ${targ} BOOTSTRAP_SUBDIRS="../../../${dir}"
433 .endfor
434 .endfor
435 .endif
436
5b60ec5 Add a do-top-obj target, which builds the top-level obj directory.
apb authored
437 do-top-obj: .PHONY .MAKE
438 ${MAKEDIRTARGET} . obj NOSUBDIR=
439
07f4031 Defer the "make obj" step until after tools are built and installed.
apb authored
440 do-tools-obj: .PHONY .MAKE
441 ${MAKEDIRTARGET} tools obj
442
26b7b01 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necess…
lukem authored
443 do-libgcc: .PHONY .MAKE
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
444 .if defined(HAVE_GCC)
26b7b01 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necess…
lukem authored
445 .if ${MKGCC} != "no"
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
446 .if ${USE_COMPILERCRTSTUFF} == "yes"
26b7b01 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necess…
lukem authored
447 .if (${HAVE_GCC} == "3" || ${HAVE_GCC} == "4")
448 ${MAKEDIRTARGET} . do-gnu-lib-crtstuff${LIBGCC_EXT}
449 .endif
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
450 .endif
26b7b01 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necess…
lukem authored
451 ${MAKEDIRTARGET} . do-gnu-lib-libgcc${LIBGCC_EXT}
452 .endif
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
453 .endif
454
82ead09 - enable 32-bit library builds on amd64 and sparc64
mrg authored
455 do-compat-libgcc: .PHONY .MAKE
456 .if defined(HAVE_GCC)
457 .if ${MKGCC} != "no"
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
458 .if ${USE_COMPILERCRTSTUFF} == "yes"
82ead09 - enable 32-bit library builds on amd64 and sparc64
mrg authored
459 ${MAKEDIRTARGET} . do-compat-gnu-lib-crtstuff${LIBGCC_EXT}
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
460 .endif
82ead09 - enable 32-bit library builds on amd64 and sparc64
mrg authored
461 ${MAKEDIRTARGET} . do-compat-gnu-lib-libgcc${LIBGCC_EXT}
462 .endif
463 .endif
464
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
465 do-libpcc: .PHONY .MAKE
466 .if defined(HAVE_PCC)
467 .if ${MKPCC} != "no"
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
468 .if ${USE_COMPILERCRTSTUFF} == "yes"
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
469 ${MAKEDIRTARGET} . do-pcc-lib-crtstuff
85fe8f8 Centralise USE_COMPILERCRTSTUFF.
skrll authored
470 .endif
92539dc Build pcc and pcc-based crtstuff if using pcc compiler.
gmcgarry authored
471 ${MAKEDIRTARGET} . do-pcc-lib-libpcc
472 .endif
473 .endif
26b7b01 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necess…
lukem authored
474
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
475 do-ld.so: .PHONY .MAKE
1d3f1b5 add "do-ld.elf_so" target, which builds & installs libexec/ld.elf_so.
lukem authored
476 .for targ in dependall install
8993a70 Convert lines of the form
lukem authored
477 ${MAKEDIRTARGET} libexec/ld.elf_so ${targ}
1d3f1b5 add "do-ld.elf_so" target, which builds & installs libexec/ld.elf_so.
lukem authored
478 .endfor
479
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
480 do-build: .PHONY .MAKE
c46e0aa Rather than build in `tools' and `lib' twice, build `tools' and `lib'
tv authored
481 .for targ in dependall install
8993a70 Convert lines of the form
lukem authored
482 ${MAKEDIRTARGET} . ${targ} BUILD_tools=no BUILD_lib=no
c46e0aa Rather than build in `tools' and `lib' twice, build `tools' and `lib'
tv authored
483 .endfor
7413e10 add some new targets to DTRT when installing/building
cgd authored
484
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
485 do-x11: .PHONY .MAKE
4694719 - retire MKXORG from public use
mrg authored
486 .if ${MKX11} != "no"
487 .if ${X11FLAVOUR} == "Xorg"
b58283f if MKXORG != no, use external/mit/xorg subdir instead of x11 subdir for
mrg authored
488 ${MAKEDIRTARGET} external/mit/xorg build
4694719 - retire MKXORG from public use
mrg authored
489 .else
8993a70 Convert lines of the form
lukem authored
490 ${MAKEDIRTARGET} x11 build
4694719 - retire MKXORG from public use
mrg authored
491 .endif
a0a02de Improve support for MKXORG!=no to enable builds into external/mit/xorg.
lukem authored
492 .else
4694719 - retire MKXORG from public use
mrg authored
493 @echo "MKX11 is not enabled"
a0a02de Improve support for MKXORG!=no to enable builds into external/mit/xorg.
lukem authored
494 @false
b58283f if MKXORG != no, use external/mit/xorg subdir instead of x11 subdir for
mrg authored
495 .endif
19423fd Implement do-x11, to run "make build" in ./x11/
lukem authored
496
358f392 Support "extsrc", externally added programs and libraries. Users can…
uebayasi authored
497 do-extsrc: .PHONY .MAKE
498 .if ${MKEXTSRC} != "no"
499 ${MAKEDIRTARGET} extsrc build
500 .else
501 @echo "MKEXTSRC is not enabled"
502 @false
503 .endif
504
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
505 do-obsolete: .PHONY .MAKE
8993a70 Convert lines of the form
lukem authored
506 ${MAKEDIRTARGET} etc install-obsolete-lists
431157a all:
lukem authored
507
69d1160 * Add two new (experimental) targets:
lukem authored
508 #
c210e5b Overhaul and simplify the top level Makefile, and add some sanity che…
tv authored
509 # Speedup stubs for some subtrees that don't need to run these rules.
510 # (Tells <bsd.subdir.mk> not to recurse for them.)
69d1160 * Add two new (experimental) targets:
lukem authored
511 #
f03f6b1 Add release and snapshot targets. (They do the same thing.)
cjs authored
512
85a68ff Major overhaul of src/tools and host toolchain. Summary of changes:
tv authored
513 .for dir in bin etc distrib games libexec regress sbin usr.sbin tools
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
514 includes-${dir}: .PHONY
85a68ff Major overhaul of src/tools and host toolchain. Summary of changes:
tv authored
515 @true
516 .endfor
517 .for dir in etc distrib regress
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
518 install-${dir}: .PHONY
85a68ff Major overhaul of src/tools and host toolchain. Summary of changes:
tv authored
519 @true
520 .endfor
521
69d1160 * Add two new (experimental) targets:
lukem authored
522 #
85a68ff Major overhaul of src/tools and host toolchain. Summary of changes:
tv authored
523 # XXX this needs to change when distrib Makefiles are recursion compliant
69d1160 * Add two new (experimental) targets:
lukem authored
524 # XXX many distrib subdirs need "cd etc && make snap_pre snap_kern" first...
525 #
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
526 dependall-distrib depend-distrib all-distrib: .PHONY
6f15fa2 Use @true instead of @${TRUE} in includes-foo targets, since there is no
nathanw authored
527 @true
8626600 - Remove the include of Makefile.tools; this will be done elsewhere.
tv authored
528
919514d Rename a large chunk of the make(1) variables which refer to a
lukem authored
529 .include <bsd.sys.mk>
4fc1f4e Create an objdir here for storage of timestamps, build-wide data, and so
tv authored
530 .include <bsd.obj.mk>
e496a61 Add "params" target, to display the value of various variables.
lukem authored
531 .include <bsd.kernobj.mk>
79154dd * Always descend into "tools" regardless of USETOOLS setting. Instead,
tv authored
532 .include <bsd.subdir.mk>
45e2272 Add rules for generating plaintext and HTML versions of the "BUILDING"
tv authored
533
f1173c1 Apply the .PHONY attribute where appropriate.
lukem authored
534 build-docs: .PHONY ${.CURDIR}/BUILDING
60f23ab move BUILDING.mdoc -> doc/BUILDING.mdoc
lukem authored
535 ${.CURDIR}/BUILDING: doc/BUILDING.mdoc
17f2dd7 MAKEVERBOSE support for build-docs
lukem authored
536 ${_MKMSG_CREATE} ${.TARGET}
7645298 redo previous (functionality rollback of 1.213) to retain the style o…
lukem authored
537 ${TOOL_GROFF} -mdoc -Tascii -P-bou $> >$@
e496a61 Add "params" target, to display the value of various variables.
lukem authored
538
539
540 #
541 # Display current make(1) parameters
542 #
e636f08 Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
dsl authored
543 params: .PHONY .MAKE
8993a70 Convert lines of the form
lukem authored
544 ${MAKEDIRTARGET} etc params
Something went wrong with that request. Please try again.