Follow-up Comment #8, bug #65533 (group make):

> we try to limit our use of recursively expanded variables

Goodness me, that's a radical lesson to draw.  I wouldn't encourage that here,
except with respect to $(shell), where for decades I've found it to be a good
idea, in most circumstances, to arrange things so you can := rather than =.

> There seems to be [something] seriously wrong here.

If you wanted to try to pin it on the particular change cited here, the NEWS
entry was related to:

https://savannah.gnu.org/bugs/index.php?10593

... with the crux of the change being:

https://cgit.git.savannah.gnu.org/cgit/make.git/diff/?h=4.4&id=98da874c43035a490cdca81331724f233a3d0c9a

There was at least one later change in the same area:

https://savannah.gnu.org/bugs/index.php?63016

... so:

https://cgit.git.savannah.gnu.org/cgit/make.git/commit/?id=7d484017077089ac2642b89da8984ca46a07323d

You could try backing those out.  I wondered if you could achieve a similar
result by initializing env_recursion to one instead of zero but that didn't
revert the behavior exhibited by my example here.  A small hack that did is:

martind@stormy:~/download/make$ git diff
diff --git a/src/function.c b/src/function.c
index a1617793..b3648b74 100644
--- a/src/function.c
+++ b/src/function.c
@@ -1864,7 +1864,7 @@ func_shell_base (char *o, char **argv, int
trim_newlines)
   errfd = (output_context && output_context->err >= 0
            ? output_context->err : FD_STDERR);
 
-  child.environment = target_environment (NULL, 0);
+  child.environment = environ; //target_environment (NULL, 0);
 
 #if MK_OS_DOS
   fpipe = msdos_openpipe (pipedes, &pid, argv[0]);
@@ -1992,7 +1992,7 @@ func_shell_base (char *o, char **argv, int
trim_newlines)
       free (command_argv);
     }
 
-  free_childbase (&child);
+  //free_childbase (&child);
 
   return o;
 }
martind@stormy:~/download/make$ 

I wouldn't put such a change into production but, if it doesn't help a test
build, then you're probably on the wrong track.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?65533>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to