Changeset View
Changeset View
Standalone View
Standalone View
Makefile.inc1
# | # | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
# | # | ||||
# Make command line options: | # Make command line options: | ||||
# -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir | # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir | ||||
# -DNO_CLEAN do not clean at all | # -DNO_CLEAN do not clean at all | ||||
# -DDB_FROM_SRC use the user/group databases in src/etc instead of | # -DDB_FROM_SRC use the user/group databases in src/etc instead of | ||||
# the system database when installing. | # the system database when installing. | ||||
# -DNO_SHARE do not go into share subdir | # -DNO_SHARE do not go into share subdir | ||||
# -DKERNFAST define NO_KERNEL{CONFIG,CLEAN,DEPEND,OBJ} | # -DKERNFAST define NO_KERNEL{CONFIG,CLEAN,OBJ} | ||||
# -DNO_KERNELCONFIG do not run config in ${MAKE} buildkernel | # -DNO_KERNELCONFIG do not run config in ${MAKE} buildkernel | ||||
# -DNO_KERNELCLEAN do not run ${MAKE} clean in ${MAKE} buildkernel | # -DNO_KERNELCLEAN do not run ${MAKE} clean in ${MAKE} buildkernel | ||||
# -DNO_KERNELDEPEND do not run ${MAKE} depend in ${MAKE} buildkernel | |||||
# -DNO_KERNELOBJ do not run ${MAKE} obj in ${MAKE} buildkernel | # -DNO_KERNELOBJ do not run ${MAKE} obj in ${MAKE} buildkernel | ||||
# -DNO_PORTSUPDATE do not update ports in ${MAKE} update | # -DNO_PORTSUPDATE do not update ports in ${MAKE} update | ||||
# -DNO_ROOT install without using root privilege | # -DNO_ROOT install without using root privilege | ||||
# -DNO_DOCUPDATE do not update doc in ${MAKE} update | # -DNO_DOCUPDATE do not update doc in ${MAKE} update | ||||
# -DWITHOUT_CTF do not run the DTrace CTF conversion tools on built objects | # -DWITHOUT_CTF do not run the DTrace CTF conversion tools on built objects | ||||
# LOCAL_DIRS="list of dirs" to add additional dirs to the SUBDIR list | # LOCAL_DIRS="list of dirs" to add additional dirs to the SUBDIR list | ||||
# LOCAL_ITOOLS="list of tools" to add additional tools to the ITOOLS list | # LOCAL_ITOOLS="list of tools" to add additional tools to the ITOOLS list | ||||
# LOCAL_LIB_DIRS="list of dirs" to add additional dirs to libraries target | # LOCAL_LIB_DIRS="list of dirs" to add additional dirs to libraries target | ||||
▲ Show 20 Lines • Show All 117 Lines • ▼ Show 20 Lines | |||||
.warning NOCLEAN option is deprecated. Use NO_CLEAN instead. | .warning NOCLEAN option is deprecated. Use NO_CLEAN instead. | ||||
NO_CLEAN= ${NOCLEAN} | NO_CLEAN= ${NOCLEAN} | ||||
.endif | .endif | ||||
.if defined(NO_CLEANDIR) | .if defined(NO_CLEANDIR) | ||||
CLEANDIR= clean cleandepend | CLEANDIR= clean cleandepend | ||||
.else | .else | ||||
CLEANDIR= cleandir | CLEANDIR= cleandir | ||||
.endif | .endif | ||||
# FAST_DEPEND can skip depend tree-walks. | |||||
.if ${MK_FAST_DEPEND} == "yes" | |||||
NO_DEPEND= t | |||||
NO_KERNELDEPEND=t | |||||
.endif | |||||
# Ensure shell checks later have a value. | |||||
.if defined(NO_DEPEND) | |||||
NO_DEPEND= t | |||||
.endif | |||||
LOCAL_TOOL_DIRS?= | LOCAL_TOOL_DIRS?= | ||||
emaste: This is now redundant. | |||||
Not Done Inline ActionsAh right, I intended to remove all of the 'make depend' in here too. Thanks. bdrewery: Ah right, I intended to remove all of the 'make depend' in here too. Thanks. | |||||
PACKAGEDIR?= ${DESTDIR}/${DISTDIR} | PACKAGEDIR?= ${DESTDIR}/${DISTDIR} | ||||
.if empty(SHELL:M*csh*) | .if empty(SHELL:M*csh*) | ||||
BUILDENV_SHELL?=${SHELL} | BUILDENV_SHELL?=${SHELL} | ||||
.else | .else | ||||
BUILDENV_SHELL?=/bin/sh | BUILDENV_SHELL?=/bin/sh | ||||
.endif | .endif | ||||
▲ Show 20 Lines • Show All 234 Lines • ▼ Show 20 Lines | |||||
.if defined(CROSS_BINUTILS_PREFIX) && \ | .if defined(CROSS_BINUTILS_PREFIX) && \ | ||||
exists(${CROSS_BINUTILS_PREFIX}${${BINUTIL}}) | exists(${CROSS_BINUTILS_PREFIX}${${BINUTIL}}) | ||||
X${BINUTIL}?= ${CROSS_BINUTILS_PREFIX}${${BINUTIL}} | X${BINUTIL}?= ${CROSS_BINUTILS_PREFIX}${${BINUTIL}} | ||||
.else | .else | ||||
X${BINUTIL}?= ${${BINUTIL}} | X${BINUTIL}?= ${${BINUTIL}} | ||||
.endif | .endif | ||||
.endfor | .endfor | ||||
CROSSENV+= CC="${XCC} ${XCFLAGS}" CXX="${XCXX} ${XCFLAGS} ${XCXXFLAGS}" \ | CROSSENV+= CC="${XCC} ${XCFLAGS}" CXX="${XCXX} ${XCFLAGS} ${XCXXFLAGS}" \ | ||||
DEPFLAGS="${DEPFLAGS}" \ | |||||
CPP="${XCPP} ${XCFLAGS}" \ | CPP="${XCPP} ${XCFLAGS}" \ | ||||
AS="${XAS}" AR="${XAR}" LD="${XLD}" NM=${XNM} \ | AS="${XAS}" AR="${XAR}" LD="${XLD}" NM=${XNM} \ | ||||
OBJDUMP=${XOBJDUMP} OBJCOPY="${XOBJCOPY}" \ | OBJDUMP=${XOBJDUMP} OBJCOPY="${XOBJCOPY}" \ | ||||
RANLIB=${XRANLIB} STRINGS=${XSTRINGS} \ | RANLIB=${XRANLIB} STRINGS=${XSTRINGS} \ | ||||
SIZE="${XSIZE}" | SIZE="${XSIZE}" | ||||
.if defined(CROSS_BINUTILS_PREFIX) && exists(${CROSS_BINUTILS_PREFIX}) | .if defined(CROSS_BINUTILS_PREFIX) && exists(${CROSS_BINUTILS_PREFIX}) | ||||
# In the case of xdev-build tools, CROSS_BINUTILS_PREFIX won't be a | # In the case of xdev-build tools, CROSS_BINUTILS_PREFIX won't be a | ||||
Show All 21 Lines | |||||
# you must set X_COMPILER_TYPE=gcc to build with libc++, but then -target | # you must set X_COMPILER_TYPE=gcc to build with libc++, but then -target | ||||
# won't be used. | # won't be used. | ||||
.if defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == gcc | .if defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == gcc | ||||
# GCC requires -isystem when using a cross-compiler. | # GCC requires -isystem when using a cross-compiler. | ||||
XCFLAGS+= -isystem ${WORLDTMP}/usr/include | XCFLAGS+= -isystem ${WORLDTMP}/usr/include | ||||
# Force using libc++ for external GCC. | # Force using libc++ for external GCC. | ||||
XCXXFLAGS+= -isystem ${WORLDTMP}/usr/include/c++/v1 -std=c++11 \ | XCXXFLAGS+= -isystem ${WORLDTMP}/usr/include/c++/v1 -std=c++11 \ | ||||
-nostdinc++ -L${WORLDTMP}/../lib/libc++ | -nostdinc++ -L${WORLDTMP}/../lib/libc++ | ||||
# XXX: DEPFLAGS is a workaround for not properly passing CXXFLAGS to sub-makes | |||||
# due to CXX="${XCXX} ${XCXXFLAGS}". bsd.dep.mk does use CXXFLAGS when | |||||
# building C++ files so this can come out if passing CXXFLAGS down is fixed. | |||||
DEPFLAGS+= -I${WORLDTMP}/usr/include/c++/v1 | |||||
.elif ${TARGET_ARCH} != ${MACHINE_ARCH} | .elif ${TARGET_ARCH} != ${MACHINE_ARCH} | ||||
TARGET_ABI?= unknown | TARGET_ABI?= unknown | ||||
TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/}-${TARGET_ABI}-freebsd11.0 | TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/}-${TARGET_ABI}-freebsd11.0 | ||||
XCFLAGS+= -target ${TARGET_TRIPLE} | XCFLAGS+= -target ${TARGET_TRIPLE} | ||||
.endif | .endif | ||||
XCFLAGS+= --sysroot=${WORLDTMP} | XCFLAGS+= --sysroot=${WORLDTMP} | ||||
.else | .else | ||||
.endif # ${XCC:M/*} || ${MK_CROSS_COMPILER} == "no" | .endif # ${XCC:M/*} || ${MK_CROSS_COMPILER} == "no" | ||||
▲ Show 20 Lines • Show All 177 Lines • ▼ Show 20 Lines | |||||
_libraries: | _libraries: | ||||
@echo | @echo | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
@echo ">>> stage 4.2: building libraries" | @echo ">>> stage 4.2: building libraries" | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
${_+_}cd ${.CURDIR}; \ | ${_+_}cd ${.CURDIR}; \ | ||||
${WMAKE} -DNO_FSCHG MK_HTML=no -DNO_LINT MK_MAN=no \ | ${WMAKE} -DNO_FSCHG MK_HTML=no -DNO_LINT MK_MAN=no \ | ||||
MK_PROFILE=no MK_TESTS=no MK_TESTS_SUPPORT=${MK_TESTS} libraries | MK_PROFILE=no MK_TESTS=no MK_TESTS_SUPPORT=${MK_TESTS} libraries | ||||
_depend: | |||||
@echo | |||||
@echo "--------------------------------------------------------------" | |||||
@echo ">>> stage 4.3: make dependencies" | |||||
@echo "--------------------------------------------------------------" | |||||
${_+_}cd ${.CURDIR}; ${WMAKE} depend | |||||
everything: | everything: | ||||
@echo | @echo | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
@echo ">>> stage 4.4: building everything" | @echo ">>> stage 4.3: building everything" | ||||
Not Done Inline ActionsThis will break some of my finger memory :-) emaste: This will break some of my finger memory :-) | |||||
Not Done Inline ActionsAlthough I do have searched build logs with /4\.4/, the comment was mostly in jest. Having a missing 4.3 is probably more confusing. emaste: Although I do have searched build logs with `/4\.4/`, the comment was mostly in jest. Having a… | |||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
${_+_}cd ${.CURDIR}; _PARALLEL_SUBDIR_OK=1 ${WMAKE} all | ${_+_}cd ${.CURDIR}; _PARALLEL_SUBDIR_OK=1 ${WMAKE} all | ||||
WMAKE_TGTS= | WMAKE_TGTS= | ||||
WMAKE_TGTS+= _worldtmp _legacy | WMAKE_TGTS+= _worldtmp _legacy | ||||
.if empty(SUBDIR_OVERRIDE) | .if empty(SUBDIR_OVERRIDE) | ||||
WMAKE_TGTS+= _bootstrap-tools | WMAKE_TGTS+= _bootstrap-tools | ||||
.endif | .endif | ||||
WMAKE_TGTS+= _cleanobj _obj _build-tools _cross-tools | WMAKE_TGTS+= _cleanobj _obj _build-tools _cross-tools | ||||
WMAKE_TGTS+= _includes _libraries | WMAKE_TGTS+= _includes _libraries | ||||
.if !defined(NO_DEPEND) | |||||
WMAKE_TGTS+= _depend | |||||
.endif | |||||
WMAKE_TGTS+= everything | WMAKE_TGTS+= everything | ||||
.if defined(LIBCOMPAT) && empty(SUBDIR_OVERRIDE) | .if defined(LIBCOMPAT) && empty(SUBDIR_OVERRIDE) | ||||
WMAKE_TGTS+= build${libcompat} | WMAKE_TGTS+= build${libcompat} | ||||
.endif | .endif | ||||
buildworld: buildworld_prologue ${WMAKE_TGTS} buildworld_epilogue | buildworld: buildworld_prologue ${WMAKE_TGTS} buildworld_epilogue | ||||
.ORDER: buildworld_prologue ${WMAKE_TGTS} buildworld_epilogue | .ORDER: buildworld_prologue ${WMAKE_TGTS} buildworld_epilogue | ||||
Show All 26 Lines | |||||
buildenv: .PHONY | buildenv: .PHONY | ||||
@echo Entering world for ${TARGET_ARCH}:${TARGET} | @echo Entering world for ${TARGET_ARCH}:${TARGET} | ||||
.if ${BUILDENV_SHELL:M*zsh*} | .if ${BUILDENV_SHELL:M*zsh*} | ||||
@echo For ZSH you must run: export CPUTYPE=${TARGET_CPUTYPE} | @echo For ZSH you must run: export CPUTYPE=${TARGET_CPUTYPE} | ||||
.endif | .endif | ||||
@cd ${BUILDENV_DIR} && env ${WMAKEENV} BUILDENV=1 ${BUILDENV_SHELL} \ | @cd ${BUILDENV_DIR} && env ${WMAKEENV} BUILDENV=1 ${BUILDENV_SHELL} \ | ||||
|| true | || true | ||||
TOOLCHAIN_TGTS= ${WMAKE_TGTS:N_depend:Neverything:Nbuild${libcompat}} | TOOLCHAIN_TGTS= ${WMAKE_TGTS:Neverything:Nbuild${libcompat}} | ||||
toolchain: ${TOOLCHAIN_TGTS} | toolchain: ${TOOLCHAIN_TGTS} | ||||
kernel-toolchain: ${TOOLCHAIN_TGTS:N_includes:N_libraries} | kernel-toolchain: ${TOOLCHAIN_TGTS:N_includes:N_libraries} | ||||
# | # | ||||
# installcheck | # installcheck | ||||
# | # | ||||
# Checks to be sure system is ready for installworld/installkernel. | # Checks to be sure system is ready for installworld/installkernel. | ||||
# | # | ||||
▲ Show 20 Lines • Show All 268 Lines • ▼ Show 20 Lines | ${_+_}cd ${.CURDIR}; ${CROSSENV} PATH=${TMPPATH} \ | ||||
METALOG=${METALOG} MK_TESTS=no installconfig | METALOG=${METALOG} MK_TESTS=no installconfig | ||||
.endif | .endif | ||||
# | # | ||||
# buildkernel and installkernel | # buildkernel and installkernel | ||||
# | # | ||||
# Which kernels to build and/or install is specified by setting | # Which kernels to build and/or install is specified by setting | ||||
# KERNCONF. If not defined a GENERIC kernel is built/installed. | # KERNCONF. If not defined a GENERIC kernel is built/installed. | ||||
# Only the existing (depending TARGET) config files are used | # Only the existing (depending TARGET) config files are used | ||||
wblockUnsubmitted Not Done Inline ActionsA word is missing (probably "on"), but "depending" is likely not the best choice of word here, either. The wording is so vague it is hard to suggest something clearer. Something about how TARGET affects which config files are used, at a guess. wblock: A word is missing (probably "on"), but "depending" is likely not the best choice of word here… | |||||
emasteUnsubmitted Not Done Inline ActionsIndeed, but this predates @bdrewery's changes by a decade and a half or so. This should be improved in a separate commit. emaste: Indeed, but this predates @bdrewery's changes by a decade and a half or so. This should be… | |||||
# for building kernels and only the first of these is designated | # for building kernels and only the first of these is designated | ||||
# as the one being installed. | # as the one being installed. | ||||
# | # | ||||
# Note that we have to use TARGET instead of TARGET_ARCH when | # Note that we have to use TARGET instead of TARGET_ARCH when | ||||
# we're in kernel-land. Since only TARGET_ARCH is (expected) to | # we're in kernel-land. Since only TARGET_ARCH is (expected) to | ||||
# be set to cross-build, we have to make sure TARGET is set | # be set to cross-build, we have to make sure TARGET is set | ||||
# properly. | # properly. | ||||
.if defined(KERNFAST) | .if defined(KERNFAST) | ||||
NO_KERNELCLEAN= t | NO_KERNELCLEAN= t | ||||
NO_KERNELCONFIG= t | NO_KERNELCONFIG= t | ||||
NO_KERNELDEPEND= t | |||||
NO_KERNELOBJ= t | NO_KERNELOBJ= t | ||||
# Shortcut for KERNCONF=Blah -DKERNFAST is now KERNFAST=Blah | # Shortcut for KERNCONF=Blah -DKERNFAST is now KERNFAST=Blah | ||||
.if !defined(KERNCONF) && ${KERNFAST} != "1" | .if !defined(KERNCONF) && ${KERNFAST} != "1" | ||||
KERNCONF=${KERNFAST} | KERNCONF=${KERNFAST} | ||||
.endif | .endif | ||||
.endif | .endif | ||||
.if ${TARGET_ARCH} == "powerpc64" | .if ${TARGET_ARCH} == "powerpc64" | ||||
KERNCONF?= GENERIC64 | KERNCONF?= GENERIC64 | ||||
▲ Show 20 Lines • Show All 65 Lines • ▼ Show 20 Lines | .if !defined(NO_KERNELOBJ) | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
${_+_}cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} obj | ${_+_}cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} obj | ||||
.endif | .endif | ||||
@echo | @echo | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
@echo ">>> stage 2.3: build tools" | @echo ">>> stage 2.3: build tools" | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
${_+_}cd ${.CURDIR}; ${KTMAKE} kernel-tools | ${_+_}cd ${.CURDIR}; ${KTMAKE} kernel-tools | ||||
.if !defined(NO_KERNELDEPEND) | |||||
@echo | @echo | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
@echo ">>> stage 3.1: making dependencies" | @echo ">>> stage 3.1: building everything" | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
${_+_}cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} depend -DNO_MODULES_OBJ | |||||
.endif | |||||
@echo | |||||
@echo "--------------------------------------------------------------" | |||||
@echo ">>> stage 3.2: building everything" | |||||
@echo "--------------------------------------------------------------" | |||||
${_+_}cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} all -DNO_MODULES_OBJ | ${_+_}cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} all -DNO_MODULES_OBJ | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
@echo ">>> Kernel build for ${_kernel} completed on `LC_ALL=C date`" | @echo ">>> Kernel build for ${_kernel} completed on `LC_ALL=C date`" | ||||
@echo "--------------------------------------------------------------" | @echo "--------------------------------------------------------------" | ||||
.endfor | .endfor | ||||
# | # | ||||
# installkernel, etc. | # installkernel, etc. | ||||
▲ Show 20 Lines • Show All 181 Lines • ▼ Show 20 Lines | |||||
.endif | .endif | ||||
legacy: | legacy: | ||||
.if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 | .if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 | ||||
@echo "ERROR: Source upgrades from versions prior to 8.0 are not supported."; \ | @echo "ERROR: Source upgrades from versions prior to 8.0 are not supported."; \ | ||||
false | false | ||||
.endif | .endif | ||||
.for _tool in tools/build ${_elftoolchain_libs} | .for _tool in tools/build ${_elftoolchain_libs} | ||||
${_+_}@${ECHODIR} "===> ${_tool} (obj,includes,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_tool} (obj,includes,all,install)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${MAKE} DIRPRFX=${_tool}/ obj; \ | ${MAKE} DIRPRFX=${_tool}/ obj; \ | ||||
${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy includes; \ | ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy includes; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${MAKE} DIRPRFX=${_tool}/ depend; fi; \ | |||||
${MAKE} DIRPRFX=${_tool}/ all; \ | ${MAKE} DIRPRFX=${_tool}/ all; \ | ||||
${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy install | ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy install | ||||
.endfor | .endfor | ||||
# | # | ||||
# bootstrap-tools: Build tools needed for compatibility. These are binaries that | # bootstrap-tools: Build tools needed for compatibility. These are binaries that | ||||
# are built to build other binaries in the system. However, the focus of these | # are built to build other binaries in the system. However, the focus of these | ||||
# binaries is usually quite narrow. Bootstrap tools use the host's compiler and | # binaries is usually quite narrow. Bootstrap tools use the host's compiler and | ||||
▲ Show 20 Lines • Show All 133 Lines • ▼ Show 20 Lines | .for _tool in \ | ||||
usr.bin/xinstall \ | usr.bin/xinstall \ | ||||
${_gensnmptree} \ | ${_gensnmptree} \ | ||||
usr.sbin/config \ | usr.sbin/config \ | ||||
${_crunch} \ | ${_crunch} \ | ||||
${_nmtree} \ | ${_nmtree} \ | ||||
${_vtfontcvt} \ | ${_vtfontcvt} \ | ||||
usr.bin/localedef | usr.bin/localedef | ||||
${_bt}-${_tool}: .PHONY .MAKE | ${_bt}-${_tool}: .PHONY .MAKE | ||||
${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${MAKE} DIRPRFX=${_tool}/ obj; \ | ${MAKE} DIRPRFX=${_tool}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${MAKE} DIRPRFX=${_tool}/ depend; fi; \ | |||||
${MAKE} DIRPRFX=${_tool}/ all; \ | ${MAKE} DIRPRFX=${_tool}/ all; \ | ||||
${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy install | ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy install | ||||
bootstrap-tools: ${_bt}-${_tool} | bootstrap-tools: ${_bt}-${_tool} | ||||
.endfor | .endfor | ||||
# | # | ||||
# build-tools: Build special purpose build tools | # build-tools: Build special purpose build tools | ||||
Show All 29 Lines | ${_+_}@${ECHODIR} "===> ${_tool} (obj,build-tools)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${MAKE} DIRPRFX=${_tool}/ obj; \ | ${MAKE} DIRPRFX=${_tool}/ obj; \ | ||||
${MAKE} DIRPRFX=${_tool}/ build-tools | ${MAKE} DIRPRFX=${_tool}/ build-tools | ||||
build-tools: build-tools_${_tool} | build-tools: build-tools_${_tool} | ||||
.endfor | .endfor | ||||
.for _tool in \ | .for _tool in \ | ||||
${_gcc_tools} | ${_gcc_tools} | ||||
build-tools_${_tool}: .PHONY | build-tools_${_tool}: .PHONY | ||||
${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all)"; \ | ${_+_}@${ECHODIR} "===> ${_tool} (obj,all)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${MAKE} DIRPRFX=${_tool}/ obj; \ | ${MAKE} DIRPRFX=${_tool}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${MAKE} DIRPRFX=${_tool}/ depend; fi; \ | |||||
${MAKE} DIRPRFX=${_tool}/ all | ${MAKE} DIRPRFX=${_tool}/ all | ||||
build-tools: build-tools_${_tool} | build-tools: build-tools_${_tool} | ||||
.endfor | .endfor | ||||
# | # | ||||
# kernel-tools: Build kernel-building tools | # kernel-tools: Build kernel-building tools | ||||
# | # | ||||
kernel-tools: | kernel-tools: | ||||
▲ Show 20 Lines • Show All 64 Lines • ▼ Show 20 Lines | .for _tool in \ | ||||
${_clang} \ | ${_clang} \ | ||||
${_binutils} \ | ${_binutils} \ | ||||
${_elftctools} \ | ${_elftctools} \ | ||||
${_dtrace_tools} \ | ${_dtrace_tools} \ | ||||
${_cc} \ | ${_cc} \ | ||||
${_btxld} \ | ${_btxld} \ | ||||
${_crunchide} \ | ${_crunchide} \ | ||||
${_usb_tools} | ${_usb_tools} | ||||
${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${MAKE} DIRPRFX=${_tool}/ obj; \ | ${MAKE} DIRPRFX=${_tool}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${MAKE} DIRPRFX=${_tool}/ depend; fi; \ | |||||
${MAKE} DIRPRFX=${_tool}/ all; \ | ${MAKE} DIRPRFX=${_tool}/ all; \ | ||||
${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX} install | ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX} install | ||||
.endfor | .endfor | ||||
NXBDESTDIR= ${OBJTREE}/nxb-bin | NXBDESTDIR= ${OBJTREE}/nxb-bin | ||||
NXBENV= MAKEOBJDIRPREFIX=${OBJTREE}/nxb \ | NXBENV= MAKEOBJDIRPREFIX=${OBJTREE}/nxb \ | ||||
INSTALL="sh ${.CURDIR}/tools/install.sh" \ | INSTALL="sh ${.CURDIR}/tools/install.sh" \ | ||||
PATH=${PATH}:${OBJTREE}/gperf_for_gcc/usr/bin | PATH=${PATH}:${OBJTREE}/gperf_for_gcc/usr/bin | ||||
Show All 12 Lines | |||||
# native-xtools is the current target for qemu-user cross builds of ports | # native-xtools is the current target for qemu-user cross builds of ports | ||||
# via poudriere and the imgact_binmisc kernel module. | # via poudriere and the imgact_binmisc kernel module. | ||||
# For non-clang enabled targets that are still using the in tree gcc | # For non-clang enabled targets that are still using the in tree gcc | ||||
# we must build a gperf binary for one instance of its Makefiles. On | # we must build a gperf binary for one instance of its Makefiles. On | ||||
# clang-enabled systems, the gperf binary is obsolete. | # clang-enabled systems, the gperf binary is obsolete. | ||||
native-xtools: .PHONY | native-xtools: .PHONY | ||||
.if ${MK_GCC_BOOTSTRAP} != "no" | .if ${MK_GCC_BOOTSTRAP} != "no" | ||||
mkdir -p ${OBJTREE}/gperf_for_gcc/usr/bin | mkdir -p ${OBJTREE}/gperf_for_gcc/usr/bin | ||||
${_+_}@${ECHODIR} "===> ${_gperf} (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_gperf} (obj,all,install)"; \ | ||||
cd ${.CURDIR}/${_gperf}; \ | cd ${.CURDIR}/${_gperf}; \ | ||||
${NXBMAKE} DIRPRFX=${_gperf}/ obj; \ | ${NXBMAKE} DIRPRFX=${_gperf}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${NXBMAKE} DIRPRFX=${_gperf}/ depend; fi; \ | |||||
${NXBMAKE} DIRPRFX=${_gperf}/ all; \ | ${NXBMAKE} DIRPRFX=${_gperf}/ all; \ | ||||
${NXBMAKE} DIRPRFX=${_gperf}/ DESTDIR=${OBJTREE}/gperf_for_gcc install | ${NXBMAKE} DIRPRFX=${_gperf}/ DESTDIR=${OBJTREE}/gperf_for_gcc install | ||||
.endif | .endif | ||||
mkdir -p ${NXBDESTDIR}/bin ${NXBDESTDIR}/sbin ${NXBDESTDIR}/usr | mkdir -p ${NXBDESTDIR}/bin ${NXBDESTDIR}/sbin ${NXBDESTDIR}/usr | ||||
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ | mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ | ||||
-p ${NXBDESTDIR}/usr >/dev/null | -p ${NXBDESTDIR}/usr >/dev/null | ||||
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ | mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ | ||||
-p ${NXBDESTDIR}/usr/include >/dev/null | -p ${NXBDESTDIR}/usr/include >/dev/null | ||||
▲ Show 20 Lines • Show All 55 Lines • ▼ Show 20 Lines | .for _tool in \ | ||||
usr.bin/true \ | usr.bin/true \ | ||||
usr.bin/uniq \ | usr.bin/uniq \ | ||||
usr.bin/unzip \ | usr.bin/unzip \ | ||||
usr.bin/xargs \ | usr.bin/xargs \ | ||||
usr.bin/xinstall \ | usr.bin/xinstall \ | ||||
usr.bin/xz \ | usr.bin/xz \ | ||||
usr.bin/yacc \ | usr.bin/yacc \ | ||||
usr.sbin/chown | usr.sbin/chown | ||||
${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${NXBMAKE} DIRPRFX=${_tool}/ obj; \ | ${NXBMAKE} DIRPRFX=${_tool}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${NXBMAKE} DIRPRFX=${_tool}/ depend; fi; \ | |||||
${NXBMAKE} DIRPRFX=${_tool}/ all; \ | ${NXBMAKE} DIRPRFX=${_tool}/ all; \ | ||||
${NXBMAKE} DIRPRFX=${_tool}/ DESTDIR=${NXBDESTDIR} install | ${NXBMAKE} DIRPRFX=${_tool}/ DESTDIR=${NXBDESTDIR} install | ||||
.endfor | .endfor | ||||
# | # | ||||
# hierarchy - ensure that all the needed directories are present | # hierarchy - ensure that all the needed directories are present | ||||
# | # | ||||
hierarchy hier: .MAKE .PHONY | hierarchy hier: .MAKE .PHONY | ||||
▲ Show 20 Lines • Show All 219 Lines • ▼ Show 20 Lines | |||||
.endif | .endif | ||||
.endif | .endif | ||||
gnu/lib/libdialog__L: lib/msun__L lib/ncurses/ncursesw__L | gnu/lib/libdialog__L: lib/msun__L lib/ncurses/ncursesw__L | ||||
.for _lib in ${_prereq_libs} | .for _lib in ${_prereq_libs} | ||||
${_lib}__PL: .PHONY .MAKE | ${_lib}__PL: .PHONY .MAKE | ||||
.if exists(${.CURDIR}/${_lib}) | .if exists(${.CURDIR}/${_lib}) | ||||
${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_lib} (obj,all,install)"; \ | ||||
cd ${.CURDIR}/${_lib}; \ | cd ${.CURDIR}/${_lib}; \ | ||||
${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; \ | ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ depend; fi; \ | |||||
${MAKE} MK_TESTS=no MK_PROFILE=no -DNO_PIC \ | ${MAKE} MK_TESTS=no MK_PROFILE=no -DNO_PIC \ | ||||
DIRPRFX=${_lib}/ all; \ | DIRPRFX=${_lib}/ all; \ | ||||
${MAKE} MK_TESTS=no MK_PROFILE=no -DNO_PIC \ | ${MAKE} MK_TESTS=no MK_PROFILE=no -DNO_PIC \ | ||||
DIRPRFX=${_lib}/ install | DIRPRFX=${_lib}/ install | ||||
.endif | .endif | ||||
.endfor | .endfor | ||||
.for _lib in ${_startup_libs} ${_prebuild_libs:Nlib/libpam} ${_generic_libs} | .for _lib in ${_startup_libs} ${_prebuild_libs:Nlib/libpam} ${_generic_libs} | ||||
${_lib}__L: .PHONY .MAKE | ${_lib}__L: .PHONY .MAKE | ||||
.if exists(${.CURDIR}/${_lib}) | .if exists(${.CURDIR}/${_lib}) | ||||
${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_lib} (obj,all,install)"; \ | ||||
cd ${.CURDIR}/${_lib}; \ | cd ${.CURDIR}/${_lib}; \ | ||||
${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; \ | ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ depend; fi; \ | |||||
${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ all; \ | ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ all; \ | ||||
${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ install | ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ install | ||||
.endif | .endif | ||||
.endfor | .endfor | ||||
# libpam is special: we need to build static PAM modules before | # libpam is special: we need to build static PAM modules before | ||||
# static PAM library, and dynamic PAM library before dynamic PAM | # static PAM library, and dynamic PAM library before dynamic PAM | ||||
# modules. | # modules. | ||||
lib/libpam__L: .PHONY .MAKE | lib/libpam__L: .PHONY .MAKE | ||||
${_+_}@${ECHODIR} "===> lib/libpam (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> lib/libpam (obj,all,install)"; \ | ||||
cd ${.CURDIR}/lib/libpam; \ | cd ${.CURDIR}/lib/libpam; \ | ||||
${MAKE} MK_TESTS=no DIRPRFX=lib/libpam/ obj; \ | ${MAKE} MK_TESTS=no DIRPRFX=lib/libpam/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${MAKE} MK_TESTS=no DIRPRFX=lib/libpam/ depend; fi; \ | |||||
${MAKE} MK_TESTS=no DIRPRFX=lib/libpam/ \ | ${MAKE} MK_TESTS=no DIRPRFX=lib/libpam/ \ | ||||
-D_NO_LIBPAM_SO_YET all; \ | -D_NO_LIBPAM_SO_YET all; \ | ||||
${MAKE} MK_TESTS=no DIRPRFX=lib/libpam/ \ | ${MAKE} MK_TESTS=no DIRPRFX=lib/libpam/ \ | ||||
-D_NO_LIBPAM_SO_YET install | -D_NO_LIBPAM_SO_YET install | ||||
_prereq_libs: ${_prereq_libs:S/$/__PL/} | _prereq_libs: ${_prereq_libs:S/$/__PL/} | ||||
_startup_libs: ${_startup_libs:S/$/__L/} | _startup_libs: ${_startup_libs:S/$/__L/} | ||||
_prebuild_libs: ${_prebuild_libs:S/$/__L/} | _prebuild_libs: ${_prebuild_libs:S/$/__L/} | ||||
▲ Show 20 Lines • Show All 278 Lines • ▼ Show 20 Lines | _xb-worldtmp: .PHONY | ||||
mkdir -p ${CDTMP}/usr | mkdir -p ${CDTMP}/usr | ||||
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ | mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ | ||||
-p ${CDTMP}/usr >/dev/null | -p ${CDTMP}/usr >/dev/null | ||||
_xb-bootstrap-tools: .PHONY | _xb-bootstrap-tools: .PHONY | ||||
.for _tool in \ | .for _tool in \ | ||||
${_clang_tblgen} \ | ${_clang_tblgen} \ | ||||
${_gperf} | ${_gperf} | ||||
${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ | ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${CDMAKE} DIRPRFX=${_tool}/ obj; \ | ${CDMAKE} DIRPRFX=${_tool}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${CDMAKE} DIRPRFX=${_tool}/ depend; fi; \ | |||||
${CDMAKE} DIRPRFX=${_tool}/ all; \ | ${CDMAKE} DIRPRFX=${_tool}/ all; \ | ||||
${CDMAKE} DIRPRFX=${_tool}/ DESTDIR=${CDTMP} install | ${CDMAKE} DIRPRFX=${_tool}/ DESTDIR=${CDTMP} install | ||||
.endfor | .endfor | ||||
_xb-build-tools: .PHONY | _xb-build-tools: .PHONY | ||||
${_+_}@cd ${.CURDIR}; \ | ${_+_}@cd ${.CURDIR}; \ | ||||
${CDBENV} ${MAKE} -f Makefile.inc1 ${NOFUN} build-tools | ${CDBENV} ${MAKE} -f Makefile.inc1 ${NOFUN} build-tools | ||||
_xb-cross-tools: .PHONY | _xb-cross-tools: .PHONY | ||||
.for _tool in \ | .for _tool in \ | ||||
${_binutils} \ | ${_binutils} \ | ||||
${_elftctools} \ | ${_elftctools} \ | ||||
usr.bin/ar \ | usr.bin/ar \ | ||||
${_clang_libs} \ | ${_clang_libs} \ | ||||
${_clang} \ | ${_clang} \ | ||||
${_cc} | ${_cc} | ||||
${_+_}@${ECHODIR} "===> xdev ${_tool} (obj,depend,all)"; \ | ${_+_}@${ECHODIR} "===> xdev ${_tool} (obj,all)"; \ | ||||
cd ${.CURDIR}/${_tool}; \ | cd ${.CURDIR}/${_tool}; \ | ||||
${CDMAKE} DIRPRFX=${_tool}/ obj; \ | ${CDMAKE} DIRPRFX=${_tool}/ obj; \ | ||||
if [ -z "${NO_DEPEND}" ]; then ${CDMAKE} DIRPRFX=${_tool}/ depend; fi; \ | |||||
${CDMAKE} DIRPRFX=${_tool}/ all | ${CDMAKE} DIRPRFX=${_tool}/ all | ||||
.endfor | .endfor | ||||
_xi-mtree: .PHONY | _xi-mtree: .PHONY | ||||
${_+_}@${ECHODIR} "mtree populating ${XDDESTDIR}" | ${_+_}@${ECHODIR} "mtree populating ${XDDESTDIR}" | ||||
mkdir -p ${XDDESTDIR} | mkdir -p ${XDDESTDIR} | ||||
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist \ | mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist \ | ||||
-p ${XDDESTDIR} >/dev/null | -p ${XDDESTDIR} >/dev/null | ||||
▲ Show 20 Lines • Show All 52 Lines • Show Last 20 Lines |
This is now redundant.