Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

haskell.compiler.ghc8{22,41}: Fix abi-depends non-determinism. #37869

Merged

Conversation

shlevy
Copy link
Member

@shlevy shlevy commented Mar 26, 2018

See haskell/cabal#4728 for symptoms,
https://phabricator.haskell.org/D4159 for the base of the fix.

(cherry picked from commit 59a53aa)

@shlevy
Copy link
Member Author

shlevy commented Mar 26, 2018

Backport of #37867

@shlevy
Copy link
Member Author

shlevy commented Mar 26, 2018

@GrahamcOfBorg eval

@shlevy
Copy link
Member Author

shlevy commented Mar 26, 2018

@GrahamcOfBorg build haskell.compilers.ghc822 haskell.compilers.ghc841

@GrahamcOfBorg
Copy link

No attempt on aarch64-linux (full log)

The following builds were skipped because they don't evaluate on aarch64-linux: haskell.compilers.ghc822, haskell.compilers.ghc841

Partial log (click to expand)

Cannot nix-instantiate `haskell.compilers.ghc822' because:
�[31;1merror:�[0m attribute 'compilers' in selection path 'haskell.compilers.ghc822' not found

Cannot nix-instantiate `haskell.compilers.ghc841' because:
�[31;1merror:�[0m attribute 'compilers' in selection path 'haskell.compilers.ghc841' not found

@GrahamcOfBorg
Copy link

No attempt on x86_64-linux (full log)

The following builds were skipped because they don't evaluate on x86_64-linux: haskell.compilers.ghc822, haskell.compilers.ghc841

Partial log (click to expand)

Cannot nix-instantiate `haskell.compilers.ghc822' because:
error: attribute 'compilers' in selection path 'haskell.compilers.ghc822' not found

Cannot nix-instantiate `haskell.compilers.ghc841' because:
error: attribute 'compilers' in selection path 'haskell.compilers.ghc841' not found

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: haskell.compilers.ghc822, haskell.compilers.ghc841

Partial log (click to expand)

Cannot nix-instantiate `haskell.compilers.ghc822' because:
�[31;1merror:�[0m attribute 'compilers' in selection path 'haskell.compilers.ghc822' not found

Cannot nix-instantiate `haskell.compilers.ghc841' because:
�[31;1merror:�[0m attribute 'compilers' in selection path 'haskell.compilers.ghc841' not found

@shlevy
Copy link
Member Author

shlevy commented Mar 26, 2018

@GrahamcOfBorg build haskell.compiler.ghc822 haskell.compiler.ghc841

@GrahamcOfBorg
Copy link

No attempt on aarch64-linux (full log)

The following builds were skipped because they don't evaluate on aarch64-linux: haskell.compiler.ghc822, haskell.compiler.ghc841

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowBroken = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: haskell.compiler.ghc822, haskell.compiler.ghc841

Partial log (click to expand)

<<ghc: 221928888 bytes, 73 GCs, 8056275/15799824 avg/max bytes residency (5 samples), 36M in use, 0.002 INIT (0.010 elapsed), 0.675 MUT (1.134 elapsed), 0.451 GC (0.512 elapsed) :ghc>>
"/nix/store/csdjlpwvcr5lzs3x7ri1dycdim2v9sw3-ghc-8.2.1-binary/bin/ghc" -hisuf hi -osuf  o -hcsuf hc -static  -H32m -O -Wall   -package-db libraries/bootstrapping.conf  -this-unit-id mtl-2.2.2 -hide-all-packages -i -ilibraries/mtl/. -ilibraries/mtl/dist-boot/build -Ilibraries/mtl/dist-boot/build -ilibraries/mtl/dist-boot/build/./autogen -Ilibraries/mtl/dist-boot/build/./autogen -Ilibraries/mtl/.    -optP-include -optPlibraries/mtl/dist-boot/build/./autogen/cabal_macros.h -package-id base-4.10.0.0 -package-id transformers-0.5.5.0 -Wall -fno-warn-unused-imports -fno-warn-warnings-deprecations -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances -XHaskell2010   -no-user-package-db -rtsopts  -fno-warn-deprecated-flags      -odir libraries/mtl/dist-boot/build -hidir libraries/mtl/dist-boot/build -stubdir libraries/mtl/dist-boot/build    -c libraries/mtl/./Control/Monad/RWS/Strict.hs -o libraries/mtl/dist-boot/build/Control/Monad/RWS/Strict.o
"rm" -f libraries/transformers/dist-boot/build/libHStransformers-0.5.5.0.a.contents
"/nix/store/csdjlpwvcr5lzs3x7ri1dycdim2v9sw3-ghc-8.2.1-binary/bin/ghc" -hisuf hi -osuf  o -hcsuf hc -static  -H32m -O -Wall   -package-db libraries/bootstrapping.conf  -this-unit-id mtl-2.2.2 -hide-all-packages -i -ilibraries/mtl/. -ilibraries/mtl/dist-boot/build -Ilibraries/mtl/dist-boot/build -ilibraries/mtl/dist-boot/build/./autogen -Ilibraries/mtl/dist-boot/build/./autogen -Ilibraries/mtl/.    -optP-include -optPlibraries/mtl/dist-boot/build/./autogen/cabal_macros.h -package-id base-4.10.0.0 -package-id transformers-0.5.5.0 -Wall -fno-warn-unused-imports -fno-warn-warnings-deprecations -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances -XHaskell2010   -no-user-package-db -rtsopts  -fno-warn-deprecated-flags      -odir libraries/mtl/dist-boot/build -hidir libraries/mtl/dist-boot/build -stubdir libraries/mtl/dist-boot/build    -c libraries/mtl/./Control/Monad/State.hs -o libraries/mtl/dist-boot/build/Control/Monad/State.o
"/nix/store/csdjlpwvcr5lzs3x7ri1dycdim2v9sw3-ghc-8.2.1-binary/bin/ghc" -hisuf hi -osuf  o -hcsuf hc -static  -H32m -O -Wall   -package-db libraries/bootstrapping.conf  -this-unit-id mtl-2.2.2 -hide-all-packages -i -ilibraries/mtl/. -ilibraries/mtl/dist-boot/build -Ilibraries/mtl/dist-boot/build -ilibraries/mtl/dist-boot/build/./autogen -Ilibraries/mtl/dist-boot/build/./autogen -Ilibraries/mtl/.    -optP-include -optPlibraries/mtl/dist-boot/build/./autogen/cabal_macros.h -package-id base-4.10.0.0 -package-id transformers-0.5.5.0 -Wall -fno-warn-unused-imports -fno-warn-warnings-deprecations -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances -XHaskell2010   -no-user-package-db -rtsopts  -fno-warn-deprecated-flags      -odir libraries/mtl/dist-boot/build -hidir libraries/mtl/dist-boot/build -stubdir libraries/mtl/dist-boot/build    -c libraries/mtl/./Control/Monad/Writer.hs -o libraries/mtl/dist-boot/build/Control/Monad/Writer.o
building of '/nix/store/3iw7qlscrvcx3rwcq2vjr428k9967a06-ghc-8.2.2.drv' timed out after 1800 seconds
"/nix/store/csdjlpwvcr5lzs3x7ri1dycdim2v9sw3-ghc-8.2.1-binary/bin/ghc" -hisuf hi -osuf  o -hcsuf hc -static  -H32m -O -Wall  -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header -Iincludes/dist-ghcconstants/header -package-db libraries/bootstrapping.conf  -this-unit-id ghc-8.4.1 -hide-all-packages -i -icompiler/backpack -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen -icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename -icompiler/simplCore -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/vectorise -icompiler/stage1/build -Icompiler/stage1/build -icompiler/stage1/build/./autogen -Icompiler/stage1/build/./autogen -Icompiler/. -Icompiler/parser -Icompiler/utils -Icompiler/stage1 -Icompiler/stage1/build/. -Icompiler/stage1/build/parser -Icompiler/stage1/build/utils -Icompiler/stage1/build/stage1    -optP-include -optPcompiler/stage1/build/./autogen/cabal_macros.h -package-id base-4.10.0.0 -package-id deepseq-1.4.3.0 -package-id directory-1.3.0.2 -package-id process-1.6.1.0 -package-id bytestring-0.10.8.2 -package-id binary-0.8.5.1 -package-id time-1.8.0.2 -package-id containers-0.5.10.2 -package-id array-0.5.2.0 -package-id filepath-1.4.1.2 -package-id template-haskell-2.13.0.0 -package-id hpc-0.6.0.3 -package-id transformers-0.5.5.0 -package-id ghc-boot-8.4.1 -package-id ghc-boot-th-8.4.1 -package-id ghci-8.4.1 -package-id unix-2.7.2.2 -package-id terminfo-0.4.1.1 -Wall -Wno-name-shadowing -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances -Wnoncanonical-monoid-instances -this-unit-id ghc -XHaskell2010 -XNoImplicitPrelude -DSTAGE=1 -Rghc-timing  -Wcpp-undef  -no-user-package-db -rtsopts        -odir compiler/stage1/build -hidir compiler/stage1/build -stubdir compiler/stage1/build    -c compiler/utils/MonadUtils.hs -o compiler/stage1/build/MonadUtils.o
"/nix/store/csdjlpwvcr5lzs3x7ri1dycdim2v9sw3-ghc-8.2.1-binary/bin/ghc" -hisuf hi -osuf  o -hcsuf hc -static  -H32m -O -Wall   -package-db libraries/bootstrapping.conf  -this-unit-id text-1.2.3.0 -hide-all-packages -i -ilibraries/text/. -ilibraries/text/dist-boot/build -Ilibraries/text/dist-boot/build -ilibraries/text/dist-boot/build/./autogen -Ilibraries/text/dist-boot/build/./autogen -Ilibraries/text/include -Ilibraries/text/dist-boot/build/include   -optP-DHAVE_DEEPSEQ -optP-DINTEGER_GMP -optP-include -optPlibraries/text/dist-boot/build/./autogen/cabal_macros.h -package-id array-0.5.2.0 -package-id base-4.10.0.0 -package-id binary-0.8.5.1 -package-id deepseq-1.4.3.0 -package-id ghc-prim-0.5.1.0 -package-id bytestring-0.10.8.2 -package-id integer-gmp-1.0.1.0 -Wall -fwarn-tabs -funbox-strict-fields -O2 -XHaskell98   -no-user-package-db -rtsopts  -fno-warn-deprecated-flags      -odir libraries/text/dist-boot/build -hidir libraries/text/dist-boot/build -stubdir libraries/text/dist-boot/build    -c libraries/text/./Data/Text/Internal/Encoding/Utf8.hs -o libraries/text/dist-boot/build/Data/Text/Internal/Encoding/Utf8.o
building of '/nix/store/56dqyfwr73ghp4m9l4lpgiwxvgv9jpbn-ghc-8.4.1.drv' timed out after 1800 seconds
�[31;1merror:�[0m build of '/nix/store/3iw7qlscrvcx3rwcq2vjr428k9967a06-ghc-8.2.2.drv', '/nix/store/56dqyfwr73ghp4m9l4lpgiwxvgv9jpbn-ghc-8.4.1.drv' failed

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: haskell.compiler.ghc822, haskell.compiler.ghc841

Partial log (click to expand)

wrong ELF type
wrong ELF type
shrinking RPATHs of ELF executables and libraries in /nix/store/1276awbma8yfjawl1506s1vw6q5658z0-ghc-8.4.1-doc
/nix/store/b0zlxla7dmy1iwc3g459rjznx59797xy-binutils-2.28.1/bin/strip is /nix/store/b0zlxla7dmy1iwc3g459rjznx59797xy-binutils-2.28.1/bin/strip
strip is /nix/store/b0zlxla7dmy1iwc3g459rjznx59797xy-binutils-2.28.1/bin/strip
patching script interpreter paths in /nix/store/1276awbma8yfjawl1506s1vw6q5658z0-ghc-8.4.1-doc
/nix/store/1276awbma8yfjawl1506s1vw6q5658z0-ghc-8.4.1-doc/share/doc/ghc/html/libraries/gen_contents_index: interpreter directive changed from "/bin/sh" to "/nix/store/zqh3l3lyw32q1ayb15bnvg9f24j5v2p0-bash-4.4-p12/bin/sh"
checking for references to /tmp/nix-build-ghc-8.4.1.drv-0 in /nix/store/1276awbma8yfjawl1506s1vw6q5658z0-ghc-8.4.1-doc...
/nix/store/8287ydpsag7axrixqy5pj4fnsxlv00d6-ghc-8.2.2
/nix/store/w621610zpa0db151lradnnkp0avcbi7z-ghc-8.4.1

@shlevy shlevy merged commit ae174ee into NixOS:staging-18.03 Mar 26, 2018
@shlevy shlevy deleted the ghc-abi-depends-determinism-18.03 branch March 26, 2018 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants