svn commit: r359494 - in head: . share/man/man7

Warner Losh imp at FreeBSD.org
Tue Mar 31 22:41:52 UTC 2020


Author: imp
Date: Tue Mar 31 22:41:43 2020
New Revision: 359494
URL: https://svnweb.freebsd.org/changeset/base/359494

Log:
  Make universe configuration more consistent with rest of system
  
  Add 'WITHOUT_WORLDS' and 'WITHOUT_KERNELS' as aliases for the inconsistently
  named MAKE_JUST_KERNELS and MAKE_JUST_WORLDS respectively. I always forget the
  MAKE_ part (or is it BUILD_), and it's inconsistent with everything
  else. Document the new things, but leave speculation of any eventual MAKE_JUST_*
  deprecation out of the manuals and comments.
  
  Reviewed by: brooks, bdrewery, emaste (LGTM)
  MFC After: 3 days
  Differential Revision: https://reviews.freebsd.org/D24212

Modified:
  head/Makefile
  head/share/man/man7/build.7

Modified: head/Makefile
==============================================================================
--- head/Makefile	Tue Mar 31 20:09:20 2020	(r359493)
+++ head/Makefile	Tue Mar 31 22:41:43 2020	(r359494)
@@ -5,10 +5,12 @@
 #
 # universe            - *Really* build *everything* (buildworld and
 #                       all kernels on all architectures).  Define
-#                       MAKE_JUST_KERNELS to only build kernels,
-#                       MAKE_JUST_WORLDS to only build userland.
+#                       MAKE_JUST_KERNELS or WITHOUT_WORLDS to only build kernels,
+#                       MAKE_JUST_WORLDS or WITHOUT_KERNELS to only build userland.
 # tinderbox           - Same as universe, but presents a list of failed build
 #                       targets and exits with an error if there were any.
+# worlds	      - Same as universe, except just makes the worlds.
+# kernels	      - Same as universe, except just makes the kernels.
 # buildworld          - Rebuild *everything*, including glue to help do
 #                       upgrades.
 # installworld        - Install everything built by "buildworld".
@@ -104,6 +106,15 @@
 # For more information, see the build(7) manual page.
 #
 
+.if defined(UNIVERSE_TARGET) || defined(MAKE_JUST_WORLDS) || defined(WITHOUT_KERNELS)
+__DO_KERNELS=no
+.endif
+.if defined(MAKE_JUST_KERNELS) || defined(WITHOUT_WORLDS)
+__DO_WORLDS=no
+.endif
+__DO_WORLDS?=yes
+__DO_KERNELS?=yes
+
 # This is included so CC is set to ccache for -V, and COMPILER_TYPE/VERSION
 # can be cached for sub-makes. We can't do this while still running on the
 # old fmake from FreeBSD 9.x or older, so avoid including it then to avoid
@@ -521,11 +532,7 @@ universe_${toolchain}_skip: universe_prologue .PHONY
 .endif
 .endfor
 
-.if defined(UNIVERSE_TARGET)
-MAKE_JUST_WORLDS=	YES
-.else
 UNIVERSE_TARGET?=	buildworld
-.endif
 KERNSRCDIR?=		${.CURDIR}/sys
 
 targets:	.PHONY
@@ -634,7 +641,7 @@ MAKE_PARAMS_${target}+= \
 .endfor
 .endif	# !make(targets)
 
-.if !defined(MAKE_JUST_KERNELS)
+.if ${__DO_WORLDS} == "yes"
 universe_${target}_done: universe_${target}_worlds .PHONY
 .for target_arch in ${TARGET_ARCHES_${target}}
 universe_${target}_worlds: universe_${target}_${target_arch} .PHONY
@@ -658,9 +665,9 @@ universe_${target}_${target_arch}: universe_${target}_
 	    ${MAKEFAIL}))
 	@echo ">> ${target}.${target_arch} ${UNIVERSE_TARGET} completed on `LC_ALL=C date`"
 .endfor
-.endif # !MAKE_JUST_KERNELS
+.endif # ${__DO_WORLDS} == "yes"
 
-.if !defined(MAKE_JUST_WORLDS)
+.if ${__DO_KERNELS} == "yes"
 universe_${target}_done: universe_${target}_kernels .PHONY
 universe_${target}_kernels: universe_${target}_worlds .PHONY
 universe_${target}_kernels: universe_${target}_prologue .MAKE .PHONY
@@ -673,7 +680,7 @@ universe_${target}_kernels: universe_${target}_prologu
 	fi
 	@cd ${.CURDIR}; ${SUB_MAKE} ${.MAKEFLAGS} TARGET=${target} \
 	    universe_kernels
-.endif # !MAKE_JUST_WORLDS
+.endif # ${__DO_KERNELS} == "yes"
 
 # Tell the user the worlds and kernels have completed
 universe_${target}: universe_${target}_done

Modified: head/share/man/man7/build.7
==============================================================================
--- head/share/man/man7/build.7	Tue Mar 31 20:09:20 2020	(r359493)
+++ head/share/man/man7/build.7	Tue Mar 31 22:41:43 2020	(r359494)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd December 3, 2018
+.Dd March 29, 2020
 .Dt BUILD 7
 .Os
 .Sh NAME
@@ -775,11 +775,17 @@ while still building each architecture serially.
 Only build kernels for each supported architecture.
 .It Va MAKE_JUST_WORLDS
 Only build worlds for each supported architecture.
+.It Va WITHOUT_WORLDS
+Only build kernels for each supported architecture.
+.It Va WITHOUT_KERNELS
+Only build worlds for each supported architecture.
 .It Va UNIVERSE_TARGET
 Execute the specified
 .Xr make 1
 target for each supported architecture instead of the default action of
 building a world and one or more kernels.
+This variable implies
+.Va WITHOUT_KERNELS .
 .El
 .Sh FILES
 .Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact


More information about the svn-src-all mailing list