svn commit: r254419 - head/contrib/bmake
Simon J. Gerraty
sjg at FreeBSD.org
Fri Aug 16 18:47:19 UTC 2013
Author: sjg
Date: Fri Aug 16 18:47:18 2013
New Revision: 254419
URL: http://svnweb.freebsd.org/changeset/base/254419
Log:
Add .MAKE.ALWAYS_PASS_JOB_QUEUE knob (default yes)
for backwards compatability.
Modified:
head/contrib/bmake/job.c
head/contrib/bmake/make.1
Modified: head/contrib/bmake/job.c
==============================================================================
--- head/contrib/bmake/job.c Fri Aug 16 16:55:39 2013 (r254418)
+++ head/contrib/bmake/job.c Fri Aug 16 18:47:18 2013 (r254419)
@@ -172,6 +172,14 @@ __RCSID("$NetBSD: job.c,v 1.175 2013/07/
# define STATIC static
/*
+ * FreeBSD: traditionally .MAKE is not required to
+ * pass jobs queue to sub-makes.
+ * Use .MAKE.ALWAYS_PASS_JOB_QUEUE=no to disable.
+ */
+#define MAKE_ALWAYS_PASS_JOB_QUEUE ".MAKE.ALWAYS_PASS_JOB_QUEUE"
+static int Always_pass_job_queue = TRUE;
+
+/*
* error handling variables
*/
static int errors = 0; /* number of errors reported */
@@ -1360,7 +1368,7 @@ JobExec(Job *job, char **argv)
(void)fcntl(0, F_SETFD, 0);
(void)lseek(0, (off_t)0, SEEK_SET);
- if (job->node->type & OP_MAKE) {
+ if (Always_pass_job_queue || (job->node->type & OP_MAKE)) {
/*
* Pass job token pipe to submakes.
*/
@@ -2226,6 +2234,9 @@ Job_Init(void)
lastNode = NULL;
+ Always_pass_job_queue = getBoolean(MAKE_ALWAYS_PASS_JOB_QUEUE,
+ Always_pass_job_queue);
+
/*
* There is a non-zero chance that we already have children.
* eg after 'make -f- <<EOF'
Modified: head/contrib/bmake/make.1
==============================================================================
--- head/contrib/bmake/make.1 Fri Aug 16 16:55:39 2013 (r254418)
+++ head/contrib/bmake/make.1 Fri Aug 16 18:47:18 2013 (r254419)
@@ -721,6 +721,17 @@ The preferred variable to use is the env
because it is more compatible with other versions of
.Nm
and cannot be confused with the special target with the same name.
+.It Va .MAKE.ALWAYS_PASS_JOB_QUEUE
+Tells
+.Nm
+whether to pass the descriptors of the job token queue
+even if the target is not tagged with
+.Ic .MAKE
+The default is
+.Ql Pa yes
+for backwards compatability with
+.Fx 9
+and earlier.
.It Va .MAKE.DEPENDFILE
Names the makefile (default
.Ql Pa .depend )
More information about the svn-src-head
mailing list