svn commit: r356604 - in head/sys: amd64/linux amd64/linux32 arm/linux arm64/linux compat/cloudabi32 compat/cloudabi64 compat/freebsd32 i386/linux kern

Kyle Evans kevans at FreeBSD.org
Fri Jan 10 18:24:19 UTC 2020


Author: kevans
Date: Fri Jan 10 18:24:17 2020
New Revision: 356604
URL: https://svnweb.freebsd.org/changeset/base/356604

Log:
  Set .ORDER for makesyscalls generated files
  
  When either makesyscalls.lua or syscalls.master changes, all of the
  ${GENERATED} targets are now out-of-date. With make jobs > 1, this means we
  will run the makesyscalls script in parallel for the same ABI, generating
  the same set of output files.
  
  Prior to r356603 , there is a large window for interlacing output for some
  of the generated files that we were generating in-place rather than staging
  in a temp dir. After that, we still should't need to run the script more
  than once per-ABI as the first invocation should update all of them. Add
  .ORDER to do so cleanly.
  
  Reviewed by:	brooks
  Discussed with:	sjg
  Differential Revision:	https://reviews.freebsd.org/D23099

Modified:
  head/sys/amd64/linux/Makefile
  head/sys/amd64/linux32/Makefile
  head/sys/arm/linux/Makefile
  head/sys/arm64/linux/Makefile
  head/sys/compat/cloudabi32/Makefile
  head/sys/compat/cloudabi64/Makefile
  head/sys/compat/freebsd32/Makefile
  head/sys/i386/linux/Makefile
  head/sys/kern/Makefile

Modified: head/sys/amd64/linux/Makefile
==============================================================================
--- head/sys/amd64/linux/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/amd64/linux/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -19,6 +19,9 @@ GENERATED=	linux_proto.h		\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/amd64/linux32/Makefile
==============================================================================
--- head/sys/amd64/linux32/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/amd64/linux32/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -19,6 +19,9 @@ GENERATED=	linux32_proto.h		\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/arm/linux/Makefile
==============================================================================
--- head/sys/arm/linux/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/arm/linux/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -19,6 +19,9 @@ GENERATED=	linux_proto.h		\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/arm64/linux/Makefile
==============================================================================
--- head/sys/arm64/linux/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/arm64/linux/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -19,6 +19,9 @@ GENERATED=	linux_proto.h		\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/compat/cloudabi32/Makefile
==============================================================================
--- head/sys/compat/cloudabi32/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/compat/cloudabi32/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -17,6 +17,9 @@ GENERATED=	cloudabi32_proto.h	\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/compat/cloudabi64/Makefile
==============================================================================
--- head/sys/compat/cloudabi64/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/compat/cloudabi64/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -17,6 +17,9 @@ GENERATED=	cloudabi64_proto.h	\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/compat/freebsd32/Makefile
==============================================================================
--- head/sys/compat/freebsd32/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/compat/freebsd32/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -20,6 +20,9 @@ GENERATED=	freebsd32_proto.h		\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/i386/linux/Makefile
==============================================================================
--- head/sys/i386/linux/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/i386/linux/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -19,6 +19,9 @@ GENERATED=	linux_proto.h		\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}

Modified: head/sys/kern/Makefile
==============================================================================
--- head/sys/kern/Makefile	Fri Jan 10 18:22:14 2020	(r356603)
+++ head/sys/kern/Makefile	Fri Jan 10 18:24:17 2020	(r356604)
@@ -21,6 +21,9 @@ GENERATED=	init_sysent.c		\
 all:
 	@echo "make sysent only"
 
+# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than
+# potentially once for each ${GENERATED} file.
+.ORDER: ${GENERATED}
 sysent: ${GENERATED}
 
 ${GENERATED}: ${MAKESYSCALLS} ${SRCS}


More information about the svn-src-head mailing list