#14312: Head does not build on Windows with the default make config.
-------------------------------------+-------------------------------------
Reporter: AndreasK | Owner: (none)
Type: bug | Status: patch
Priority: normal | Milestone:
Component: Build System | Version: 8.3
Resolution: | Keywords:
Operating System: Windows | Architecture:
Type of failure: Building GHC | Unknown/Multiple
failed | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D4080
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Phyx-):
This seems to have been introduced by
{{{
commit 06d46b1e4507e09eb2a7a04998a92610c8dc6277
Author: Edward Z. Yang
Date: Fri Jul 24 15:13:49 2015 -0700
Unify hsig and hs-boot; add preliminary "hs-boot" merging.
This patch drops the file level distinction between hs-boot and hsig;
we figure out which one we are compiling based on whether or not there
is a corresponding hs file lying around.
To make the "import A" syntax continue to work for bare hs-boot
files, we also introduce hs-boot merging, which takes an A.hi-boot
and converts it to an A.hi when there is no A.hs file in scope.
This will be generalized in Backpack to merge multiple A.hi files
together;
which means we can jettison the "load multiple interface files"
functionality.
This works automatically for --make, but for one-shot compilation
we need a new mode: ghc --merge-requirements A will generate an
A.hi/A.o
from a local A.hi-boot file; Backpack will extend this mechanism
further.
Has Haddock submodule update to deal with change in msHsFilePath
behavior.
- This commit drops support for the hsig extension. Can
we support it? It's annoying because the finder code is
written with the assumption that where there's an hs-boot
file, there's always an hs file too. To support hsig, you'd
have to probe two locations. Easier to just not support it.
- #10333 affects us, modifying an hs-boot still doesn't trigger
recomp.
- See compiler/main/Finder.hs: this diff is very skeevy, but
it seems to work.
- This code cunningly doesn't drop hs-boot files from the
"drop hs-boot files" module graph, if they don't have a
corresponding hs file. I have no idea if this actually is
useful.
Signed-off-by: Edward Z. Yang
Test Plan: validate
Reviewers: simonpj, austin, bgamari, spinda
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1098
}}}
with the comment
{{{
+ -- We add the directory in which the .hs files resides) to the
import
+ -- path. This is needed when we try to compile the .hc file
later, if it
+ -- imports a _stub.h file that we created here.
}}}
So it seems unrelated to `capi` but the `capi` test require this to pass.
--
Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14312#comment:15
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler