Lines Matching full:target
38 # targets - Print a list of supported TARGET/TARGET_ARCH pairs
44 # specified with TARGET and TARGET_ARCH.
48 # native-xtools - Create host binaries that produce target objects
49 # for use in qemu user-mode jails. TARGET and
84 # [steps 3. & 4. can be combined by using the "kernel" target]
106 # If TARGET=machine (e.g. powerpc64, arm64, ...) is specified you can
107 # cross build world for other machine types using the buildworld target,
109 # buildkernel target.
186 # These targets require a TARGET and TARGET_ARCH be defined.
286 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} ${_MAKEARGS}
315 # Guess target architecture from target type, and vice versa, based on
316 # historic FreeBSD practice of tending to have TARGET == TARGET_ARCH
317 # expanding to TARGET == TARGET_CPUARCH in recent times, with known
319 .if !defined(TARGET_ARCH) && defined(TARGET)
320 # T->TA mapping is usually TARGET with arm64 the odd man out
321 _TARGET_ARCH= ${TARGET:S/arm64/aarch64/:S/riscv/riscv64/:S/arm/armv7/}
322 .elif !defined(TARGET) && defined(TARGET_ARCH) && \
327 .if defined(TARGET) && !defined(_TARGET)
328 _TARGET=${TARGET}
340 # Some targets require a set TARGET/TARGET_ARCH, check before the default
365 @echo "*** Error: Both TARGET and TARGET_ARCH must be defined for \"${_tgt}\" target"
389 ${_+_}@cd ${.CURDIR}; ${_MAKE} ${.TARGET}
391 # The historic default "all" target creates files which may cause stale
393 # when no target is given. The users can explicitly specify "all"
399 …@echo "Explicit target required. Likely \"${SUBDIR_OVERRIDE:Dall:Ubuildworld}\" is wanted. See b…
413 # Attempt to rebuild and reinstall everything. This target is not to be
415 # not included. One can argue that this target doesn't build everything
422 .if target(pre-world)
425 @echo ">>> Making 'pre-world' target"
431 .if target(post-world)
434 @echo ">>> Making 'post-world' target"
495 @echo ">>> Building an up-to-date ${.TARGET}(1)"
497 ${_+_}@cd ${.CURDIR}/usr.bin/${.TARGET}; \
525 ${_+_}@cd ${.CURDIR}; ${_MAKE} DISTDIR=/ ${.TARGET}
544 .for target in ${TARGETS}
545 TARGET_ARCHES_${target}= ${MACHINE_ARCH_LIST_${target}}
559 # If a target is using an external toolchain, set MAKE_PARAMS to enable use
560 # of the toolchain. If the external toolchain is missing, exclude the target
562 .for target in ${_UNIVERSE_TARGETS}
563 .if !empty(TOOLCHAINS_${target})
564 .for toolchain in ${TOOLCHAINS_${target}}
566 _UNIVERSE_TARGETS:= ${_UNIVERSE_TARGETS:N${target}}
570 @echo ">> ${target} skipped - install ${toolchain} port or package to build"
573 .for arch in ${TARGET_ARCHES_${target}}
574 TOOLCHAIN_${arch}?= ${TOOLCHAINS_${target}:[1]}
589 # amd64 as the default universe toolchain target.
595 @echo "Supported TARGET/TARGET_ARCH pairs for world and kernel targets"
596 .for target in ${TARGETS}
597 .for target_arch in ${TARGET_ARCHES_${target}}
598 @echo " ${target}/${target_arch}"
625 TARGET=${UNIVERSE_TOOLCHAIN_TARGET} \
633 > _.${.TARGET} 2>&1 || \
634 (echo "${.TARGET} failed," \
635 "check _.${.TARGET} for details" | \
649 .for target in ${_UNIVERSE_TARGETS}
650 universe: universe_${target}
651 universe_epilogue: universe_${target}
652 universe_${target}: universe_${target}_prologue .PHONY
653 universe_${target}_prologue: universe_prologue .PHONY
654 @echo ">> ${target} started on `LC_ALL=C date`"
655 universe_${target}_worlds: .PHONY
658 .for target_arch in ${TARGET_ARCHES_${target}}
659 .if !defined(_need_clang_${target}_${target_arch})
660 _need_clang_${target}_${target_arch} != \
661 env TARGET=${target} TARGET_ARCH=${target_arch} \
665 .export _need_clang_${target}_${target_arch}
667 .if !defined(_need_lld_${target}_${target_arch})
668 _need_lld_${target}_${target_arch} != \
669 env TARGET=${target} TARGET_ARCH=${target_arch} \
673 .export _need_lld_${target}_${target_arch}
676 .if defined(_need_clang_${target}_${target_arch}) && \
677 ${_need_clang_${target}_${target_arch}} == "yes"
686 # of STRICTTMPPATH to ensure that the target-specific binaries come first.
693 .if defined(_need_lld_${target}_${target_arch}) && \
694 ${_need_lld_${target}_${target_arch}} == "yes"
702 universe_${target}_done: universe_${target}_worlds .PHONY
703 .for target_arch in ${TARGET_ARCHES_${target}}
704 universe_${target}_worlds: universe_${target}_${target_arch} .PHONY
705 .if (defined(_need_clang_${target}_${target_arch}) && \
706 ${_need_clang_${target}_${target_arch}} == "yes") || \
707 (defined(_need_lld_${target}_${target_arch}) && \
708 ${_need_lld_${target}_${target_arch}} == "yes")
709 universe_${target}_${target_arch}: universe-toolchain
710 universe_${target}_prologue: universe-toolchain
712 universe_${target}_${target_arch}: universe_${target}_prologue .MAKE .PHONY
713 @echo ">> ${target}.${target_arch} ${UNIVERSE_TARGET} started on `LC_ALL=C date`"
716 TARGET=${target} \
719 > _.${target}.${target_arch}.${UNIVERSE_TARGET} 2>&1 || \
720 (echo "${target}.${target_arch} ${UNIVERSE_TARGET} failed," \
721 "check _.${target}.${target_arch}.${UNIVERSE_TARGET} for details" | \
723 @echo ">> ${target}.${target_arch} ${UNIVERSE_TARGET} completed on `LC_ALL=C date`"
728 universe_${target}_done: universe_${target}_kernels .PHONY
729 universe_${target}_kernels: universe_${target}_worlds .PHONY
730 universe_${target}_kernels: universe_${target}_prologue .MAKE .PHONY
731 @cd ${.CURDIR}; ${SUB_MAKE} ${.MAKEFLAGS} TARGET=${target} \
736 universe_${target}: universe_${target}_done
737 universe_${target}_done:
738 @echo ">> ${target} completed on `LC_ALL=C date`"
741 .if !defined(TARGET)
742 TARGET!= uname -m macro
745 @echo ">> ${TARGET} kernels started on `LC_ALL=C date`"
747 @echo ">> ${TARGET} kernels completed on `LC_ALL=C date`"
755 KERNCONFS!= cd ${KERNSRCDIR}/${TARGET}/conf && \
762 TARGET_ARCH_${kernel}!= cd ${KERNSRCDIR}/${TARGET}/conf && \
764 config -m ${KERNSRCDIR}/${TARGET}/conf/${kernel} 2> /dev/null | \
767 .error Target architecture for ${TARGET}/conf/${kernel} unknown. config(8) likely too old.
769 universe_kernconfs_${TARGET_ARCH_${kernel}}: universe_kernconf_${TARGET}_${kernel}
770 universe_kernconf_${TARGET}_${kernel}: .MAKE
771 @echo ">> ${TARGET}.${TARGET_ARCH_${kernel}} ${kernel} kernel started on `LC_ALL=C date`"
774 TARGET=${TARGET} \
778 > _.${TARGET}.${kernel} 2>&1 || \
779 (echo "${TARGET} ${kernel} kernel failed," \
780 "check _.${TARGET}.${kernel} for details"| ${MAKEFAIL}))
781 @echo ">> ${TARGET}.${TARGET_ARCH_${kernel}} ${kernel} kernel completed on `LC_ALL=C date`"
783 .for target_arch in ${TARGET_ARCHES_${TARGET}}