svn commit: r330248 - in head: share/mk stand

Warner Losh imp at FreeBSD.org
Thu Mar 1 19:50:56 UTC 2018


Author: imp
Date: Thu Mar  1 19:50:55 2018
New Revision: 330248
URL: https://svnweb.freebsd.org/changeset/base/330248

Log:
  Create LOADER_UBOOT, and LOADER_OFW. Move these options out of
  Makefile.${MACHINE_ARCH} and remove the now-empty files. Generate the
  *32 directories on the necessary architectures (well, currently only
  amd64) on the fly. Remove LOADER_EFI variable and co-locate it with
  EFI.
  
  Differential Review: https://reviews.freebsd.org/D14546

Deleted:
  head/stand/Makefile.arm
  head/stand/Makefile.arm64
  head/stand/Makefile.i386
  head/stand/Makefile.mips
  head/stand/Makefile.powerpc
  head/stand/Makefile.sparc64
Modified:
  head/share/mk/src.opts.mk
  head/stand/Makefile
  head/stand/Makefile.amd64

Modified: head/share/mk/src.opts.mk
==============================================================================
--- head/share/mk/src.opts.mk	Thu Mar  1 18:19:14 2018	(r330247)
+++ head/share/mk/src.opts.mk	Thu Mar  1 19:50:55 2018	(r330248)
@@ -134,8 +134,9 @@ __DEFAULT_YES_OPTIONS = \
     LPR \
     LS_COLORS \
     LZMA_SUPPORT \
-    LOADER_EFI \
     LOADER_GELI \
+    LOADER_OFW \
+    LOADER_UBOOT \
     MAIL \
     MAILWRAPPER \
     MAKE \
@@ -297,8 +298,21 @@ BROKEN_OPTIONS+=SSP
 .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

Modified: head/stand/Makefile
==============================================================================
--- head/stand/Makefile	Thu Mar  1 18:19:14 2018	(r330247)
+++ head/stand/Makefile	Thu Mar  1 19:50:55 2018	(r330248)
@@ -2,28 +2,43 @@
 
 .include <src.opts.mk>
 
-SUBDIR+=		libsa
-.if ${MK_FORTH} != "no"
-# Build the add-in FORTH interpreter.
-SUBDIR+=		ficl
-SUBDIR+=		forth
+# 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
-.if ${MK_LOADER_LUA} != "no"
-SUBDIR+=		liblua
-SUBDIR+=		lua
-.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 <bsd.arch.inc.mk>
 
-.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 <bsd.subdir.mk>

Modified: head/stand/Makefile.amd64
==============================================================================
--- head/stand/Makefile.amd64	Thu Mar  1 18:19:14 2018	(r330247)
+++ head/stand/Makefile.amd64	Thu Mar  1 19:50:55 2018	(r330248)
@@ -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


More information about the svn-src-head mailing list