Module Name:    src
Committed By:   rillig
Date:           Wed Feb 15 06:31:51 UTC 2023

Modified Files:
        src/usr.bin/make: make.h parse.c var.c

Log Message:
make: inline macro for variable name ".MAKE.EXPORTED"

The variable name is distinctive enough to be searched directly in the
code instead of having a named constant for it.

No binary change.


To generate a diff of this commit:
cvs rdiff -u -r1.314 -r1.315 src/usr.bin/make/make.h
cvs rdiff -u -r1.694 -r1.695 src/usr.bin/make/parse.c
cvs rdiff -u -r1.1044 -r1.1045 src/usr.bin/make/var.c

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/make.h
diff -u src/usr.bin/make/make.h:1.314 src/usr.bin/make/make.h:1.315
--- src/usr.bin/make/make.h:1.314	Tue Feb 14 21:56:47 2023
+++ src/usr.bin/make/make.h	Wed Feb 15 06:31:51 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: make.h,v 1.314 2023/02/14 21:56:47 rillig Exp $	*/
+/*	$NetBSD: make.h,v 1.315 2023/02/15 06:31:51 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -612,7 +612,6 @@ extern pid_t myPid;
 #define MAKEOVERRIDES	".MAKEOVERRIDES"
 /* prefix when printing the target of a job */
 #define MAKE_JOB_PREFIX	".MAKE.JOB.PREFIX"
-#define MAKE_EXPORTED	".MAKE.EXPORTED"	/* exported variables */
 #define MAKE_MAKEFILES	".MAKE.MAKEFILES"	/* all loaded makefiles */
 #define MAKE_LEVEL	".MAKE.LEVEL"		/* recursion level */
 #define MAKE_MAKEFILE_PREFERENCE ".MAKE.MAKEFILE_PREFERENCE"

Index: src/usr.bin/make/parse.c
diff -u src/usr.bin/make/parse.c:1.694 src/usr.bin/make/parse.c:1.695
--- src/usr.bin/make/parse.c:1.694	Tue Feb 14 21:38:31 2023
+++ src/usr.bin/make/parse.c	Wed Feb 15 06:31:51 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: parse.c,v 1.694 2023/02/14 21:38:31 rillig Exp $	*/
+/*	$NetBSD: parse.c,v 1.695 2023/02/15 06:31:51 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -105,7 +105,7 @@
 #include "pathnames.h"
 
 /*	"@(#)parse.c	8.3 (Berkeley) 3/19/94"	*/
-MAKE_RCSID("$NetBSD: parse.c,v 1.694 2023/02/14 21:38:31 rillig Exp $");
+MAKE_RCSID("$NetBSD: parse.c,v 1.695 2023/02/15 06:31:51 rillig Exp $");
 
 /*
  * A file being read.
@@ -1882,7 +1882,7 @@ VarAssignSpecial(const char *name, const
 		Dir_SetPATH();
 	} else if (strcmp(name, MAKE_JOB_PREFIX) == 0)
 		Job_SetPrefix();
-	else if (strcmp(name, MAKE_EXPORTED) == 0)
+	else if (strcmp(name, ".MAKE.EXPORTED") == 0)
 		Var_ExportVars(avalue);
 }
 

Index: src/usr.bin/make/var.c
diff -u src/usr.bin/make/var.c:1.1044 src/usr.bin/make/var.c:1.1045
--- src/usr.bin/make/var.c:1.1044	Tue Feb 14 21:56:47 2023
+++ src/usr.bin/make/var.c	Wed Feb 15 06:31:51 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: var.c,v 1.1044 2023/02/14 21:56:47 rillig Exp $	*/
+/*	$NetBSD: var.c,v 1.1045 2023/02/15 06:31:51 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -139,7 +139,7 @@
 #include "metachar.h"
 
 /*	"@(#)var.c	8.3 (Berkeley) 3/19/94" */
-MAKE_RCSID("$NetBSD: var.c,v 1.1044 2023/02/14 21:56:47 rillig Exp $");
+MAKE_RCSID("$NetBSD: var.c,v 1.1045 2023/02/15 06:31:51 rillig Exp $");
 
 /*
  * Variables are defined using one of the VAR=value assignments.  Their
@@ -521,7 +521,7 @@ Var_Delete(GNode *scope, const char *var
 
 	if (v->exported)
 		unsetenv(v->name.str);
-	if (strcmp(v->name.str, MAKE_EXPORTED) == 0)
+	if (strcmp(v->name.str, ".MAKE.EXPORTED") == 0)
 		var_exportedVars = VAR_EXPORTED_NONE;
 
 	assert(v->name.freeIt == NULL);
@@ -719,7 +719,7 @@ Var_ReexportVars(void)
 		return;
 	}
 
-	xvarnames = Var_Subst("${" MAKE_EXPORTED ":O:u}", SCOPE_GLOBAL,
+	xvarnames = Var_Subst("${.MAKE.EXPORTED:O:u}", SCOPE_GLOBAL,
 	    VARE_WANTRES);
 	/* TODO: handle errors */
 	if (xvarnames[0] != '\0') {
@@ -752,7 +752,7 @@ ExportVars(const char *varnames, bool is
 			var_exportedVars = VAR_EXPORTED_SOME;
 
 		if (isExport && mode == VEM_PLAIN)
-			Global_Append(MAKE_EXPORTED, varname);
+			Global_Append(".MAKE.EXPORTED", varname);
 	}
 	Words_Free(words);
 }
@@ -836,8 +836,7 @@ GetVarnamesToUnexport(bool isEnv, const 
 	}
 
 	if (what != UNEXPORT_NAMED) {
-		/* Using .MAKE.EXPORTED */
-		char *expanded = Var_Subst("${" MAKE_EXPORTED ":O:u}",
+		char *expanded = Var_Subst("${.MAKE.EXPORTED:O:u}",
 		    SCOPE_GLOBAL, VARE_WANTRES);
 		/* TODO: handle errors */
 		varnames = FStr_InitOwn(expanded);
@@ -867,11 +866,11 @@ UnexportVar(Substring varname, UnexportW
 	if (what == UNEXPORT_NAMED) {
 		/* Remove the variable names from .MAKE.EXPORTED. */
 		/* XXX: v->name is injected without escaping it */
-		char *expr = str_concat3("${" MAKE_EXPORTED ":N",
+		char *expr = str_concat3("${.MAKE.EXPORTED:N",
 		    v->name.str, "}");
 		char *cp = Var_Subst(expr, SCOPE_GLOBAL, VARE_WANTRES);
 		/* TODO: handle errors */
-		Global_Set(MAKE_EXPORTED, cp);
+		Global_Set(".MAKE.EXPORTED", cp);
 		free(cp);
 		free(expr);
 	}
@@ -892,7 +891,7 @@ UnexportVars(FStr *varnames, UnexportWha
 	SubstringWords_Free(words);
 
 	if (what != UNEXPORT_NAMED)
-		Global_Delete(MAKE_EXPORTED);
+		Global_Delete(".MAKE.EXPORTED");
 }
 
 /*

Reply via email to