Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal On branch : master
http://hackage.haskell.org/trac/ghc/changeset/85a1f5f23a220db399fa789de1f0a6eefd7efb34 >--------------------------------------------------------------- commit 85a1f5f23a220db399fa789de1f0a6eefd7efb34 Author: Duncan Coutts <[email protected]> Date: Sat Aug 2 01:41:07 2008 +0000 Fix changing working dir when calling external setup but not logging Now uses a single code path for both modes. >--------------------------------------------------------------- cabal-install/Distribution/Client/SetupWrapper.hs | 25 +++++++++++---------- 1 files changed, 13 insertions(+), 12 deletions(-) diff --git a/cabal-install/Distribution/Client/SetupWrapper.hs b/cabal-install/Distribution/Client/SetupWrapper.hs index c7037e9..68daac5 100644 --- a/cabal-install/Distribution/Client/SetupWrapper.hs +++ b/cabal-install/Distribution/Client/SetupWrapper.hs @@ -48,7 +48,7 @@ import qualified Distribution.Simple.PackageIndex as PackageIndex import Distribution.Simple.PackageIndex (PackageIndex) import Distribution.Simple.Utils ( die, debug, info, cabalVersion, defaultPackageDesc, comparing - , rawSystemExit, createDirectoryIfMissingVerbose, inDir ) + , createDirectoryIfMissingVerbose, inDir ) import Distribution.Text ( display ) import Distribution.Verbosity @@ -276,17 +276,18 @@ externalSetupMethod verbosity options pkg bt mkargs = do where cabalPkgid = PackageIdentifier "Cabal" cabalLibVersion invokeSetupScript :: [String] -> IO () - invokeSetupScript args = case useLoggingHandle options of - Nothing -> rawSystemExit verbosity setupProgFile args - Just logHandle -> do - info verbosity $ unwords (setupProgFile : args) - info verbosity $ "Redirecting build log to " ++ show logHandle - currentDir <- getCurrentDirectory - process <- runProcess (currentDir </> setupProgFile) args - (useWorkingDir options) Nothing - Nothing (Just logHandle) (Just logHandle) - exitCode <- waitForProcess process - unless (exitCode == ExitSuccess) $ exitWith exitCode + invokeSetupScript args = do + info verbosity $ unwords (setupProgFile : args) + case useLoggingHandle options of + Nothing -> return () + Just logHandle -> info verbosity $ "Redirecting build log to " + ++ show logHandle + currentDir <- getCurrentDirectory + process <- runProcess (currentDir </> setupProgFile) args + (useWorkingDir options) Nothing + Nothing (useLoggingHandle options) (useLoggingHandle options) + exitCode <- waitForProcess process + unless (exitCode == ExitSuccess) $ exitWith exitCode -- ------------------------------------------------------------ -- * Utils _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
