Lines Matching +full:qemu +full:- +full:4 +full:- +full:build
1 .\"-
2 .\" SPDX-License-Identifier: BSD-2-Clause
32 .Nm build
33 .Nd general instructions on how to build the
45 These directories may be initially empty or non-existent until updated with
65 For more information about the ports build process, see
70 command is used in each of these directories to build and install the
80 A source tree is allowed to be read-only.
95 The build may be controlled by defining
102 The default components included in the build are specified in the file
111 supported by the build system:
112 .Bl -tag -width ".Cm cleandepend"
126 Remove any files created during the build process.
152 Generate a list of build dependencies in file
154 Per-object dependencies are generated at build time and stored in
157 Install the results of the build to the appropriate location in the
171 The build system supports
180 .Bl -tag -width ".Cm distributeworld"
184 For cross-building the target architecture needs to be specified with
197 Build everything but the kernel, configure files in
207 The actual build location prefix used
248 .It Cm native-xtools
249 This target builds a cross-toolchain for the given
254 This is intended to be used in a jail where QEMU is used to improve
260 .It Cm native-xtools-install
266 .Pa nxb-bin .
297 Create the build toolchain needed to build the rest of the system.
298 For cross-architecture builds, this step creates a cross-toolchain.
333 Create a build toolchain for each architecture supported by the build system.
335 Builds and installs a cross-toolchain and sysroot for the given
341 .Cm xdev-build
343 .Cm xdev-install .
357 .Pa ${TARGET_ARCH}-freebsd .
358 .It Cm xdev-build
362 .It Cm xdev-install
366 .It Cm xdev-links
367 Installs autoconf-style symlinks to
373 Kernel specific build targets in
376 .Bl -tag -width ".Cm distributekernel"
388 renaming any pre-existing directory with this name to
415 ABI for the build target, for example,
429 .It Cm kernel-toolchain
449 .Bl -tag -width ".Cm delete-old-libs"
450 .It Cm check-old
452 .It Cm check-old-libs
454 .It Cm delete-old
457 .Li -DBATCH_DELETE_OLD_FILES
459 non-interactive.
467 .It Cm delete-old-libs
472 .Li -DBATCH_DELETE_OLD_FILES
474 non-interactive.
485 .Bl -tag -width ".Va MAKEOBJDIRPREFIX"
487 Defines a set of debugging flags that will be used to build all userland
514 .Pa /etc/src-env.conf
523 If defined, compiler warnings will not cause the build to halt,
526 If defined, the build process will run the DTrace CTF conversion
535 .Bl -tag -width ".Va LOCAL_MODULES_DIR"
537 Requests use of an external toolchain to build either the world or kernel.
551 name ${MACHINE_ARCH}-gcc<major version>.
553 Overrides which kernel to build and install for the various kernel
560 Useful for stand-alone modules that depend on
573 If set, the build target
588 the root of the source tree to build as part of the
608 the root of the source tree to build as part of the
627 the root of the source tree to build as part of the
632 the root of the source tree to build as part of the
633 .Cm bootstrap-tools
637 the root of the source tree to build as part of the
638 .Cm build-tools
642 the root of the source tree to build as part of the
643 .Cm cross-tools
652 .Bd -literal -offset indent
653 make PORTS_MODULES=emulators/virtualbox-ose-kmod kernel
662 Defaults to the list of sub-directories of
673 The src.conf file controls the components to build.
692 Override the default list of sub-directories and only build the
693 sub-directory named in this variable.
696 then all libraries and includes, and some of the build tools will still build
699 .Cm -DNO_LIBS ,
701 .Cm -DWORLDFAST
702 will only build the specified directory as was done historically.
712 .Bd -literal -offset indent
713 make some-target SUBDIR_OVERRIDE=foo/bar
728 This is necessary to cross-build some target architectures.
729 For example, cross-building for ARM64 machines requires
744 Set this to cross-build for a different architecture.
762 .Bl -tag -width ".Va LOADER_DEFAULT_INTERP"
766 .Dq 4th ,
776 If set, the build targets that clean parts of the object tree use the
786 .Xr filemon 4
799 If set, the build process does not run the DTrace CTF conversion tools
802 If set, the build does not descend into the
809 If set, the build process does not run
815 If set, the build process does not run
821 If set, the build process does not run
831 previous build and no new directories are connected.
837 If set, the build target
843 It will only bootstrap libraries and build all of userland.
845 needs changed and that no new directories have been connected to the build.
853 .Bl -tag -width ".Va DOC_LANG"
855 If set, restricts the documentation build to the language subdirectories
857 The default action is to build documentation for all languages.
865 .Bl -tag -width ".Va USE_GCC_TOOLCHAINS"
869 invocation used to build worlds and kernels.
870 This can be used to enable multiple jobs within a single architecture's build
873 Only build kernels for each supported architecture.
875 Only build worlds for each supported architecture.
877 Only build kernels for each supported architecture.
879 Only build worlds for each supported architecture.
888 Use external GCC toolchains to build the requested targets.
890 the build for that architecture is skipped.
897 Only build the listed targets instead of each supported architecture.
899 In addition to the supported architectures, build the semi-supported
901 A semi-supported architecture has build support in the
907 .Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact
924 The following sequence of commands can be used to cross-build the system for
927 .Bd -literal -offset indent