> On Mar 14, 2021, at 6:53 PM, Simon Peyton Jones via ghc-devs 
> <ghc-devs@haskell.org> wrote:
> 
> I’m getting this (with ‘sh validate –legacy’).  Oddly
> 
>       • It does not happen on HEAD
>       • It does happen on wip/T19495, a tiny patch with one innocuous change 
> to GHC.Tc.Gen.HsType
> I can’t see how my patch could possible cause “missing files” in ghc-bignum!
> 
> I’m guessing that there is a missing dependency that someone doesn’t show up 
> in master, but does in my branch, randomly.
> 
> There’s something funny about ghc-bignum; it doesn’t seem to be a regular 
> library
> 
> Can anyone help?

I managed to reproduce the issue on my machine, and noticed that after:

 $ cd libraries/ghc-bignum/
 $ gmake
 $ cd ../..
 $ ./validate --legacy --no-clean

the build continues OK.  So it looks like the legacy parallel build
has a missing dependency on the completion of the build of
libraries/ghc-bignum at the point when it is trying to run:

  $ "inplace/bin/ghc-stage1" -v1 \
    -hisuf hi  \
    -osuf o  \
    -hcsuf hc  \
    -static -O0 -H64m -Wall -fllvm-fill-undef-with-garbage -Werror  \
    -this-unit-id base-4.16.0.0  \
    -hide-all-packages -package-env - -i \
    -ilibraries/base/. \
    -ilibraries/base/dist-install/build \
    -Ilibraries/base/dist-install/build  \
    -ilibraries/base/dist-install/build/./autogen \
    -Ilibraries/base/dist-install/build/./autogen  \
    -Ilibraries/base/include \
    -Ilibraries/base/dist-install/build/include \
    -optP-include  \
    -optPlibraries/base/dist-install/build/./autogen/cabal_macros.h  \
    -package-id ghc-bignum-1.0  \
    -package-id ghc-prim-0.8.0  \
    -package-id rts  \
    -this-unit-id base  \
    -Wcompat -Wnoncanonical-monad-instances  \
    -XHaskell2010 -O  \
    -dcore-lint -dno-debug-output  \
    -no-user-package-db  \
    -rtsopts  \
    -Wno-trustworthy-safe -Wno-deprecated-flags -Wnoncanonical-monad-instances  
\
    -outputdirlibraries/base/dist-install/build  \
    -dynamic-too  \
    -c libraries/base/./GHC/Exception/Type.hs-boot  \
    -o libraries/base/dist-install/build/GHC/Exception/Type.o-boot  \
    -dyno libraries/base/dist-install/build/GHC/Exception/Type.dyn_o-boot

My best guess is that the problem command fires via
libraries/base/dist-install/package-data.mk which
is created by cabal, and things get rather complicated
from there...

-- 
        Viktor.

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to