import Outputable
import PackageConfig ( rtsPackageId )
import Panic ( GhcException(..) )
-import Util ( zipLazy, global, joinFileExt, joinFileName, suffixOf,
- replaceFilenameSuffix )
+import Util ( zipLazy, global, joinFileExt, joinFileName,
+ replaceFilenameSuffix )
import StaticFlags ( v_Ld_inputs, v_Build_tag )
import ErrUtils ( debugTraceMsg, mkLocMessage )
import DriverPhases ( phaseInputExt, Phase(..) )
-- Standard libraries
import Control.Monad ( when, filterM, foldM )
-
+
import Data.IORef ( IORef, readIORef, writeIORef, modifyIORef )
import Data.List ( partition, nub )
a) calling the C initialisation procedure
b) Loading any packages specified on the command line,
- now held in v_ExplicitPackages
c) Loading any packages specified on the command line,
now held in the -l options in v_Opt_l
; initObjLinker
-- (b) Load packages from the command-line
- ; linkPackages dflags (explicitPackages (pkgState dflags))
+ ; linkPackages dflags (preloadPackages (pkgState dflags))
-- (c) Link libraries from the command-line
; let optl = getOpts dflags opt_l
case mb_stuff of
Found loc mod -> found loc mod
_ -> no_obj mod_name
-
- found loc mod = do {
+ where
+ found loc mod = do {
-- ...and then find the linkable for it
mb_lnk <- findObjectLinkableMaybe mod loc ;
case mb_lnk of {