1 2.include <src.opts.mk> 3 4# For amd64 we have to build 32 and 64 bit versions of things. For 5# others we don't. LIB32LIST is a list of libraries, which if 6# included, need to be built 32-bit as well. 7.if ${MACHINE_ARCH} == "amd64" 8LIB32LIST=libsa 9.if ${MK_FORTH} != "no" 10LIB32LIST+= ficl 11.endif 12.if ${MK_LOADER_LUA} != "no" 13LIB32LIST+= liblua 14.endif 15.endif 16 17S.yes+= libsa 18 19S.${MK_LOADER_OFW}+= libofw 20S.${MK_FDT}+= fdt 21 22S.${MK_FORTH}+= ficl 23S.${MK_FORTH}+= forth 24S.${MK_LOADER_LUA}+= liblua 25S.${MK_LOADER_LUA}+= lua 26S.yes+= defaults 27S.yes+= fonts 28S.yes+= images 29S.yes+= man 30 31.if ${MK_FORTH} != "no" 32INTERP_DEPENDS+= forth 33.endif 34.if ${MK_LOADER_LUA} != "no" 35INTERP_DEPENDS+= lua 36.endif 37 38.include <bsd.arch.inc.mk> 39 40S.${MK_EFI}+= efi 41.if ${MK_FDT} != "no" 42S.${MK_LOADER_KBOOT}+= kboot 43.endif 44S.${MK_LOADER_UBOOT}+= uboot 45 46.if defined(LIB32LIST) 47LIB32DEPENDS= ${LIB32LIST:S/$/32/} 48.endif 49 50.if exists(${.CURDIR}/${MACHINE}/.) 51S.yes+= ${MACHINE} 52SUBDIR_DEPEND_${MACHINE}+= ${INTERP_DEPENDS} 53.if ${MK_FDT} != "no" 54SUBDIR_DEPEND_${MACHINE}+= fdt 55.endif 56.if ${MK_LOADER_UBOOT} != "no" 57SUBDIR_DEPEND_${MACHINE}+= uboot 58.endif 59.if ${MK_LOADER_OFW} != "no" 60SUBDIR_DEPEND_${MACHINE}+= libofw 61.endif 62.endif 63 64# Build the actual subdir list from S.yes, adding in the 32-bit 65# variant if necessary. 66.for _x in ${S.yes} 67SUBDIR+=${_x} 68.if defined(LIB32LIST) && ${LIB32LIST:M${_x}} 69SUBDIR+=${_x}32 70.endif 71.if ${_x} != "libsa" 72SUBDIR_DEPEND_${_x}+= libsa 73SUBDIR_DEPEND_${_x}32+= libsa32 74.endif 75.endfor 76 77# Remaining dependencies 78SUBDIR_DEPEND_forth+= ficl 79SUBDIR_DEPEND_lua+= liblua 80 81SUBDIR_DEPEND_efi+= ${INTERP_DEPENDS} 82SUBDIR_DEPEND_kboot+= ${INTERP_DEPENDS} 83.if ${MK_FDT} != "no" 84SUBDIR_DEPEND_efi+= fdt 85SUBDIR_DEPEND_kboot+= fdt 86.endif 87 88SUBDIR_DEPEND_uboot+= ${INTERP_DEPENDS} 89.if ${MK_FDT} != "no" 90SUBDIR_DEPEND_uboot+= fdt 91.endif 92 93SUBDIR_PARALLEL= yes 94 95.include <bsd.subdir.mk> 96 97# Simplified way to build-test the most important build combinations for the 98# loader. 99universe: 100 sh ${SRCTOP}/tools/boot/universe.sh 101