Opened 10 years ago

Closed 9 years ago

Last modified 8 years ago

#1248 closed task (fixed)

Use sensible flags for ghc -M

Reported by: simonpj Owned by: igloo
Priority: normal Milestone: 6.10.1
Component: Compiler Version: 6.6
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:


The ghc -M dependency analyser requires you to specify flags in a very obscure way:

  ghc -M -opt-dep-f -opt-depFunnyMakefile -optdep-include-pkg-deps

Simon M writes: "It's historical (because mkdependHS used to be a separate script), but we can't just remove it because there's overlap between the -optdep options and the main GHC options. I don't mind introducing new names for the relevant options."

So the task is to decide names for the flags, implement the change, and document it.

(Currently DriverMkDepend.hs does its own flaggery.)

Change History (9)

comment:1 Changed 10 years ago by simonmar

Milestone: 6.8 branch6.10 branch
Owner: igloo deleted

Probably want to do #1880 first.

comment:2 Changed 9 years ago by igloo

Milestone: 6.10 branch6.10.1

I'm not sure if doing #1880 first is important, but it would be good to do this for 6.10.1 so that we can rely on the new flags existing sooner.

comment:3 Changed 9 years ago by igloo

Owner: set to igloo

comment:4 Changed 9 years ago by igloo

OK, I've sorted out the argument parsing, so now it's just a matter of picking good new names and marking the old ones as deprecated. Any objections to these?

-optdep-f                 -> --dep-makefile
-optdep-s                 -> --dep-suffix
-optdep--include-pkg-deps -> --include-pkg-deps
-optdep--exclude-module   -> --exclude-module

comment:5 Changed 9 years ago by simonmar

Yes, but with single dashes only. Right now the only double-dash options are "mode" options, which seems as good a convention as any.

comment:6 Changed 9 years ago by igloo

Resolution: fixed
Status: newclosed


comment:7 Changed 9 years ago by simonmar

Architecture: UnknownUnknown/Multiple

comment:8 Changed 9 years ago by simonmar

Operating System: UnknownUnknown/Multiple

comment:9 Changed 8 years ago by simonmar

difficulty: Easy (1 hr)Easy (less than 1 hour)
Note: See TracTickets for help on using tickets.