Skip to content

Commit 62526dd

Browse files
committed
Revert "Add support for build --assume-deps-up-to-date flag, partial fix to haskell#2775 (haskell#3287)"
This reverts commit 85a76c9.
1 parent e79122c commit 62526dd

File tree

8 files changed

+1
-81
lines changed

8 files changed

+1
-81
lines changed

Cabal/Cabal.cabal

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,6 @@ extra-source-files:
107107
tests/PackageTests/BenchmarkOptions/BenchmarkOptions.cabal
108108
tests/PackageTests/BenchmarkOptions/test-BenchmarkOptions.hs
109109
tests/PackageTests/BenchmarkStanza/my.cabal
110-
tests/PackageTests/BuildAssumeDepsUpToDate/BuildAssumeDepsUpToDate.cabal
111110
tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/GlobalBuildDepsNotAdditive1.cabal
112111
tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/MyLibrary.hs
113112
tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/GlobalBuildDepsNotAdditive2.cabal

Cabal/Distribution/Simple/Build.hs

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -81,35 +81,7 @@ build :: PackageDescription -- ^ Mostly information from the .cabal file
8181
-> BuildFlags -- ^ Flags that the user passed to build
8282
-> [ PPSuffixHandler ] -- ^ preprocessors to run before compiling
8383
-> IO ()
84-
build pkg_descr lbi flags suffixes
85-
| fromFlag (buildAssumeDepsUpToDate flags) = do
86-
-- TODO: if checkBuildTargets ignores a target we may accept
87-
-- a --assume-deps-up-to-date with multiple arguments. Arguably, we should
88-
-- error early in this case.
89-
target <- readTargetInfos verbosity pkg_descr lbi (buildArgs flags) >>= \r -> case r of
90-
[] -> die "In --assume-deps-up-to-date mode you must specify a target"
91-
[target] -> return target
92-
_ -> die "In --assume-deps-up-to-date mode you can only build a single target"
93-
-- NB: do NOT 'createInternalPackageDB'; we don't want to delete it.
94-
-- But this means we have to be careful about unregistering
95-
-- ourselves.
96-
let dbPath = internalPackageDBPath lbi distPref
97-
internalPackageDB = SpecificPackageDB dbPath
98-
clbi = targetCLBI target
99-
comp = targetComponent target
100-
-- TODO: do we need to unregister libraries? In any case, this would
101-
-- need to be done in the buildLib functionality.
102-
-- Do the build
103-
initialBuildSteps distPref pkg_descr lbi clbi verbosity
104-
let bi = componentBuildInfo comp
105-
progs' = addInternalBuildTools pkg_descr lbi bi (withPrograms lbi)
106-
lbi' = lbi {
107-
withPrograms = progs',
108-
withPackageDB = withPackageDB lbi ++ [internalPackageDB]
109-
}
110-
buildComponent verbosity (buildNumJobs flags) pkg_descr
111-
lbi' suffixes comp clbi distPref
112-
| otherwise = do
84+
build pkg_descr lbi flags suffixes = do
11385
targets <- readTargetInfos verbosity pkg_descr lbi (buildArgs flags)
11486
let componentsToBuild = neededTargetsInBuildOrder' pkg_descr lbi (map nodeKey targets)
11587
info verbosity $ "Component build order: "

Cabal/Distribution/Simple/Setup.hs

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1598,9 +1598,6 @@ data BuildFlags = BuildFlags {
15981598
buildDistPref :: Flag FilePath,
15991599
buildVerbosity :: Flag Verbosity,
16001600
buildNumJobs :: Flag (Maybe Int),
1601-
-- | If this is true, we don't build the dependencies of
1602-
-- 'buildArgs': only the directly referenced components.
1603-
buildAssumeDepsUpToDate :: Flag Bool,
16041601
-- TODO: this one should not be here, it's just that the silly
16051602
-- UserHooks stop us from passing extra info in other ways
16061603
buildArgs :: [String]
@@ -1618,7 +1615,6 @@ defaultBuildFlags = BuildFlags {
16181615
buildDistPref = mempty,
16191616
buildVerbosity = Flag normal,
16201617
buildNumJobs = mempty,
1621-
buildAssumeDepsUpToDate = Flag False,
16221618
buildArgs = []
16231619
}
16241620

@@ -1666,11 +1662,6 @@ buildOptions :: ProgramDb -> ShowOrParseArgs
16661662
buildOptions progDb showOrParseArgs =
16671663
[ optionNumJobs
16681664
buildNumJobs (\v flags -> flags { buildNumJobs = v })
1669-
1670-
, option "" ["assume-deps-up-to-date"]
1671-
"One-shot build"
1672-
buildAssumeDepsUpToDate (\c flags -> flags { buildAssumeDepsUpToDate = c })
1673-
trueArg
16741665
]
16751666

16761667
++ programDbPaths progDb showOrParseArgs

Cabal/tests/PackageTests/BuildAssumeDepsUpToDate/.gitignore

Lines changed: 0 additions & 1 deletion
This file was deleted.

Cabal/tests/PackageTests/BuildAssumeDepsUpToDate/BuildAssumeDepsUpToDate.cabal

Lines changed: 0 additions & 21 deletions
This file was deleted.

Cabal/tests/PackageTests/BuildAssumeDepsUpToDate/myprog/.gitignore

Lines changed: 0 additions & 1 deletion
This file was deleted.

Cabal/tests/PackageTests/Tests.hs

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -526,24 +526,6 @@ tests config = do
526526
tc "Regression/T3847" $ do
527527
cabal "configure" ["--disable-tests"]
528528

529-
-- Test build --assume-deps-up-to-date
530-
mtc "BuildAssumeDepsUpToDate" $ \step -> do
531-
step "Initial build"
532-
pkg_dir <- packageDir
533-
liftIO $ writeFile (pkg_dir </> "A.hs") "module A where\na = \"a1\""
534-
liftIO $ writeFile (pkg_dir </> "myprog/Main.hs") "import A\nmain = print (a ++ \" b1\")"
535-
cabal_build []
536-
runExe' "myprog" []
537-
>>= assertOutputContains "a1 b1"
538-
539-
step "Rebuild executable only"
540-
ghcFileModDelay
541-
liftIO $ writeFile (pkg_dir </> "A.hs") "module A where\na = \"a2\""
542-
liftIO $ writeFile (pkg_dir </> "myprog/Main.hs") "import A\nmain = print (a ++ \" b2\")"
543-
cabal "build" ["--assume-deps-up-to-date", "myprog"]
544-
runExe' "myprog" []
545-
>>= assertOutputContains "a1 b2"
546-
547529
-- Test error message we report when a non-buildable target is
548530
-- requested to be built
549531
-- TODO: We can give a better error message here, see #3858.

cabal-install/Distribution/Client/ProjectPlanning.hs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2659,7 +2659,6 @@ setupHsBuildFlags _ _ verbosity builddir =
26592659
buildProgramArgs = mempty, --unused, set at configure time
26602660
buildVerbosity = toFlag verbosity,
26612661
buildDistPref = toFlag builddir,
2662-
buildAssumeDepsUpToDate = toFlag False,
26632662
buildNumJobs = mempty, --TODO: [nice to have] sometimes want to use toFlag (Just numBuildJobs),
26642663
buildArgs = mempty -- unused, passed via args not flags
26652664
}

0 commit comments

Comments
 (0)