[project @ 2000-11-08 16:24:34 by simonmar]
authorsimonmar <unknown>
Wed, 8 Nov 2000 16:24:34 +0000 (16:24 +0000)
committersimonmar <unknown>
Wed, 8 Nov 2000 16:24:34 +0000 (16:24 +0000)
Fix a bug in object splitting which meant that no object files were
being created :-)

ghc/compiler/main/DriverFlags.hs
ghc/compiler/main/DriverPipeline.hs

index bcff33f..aca47d8 100644 (file)
@@ -1,5 +1,5 @@
 -----------------------------------------------------------------------------
--- $Id: DriverFlags.hs,v 1.15 2000/11/08 15:25:25 simonmar Exp $
+-- $Id: DriverFlags.hs,v 1.16 2000/11/08 16:24:34 simonmar Exp $
 --
 -- Driver flags
 --
@@ -215,7 +215,6 @@ static_flags =
   ,  ( "split-objs"    , NoArg (if can_split
                                    then do writeIORef v_Split_object_files True
                                            add v_Opt_C "-fglobalise-toplev-names"
--- TODO!!!!!                               add opt_c "-DUSE_SPLIT_MARKERS"
                                    else hPutStrLn stderr
                                            "warning: don't know how to  split \
                                            \object files on this architecture"
index 3fad46e..8265bc5 100644 (file)
@@ -1,5 +1,5 @@
 -----------------------------------------------------------------------------
--- $Id: DriverPipeline.hs,v 1.16 2000/11/08 15:25:25 simonmar Exp $
+-- $Id: DriverPipeline.hs,v 1.17 2000/11/08 16:24:34 simonmar Exp $
 --
 -- GHC Driver
 --
@@ -532,6 +532,10 @@ run_phase cc_phase _basename _suff input_fn output_fn
 
        pkg_extra_cc_opts <- getPackageExtraCcOpts
 
+       split_objs <- readIORef v_Split_object_files
+       let split_opt | hcc && split_objs = [ "-DUSE_SPLIT_MARKERS" ]
+                     | otherwise         = [ ]
+
        excessPrecision <- readIORef v_Excess_precision
 
        run_something "C Compiler"
@@ -543,6 +547,7 @@ run_phase cc_phase _basename _suff input_fn output_fn
                   ++ [ verb, "-S", "-Wimplicit", opt_flag ]
                   ++ [ "-D__GLASGOW_HASKELL__="++cProjectVersionInt ]
                   ++ cc_opts
+                  ++ split_opt
 #ifdef mingw32_TARGET_OS
                    ++ [" -mno-cygwin"]
 #endif