Skip to content

Commit 3ce6944

Browse files
committed
Re #6540 Temporarily work around Cabal-3.11.0.0 in StackSetupShim.hs
1 parent 4bc0c6b commit 3ce6944

File tree

1 file changed

+49
-6
lines changed

1 file changed

+49
-6
lines changed

src/setup-shim/StackSetupShim.hs

Lines changed: 49 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,33 @@ module StackSetupShim where
44
import Main
55
#if defined(MIN_VERSION_Cabal)
66
#if MIN_VERSION_Cabal(3,8,1)
7-
import Distribution.PackageDescription (PackageDescription, emptyHookedBuildInfo)
7+
import Distribution.PackageDescription
8+
( PackageDescription, emptyHookedBuildInfo )
89
#else
9-
import "Cabal" Distribution.PackageDescription (PackageDescription, emptyHookedBuildInfo)
10+
import "Cabal" Distribution.PackageDescription
11+
( PackageDescription, emptyHookedBuildInfo )
1012
#endif
1113
#else
12-
import Distribution.PackageDescription (PackageDescription, emptyHookedBuildInfo)
14+
import Distribution.PackageDescription
15+
( PackageDescription, emptyHookedBuildInfo )
1316
#endif
1417
import Distribution.Simple
1518
import Distribution.Simple.Build
16-
import Distribution.Simple.Setup (ReplFlags, fromFlag, replDistPref, replVerbosity)
17-
import Distribution.Simple.LocalBuildInfo (LocalBuildInfo)
18-
import System.Environment (getArgs)
19+
import Distribution.Simple.Setup
20+
( ReplFlags, fromFlag, replDistPref, replVerbosity )
21+
import Distribution.Simple.LocalBuildInfo ( LocalBuildInfo )
22+
-- | Temporary, can be removed if initialBuildSteps restored to Cabal's API.
23+
#if defined(MIN_VERSION_Cabal)
24+
#if MIN_VERSION_Cabal(3,11,0)
25+
import Distribution.Simple.LocalBuildInfo
26+
( ComponentLocalBuildInfo, componentBuildDir
27+
, withAllComponentsInBuildOrder
28+
)
29+
import Distribution.Simple.Utils ( createDirectoryIfMissingVerbose )
30+
import Distribution.Verbosity ( Verbosity )
31+
#endif
32+
#endif
33+
import System.Environment ( getArgs )
1934

2035
mainOverride :: IO ()
2136
mainOverride = do
@@ -39,3 +54,31 @@ stackReplHook pkg_descr lbi hooks flags args = do
3954
| otherwise ->
4055
fail "Misuse of running Setup.hs with stack-initial-build-steps, expected no arguments"
4156
_ -> replHook simpleUserHooks pkg_descr lbi hooks flags args
57+
58+
-- | Temporary, can be removed if initialBuildSteps restored to Cabal's API.
59+
#if defined(MIN_VERSION_Cabal)
60+
#if MIN_VERSION_Cabal(3,11,0)
61+
-- | Runs 'componentInitialBuildSteps' on every configured component.
62+
initialBuildSteps ::
63+
FilePath -- ^"dist" prefix
64+
-> PackageDescription -- ^mostly information from the .cabal file
65+
-> LocalBuildInfo -- ^Configuration information
66+
-> Verbosity -- ^The verbosity to use
67+
-> IO ()
68+
initialBuildSteps distPref pkg_descr lbi verbosity =
69+
withAllComponentsInBuildOrder pkg_descr lbi $ \_comp clbi ->
70+
componentInitialBuildSteps distPref pkg_descr lbi clbi verbosity
71+
72+
-- | Creates the autogenerated files for a particular configured component.
73+
componentInitialBuildSteps ::
74+
FilePath -- ^"dist" prefix
75+
-> PackageDescription -- ^mostly information from the .cabal file
76+
-> LocalBuildInfo -- ^Configuration information
77+
-> ComponentLocalBuildInfo
78+
-> Verbosity -- ^The verbosity to use
79+
-> IO ()
80+
componentInitialBuildSteps _distPref pkg_descr lbi clbi verbosity = do
81+
createDirectoryIfMissingVerbose verbosity True (componentBuildDir lbi clbi)
82+
writeBuiltinAutogenFiles verbosity pkg_descr lbi clbi
83+
#endif
84+
#endif

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy