Haddock build failure with default build scenario
I understand it may currently be off-topic to the development conducted in this branch to deal with its implications on the outer layers of the Haskell infrastructure, but here it is, for what it's worth -- an attempt to build nokinds in NixOS the same way ghcHEAD (NixOS way of calling 7.11) is built:
for dir in compiler/stage2/build/./ compiler/stage2/build/CodeGen/ compiler/stage2/build/CodeGen/Platform/ compiler/stage2/build/Dwarf/ compiler/stage2/build/Hoopl/ compiler/stage2/build/Llvm/ compiler/stage2/build/LlvmCodeGen/ compiler/stage2/build/PPC/ compiler/stage2/build/RegAlloc/ compiler/stage2/build/RegAlloc/Graph/ compiler/stage2/build/RegAlloc/Linear/ compiler/stage2/build/RegAlloc/Linear/PPC/ compiler/stage2/build/RegAlloc/Linear/SPARC/ compiler/stage2/build/RegAlloc/Linear/X86/ compiler/stage2/build/RegAlloc/Linear/X86_64/ compiler/stage2/build/SPARC/ compiler/stage2/build/SPARC/CodeGen/ compiler/stage2/build/Vectorise/ compiler/stage2/build/Vectorise/Builtins/ compiler/stage2/build/Vectorise/Generic/ compiler/stage2/build/Vectorise/Monad/ compiler/stage2/build/Vectorise/Type/ compiler/stage2/build/Vectorise/Utils/ compiler/stage2/build/X86/; do if test ! -d $dir; then mkdir -p $dir; fi done
grep -v ' : [a-zA-Z]:/' compiler/stage2/build/.depend-v-p-dyn.haskell.tmp > compiler/stage2/build/.depend-v-p-dyn.haskell.tmp2
sed -e '/hs$/ p' -e '/hs$/ s/o /hi /g' -e '/hs$/ s/:/ : %hi: %o /' -e '/hs$/ s/^/$(eval $(call hi-rule,/' -e '/hs$/ s/$/))/' -e '/hs-boot$/ p' -e '/hs-boot$/ s/o-boot /hi-boot /g' -e '/hs-boot$/ s/:/ : %hi-boot: %o-boot /' -e '/hs-boot$/ s/^/$(eval $(call hi-rule,/' -e '/hs-boot$/ s/$/))/' compiler/stage2/build/.depend-v-p-dyn.haskell.tmp2 > compiler/stage2/build/.depend-v-p-dyn.haskell
"rm" -f utils/haddock/dist/build/.depend.c_asm.tmp
"rm" -f utils/haddock/dist/build/.depend.c_asm.bit
echo "utils/haddock_dist_depfile_c_asm_EXISTS = YES" >> utils/haddock/dist/build/.depend.c_asm.tmp
mv utils/haddock/dist/build/.depend.c_asm.tmp utils/haddock/dist/build/.depend.c_asm
"rm" -f utils/haddock/dist/build/.depend.haskell.tmp
"inplace/bin/ghc-stage1" -M -fPIC -dynamic -H32m -O -hide-all-packages -i -iutils/haddock/driver -iutils/haddock/haddock-api/src -iutils/haddock/haddock-library/vendor/attoparsec-0.12.1.1 -iutils/haddock/haddock-library/src -iutils/haddock/dist/build -iutils/haddock/dist/build/autogen -Iutils/haddock/dist/build -Iutils/haddock/dist/build/autogen -optP-DIN_GHC_TREE -optP-include -optPutils/haddock/dist/build/autogen/cabal_macros.h -package-key Cabal_KBxpVvZtbPfK7IcdCrPeJM -package-key array_3w0nMK0JfaFJPpLFn2yWAJ -package-key base_469rOtLAqwTGFEOGWxSUiQ -package-key bytes_GyKPtAP9tDU8R3kplaOsGL -package-key conta_LC4pLE3kBzGKpeTiXrfSYW -package-key deeps_FT5iVCELxOr62eHY0nbvnU -package-key direc_3m6Ew9I164U5MIkATLCdb8 -package-key filep_1vDJvPDP7mkAk0dVCj6gws -package-key ghc_4BtOQWP7uHh40G8f7XWh7L -package-key trans_H9c1w14lEUN3zdWCTsn8jG -package-key xhtml_JSY59QH8ToA9C7GZSnEqlk -funbox-strict-fields -Wall -fwarn-tabs -O2 -XHaskell2010 -no-user-package-db -rtsopts -odir utils/haddock/dist/build -hidir utils/haddock/dist/build -stubdir utils/haddock/dist/build -dep-makefile utils/haddock/dist/build/.depend.haskell.tmp -dep-suffix "dyn_" -include-pkg-deps utils/haddock/driver/Main.hs utils/haddock/haddock-library/src/Documentation/Haddock/Parser.hs utils/haddock/haddock-library/src/Documentation/Haddock/Parser/Monad.hs utils/haddock/haddock-library/src/Documentation/Haddock/Types.hs utils/haddock/haddock-library/src/Documentation/Haddock/Doc.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/ByteString.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/ByteString/Buffer.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/ByteString/Char8.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/ByteString/FastSet.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/ByteString/Internal.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/Combinator.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/Internal.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/Internal/Fhthagn.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/Internal/Types.hs utils/haddock/haddock-library/vendor/attoparsec-0.12.1.1/Data/Attoparsec/Number.hs utils/haddock/haddock-library/src/Documentation/Haddock/Utf8.hs utils/haddock/haddock-library/src/Documentation/Haddock/Parser/Util.hs utils/haddock/haddock-api/src/Documentation/Haddock.hs utils/haddock/haddock-api/src/Haddock.hs utils/haddock/haddock-api/src/Haddock/Interface.hs utils/haddock/haddock-api/src/Haddock/Interface/Rename.hs utils/haddock/haddock-api/src/Haddock/Interface/Create.hs utils/haddock/haddock-api/src/Haddock/Interface/AttachInstances.hs utils/haddock/haddock-api/src/Haddock/Interface/LexParseRn.hs utils/haddock/haddock-api/src/Haddock/Interface/ParseModuleHeader.hs utils/haddock/haddock-api/src/Haddock/Parser.hs utils/haddock/haddock-api/src/Haddock/Utils.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/Decl.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/DocMarkup.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/Names.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/Themes.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/Types.hs utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/Utils.hs utils/haddock/haddock-api/src/Haddock/Backends/LaTeX.hs utils/haddock/haddock-api/src/Haddock/Backends/HaddockDB.hs utils/haddock/haddock-api/src/Haddock/Backends/Hoogle.hs utils/haddock/haddock-api/src/Haddock/ModuleTree.hs utils/haddock/haddock-api/src/Haddock/Types.hs utils/haddock/haddock-api/src/Haddock/Doc.hs utils/haddock/haddock-api/src/Haddock/Version.hs utils/haddock/haddock-api/src/Haddock/InterfaceFile.hs utils/haddock/haddock-api/src/Haddock/Options.hs utils/haddock/haddock-api/src/Haddock/GhcUtils.hs utils/haddock/haddock-api/src/Haddock/Convert.hs
utils/haddock/haddock-api/src/Haddock/Interface/AttachInstances.hs:44:8:
Could not find module `TypeRep'
Perhaps you meant TyCoRep (from ghc-7.11.20150703)
Use -v to see a list of the files searched for.
utils/haddock/ghc.mk:21: recipe for target 'utils/haddock/dist/build/.depend.haskell' failed
make[1]: *** [utils/haddock/dist/build/.depend.haskell] Error 1
Makefile:71: recipe for target 'all' failed
make: *** [all] Error 2
builder for ‘/nix/store/jhlx2jvnkypyj80v4shs4490x6lxw4rh-ghc-7.11.20150703.drv’ failed with exit code 2
error: build of ‘/nix/store/jhlx2jvnkypyj80v4shs4490x6lxw4rh-ghc-7.11.20150703.drv’ failed
I am not surprised about this failure. Haddock is tied in pretty intimately with GHC and I have not made a single update to Haddock yet. My belief is that, when I'm all done, updating Haddock will be a matter of simple refactoring to get names & types correct, but I'll leave this open as a reminder to look at its output, as well. It would be embarrassing to merge with master only to have Haddock output garbage.