diff --git a/cabal-install/Distribution/Client/Dependency/Modular/ConfiguredConversion.hs b/cabal-install/Distribution/Client/Dependency/Modular/ConfiguredConversion.hs
index b57e0377498cbf7f299bc7e84f7ac08464360a88..714eb845391afb2ec2d5ea3f77aa096ef4cdd13f 100644
--- a/cabal-install/Distribution/Client/Dependency/Modular/ConfiguredConversion.hs
+++ b/cabal-install/Distribution/Client/Dependency/Modular/ConfiguredConversion.hs
@@ -12,16 +12,14 @@ import Distribution.Client.Dependency.Modular.Configured
 import Distribution.Client.Dependency.Modular.Package
 
 import Distribution.Client.ComponentDeps (ComponentDeps)
-import qualified Distribution.Client.ComponentDeps as CD
 
 
 convCP :: SI.InstalledPackageIndex -> CI.PackageIndex SourcePackage ->
           CP QPN -> ResolverPackage
 convCP iidx sidx (CP qpi fa es ds) =
   case convPI qpi of
-    Left  pi -> PreExisting $ InstalledPackage
+    Left  pi -> PreExisting
                   (fromJust $ SI.lookupInstalledPackageId iidx pi)
-                  (map confSrcId $ CD.nonSetupDeps ds')
     Right pi -> Configured $ ConfiguredPackage
                   (fromJust $ CI.lookupPackageId sidx pi)
                   fa
diff --git a/cabal-install/Distribution/Client/Dependency/TopDown.hs b/cabal-install/Distribution/Client/Dependency/TopDown.hs
index 0e00aab7480f12d451c567c38b87bd8bf24642b9..c91905552714d34103e2bbb5e8f8d4f43d3dddd7 100644
--- a/cabal-install/Distribution/Client/Dependency/TopDown.hs
+++ b/cabal-install/Distribution/Client/Dependency/TopDown.hs
@@ -292,7 +292,8 @@ topDownResolver' platform cinfo installedPkgIndex sourcePkgIndex
       $ finaliseSelectedPackages preferences selected' constraints'
 
     toResolverPackage :: FinalSelectedPackage -> ResolverPackage
-    toResolverPackage (SelectedInstalled pkg) = PreExisting pkg
+    toResolverPackage (SelectedInstalled (InstalledPackage pkg _))
+                                              = PreExisting pkg
     toResolverPackage (SelectedSource    pkg) = Configured  pkg
 
 addTopLevelTargets :: [PackageName]
diff --git a/cabal-install/Distribution/Client/Dependency/Types.hs b/cabal-install/Distribution/Client/Dependency/Types.hs
index 8c0c833dfee41e5dab7c11fe373958d422dd18fc..184028a473ac7f368ad2f08b3d1226b485608209 100644
--- a/cabal-install/Distribution/Client/Dependency/Types.hs
+++ b/cabal-install/Distribution/Client/Dependency/Types.hs
@@ -46,8 +46,7 @@ import Data.Monoid
 #endif
 
 import Distribution.Client.Types
-         ( OptionalStanza(..), SourcePackage(..), ConfiguredPackage
-         , InstalledPackage )
+         ( OptionalStanza(..), SourcePackage(..), ConfiguredPackage )
 
 import Distribution.Compat.ReadP
          ( (<++) )
@@ -56,6 +55,8 @@ import qualified Distribution.Compat.ReadP as Parse
          ( pfail, munch1 )
 import Distribution.PackageDescription
          ( FlagAssignment, FlagName(..) )
+import Distribution.InstalledPackageInfo
+         ( InstalledPackageInfo )
 import qualified Distribution.Client.PackageIndex as PackageIndex
          ( PackageIndex )
 import Distribution.Simple.PackageIndex ( InstalledPackageIndex )
@@ -128,7 +129,7 @@ type DependencyResolver = Platform
 --
 -- This is like the 'InstallPlan.PlanPackage' but with fewer cases.
 --
-data ResolverPackage = PreExisting InstalledPackage
+data ResolverPackage = PreExisting InstalledPackageInfo
                      | Configured  ConfiguredPackage
 
 -- | Per-package constraints. Package constraints must be respected by the
diff --git a/cabal-install/Distribution/Client/InstallPlan.hs b/cabal-install/Distribution/Client/InstallPlan.hs
index 0661f135173f4974d80c8ce9400ae344545c18ad..0822ee5a39c47f30d5f21de4c30959c403b74fd4 100644
--- a/cabal-install/Distribution/Client/InstallPlan.hs
+++ b/cabal-install/Distribution/Client/InstallPlan.hs
@@ -49,9 +49,9 @@ module Distribution.Client.InstallPlan (
 import Distribution.Client.Types
          ( ConfiguredPackage(..)
          , ReadyPackage(..), readyPackageToConfiguredPackage
-         , InstalledPackage, BuildFailure, BuildSuccess(..)
-         , InstalledPackage(..), fakeInstalledPackageId
+         , BuildFailure, BuildSuccess(..)
          , PackageFixedDeps(..)
+         , fakeInstalledPackageId
          )
 import Distribution.Package
          ( PackageIdentifier(..), PackageName(..), Package(..)
@@ -74,6 +74,8 @@ import Distribution.Compiler
          ( CompilerInfo(..) )
 import Distribution.Simple.Utils
          ( intercalate )
+import Distribution.InstalledPackageInfo
+         ( InstalledPackageInfo )
 import qualified Distribution.InstalledPackageInfo as Installed
 
 import Data.Maybe
@@ -141,7 +143,7 @@ type PlanIndex = PackageIndex PlanPackage
 -- 'PackageInstalled' instance it would be too easy to get this wrong (and,
 -- for instance, call graph traversal functions from Cabal rather than from
 -- cabal-install). Instead, see 'PackageFixedDeps'.
-data PlanPackage = PreExisting InstalledPackage
+data PlanPackage = PreExisting InstalledPackageInfo
                  | Configured  ConfiguredPackage
                  | Processing  ReadyPackage
                  | Installed   ReadyPackage BuildSuccess
@@ -294,7 +296,7 @@ ready plan = assert check readyPackages
         Just (Configured  _)                            -> Nothing
         Just (Processing  _)                            -> Nothing
         Just (Failed    _ _)                            -> internalError depOnFailed
-        Just (PreExisting (InstalledPackage instPkg _)) -> Just instPkg
+        Just (PreExisting instPkg)                      -> Just instPkg
         Just (Installed _ (BuildOk _ _ (Just instPkg))) -> Just instPkg
         Just (Installed _ (BuildOk _ _ Nothing))        -> internalError depOnNonLib
         Nothing                                         -> internalError incomplete