Load `pthreads` by default on Windows
authorTamar Christina <tamar@zhox.com>
Thu, 23 Feb 2017 23:34:33 +0000 (18:34 -0500)
committerBen Gamari <ben@smart-cactus.org>
Sun, 26 Feb 2017 15:54:07 +0000 (10:54 -0500)
commitbe3f436277042477d4a9215c4d5022a6f2225ed9
tree777dac0fc1baa5d4ae9cd0d9cb1e13b7f1805b1c
parent9968502d075e3a714913e14cd96a7d6b7ac7b5e7
Load `pthreads` by default on Windows

The GCC Bindists that we use compile with `pthread` enabled by default.
This means that on every link the dll is passed as a dependency by the
driver. Lots of packages depend on it but the runtime linker doesn't
provide it by default making compiled code work but not interpreted.

Following D3028 `pthreads` would be provided by default ONLY when linked
dynamicly, which we don't support yet (See D2592). Until this is the
case we need to manually provide `libpthreads`.

Test Plan: ./validate

Reviewers: austin, hvr, bgamari

Reviewed By: bgamari

Subscribers: thomie, #ghc_windows_task_force

Differential Revision: https://phabricator.haskell.org/D3155
compiler/ghci/Linker.hs