Fix runghc when $1_$2_SHELL_WRAPPER = NO
authorRyanGlScott <ryan.gl.scott@gmail.com>
Tue, 15 Dec 2015 00:02:46 +0000 (01:02 +0100)
committerBen Gamari <ben@smart-cactus.org>
Tue, 15 Dec 2015 00:38:10 +0000 (01:38 +0100)
commit05a5ebed916dc00bc5761224047440fefe10485e
tree583a611b8f5d7bc725543a0231e707811dd7048c
parent9017f16a78d66fe5aaf0ec98aeb9add1792fd838
Fix runghc when $1_$2_SHELL_WRAPPER = NO

When that variable isn't on (which is always the case on Windows),
`runghc` naively attempts to invoke `ghc` by finding an executable
simply named `ghc`. This won't work if `ghc` doesn't exist (e.g., if
we're building GHC and using `ghc-stage2` instead). A simple fix is to
test for the existence of `ghc` beforehand, and if that fails, fall back
on `ghc-stage2`.

Fixes #11185.

Test Plan: ./validate

Reviewers: austin, hvr, thomie, bgamari

Reviewed By: thomie, bgamari

Differential Revision: https://phabricator.haskell.org/D1621

GHC Trac Issues: #11185
utils/runghc/Main.hs
utils/runghc/ghc.mk