#include "../../includes/ghcconfig.h"
import System.Console.GetOpt
-#if __GLASGOW_HASKELL__ >= 609
import qualified Control.Exception as Exception
-#else
-import qualified Control.Exception.Extensible as Exception
-#endif
import Data.Maybe
import Data.Char ( isSpace, toLower )
| "$topdir" `isPrefixOf` d = return ()
| "$httptopdir" `isPrefixOf` d = return ()
-- can't check these, because we don't know what $(http)topdir is
+ | isRelative d = verror ForceFiles $
+ thisfield ++ ": " ++ d ++ " is a relative path"
+ -- relative paths don't make any sense; #4134
| otherwise = do
there <- liftIO $ doesDirectoryExist d
when (not there) $
-- as any exceptions etc will only be able to report the
-- fd currently
h <-
-#if __GLASGOW_HASKELL__ >= 609
fdToHandle fd
-#else
- fdToHandle (fromIntegral fd)
-#endif
`Exception.onException` c_close fd
return (filepath, h)
where