[project @ 2005-05-17 12:00:04 by simonmar]
[ghc-hetmet.git] / ghc / compiler / main / DriverMkDepend.hs
index c8fb955..36990cb 100644 (file)
@@ -15,7 +15,7 @@ module DriverMkDepend (
 import qualified GHC
 import GHC             ( Session, ModSummary(..) )
 import DynFlags                ( DynFlags( verbosity, opt_dep ), getOpts )
-import Util            ( escapeSpaces, splitFilename )
+import Util            ( escapeSpaces, splitFilename, joinFileExt )
 import HscTypes                ( HscEnv, IsBootInterface, msObjFilePath, msHsFilePath )
 import Packages                ( PackageIdH(..) )
 import SysTools                ( newTempName )
@@ -27,6 +27,7 @@ import Finder         ( findModule, FindResult(..) )
 import Util             ( global, consIORef )
 import Outputable
 import Panic
+import SrcLoc          ( unLoc )
 import CmdLineParser
 
 import DATA_IOREF      ( IORef, readIORef, writeIORef )
@@ -199,8 +200,8 @@ processDeps session hdl (AcyclicSCC node)
        ; writeDependency hdl obj_files src_file
 
                -- Emit a dependency for each import
-       ; mapM_ (do_imp True)  (ms_srcimps node)        -- SOURCE imports
-       ; mapM_ (do_imp False) (ms_imps node)           -- regular imports
+       ; mapM_ (do_imp True . unLoc)  (ms_srcimps node)        -- SOURCE imports
+       ; mapM_ (do_imp False . unLoc) (ms_imps node)           -- regular imports
        }
 
 
@@ -255,7 +256,7 @@ insertSuffixes
        -- Lots of other things will break first!
 
 insertSuffixes file_name extras
-  = file_name : [ basename ++ "." ++ extra ++ "_" ++ suffix | extra <- extras ]
+  = file_name : [ basename `joinFileExt` (extra ++ "_" ++ suffix) | extra <- extras ]
   where
     (basename, suffix) = splitFilename file_name