@@ -57,6 +57,13 @@ usesGMP flags =
5757 Just False -> False
5858 Nothing -> True
5959
60+execOnly :: S.ConfigFlags -> Bool
61+execOnly flags =
62+ case lookup (FlagName "execonly") (S.configConfigurationsFlags flags) of
63+ Just True -> True
64+ Just False -> False
65+ Nothing -> True
66+
6067isRelease :: S.ConfigFlags -> Bool
6168isRelease flags =
6269 case lookup (FlagName "release") (S.configConfigurationsFlags flags) of
@@ -176,7 +183,7 @@ getVersion args flags = do
176183 let buildinfo = (emptyBuildInfo { cppOptions = ["-DVERSION="++hash] }) :: BuildInfo
177184 return (Just buildinfo, [])
178185
179−idrisBuild _ flags _ local = do
186+idrisBuild _ flags _ local = unless (execOnly (configFlags local)) $ do
180187 buildStdLib
181188 buildRTS
182189 where
@@ -199,7 +206,7 @@ idrisBuild _ flags _ local = do
199206-- -----------------------------------------------------------------------------
200207-- Copy/Install
201208
202−idrisInstall verbosity copy pkg local = do
209+idrisInstall verbosity copy pkg local = unless (execOnly (configFlags local)) $ do
203210 installStdLib
204211 installRTS
205212 where