Index: share/mk/src.opts.mk =================================================================== --- share/mk/src.opts.mk +++ share/mk/src.opts.mk @@ -134,8 +134,9 @@ LPR \ LS_COLORS \ LZMA_SUPPORT \ - LOADER_EFI \ LOADER_GELI \ + LOADER_OFW \ + LOADER_UBOOT \ MAIL \ MAILWRAPPER \ MAKE \ @@ -297,8 +298,21 @@ .endif # EFI doesn't exist on mips, powerpc, sparc or riscv. .if ${__T:Mmips*} || ${__T:Mpowerpc*} || ${__T:Msparc64} || ${__T:Mriscv*} -BROKEN_OPTIONS+=EFI LOADER_EFI +BROKEN_OPTIONS+=EFI .endif +# GELI isn't supported on !x86 +.if ${__T} != "i386" && ${__T} != "amd64" +BROKEN_OPTIONS+=LOADER_GELI +.endif +# OFW is only for powerpc and sparc64, exclude others +.if ${__T:Mpowerpc*} == "" && ${__T:Msparc64} == "" +BROKEN_OPTIONS+=LOADER_OFW +.endif +# UBOOT is only for arm, mips and powerpc, exclude others +.if ${__T:Marm*} == "" && ${__T:Mmips*} == "" && ${__T:Mpowerpc*} == "" +BROKEN_OPTIONS+=LOADER_UBOOT +.endif + .if ${__T:Mmips64*} # profiling won't work on MIPS64 because there is only assembly for o32 BROKEN_OPTIONS+=PROFILE Index: stand/Makefile =================================================================== --- stand/Makefile +++ stand/Makefile @@ -2,28 +2,43 @@ .include -SUBDIR+= libsa -.if ${MK_FORTH} != "no" -# Build the add-in FORTH interpreter. -SUBDIR+= ficl -SUBDIR+= forth -.endif -.if ${MK_LOADER_LUA} != "no" -SUBDIR+= liblua -SUBDIR+= lua +# For amd64 we have to build 32 and 64 bit versions of things. For +# others we don't. LIB32LIST is a list of libraries, which if +# included, need to be built 32-bit as well. +.if ${MACHINE_ARCH} == "amd64" +LIB32LIST=libsa ficl liblua zfs .endif -SUBDIR+= defaults -SUBDIR+= man +S.yes+= libsa + +S.${MK_FORTH}+= ficl +S.${MK_FORTH}+= forth +S.${MK_LOADER_LUA}+= liblua +S.${MK_LOADER_LUA}+= lua +S.${MK_FDT}+= fdt +S.${MK_LOADER_OFW}+= ofw +S.${MK_ZFS}+= zfs +S.yes+= defaults +S.yes+= man + +S.${MK_LOADER_GELI}+= geli .include -.if ${MK_EFI} != "no" && ${MK_LOADER_EFI} != "no" -SUBDIR+= efi -.endif +S.${MK_EFI}+= efi +S.${MK_LOADER_UBOOT}+= uboot .if exists(${.CURDIR}/${MACHINE}/.) -SUBDIR+= ${MACHINE} +S.yes+= ${MACHINE} +.endif + +# Build the actual subdir list from S.yes, adding in the 32-bit +# variant if necessary. +.for _x in ${S.yes} +SUBDIR+=${_x} +.if defined(LIB32LIST) && ${LIB32LIST:M${_x}} +SUBDIR+=${_x}32 .endif +.endfor .include Index: stand/Makefile.amd64 =================================================================== --- stand/Makefile.amd64 +++ stand/Makefile.amd64 @@ -1,20 +1,4 @@ # $FreeBSD$ -SUBDIR+= libsa32 -.if ${MK_ZFS} != "no" -SUBDIR+= zfs zfs32 -.endif -.if ${MK_FORTH} != "no" -SUBDIR+= ficl32 -.endif -.if ${MK_LOADER_LUA} != "no" -SUBDIR+= liblua32 -.endif - -SUBDIR+= userboot - -.if ${MK_LOADER_GELI} == "yes" -SUBDIR+= geli -.endif - -SUBDIR+= i386 +S.yes+= userboot +S.yes+= i386 Index: stand/Makefile.arm =================================================================== --- stand/Makefile.arm +++ /dev/null @@ -1,10 +0,0 @@ -# $FreeBSD$ - -.if ${MK_FDT} != "no" -SUBDIR+= fdt -.endif -.if ${MK_ZFS} != "no" -SUBDIR+= zfs -.endif - -SUBDIR+= uboot Index: stand/Makefile.arm64 =================================================================== --- stand/Makefile.arm64 +++ /dev/null @@ -1,8 +0,0 @@ -# $FreeBSD$ - -.if ${MK_FDT} != "no" -SUBDIR+= fdt -.endif -.if ${MK_ZFS} != "no" -SUBDIR+= zfs -.endif Index: stand/Makefile.i386 =================================================================== --- stand/Makefile.i386 +++ /dev/null @@ -1,8 +0,0 @@ -# $FreeBSD$ - -.if ${MK_LOADER_GELI} == "yes" -SUBDIR+= geli -.endif -.if ${MK_ZFS} != "no" -SUBDIR+= zfs -.endif Index: stand/Makefile.mips =================================================================== --- stand/Makefile.mips +++ /dev/null @@ -1,7 +0,0 @@ -# $FreeBSD$ - -.if ${MK_FDT} != "no" -SUBDIR+= fdt -.endif - -SUBDIR+= uboot Index: stand/Makefile.powerpc =================================================================== --- stand/Makefile.powerpc +++ /dev/null @@ -1,8 +0,0 @@ -# $FreeBSD$ - -.if ${MK_FDT} != "no" -SUBDIR+= fdt -.endif - -SUBDIR+= ofw -SUBDIR+= uboot Index: stand/Makefile.sparc64 =================================================================== --- stand/Makefile.sparc64 +++ /dev/null @@ -1,6 +0,0 @@ -# $FreeBSD$ - -SUBDIR+= ofw -.if ${MK_ZFS} != "no" -SUBDIR+= zfs -.endif