Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/usr.bin/make/unit-tests



Module Name:    src
Committed By:   rillig
Date:           Tue Feb 16 19:01:18 UTC 2021

Modified Files:
        src/usr.bin/make/unit-tests: directive-export.mk

Log Message:
make: test exporting a variable that itself depends on a subprocess

When the point that "isn't going to end well" is reached, the stacktrace
is quite long but still reasonable:

main
main_ReadFiles
ReadAllMakefiles
ReadMakefile            directive-export.mk
Parse_File
ParseLine                               # line 3 has: _!= :;:
ParseVarassign
Parse_DoVar
VarAssign_Eval
VarAssign_EvalShell                     # because of the '!='
Cmd_Exec                :;:
Var_ReexportVars                        # before starting the subprocess
ExportVar               EMPTY_SHELL
ExportVarEnv                            # was only marked for export
Var_Subst               ${EMPTY_SHELL}  # to get the value to export
VarSubstExpr            ${EMPTY_SHELL}
Var_Parse               ${EMPTY_SHELL}
Var_Subst               ${:sh}          # since EMPTY_SHELL= ${:sh}
VarSubstExpr            ${:sh}
Var_Parse               ${:sh}
ApplyModifiers
ApplySingleModifier     :sh
ApplyModifier
ApplyModifier_SunShell  :sh
Cmd_Exec                ""              # empty command
Var_ReexportVars
ExportVar               EMPTY_SHELL
ExportVarEnv                            # skipping this edge case


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/usr.bin/make/unit-tests/directive-export.mk

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




Home | Main Index | Thread Index | Old Index