Hadrian: Suddenly a full build fails with: Rules may not be recursive
Hi, Suddenly I'm unable to build! As usual, I did: git pull upstream master --recurse-submodules=yes git submodule update --init --recursive $ hadrian/build.sh clean Up to date | Removing Hadrian files... | Remove directory _build/stage0 | Remove directory _build/stage1 | Remove directory _build/stage2 | Remove directory _build/stage3 | Remove directory sdistprep | Remove directory _build (after build completes) | Done. ... + statistics $ hadrian/build.sh -c --flavour=devel2 -j2 Up to date | Running boot... Error when running Shake build system: at action, called at src/Rules.hs:68:19 in main:Rules at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) at need, called at src/Hadrian/Oracles/TextFile.hs:90:9 in main:Hadrian.Oracles.TextFile * Depends on: hadrian/cfg/system.config at &%>, called at src/Rules/Configure.hs:21:5 in main:Rules.Configure * Depends on: hadrian/cfg/system.config mk/config.h compiler/ghc.cabal rts/rts.cabal at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) * Raised the exception: Build system error - recursion detected: Key type: OracleQ KeyValue Key value: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) Rules may not be recursive OS is Linux Debian 9 (x86_64) Any ideas what's wrong?? Many thanks and kind regards Roland
The -c flag is broken. Run ./boot and ./configure manually and then it should work (without -c) Cheers, Matt On Fri, Jun 21, 2019 at 5:55 PM Roland Senn <rsx@bluewin.ch> wrote:
Hi,
Suddenly I'm unable to build! As usual, I did:
git pull upstream master --recurse-submodules=yes git submodule update --init --recursive
$ hadrian/build.sh clean Up to date | Removing Hadrian files... | Remove directory _build/stage0 | Remove directory _build/stage1 | Remove directory _build/stage2 | Remove directory _build/stage3 | Remove directory sdistprep | Remove directory _build (after build completes) | Done.
... + statistics
$ hadrian/build.sh -c --flavour=devel2 -j2 Up to date | Running boot... Error when running Shake build system: at action, called at src/Rules.hs:68:19 in main:Rules at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) at need, called at src/Hadrian/Oracles/TextFile.hs:90:9 in main:Hadrian.Oracles.TextFile * Depends on: hadrian/cfg/system.config at &%>, called at src/Rules/Configure.hs:21:5 in main:Rules.Configure * Depends on: hadrian/cfg/system.config mk/config.h compiler/ghc.cabal rts/rts.cabal at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) * Raised the exception: Build system error - recursion detected: Key type: OracleQ KeyValue Key value: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) Rules may not be recursive
OS is Linux Debian 9 (x86_64)
Any ideas what's wrong??
Many thanks and kind regards Roland _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
"-c" is a bad option that conflates configuration and build, and leads to this when certain kinds of configuration changes happen and alter the build rules that are already running. Stop using "-c" and reconfigure properly (./boot etc.). Yes, it's "convenient", right up until this happens. And eventually this *will* happen, because configuration should not be done via build rules. On Fri, Jun 21, 2019 at 12:55 PM Roland Senn <rsx@bluewin.ch> wrote:
Hi,
Suddenly I'm unable to build! As usual, I did:
git pull upstream master --recurse-submodules=yes git submodule update --init --recursive
$ hadrian/build.sh clean Up to date | Removing Hadrian files... | Remove directory _build/stage0 | Remove directory _build/stage1 | Remove directory _build/stage2 | Remove directory _build/stage3 | Remove directory sdistprep | Remove directory _build (after build completes) | Done.
... + statistics
$ hadrian/build.sh -c --flavour=devel2 -j2 Up to date | Running boot... Error when running Shake build system: at action, called at src/Rules.hs:68:19 in main:Rules at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) at need, called at src/Hadrian/Oracles/TextFile.hs:90:9 in main:Hadrian.Oracles.TextFile * Depends on: hadrian/cfg/system.config at &%>, called at src/Rules/Configure.hs:21:5 in main:Rules.Configure * Depends on: hadrian/cfg/system.config mk/config.h compiler/ghc.cabal rts/rts.cabal at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) * Raised the exception: Build system error - recursion detected: Key type: OracleQ KeyValue Key value: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) Rules may not be recursive
OS is Linux Debian 9 (x86_64)
Any ideas what's wrong??
Many thanks and kind regards Roland _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
-- brandon s allbery kf8nh allbery.b@gmail.com
I think this is because `--configure` is currently broken https://gitlab.haskell.org/ghc/ghc/issues/16809. You can work around by running bootstrap and configure manually for now. On Fri, Jun 21, 2019 at 12:55 PM Roland Senn <rsx@bluewin.ch> wrote:
Hi,
Suddenly I'm unable to build! As usual, I did:
git pull upstream master --recurse-submodules=yes git submodule update --init --recursive
$ hadrian/build.sh clean Up to date | Removing Hadrian files... | Remove directory _build/stage0 | Remove directory _build/stage1 | Remove directory _build/stage2 | Remove directory _build/stage3 | Remove directory sdistprep | Remove directory _build (after build completes) | Done.
... + statistics
$ hadrian/build.sh -c --flavour=devel2 -j2 Up to date | Running boot... Error when running Shake build system: at action, called at src/Rules.hs:68:19 in main:Rules at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) at need, called at src/Hadrian/Oracles/TextFile.hs:90:9 in main:Hadrian.Oracles.TextFile * Depends on: hadrian/cfg/system.config at &%>, called at src/Rules/Configure.hs:21:5 in main:Rules.Configure * Depends on: hadrian/cfg/system.config mk/config.h compiler/ghc.cabal rts/rts.cabal at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) * Raised the exception: Build system error - recursion detected: Key type: OracleQ KeyValue Key value: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) Rules may not be recursive
OS is Linux Debian 9 (x86_64)
Any ideas what's wrong??
Many thanks and kind regards Roland _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
-- *Shayne Fletcher* Language Engineer */* +1 917 699 7663 *Digital Asset* <https://digitalasset.com/>, creators of *DAML <https://daml.com/>* -- This message, and any attachments, is for the intended recipient(s) only, may contain information that is privileged, confidential and/or proprietary and subject to important terms and conditions available at http://www.digitalasset.com/emaildisclaimer.html <http://www.digitalasset.com/emaildisclaimer.html>. If you are not the intended recipient, please delete this message.
Sorry @Matthew Pickering <matthewtpickering@gmail.com>. Fired off my response before I saw yours! On Fri, Jun 21, 2019 at 1:55 PM Shayne Fletcher <shayne.fletcher@daml.com> wrote:
I think this is because `--configure` is currently broken https://gitlab.haskell.org/ghc/ghc/issues/16809. You can work around by running bootstrap and configure manually for now.
On Fri, Jun 21, 2019 at 12:55 PM Roland Senn <rsx@bluewin.ch> wrote:
Hi,
Suddenly I'm unable to build! As usual, I did:
git pull upstream master --recurse-submodules=yes git submodule update --init --recursive
$ hadrian/build.sh clean Up to date | Removing Hadrian files... | Remove directory _build/stage0 | Remove directory _build/stage1 | Remove directory _build/stage2 | Remove directory _build/stage3 | Remove directory sdistprep | Remove directory _build (after build completes) | Done.
... + statistics
$ hadrian/build.sh -c --flavour=devel2 -j2 Up to date | Running boot... Error when running Shake build system: at action, called at src/Rules.hs:68:19 in main:Rules at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) at need, called at src/Hadrian/Oracles/TextFile.hs:90:9 in main:Hadrian.Oracles.TextFile * Depends on: hadrian/cfg/system.config at &%>, called at src/Rules/Configure.hs:21:5 in main:Rules.Configure * Depends on: hadrian/cfg/system.config mk/config.h compiler/ghc.cabal rts/rts.cabal at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.2- fca156899176fbf7a9b05f30b3ec991784b3e60af38a503ea1cb277fd96f971e:Develo pment.Shake.Internal.Rules.Oracle * Depends on: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) * Raised the exception: Build system error - recursion detected: Key type: OracleQ KeyValue Key value: OracleQ (KeyValue ("hadrian/cfg/system.config","host- os")) Rules may not be recursive
OS is Linux Debian 9 (x86_64)
Any ideas what's wrong??
Many thanks and kind regards Roland _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
-- *Shayne Fletcher* Language Engineer */* +1 917 699 7663 *Digital Asset* <https://digitalasset.com/>, creators of *DAML <https://daml.com/>*
-- *Shayne Fletcher* Language Engineer */* +1 917 699 7663 *Digital Asset* <https://digitalasset.com/>, creators of *DAML <https://daml.com/>* -- This message, and any attachments, is for the intended recipient(s) only, may contain information that is privileged, confidential and/or proprietary and subject to important terms and conditions available at http://www.digitalasset.com/emaildisclaimer.html <http://www.digitalasset.com/emaildisclaimer.html>. If you are not the intended recipient, please delete this message.
participants (4)
-
Brandon Allbery -
Matthew Pickering -
Roland Senn -
Shayne Fletcher