[GHC] #15925: Production quality bindists for hadrian
#15925: Production quality bindists for hadrian -------------------------------------+------------------------------------- Reporter: alpmestan | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.7 (Hadrian) | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- The bindists currently produced by hadrian are largely untested, especially on other platforms than linux. Moreover, we had not made a clear decision on what to do with respect to the relocatable GHCs that hadrian produces and wrapper scripts. We realized that everyone would be happy if: - the bindists follow the in-tree structure of `<build root>/stage1`, with `bin` containing the actual programs for most cases, etc. No wrapper script just yet. This way we can just unpack the archive and call `bin/ghc`. We still perhaps need to generate a script for ghci, but that's not really a wrapper, it's just a special case of `ghc` really. - `./configure && make install` would systematically generate wrapper scripts and install everything the way we do in our current bindists. I will look into getting this to work soon and will use this ticket to report progress. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15925> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15925: Production quality bindists for hadrian -------------------------------------+------------------------------------- Reporter: alpmestan | Owner: (none) Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 8.7 (Hadrian) | Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D5371 Wiki Page: | -------------------------------------+------------------------------------- Changes (by alpmestan): * status: new => patch * differential: => Phab:D5371 Comment: I have a patch at https://phabricator.haskell.org/D5371 We now systematically generate wrappers when doing `make install`, but the bindist is already usable as-is, with the `{bin, lib}` dirs from the unpacked archive (and even if you move them, as long as they sit next to each other). We also didn't ship `haddock` nor generated docs, too. The differential fixes this as well. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15925#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15925: Production quality bindists for hadrian -------------------------------------+------------------------------------- Reporter: alpmestan | Owner: (none) Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 8.7 (Hadrian) | Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D5371 Wiki Page: | -------------------------------------+------------------------------------- Comment (by Alp Mestanogullari <alpmestan@…>): In [changeset:"8f52ab9223544b756010a7a92ea52fffdf1d1c71/ghc" 8f52ab92/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="8f52ab9223544b756010a7a92ea52fffdf1d1c71" Hadrian: improve bindist rule As outlined in #15925, hadrian bindists had not made a clear choice with respect to relocatable GHCs and wrapper scripts. This commit implements the policy described in the ticket. That is: - the bindists ship {bin, lib} as they are, modulo the addition of haddock from stage2/bin - we now _always_ generate wrapper scripts for all the programs that are in the bindist's bin/ directory The idea being that anyone on Linux/Windows/OS X can just unpack the binary distribution anywhere and start using bin/ghc, while the installation process systematicaly generates wrapper scripts. Test Plan: hadrian/build.sh binary-dist ; cd _build/bindist/ghc-X.Y.Z-arch/; configure --prefix=/tmp/foo && make install Reviewers: snowleopard, bgamari, angerman Reviewed By: snowleopard, bgamari, angerman Subscribers: rwbarton, carter GHC Trac Issues: #15925 Differential Revision: https://phabricator.haskell.org/D5371 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15925#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15925: Production quality bindists for hadrian -------------------------------------+------------------------------------- Reporter: alpmestan | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: 8.8.1 Component: Build System | Version: 8.7 (Hadrian) | Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D5371 Wiki Page: | -------------------------------------+------------------------------------- Changes (by alpmestan): * status: patch => closed * resolution: => fixed * milestone: => 8.8.1 Comment: The aforementionned diff has been approved and merged. I'm closing this ticket as I believe the issues have been addressed. The bindist rules may not be perfect but if specific problems come up they deserve their own ticket. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15925#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC