Module Name: src
Committed By: rillig
Date: Tue Oct 27 08:05:20 UTC 2020
Modified Files:
src/usr.bin/make: main.c
Log Message:
make(1): extract ReadMakefiles from main
To generate a diff of this commit:
cvs rdiff -u -r1.402 -r1.403 src/usr.bin/make/main.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.402 src/usr.bin/make/main.c:1.403
--- src/usr.bin/make/main.c:1.402 Tue Oct 27 08:00:20 2020
+++ src/usr.bin/make/main.c Tue Oct 27 08:05:20 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.402 2020/10/27 08:00:20 rillig Exp $ */
+/* $NetBSD: main.c,v 1.403 2020/10/27 08:05:20 rillig Exp $ */
/*
* Copyright (c) 1988, 1989, 1990, 1993
@@ -118,7 +118,7 @@
#include "trace.h"
/* "@(#)main.c 8.3 (Berkeley) 3/19/94" */
-MAKE_RCSID("$NetBSD: main.c,v 1.402 2020/10/27 08:00:20 rillig Exp $");
+MAKE_RCSID("$NetBSD: main.c,v 1.403 2020/10/27 08:05:20 rillig Exp $");
#if defined(MAKE_NATIVE) && !defined(lint)
__COPYRIGHT("@(#) Copyright (c) 1988, 1989, 1990, 1993 "
"The Regents of the University of California. "
@@ -1173,6 +1173,29 @@ InitVpath(void)
}
static void
+ReadMakefiles(void)
+{
+ if (opts.makefiles->first != NULL) {
+ StringListNode *ln;
+
+ for (ln = opts.makefiles->first; ln != NULL; ln = ln->next) {
+ if (ReadMakefile(ln->datum) != 0)
+ Fatal("%s: cannot open %s.",
+ progname, (char *)ln->datum);
+ }
+ } else {
+ char *p1;
+ (void)Var_Subst("${" MAKEFILE_PREFERENCE "}",
+ VAR_CMD, VARE_WANTRES, &p1);
+ /* TODO: handle errors */
+ (void)str2Lst_Append(opts.makefiles, p1, NULL);
+ (void)Lst_ForEachUntil(opts.makefiles,
+ ReadMakefileSucceeded, NULL);
+ free(p1);
+ }
+}
+
+static void
CleanUp(void)
{
#ifdef CLEANUP
@@ -1456,25 +1479,8 @@ main(int argc, char **argv)
*/
if (!opts.noBuiltins)
ReadBuiltinRules();
-
- if (opts.makefiles->first != NULL) {
- StringListNode *ln;
-
- for (ln = opts.makefiles->first; ln != NULL; ln = ln->next) {
- if (ReadMakefile(ln->datum) != 0)
- Fatal("%s: cannot open %s.",
- progname, (char *)ln->datum);
- }
- } else {
- (void)Var_Subst("${" MAKEFILE_PREFERENCE "}",
- VAR_CMD, VARE_WANTRES, &p1);
- /* TODO: handle errors */
- (void)str2Lst_Append(opts.makefiles, p1, NULL);
- (void)Lst_ForEachUntil(opts.makefiles,
- ReadMakefileSucceeded, NULL);
- free(p1);
- }
-
+ ReadMakefiles();
+
/* In particular suppress .depend for '-r -V .OBJDIR -f /dev/null' */
if (!opts.noBuiltins || !opts.printVars) {
/* ignore /dev/null and anything starting with "no" */