This is an archive of the discontinued LLVM Phabricator instance.

Force SHELL to be cmd.exe on Windows for the test suite
ClosedPublic

Authored by lanza on Nov 13 2018, 9:20 PM.

Details

Summary

Windows make will search for other shells and choose those over cmd
if available (e.g. C:\cygdrive\bin\sh.exe). This shell has numerous
issues with path handling (/ vs \\ vs \ and C:). So default to using
cmd.exe which is known to work.

Diff Detail

Repository
rLLDB LLDB

Event Timeline

lanza created this revision.Nov 13 2018, 9:20 PM

I ran a subset of the test suite (around 350 tests) and found that there are 0 cases where a pass occurred with C:\cygwin\bin\sh.exe but not with C:\windows\system32\cmd.exe. So this should be safe.

zturner accepted this revision.Nov 15 2018, 7:44 AM

lgtm after fixing the one comment.

packages/Python/lldbsuite/test/make/Makefile.rules
61

Can you use $(WINDIR) here instead of hardcoding C:\Windows?

This revision is now accepted and ready to land.Nov 15 2018, 7:44 AM
This revision was automatically updated to reflect the committed changes.