summaryrefslogtreecommitdiff
path: root/utils/ghctags/Main.hs
diff options
context:
space:
mode:
Diffstat (limited to 'utils/ghctags/Main.hs')
-rw-r--r--utils/ghctags/Main.hs13
1 files changed, 5 insertions, 8 deletions
diff --git a/utils/ghctags/Main.hs b/utils/ghctags/Main.hs
index ba116b6bd4..9a2ab2cccf 100644
--- a/utils/ghctags/Main.hs
+++ b/utils/ghctags/Main.hs
@@ -21,7 +21,7 @@ import SrcLoc
import Distribution.Simple.GHC ( componentGhcOptions )
import Distribution.Simple.Configure ( getPersistBuildConfig )
import Distribution.Simple.Program.GHC ( renderGhcOptions )
-import Distribution.PackageDescription ( library, libBuildInfo )
+import Distribution.PackageDescription ( libBuildInfo )
import Distribution.Simple.LocalBuildInfo
import qualified Distribution.Verbosity as V
@@ -179,13 +179,10 @@ flagsFromCabal :: FilePath -> IO [String]
flagsFromCabal distPref = do
lbi <- getPersistBuildConfig distPref
let pd = localPkgDescr lbi
- findLibraryConfig [] = Nothing
- findLibraryConfig ((CLibName, clbi, _) : _) = Just clbi
- findLibraryConfig (_ : xs) = findLibraryConfig xs
- mLibraryConfig = findLibraryConfig (componentsConfigs lbi)
- case (library pd, mLibraryConfig) of
- (Just lib, Just clbi) ->
- let bi = libBuildInfo lib
+ case maybeGetDefaultLibraryLocalBuildInfo lbi of
+ Just clbi ->
+ let CLib lib = getComponent pd (componentLocalName clbi)
+ bi = libBuildInfo lib
odir = buildDir lbi
opts = componentGhcOptions V.normal lbi bi clbi odir
in return $ renderGhcOptions (compiler lbi) (hostPlatform lbi) opts