on master help sign in
Replace some uses of system with rawSystem
528cc11Melvar Chen
src/IRTS/Compiler.hs+4−4
@@ -121,11 +121,11 @@ generate codegen mainmod ir
121 -- Built-in code generators (FIXME: lift these out!)
121 -- Built-in code generators (FIXME: lift these out!)
122 Via "c" -> codegenC ir
122 Via "c" -> codegenC ir
123 -- Any external code generator
123 -- Any external code generator
124− Via cg -> do let cmd = "idris-" ++ cg ++ " " ++ mainmod ++
124+ Via cg -> do let cmd = "idris-" ++ cg
125− " -o " ++ outputFile ir
125+ args = [mainmod, "-o", outputFile ir]
126− exit <- system cmd
126+ exit <- rawSystem cmd args
127 when (exit /= ExitSuccess) $
127 when (exit /= ExitSuccess) $
128− putStrLn ("FAILURE: " ++ show cmd)
128+ putStrLn ("FAILURE: " ++ show cmd ++ " " ++ show args)
129 Bytecode -> dumpBC (simpleDecls ir) (outputFile ir)
129 Bytecode -> dumpBC (simpleDecls ir) (outputFile ir)
130
130
131irMain :: TT Name -> Idris LDecl
131irMain :: TT Name -> Idris LDecl
src/Idris/REPL.hs+5−5
@@ -669,10 +669,10 @@ edit f orig
669 env <- runIO $ getEnvironment
669 env <- runIO $ getEnvironment
670 let editor = getEditor env
670 let editor = getEditor env
671 let line = case errSpan i of
671 let line = case errSpan i of
672− Just l -> " +" ++ show (fst (fc_start l)) ++ " "
672+ Just l -> ['+' : show (fst (fc_start l))]
673− Nothing -> " "
673+ Nothing -> []
674− let cmd = editor ++ line ++ fixName f
674+ let args = line ++ [fixName f]
675− runIO $ system cmd
675+ runIO $ rawSystem editor args
676 clearErr
676 clearErr
677 putIState $ orig { idris_options = idris_options i
677 putIState $ orig { idris_options = idris_options i
678 , idris_colourTheme = idris_colourTheme i
678 , idris_colourTheme = idris_colourTheme i
@@ -1069,7 +1069,7 @@ process fn Execute
1069 ir <- compile t tmpn m
1069 ir <- compile t tmpn m
1070 runIO $ generate t (head (idris_imported ist)) ir
1070 runIO $ generate t (head (idris_imported ist)) ir
1071 case idris_outputmode ist of
1071 case idris_outputmode ist of
1072− RawOutput h -> do runIO $ system tmpn
1072+ RawOutput h -> do runIO $ rawSystem tmpn []
1073 return ()
1073 return ()
1074 IdeSlave n h -> runIO . hPutStrLn h $
1074 IdeSlave n h -> runIO . hPutStrLn h $
1075 IdeSlave.convSExp "run-program" tmpn n)
1075 IdeSlave.convSExp "run-program" tmpn n)
src/Pkg/Package.hs+3−3
@@ -184,7 +184,7 @@ testPkg fp
184 (tmpn', tmph') <- tempfile
184 (tmpn', tmph') <- tempfile
185 hClose tmph'
185 hClose tmph'
186 m_ist <- idris (Filename tmpn : NoREPL : Verbose : Output tmpn' : idris_opts pkgdesc)
186 m_ist <- idris (Filename tmpn : NoREPL : Verbose : Output tmpn' : idris_opts pkgdesc)
187− system tmpn'
187+ rawSystem tmpn' []
188 setCurrentDirectory dir
188 setCurrentDirectory dir
189 case m_ist of
189 case m_ist of
190 Nothing -> exitWith (ExitFailure 1)
190 Nothing -> exitWith (ExitFailure 1)
@@ -269,13 +269,13 @@ mkDirCmd = "mkdir -p "
269-- | Invoke a Makefile's default target.
269-- | Invoke a Makefile's default target.
270make :: Maybe String -> IO ()
270make :: Maybe String -> IO ()
271make Nothing = return ()
271make Nothing = return ()
272−make (Just s) = do system $ "make -f " ++ s
272+make (Just s) = do rawSystem "make" ["-f", s]
273 return ()
273 return ()
274
274
275-- | Invoke a Makefile's clean target.
275-- | Invoke a Makefile's clean target.
276clean :: Maybe String -> IO ()
276clean :: Maybe String -> IO ()
277clean Nothing = return ()
277clean Nothing = return ()
278−clean (Just s) = do system $ "make -f " ++ s ++ " clean"
278+clean (Just s) = do rawSystem "make" ["-f", s, "clean"]
279 return ()
279 return ()
280
280
281-- --------------------------------------------------------------------- [ EOF ]
281-- --------------------------------------------------------------------- [ EOF ]