[project @ 2002-12-12 17:36:16 by simonmar]
authorsimonmar <unknown>
Thu, 12 Dec 2002 17:36:19 +0000 (17:36 +0000)
committersimonmar <unknown>
Thu, 12 Dec 2002 17:36:19 +0000 (17:36 +0000)
commitb3016a12ae6495234f9521a73ab223ab05aaa766
tree4c13dff7f63e82c12b6ef035bd04b04a9617d218
parent6d353fcbc9480b46cc675b5d7f077fd6cecee377
[project @ 2002-12-12 17:36:16 by simonmar]
A modification to the way we build link lines.

Currently the link line is constructed like this, for packages p1, p2 etc.:

  libraries p1 ++ extra_libs p1 ++
  libraries p2 ++ extra_libs p2 ++
  ...
  extra_ld_opts p1 ++
  extra_ld_opts p2 ++
  ..

This change makes it follow this pattern:

  libraries p1 ++ extra_libs p1 ++ extra_ld_opts p1 ++
  libraries p2 ++ extra_libs p2 ++ extra_ld_opts p2 ++
  ...

which seems more useful: in particular it means that using foo-config
(eg. gtk-config) to populate extra_ld_opts should now work properly,
and extra_libs is no longer strictly speaking needed (you can just use
-l options in extra_ld_opts and get the same effect).

Also:

  - There's now no difference between -l<lib> and -optl-l<lib>
  - GHCi grabs libs from extra_ld_opts as well as extra_libs
ghc/compiler/ghci/Linker.lhs
ghc/compiler/main/DriverFlags.hs
ghc/compiler/main/DriverPipeline.hs
ghc/compiler/main/DriverState.hs