I tried both stock binary and also “official” win32 gmake binary: results were identical.
Actually, it even doesn’t look like a WinDBG bug, but I have never seen that behaviour. Also I tried to run make like:
(cmd.exe shell)> make CROSS_COMPILER_PATH=xxx
Result: origin=command line
(sh prompt from msysGit) CROSS_COMPILER_PATH=xxx make
Result: origin=environment
(t.cmd batch file):
set CROSS_TOOLCHAIN_ROOT=xxx
"C:Program Files (x86)SysprogsVisualGDBmake.exe"
Result: origin=environment
In all cases the variable was defined and $(origin) said “command line” and “environment”, accordingly.
So I suspect that somehow environment passed to make from WinDGB isn’t recognized by make.
And stressing once again: SOMETIMES it worked.
PS. Just tried again: it works. Maybe I should have PC rebooted for that (and I yesterday did that). Usually I do not reboot my laptop for weeks (but suspend to RAM). I will try to reproduce it or at least to find out more details.