Prepends the hsenv arguments instead of appending them.
This commit is contained in:
parent
e056d5169c
commit
34474f9844
@ -54,7 +54,7 @@ import Util (consIORef, looksLikeModuleName)
|
|||||||
getBuildFlags :: IO [Located String]
|
getBuildFlags :: IO [Located String]
|
||||||
getBuildFlags = do
|
getBuildFlags = do
|
||||||
argv0 <- fmap read $ readFile "yesod-devel/ghcargs.txt" -- generated by yesod-ghc-wrapper
|
argv0 <- fmap read $ readFile "yesod-devel/ghcargs.txt" -- generated by yesod-ghc-wrapper
|
||||||
argv0' <- addHsenvArgs argv0
|
argv0' <- prependHsenvArgv argv0
|
||||||
let (minusB_args, argv1) = partition ("-B" `isPrefixOf`) argv0'
|
let (minusB_args, argv1) = partition ("-B" `isPrefixOf`) argv0'
|
||||||
mbMinusB | null minusB_args = Nothing
|
mbMinusB | null minusB_args = Nothing
|
||||||
| otherwise = Just (drop 2 (last minusB_args))
|
| otherwise = Just (drop 2 (last minusB_args))
|
||||||
@ -63,12 +63,12 @@ getBuildFlags = do
|
|||||||
(argv2, staticFlagWarnings) <- GHC.parseStaticFlags argv1'
|
(argv2, staticFlagWarnings) <- GHC.parseStaticFlags argv1'
|
||||||
return argv2
|
return argv2
|
||||||
|
|
||||||
addHsenvArgs :: [String] -> IO [String]
|
prependHsenvArgv :: [String] -> IO [String]
|
||||||
addHsenvArgs argv = do
|
prependHsenvArgv argv = do
|
||||||
env <- getEnvironment
|
env <- getEnvironment
|
||||||
return $ case (lookup "HSENV" env) of
|
return $ case (lookup "HSENV" env) of
|
||||||
Nothing -> argv
|
Nothing -> argv
|
||||||
_ -> argv ++ hsenvArgv
|
_ -> hsenvArgv ++ argv
|
||||||
where hsenvArgv = words $ fromMaybe "" (lookup "PACKAGE_DB_FOR_GHC" env)
|
where hsenvArgv = words $ fromMaybe "" (lookup "PACKAGE_DB_FOR_GHC" env)
|
||||||
|
|
||||||
buildPackage :: [Located String] -> FilePath -> FilePath -> IO Bool
|
buildPackage :: [Located String] -> FilePath -> FilePath -> IO Bool
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user