Module Name:    src
Committed By:   sjg
Date:           Sat Mar 23 05:31:29 UTC 2013

Modified Files:
        src/usr.bin/make: main.c make.1 meta.c meta.h

Log Message:
If built with filemon support, set .MAKE.PATH_FILEMON to _PATH_FILEMON
so that makefiles can test for it.


To generate a diff of this commit:
cvs rdiff -u -r1.209 -r1.210 src/usr.bin/make/main.c
cvs rdiff -u -r1.211 -r1.212 src/usr.bin/make/make.1
cvs rdiff -u -r1.26 -r1.27 src/usr.bin/make/meta.c
cvs rdiff -u -r1.2 -r1.3 src/usr.bin/make/meta.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/make/main.c
diff -u src/usr.bin/make/main.c:1.209 src/usr.bin/make/main.c:1.210
--- src/usr.bin/make/main.c:1.209	Tue Feb 26 00:45:27 2013
+++ src/usr.bin/make/main.c	Sat Mar 23 05:31:29 2013
@@ -1,4 +1,4 @@
-/*	$NetBSD: main.c,v 1.209 2013/02/26 00:45:27 christos Exp $	*/
+/*	$NetBSD: main.c,v 1.210 2013/03/23 05:31:29 sjg Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,7 +69,7 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: main.c,v 1.209 2013/02/26 00:45:27 christos Exp $";
+static char rcsid[] = "$NetBSD: main.c,v 1.210 2013/03/23 05:31:29 sjg Exp $";
 #else
 #include <sys/cdefs.h>
 #ifndef lint
@@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19
 #if 0
 static char sccsid[] = "@(#)main.c	8.3 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: main.c,v 1.209 2013/02/26 00:45:27 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.210 2013/03/23 05:31:29 sjg Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -739,7 +739,7 @@ MakeMode(const char *mode)
 	}
 #if USE_META
 	if (strstr(mode, "meta"))
-	    meta_init(mode);
+	    meta_mode_init(mode);
 #endif
     }
     if (mp)
@@ -951,6 +951,9 @@ main(int argc, char **argv)
 	}
 	Job_SetPrefix();
 
+#ifdef USE_META
+	meta_init();
+#endif
 	/*
 	 * First snag any flags out of the MAKE environment variable.
 	 * (Note this is *not* MAKEFLAGS since /bin/make uses that and it's

Index: src/usr.bin/make/make.1
diff -u src/usr.bin/make/make.1:1.211 src/usr.bin/make/make.1:1.212
--- src/usr.bin/make/make.1:1.211	Tue Mar  5 22:01:44 2013
+++ src/usr.bin/make/make.1	Sat Mar 23 05:31:29 2013
@@ -1,4 +1,4 @@
-.\"	$NetBSD: make.1,v 1.211 2013/03/05 22:01:44 christos Exp $
+.\"	$NetBSD: make.1,v 1.212 2013/03/23 05:31:29 sjg Exp $
 .\"
 .\" Copyright (c) 1990, 1993
 .\"	The Regents of the University of California.  All rights reserved.
@@ -29,7 +29,7 @@
 .\"
 .\"	from: @(#)make.1	8.4 (Berkeley) 3/19/94
 .\"
-.Dd March 5, 2013
+.Dd March 22, 2013
 .Dt MAKE 1
 .Os
 .Sh NAME
@@ -874,6 +874,13 @@ by appending their names to
 is re-exported whenever
 .Ql Va .MAKEOVERRIDES
 is modified.
+.It Va .MAKE.PATH_FILEMON
+If
+.Nm
+was built with 
+.Xr filemon 4
+support, this is set to the path of the device node.
+This allows makefiles to test for this support.
 .It Va .MAKE.PID
 The process-id of
 .Nm .

Index: src/usr.bin/make/meta.c
diff -u src/usr.bin/make/meta.c:1.26 src/usr.bin/make/meta.c:1.27
--- src/usr.bin/make/meta.c:1.26	Sat Jan 19 04:23:37 2013
+++ src/usr.bin/make/meta.c	Sat Mar 23 05:31:29 2013
@@ -1,4 +1,4 @@
-/*      $NetBSD: meta.c,v 1.26 2013/01/19 04:23:37 sjg Exp $ */
+/*      $NetBSD: meta.c,v 1.27 2013/03/23 05:31:29 sjg Exp $ */
 
 /*
  * Implement 'meta' mode.
@@ -539,8 +539,24 @@ boolValue(char *s)
     return TRUE;
 }
 
+/*
+ * Initialization we need before reading makefiles.
+ */
+void
+meta_init()
+{
+#ifdef USE_FILEMON
+	/* this allows makefiles to test if we have filemon support */
+	Var_Set(".MAKE.PATH_FILEMON", _PATH_FILEMON, VAR_GLOBAL, 0);
+#endif
+}
+
+
+/*
+ * Initialization we need after reading makefiles.
+ */
 void
-meta_init(const char *make_mode)
+meta_mode_init(const char *make_mode)
 {
     static int once = 0;
     char *cp;

Index: src/usr.bin/make/meta.h
diff -u src/usr.bin/make/meta.h:1.2 src/usr.bin/make/meta.h:1.3
--- src/usr.bin/make/meta.h:1.2	Wed Mar 30 22:03:49 2011
+++ src/usr.bin/make/meta.h	Sat Mar 23 05:31:29 2013
@@ -1,4 +1,4 @@
-/*      $NetBSD: meta.h,v 1.2 2011/03/30 22:03:49 sjg Exp $ */
+/*      $NetBSD: meta.h,v 1.3 2013/03/23 05:31:29 sjg Exp $ */
 
 /*
  * Things needed for 'meta' mode.
@@ -41,7 +41,8 @@ typedef struct BuildMon {
 extern Boolean useMeta;
 
 struct Job;				/* not defined yet */
-void meta_init(const char *);
+void meta_init(void);
+void meta_mode_init(const char *);
 void meta_job_start(struct Job *, GNode *);
 void meta_job_child(struct Job *);
 void meta_job_error(struct Job *, GNode *, int, int);

Reply via email to