Module Name: src
Committed By: rillig
Date: Sun Jul 7 09:54:13 UTC 2024
Modified Files:
src/usr.bin/make: main.c make.h targ.c var.c
Log Message:
make: move initialization of variable scopes to targ.c
The variable scopes are freed by Targ_End, so initialize them there as
well. Separate printing statistics and freeing memory, which makes
Var_End unnecessary.
To generate a diff of this commit:
cvs rdiff -u -r1.629 -r1.630 src/usr.bin/make/main.c
cvs rdiff -u -r1.341 -r1.342 src/usr.bin/make/make.h
cvs rdiff -u -r1.183 -r1.184 src/usr.bin/make/targ.c
cvs rdiff -u -r1.1133 -r1.1134 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/main.c
diff -u src/usr.bin/make/main.c:1.629 src/usr.bin/make/main.c:1.630
--- src/usr.bin/make/main.c:1.629 Sun Jul 7 07:50:57 2024
+++ src/usr.bin/make/main.c Sun Jul 7 09:54:12 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.629 2024/07/07 07:50:57 rillig Exp $ */
+/* $NetBSD: main.c,v 1.630 2024/07/07 09:54:12 rillig Exp $ */
/*
* Copyright (c) 1988, 1989, 1990, 1993
@@ -111,7 +111,7 @@
#include "trace.h"
/* "@(#)main.c 8.3 (Berkeley) 3/19/94" */
-MAKE_RCSID("$NetBSD: main.c,v 1.629 2024/07/07 07:50:57 rillig Exp $");
+MAKE_RCSID("$NetBSD: main.c,v 1.630 2024/07/07 09:54:12 rillig Exp $");
#if defined(MAKE_NATIVE)
__COPYRIGHT("@(#) Copyright (c) 1988, 1989, 1990, 1993 "
"The Regents of the University of California. "
@@ -1342,7 +1342,6 @@ main_Init(int argc, char **argv)
/* Just in case MAKEOBJDIR wants us to do something tricky. */
Targ_Init();
- Var_Init();
Global_Set_ReadOnly(".MAKE.OS", utsname.sysname);
Global_Set("MACHINE", machine);
Global_Set("MACHINE_ARCH", machine_arch);
@@ -1581,15 +1580,15 @@ main_CleanUp(void)
if (opts.enterFlag)
printf("%s: Leaving directory `%s'\n", progname, curdir);
+ Var_Stats();
+ Targ_Stats();
+
#ifdef USE_META
meta_finish();
#endif
#ifdef CLEANUP
Suff_End();
-#endif
- Var_End();
Targ_End();
-#ifdef CLEANUP
Arch_End();
Parse_End();
Dir_End();
Index: src/usr.bin/make/make.h
diff -u src/usr.bin/make/make.h:1.341 src/usr.bin/make/make.h:1.342
--- src/usr.bin/make/make.h:1.341 Sun Jul 7 07:50:57 2024
+++ src/usr.bin/make/make.h Sun Jul 7 09:54:12 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: make.h,v 1.341 2024/07/07 07:50:57 rillig Exp $ */
+/* $NetBSD: make.h,v 1.342 2024/07/07 09:54:12 rillig Exp $ */
/*
* Copyright (c) 1988, 1989, 1990, 1993
@@ -931,8 +931,6 @@ void Parse_RegisterCommand(char *cmd MAK
#endif
/* var.c */
-void Var_Init(void);
-void Var_End(void);
typedef enum VarEvalMode {
Index: src/usr.bin/make/targ.c
diff -u src/usr.bin/make/targ.c:1.183 src/usr.bin/make/targ.c:1.184
--- src/usr.bin/make/targ.c:1.183 Sat May 25 21:07:48 2024
+++ src/usr.bin/make/targ.c Sun Jul 7 09:54:12 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: targ.c,v 1.183 2024/05/25 21:07:48 rillig Exp $ */
+/* $NetBSD: targ.c,v 1.184 2024/07/07 09:54:12 rillig Exp $ */
/*
* Copyright (c) 1988, 1989, 1990, 1993
@@ -107,7 +107,7 @@
#include "dir.h"
/* "@(#)targ.c 8.2 (Berkeley) 3/19/94" */
-MAKE_RCSID("$NetBSD: targ.c,v 1.183 2024/05/25 21:07:48 rillig Exp $");
+MAKE_RCSID("$NetBSD: targ.c,v 1.184 2024/07/07 09:54:12 rillig Exp $");
/*
* All target nodes that appeared on the left-hand side of one of the
@@ -126,23 +126,24 @@ void
Targ_Init(void)
{
HashTable_Init(&allTargetsByName);
+ SCOPE_INTERNAL = GNode_New("Internal");
+ SCOPE_GLOBAL = GNode_New("Global");
+ SCOPE_CMDLINE = GNode_New("Command");
}
+#ifdef CLEANUP
void
Targ_End(void)
{
-#ifdef CLEANUP
GNodeListNode *ln;
-#endif
- Targ_Stats();
-#ifdef CLEANUP
+
Lst_Done(&allTargets);
HashTable_Done(&allTargetsByName);
for (ln = allNodes.first; ln != NULL; ln = ln->next)
GNode_Free(ln->datum);
Lst_Done(&allNodes);
-#endif
}
+#endif
void
Targ_Stats(void)
Index: src/usr.bin/make/var.c
diff -u src/usr.bin/make/var.c:1.1133 src/usr.bin/make/var.c:1.1134
--- src/usr.bin/make/var.c:1.1133 Fri Jul 5 20:01:52 2024
+++ src/usr.bin/make/var.c Sun Jul 7 09:54:12 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: var.c,v 1.1133 2024/07/05 20:01:52 rillig Exp $ */
+/* $NetBSD: var.c,v 1.1134 2024/07/07 09:54:12 rillig Exp $ */
/*
* Copyright (c) 1988, 1989, 1990, 1993
@@ -76,10 +76,6 @@
* expressions like ${VAR}, ${VAR:Modifiers}, ${${VARNAME}} or ${VAR:${MODS}}.
*
* Interface:
- * Var_Init Initialize this module.
- *
- * Var_End Clean up the module.
- *
* Var_Set
* Var_SetExpand Set the value of the variable, creating it if
* necessary.
@@ -132,7 +128,7 @@
#include "metachar.h"
/* "@(#)var.c 8.3 (Berkeley) 3/19/94" */
-MAKE_RCSID("$NetBSD: var.c,v 1.1133 2024/07/05 20:01:52 rillig Exp $");
+MAKE_RCSID("$NetBSD: var.c,v 1.1134 2024/07/07 09:54:12 rillig Exp $");
/*
* Variables are defined using one of the VAR=value assignments. Their
@@ -4809,22 +4805,6 @@ Var_Expand(FStr *str, GNode *scope, VarE
*str = FStr_InitOwn(expanded);
}
-/* Initialize the variables module. */
-void
-Var_Init(void)
-{
- SCOPE_INTERNAL = GNode_New("Internal");
- SCOPE_GLOBAL = GNode_New("Global");
- SCOPE_CMDLINE = GNode_New("Command");
-}
-
-/* Clean up the variables module. */
-void
-Var_End(void)
-{
- Var_Stats();
-}
-
void
Var_Stats(void)
{