Module Name: src Committed By: rillig Date: Thu Oct 22 07:01:25 UTC 2020
Modified Files: src/usr.bin/make: main.c Log Message: make(1): extract PrintVar from doPrintVars To generate a diff of this commit: cvs rdiff -u -r1.382 -r1.383 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.382 src/usr.bin/make/main.c:1.383 --- src/usr.bin/make/main.c:1.382 Thu Oct 22 06:54:51 2020 +++ src/usr.bin/make/main.c Thu Oct 22 07:01:25 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.382 2020/10/22 06:54:51 rillig Exp $ */ +/* $NetBSD: main.c,v 1.383 2020/10/22 07:01:25 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.382 2020/10/22 06:54:51 rillig Exp $"); +MAKE_RCSID("$NetBSD: main.c,v 1.383 2020/10/22 07:01:25 rillig Exp $"); #if defined(MAKE_NATIVE) && !defined(lint) __COPYRIGHT("@(#) Copyright (c) 1988, 1989, 1990, 1993 " "The Regents of the University of California. " @@ -868,6 +868,29 @@ MakeMode(const char *mode) } static void +PrintVar(const char *varname, Boolean expandVars) +{ + const char *value; + char *p1; + + if (strchr(varname, '$')) { + (void)Var_Subst(varname, VAR_GLOBAL, VARE_WANTRES, &p1); + /* TODO: handle errors */ + value = p1; + } else if (expandVars) { + char *expr = str_concat3("${", varname, "}"); + (void)Var_Subst(expr, VAR_GLOBAL, VARE_WANTRES, &p1); + /* TODO: handle errors */ + value = p1; + free(expr); + } else { + value = Var_Value(varname, VAR_GLOBAL, &p1); + } + printf("%s\n", value ? value : ""); + bmake_free(p1); +} + +static void doPrintVars(void) { StringListNode *ln; @@ -881,25 +904,8 @@ doPrintVars(void) expandVars = getBoolean(".MAKE.EXPAND_VARIABLES", FALSE); for (ln = variables->first; ln != NULL; ln = ln->next) { - const char *var = ln->datum; - const char *value; - char *p1; - - if (strchr(var, '$')) { - (void)Var_Subst(var, VAR_GLOBAL, VARE_WANTRES, &p1); - /* TODO: handle errors */ - value = p1; - } else if (expandVars) { - char *expr = str_concat3("${", var, "}"); - (void)Var_Subst(expr, VAR_GLOBAL, VARE_WANTRES, &p1); - /* TODO: handle errors */ - value = p1; - free(expr); - } else { - value = Var_Value(var, VAR_GLOBAL, &p1); - } - printf("%s\n", value ? value : ""); - bmake_free(p1); + const char *varname = ln->datum; + PrintVar(varname, expandVars); } }