@@ -72,6 +72,7 @@ import qualified Distribution.Client.InstallPlan as InstallPlan
72
72
import Distribution.Client.InstallPlan (InstallPlan )
73
73
import Distribution.Client.Setup
74
74
( GlobalFlags (.. )
75
+ , SetupWrapperFlags (.. )
75
76
, ConfigFlags (.. ), configureCommand , filterConfigureFlags
76
77
, ConfigExFlags (.. ), InstallFlags (.. ) )
77
78
import Distribution.Client.Config
@@ -86,7 +87,8 @@ import Distribution.Client.Types as Source
86
87
import Distribution.Client.BuildReports.Types
87
88
( ReportLevel (.. ) )
88
89
import Distribution.Client.SetupWrapper
89
- ( setupWrapper , SetupScriptOptions (.. ), defaultSetupScriptOptions )
90
+ ( setupWrapper , SetupScriptOptions (.. ), defaultSetupScriptOptions
91
+ , updateSetupScriptOptions )
90
92
import qualified Distribution.Client.BuildReports.Anonymous as BuildReports
91
93
import qualified Distribution.Client.BuildReports.Storage as BuildReports
92
94
( storeAnonymous , storeLocal , fromInstallPlan , fromPlanningFailure )
@@ -179,15 +181,16 @@ install
179
181
-> UseSandbox
180
182
-> Maybe SandboxPackageInfo
181
183
-> GlobalFlags
184
+ -> SetupWrapperFlags
182
185
-> ConfigFlags
183
186
-> ConfigExFlags
184
187
-> InstallFlags
185
188
-> HaddockFlags
186
189
-> [UserTarget ]
187
190
-> IO ()
188
191
install verbosity packageDBs repos comp platform conf useSandbox mSandboxPkgInfo
189
- globalFlags configFlags configExFlags installFlags haddockFlags
190
- userTargets0 = do
192
+ globalFlags setupWrapperFlags configFlags configExFlags installFlags
193
+ haddockFlags userTargets0 = do
191
194
192
195
installContext <- makeInstallContext verbosity args (Just userTargets0)
193
196
planResult <- foldProgress logMsg (return . Left ) (return . Right ) =<<
@@ -201,9 +204,9 @@ install verbosity packageDBs repos comp platform conf useSandbox mSandboxPkgInfo
201
204
processInstallPlan verbosity args installContext installPlan
202
205
where
203
206
args :: InstallArgs
204
- args = (packageDBs, repos, comp, platform, conf, useSandbox, mSandboxPkgInfo,
205
- globalFlags, configFlags, configExFlags, installFlags ,
206
- haddockFlags)
207
+ args = (packageDBs, repos, comp, platform, conf, useSandbox,
208
+ mSandboxPkgInfo, globalFlags, setupWrapperFlags, configFlags ,
209
+ configExFlags, installFlags, haddockFlags)
207
210
208
211
die' message = die (message ++ if isUseSandbox useSandbox
209
212
then installFailedInSandbox else [] )
@@ -231,6 +234,7 @@ type InstallArgs = ( PackageDBStack
231
234
, UseSandbox
232
235
, Maybe SandboxPackageInfo
233
236
, GlobalFlags
237
+ , SetupWrapperFlags
234
238
, ConfigFlags
235
239
, ConfigExFlags
236
240
, InstallFlags
@@ -241,7 +245,7 @@ makeInstallContext :: Verbosity -> InstallArgs -> Maybe [UserTarget]
241
245
-> IO InstallContext
242
246
makeInstallContext verbosity
243
247
(packageDBs, repos, comp, _, conf,_,_,
244
- globalFlags, _, _, _, _) mUserTargets = do
248
+ globalFlags, _, _, _, _, _ ) mUserTargets = do
245
249
246
250
installedPkgIndex <- getInstalledPackages verbosity comp packageDBs conf
247
251
sourcePkgDb <- getSourcePackages verbosity repos
@@ -271,7 +275,7 @@ makeInstallPlan :: Verbosity -> InstallArgs -> InstallContext
271
275
-> IO (Progress String String InstallPlan )
272
276
makeInstallPlan verbosity
273
277
(_, _, comp, platform, _, _, mSandboxPkgInfo,
274
- _, configFlags, configExFlags, installFlags,
278
+ _, _, configFlags, configExFlags, installFlags,
275
279
_)
276
280
(installedPkgIndex, sourcePkgDb,
277
281
_, pkgSpecifiers) = do
@@ -288,7 +292,7 @@ processInstallPlan :: Verbosity -> InstallArgs -> InstallContext
288
292
-> InstallPlan
289
293
-> IO ()
290
294
processInstallPlan verbosity
291
- args@ (_,_, comp, _, _, _, _, _, _, _, installFlags, _)
295
+ args@ (_,_, comp, _, _, _, _, _, _, _, _, installFlags, _)
292
296
(installedPkgIndex, sourcePkgDb,
293
297
userTargets, pkgSpecifiers) installPlan = do
294
298
checkPrintPlan verbosity comp installedPkgIndex installPlan sourcePkgDb
@@ -654,7 +658,7 @@ printPlan dryRun verbosity plan sourcePkgDb = case plan of
654
658
-- 'postInstallActions', as (by definition) we don't have an install plan.
655
659
reportPlanningFailure :: Verbosity -> InstallArgs -> InstallContext -> String -> IO ()
656
660
reportPlanningFailure verbosity
657
- (_, _, comp, platform, _, _, _
661
+ (_, _, comp, platform, _, _, _, _
658
662
,_, configFlags, _, installFlags, _)
659
663
(_, sourcePkgDb, _, pkgSpecifiers)
660
664
message = do
@@ -730,7 +734,7 @@ postInstallActions :: Verbosity
730
734
-> IO ()
731
735
postInstallActions verbosity
732
736
(packageDBs, _, comp, platform, conf, useSandbox, mSandboxPkgInfo
733
- ,globalFlags, configFlags, _, installFlags, _)
737
+ ,globalFlags, _, configFlags, _, installFlags, _)
734
738
targets installPlan = do
735
739
736
740
unless oneShot $
@@ -966,7 +970,8 @@ performInstallations :: Verbosity
966
970
-> IO InstallPlan
967
971
performInstallations verbosity
968
972
(packageDBs, _, comp, _, conf, useSandbox, _,
969
- globalFlags, configFlags, configExFlags, installFlags, haddockFlags)
973
+ globalFlags, setupWrapperFlags, configFlags, configExFlags, installFlags,
974
+ haddockFlags)
970
975
installedPkgIndex installPlan = do
971
976
972
977
-- With 'install -j' it can be a bit hard to tell whether a sandbox is used.
@@ -1006,7 +1011,8 @@ performInstallations verbosity
1006
1011
distPref = fromFlagOrDefault (useDistPref defaultSetupScriptOptions)
1007
1012
(configDistPref configFlags)
1008
1013
1009
- setupScriptOptions index lock = SetupScriptOptions {
1014
+ setupScriptOptions index lock =
1015
+ updateSetupScriptOptions setupWrapperFlags $ defaultSetupScriptOptions {
1010
1016
useCabalVersion = chooseCabalVersion configExFlags
1011
1017
(libVersion miscOptions),
1012
1018
useCompiler = Just comp,
0 commit comments