[GHC] #9287: changed dependency generation

#9287: changed dependency generation ------------------------------------+-------------------------------------- Reporter: maeder | Owner: Type: task | Status: new Priority: normal | Milestone: Component: Documentation | Version: 7.8.2 Keywords: | Operating System: Unknown/Multiple Architecture: Unknown/Multiple | Type of failure: Documentation bug Difficulty: Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | ------------------------------------+-------------------------------------- "ghc -M" for ghc-7.8.x changed in that an error occurs: {{{ You must specify at least one -dep-suffix }}} By chance (#8746) I found that {{{ ghc -M -dep-suffix "" B.hs }}} works, but only for the new ghc-7.8.x. For module B importing module A the following dependencies are generated: {{{ # DO NOT DELETE: Beginning of Haskell dependencies A.o : A.hs B.o : B.hs B.o : A.hi # DO NOT DELETE: End of Haskell dependencies }}} The same command used with ghc-7.6.x produces wrong dependencies: {{{ # DO NOT DELETE: Beginning of Haskell dependencies A.o A._o : A.hs B.o B._o : B.hs B.o : A.hi B._o : A._hi # DO NOT DELETE: End of Haskell dependencies }}} Obviously, only for dynamic linking a dep-suffix should be needed. However for ghc-7.6. this must be "dyn" and for ghc-7.8.x this must "dyn_" plus the empty suffix! {{{ ghc-7.6.3 -M -dep-suffix dyn B.hs ghc-7.8.2 -M -dep-suffix dyn_ -dep-suffix "" B.hs }}} Both calls produce: {{{ # DO NOT DELETE: Beginning of Haskell dependencies A.o A.dyn_o : A.hs B.o B.dyn_o : B.hs B.o : A.hi B.dyn_o : A.dyn_hi # DO NOT DELETE: End of Haskell dependencies }}} The changed behavior is not documented in http://www.haskell.org/ghc/docs/7.8.2/html/users_guide/separate- compilation.html#makefile-dependencies The (accidental?) change should also be documented in the release notes! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: Type: task | Status: new Priority: normal | Milestone: Component: | Version: 7.8.2 Documentation | Keywords: Resolution: | Architecture: Unknown/Multiple Operating System: | Difficulty: Unknown Unknown/Multiple | Blocked By: Type of failure: | Related Tickets: Documentation bug | Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- Comment (by simonmar): Indeed, when bootstrapping with 7.6.3, the dependency files in a GHC build have unnecessary entries due to `-dep-suffix ""`: {{{ # DO NOT DELETE: Beginning of Haskell dependencies utils/hsc2hs/dist/build/HSCParser.o utils/hsc2hs/dist/build/HSCParser._o : utils/hsc2hs/HSCParser.hs $(eval $(call hi-rule,utils/hsc2hs/dist/build/HSCParser.hi utils/hsc2hs/dist/build/HSCParser._hi : %hi: %o utils/hsc2hs/HSCParser.hs)) utils/hsc2hs/dist/build/HSCParser.o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Prelude.hi utils/hsc2hs/dist/build/HSCParser._o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Prelude._hi utils/hsc2hs/dist/build/HSCParser.o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Data/Char.hi utils/hsc2hs/dist/build/HSCParser._o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Data/Char._hi utils/hsc2hs/dist/build/HSCParser.o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Control/Monad.hi utils/hsc2hs/dist/build/HSCParser._o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Control/Monad._hi utils/hsc2hs/dist/build/HSCParser.o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Control/Applicative.hi utils/hsc2hs/dist/build/HSCParser._o : /home/smarlow/local/lib/ghc-7.6.3/base-4.6.0.1/Control/Applicative._hi }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: Type: task | Status: new Priority: normal | Milestone: Component: | Version: 7.8.2 Documentation | Keywords: Resolution: | Architecture: Unknown/Multiple Operating System: | Difficulty: Unknown Unknown/Multiple | Blocked By: Type of failure: | Related Tickets: Documentation bug | Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- Comment (by simonmar): Change that broke this: #7381 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: simonmar Type: task | Status: new Priority: normal | Milestone: Component: | Version: 7.8.2 Documentation | Keywords: Resolution: | Architecture: Unknown/Multiple Operating System: | Difficulty: Unknown Unknown/Multiple | Blocked By: Type of failure: | Related Tickets: Documentation bug | Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- Changes (by simonmar): * owner: => simonmar -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: simonmar Type: bug | Status: new Priority: normal | Milestone: Component: Driver | Version: 7.8.2 Resolution: | Keywords: Operating System: | Architecture: Unknown/Multiple Unknown/Multiple | Difficulty: Unknown Type of failure: | Blocked By: Documentation bug | Related Tickets: #9749, #7381 Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- Changes (by thomie): * type: task => bug * component: Documentation => Driver * related: => #9749, #7381 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: simonmar Type: bug | Status: infoneeded Priority: normal | Milestone: Component: Driver | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Documentation | Unknown/Multiple bug | Test Case: Blocked By: | Blocking: Related Tickets: #9749, #7381 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => infoneeded Comment: Was this ever resolved? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: simonmar Type: bug | Status: infoneeded Priority: normal | Milestone: Component: Driver | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Documentation | Unknown/Multiple bug | Test Case: Blocked By: | Blocking: Related Tickets: #9749, #7381 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by maeder): It was only a documentation issue for "ghc -M". I don't know if the documentation for this section changed after ghc-7.8 (or if the code was changed back). -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation
-------------------------------------+-------------------------------------
Reporter: maeder | Owner: simonmar
Type: bug | Status: infoneeded
Priority: normal | Milestone:
Component: Driver | Version: 7.8.2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Documentation | Unknown/Multiple
bug | Test Case:
Blocked By: | Blocking:
Related Tickets: #9749, #7381 | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Ben Gamari

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: simonmar Type: bug | Status: merge Priority: normal | Milestone: 8.2.1 Component: Driver | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Documentation | Unknown/Multiple bug | Test Case: Blocked By: | Blocking: Related Tickets: #9749, #7381 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: infoneeded => merge * milestone: => 8.2.1 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#9287: changed dependency generation -------------------------------------+------------------------------------- Reporter: maeder | Owner: simonmar Type: bug | Status: closed Priority: normal | Milestone: 8.2.1 Component: Driver | Version: 7.8.2 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Documentation | Unknown/Multiple bug | Test Case: Blocked By: | Blocking: Related Tickets: #9749, #7381 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: merge => closed * resolution: => fixed Comment: Merged to `ghc-8.2` as e84b18dfa98c3d2fc9c9288203113a2fbca406ba. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9287#comment:9 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC