diff options
Diffstat (limited to 'haddock-test')
| -rw-r--r-- | haddock-test/src/Test/Haddock/Config.hs | 17 | 
1 files changed, 12 insertions, 5 deletions
diff --git a/haddock-test/src/Test/Haddock/Config.hs b/haddock-test/src/Test/Haddock/Config.hs index e1e920f2..50616c7f 100644 --- a/haddock-test/src/Test/Haddock/Config.hs +++ b/haddock-test/src/Test/Haddock/Config.hs @@ -165,11 +165,18 @@ loadConfig ccfg dcfg flags files = do      cfgEnv <- (:) ("haddock_datadir", dcfgResDir dcfg) <$> getEnvironment      systemHaddockPath <- List.lookup "HADDOCK_PATH" <$> getEnvironment -    cfgHaddockPath <- case flagsHaddockPath flags <|> systemHaddockPath of +    haddockOnPath <- findExecutable "haddock" + +    let haddock_path = msum [ flagsHaddockPath flags +                            , systemHaddockPath +                            , haddockOnPath +                            ] + +    cfgHaddockPath <- case haddock_path of          Just path -> pure path -        Nothing -> do -            hPutStrLn stderr $ "Haddock executable not specified" -            exitFailure +        Nothing   -> do +          hPutStrLn stderr "Haddock executable not found" +          exitFailure      ghcPath <- init <$> rawSystemStdout normal cfgHaddockPath          ["--print-ghc-path"] @@ -195,7 +202,7 @@ loadConfig ccfg dcfg flags files = do      let cfgAccept = FlagAccept `elem` flags      let cfgCheckConfig = ccfg -    let cfgDirConfig = dcfg +    let cfgDirConfig   = dcfg      return $ Config { .. }  | 
