On Thu, 2008-07-03 at 08:05 -0700, Uffze wrote: > I don't have a clue why on some lines make starts the tools directly > (so they work), while on other lines the tools are started via the gnu > shell (which uses different paths than window and results in the fact > that they can't be found).
I can't say why the shell isn't found or how to resolve that problem, but I can tell you why sometimes it's used and sometimes it's not. Make does not contain a complete implementation of the shell language. On UNIX, in particular, which is where make originated, the shell has a complex and powerful syntax and reimplementing the shell inside make isn't something we want to attempt. On the other hand, invoking a shell takes extra time and makes the build slower. So, make has a "fast path" and a "slow path". It will examine your recipe line and if there are any characters in it which are deemed "special" (that is, seem to require a full shell to resolve, such as shell variables or multiple commands or whatever), then make uses the "slow path", which invokes a real shell and passes the command line to it. If the recipe line contains nothing that is "shell-worthy", then it uses the "fast path", which just invokes the command line directly with no shell processing. _______________________________________________ Make-w32 mailing list Make-w32@gnu.org http://lists.gnu.org/mailman/listinfo/make-w32