[GHC] #15132: Hadrian-built GHC cannot locate `unlit`

#15132: Hadrian-built GHC cannot locate `unlit` ----------------------------------------+--------------------------------- Reporter: tdammers | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: Build System | Version: Keywords: | Operating System: Linux Architecture: Unknown/Multiple | Type of failure: None/Unknown Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: ----------------------------------------+--------------------------------- When trying to compile a Literate Haskell source with a Hadrian-built GHC, compilation fails due to GHC not finding the `unlit` binary. How to reproduce: - Compile GHC using the default Hadrian `build.sh` script - Create a minimal LHS file, e.g. `echo '> main = return ()' > test.lhs` - Compile the LHS file with the in-place GHC: `$GHC_SRC_TREE/_build/stage1/bin/ghc test.lhs` This fails with something like: {{{ ghc: could not execute: $GHC_SRC_TREE/_build/stage1/lib/bin/unlit }}} However, the `unlit` binary is in `$GHC_SRC_TREE/_build/stage1/bin/unlit`. Considering how `make`-built GHC works fine, this seems to be a misconfiguration in the Hadrian build system. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15132 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15132: Hadrian-built GHC cannot locate `unlit` ---------------------------------+---------------------------------------- Reporter: tdammers | Owner: alpmestan Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: Build System | Version: Resolution: | Keywords: hadrian Operating System: Linux | Architecture: Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ---------------------------------+---------------------------------------- Changes (by alpmestan): * keywords: => hadrian * cc: alpmestan (added) * owner: (none) => alpmestan Comment: This is due to GHC systematically looking for unlit under libexec, not even trying to look at the directory where the `ghc` binary resides, to see whether it also has an `unlit` executable. I have a fairly simple fix for this on the hadrian side, that just places `unlit` executables under `<build root>/stage<N>/lib/bin/unlit` instead of `<build root>/stage<N>/bin/unlit`. Will submit a PR shortly. A better solution would be to change the code from `SysTools.hs` to do something a little smarter. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15132#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15132: Hadrian-built GHC cannot locate `unlit` ---------------------------------+---------------------------------------- Reporter: tdammers | Owner: alpmestan Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: Build System | Version: Resolution: | Keywords: hadrian Operating System: Linux | Architecture: Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ---------------------------------+---------------------------------------- Comment (by alpmestan): Hadrian pull request [https://github.com/snowleopard/hadrian/pull/591 here]. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15132#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15132: Hadrian-built GHC cannot locate `unlit` ---------------------------------+---------------------------------------- Reporter: tdammers | Owner: alpmestan Type: bug | Status: closed Priority: normal | Milestone: 8.6.1 Component: Build System | Version: Resolution: fixed | Keywords: hadrian Operating System: Linux | Architecture: Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ---------------------------------+---------------------------------------- Changes (by alpmestan): * status: new => closed * resolution: => fixed Comment: The pull request has been merged. Hadrian now produces GHCs that can successfully process `.lhs` files. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15132#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC