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}
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to