[GHC] #15949: Hadrian needs more convenient build target names
#15949: Hadrian needs more convenient build target names -------------------------------------+------------------------------------- Reporter: bgamari | Owner: (none) Type: feature | Status: new request | Priority: normal | Milestone: 8.8.1 Component: Compiler | Version: 8.6.2 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: -------------------------------------+------------------------------------- With the `make` build system one can easily build a particular library or executable by `cd`ing into the relevant directory and typing `make`. With `hadrian` there appears to be no convenient way to replicate this. Instead, you need to know the name of the final target which the build will produce which may contain version numbers, platform triples, and all sorts of other ugliness. I suggest we introduce a set of convenience targets to make this easier. For instance one could run: {{{ $ hadrian stage1:lib:ghc }}} to build the stage1 `ghc` library or {{{ $ hadrian stage2:exe:hp2ps }}} to build `hp2ps`. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15949> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15949: Hadrian needs more convenient build target names -------------------------------------+------------------------------------- Reporter: bgamari | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: 8.8.1 Component: Build System | Version: 8.6.2 (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): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * component: Compiler => Build System (Hadrian) -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15949#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15949: Hadrian needs more convenient build target names -------------------------------------+------------------------------------- Reporter: bgamari | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: 8.8.1 Component: Build System | Version: 8.6.2 (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): Wiki Page: | -------------------------------------+------------------------------------- Comment (by alpmestan): (Quick side-comment: the CWD-awareness has been requested by Simon Marlow some time ago, but for tests -- https://github.com/snowleopard/hadrian/issues/685) -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15949#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15949: Hadrian needs more convenient build target names -------------------------------------+------------------------------------- Reporter: bgamari | Owner: alpmestan Type: feature request | Status: new Priority: normal | Milestone: 8.8.1 Component: Build System | Version: 8.6.2 (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): Wiki Page: | -------------------------------------+------------------------------------- Changes (by alpmestan): * owner: (none) => alpmestan -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15949#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15949: Hadrian needs more convenient build target names -------------------------------------+------------------------------------- Reporter: bgamari | Owner: alpmestan Type: feature request | Status: patch Priority: normal | Milestone: 8.8.1 Component: Build System | Version: 8.6.2 (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:D5434 Wiki Page: | -------------------------------------+------------------------------------- Changes (by alpmestan): * status: new => patch * differential: => Phab:D5434 Comment: I have a patch at [https://phabricator.haskell.org/D5434 D5434], adding those `stage<N>:<lib|exe>:<name>` targets. It seems to be working as expected and advertised in the patch description. Feedback/review/refinements welcome! -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15949#comment:4> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15949: Hadrian needs more convenient build target names -------------------------------------+------------------------------------- Reporter: bgamari | Owner: alpmestan Type: feature request | Status: patch Priority: normal | Milestone: 8.8.1 Component: Build System | Version: 8.6.2 (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:D5434 Wiki Page: | -------------------------------------+------------------------------------- Comment (by Ben Gamari <ben@…>): In [changeset:"7491cedb20d15a54e905205c51aea72a13ac73aa/ghc" 7491ced/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="7491cedb20d15a54e905205c51aea72a13ac73aa" Hadrian: simple targets for building libraries and executables This patch introduces (phony) build targets of the form (1) stage<N>:<lib>:<name> (e.g: stage1:lib:Cabal) (2) stage<N>:<exe>:<name> (e.g: stage2:exe:ghc-bin) where (1) builds the given library with the stage N compiler and (2) builds the given executable with the stage N-1 compiler. This patch may be generating too many such targets but it's a first stab that we can refine. This fixes #15949. Test Plan: hadrian/build.sh stage1:exe:ghc-bin Reviewers: bgamari, snowleopard Reviewed By: bgamari Subscribers: rwbarton, carter GHC Trac Issues: #15949 Differential Revision: https://phabricator.haskell.org/D5434 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15949#comment:5> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#15949: Hadrian needs more convenient build target names -------------------------------------+------------------------------------- Reporter: bgamari | Owner: alpmestan Type: feature request | Status: closed Priority: normal | Milestone: 8.8.1 Component: Build System | Version: 8.6.2 (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:D5434 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: patch => closed * resolution: => fixed -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15949#comment:6> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC