Opened 18 months ago

Closed 3 weeks ago

#8709 closed bug (worksforme)

`make 1` does not work (well)

Reported by: goldfire Owned by:
Priority: normal Milestone:
Component: Build System Version: 7.7
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Revisions:

Description

Say I do a sync-all pull and then fix a bunch of merge errors. The changes mean that I need to recompile the stage-1 compiler. So, I dutifully make distclean and start rebuilding. I then find a bunch of compiler errors in my edited code. Now, I'd like to start the fix error/recompile loop. BUT, when I do make 1 in the compiler/ directory, I get errors:

rae:13:49:29 ~/Documents/ghc/compiler> make 1
make -C .. stage=1 all_ghc_stage1 compiler_dist_NO_BUILD_DEPS=YES compiler_dist-boot_NO_BUILD_DEPS=YES compiler_dist-install_NO_BUILD_DEPS=YES NO_GENERATED_MAKEFILE_RULES=YES OMIT_PHASE_0=YES OMIT_PHASE_1=YES compiler_stage1_NO_BUILD_DEPS=YES compiler_stage2_NO_BUILD_DEPS=YES compiler_stage3_NO_BUILD_DEPS=YES ghc_stage1_NO_BUILD_DEPS=YES ghc_stage2_NO_BUILD_DEPS=YES ghc_stage3_NO_BUILD_DEPS=YES ONLY_DEPS_FOR="compiler_stage1 ghc_stage1"
===--- building final phase
make -r --no-print-directory -f ghc.mk phase=final all_ghc_stage1
libraries/old-time/ghc.mk:5: libraries/old-time/dist-install/package-data.mk: No such file or directory
libraries/haskell98/ghc.mk:5: libraries/haskell98/dist-install/package-data.mk: No such file or directory
libraries/haskell2010/ghc.mk:5: libraries/haskell2010/dist-install/package-data.mk: No such file or directory
libraries/random/ghc.mk:5: libraries/random/dist-install/package-data.mk: No such file or directory
libraries/primitive/ghc.mk:5: libraries/primitive/dist-install/package-data.mk: No such file or directory
libraries/vector/ghc.mk:5: libraries/vector/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-base/ghc.mk:5: libraries/dph/dph-base/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-prim-interface/ghc.mk:5: libraries/dph/dph-prim-interface/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-prim-seq/ghc.mk:5: libraries/dph/dph-prim-seq/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-prim-par/ghc.mk:5: libraries/dph/dph-prim-par/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-lifted-base/ghc.mk:5: libraries/dph/dph-lifted-base/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-lifted-boxed/ghc.mk:5: libraries/dph/dph-lifted-boxed/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-lifted-copy/ghc.mk:5: libraries/dph/dph-lifted-copy/dist-install/package-data.mk: No such file or directory
libraries/dph/dph-lifted-vseg/ghc.mk:5: libraries/dph/dph-lifted-vseg/dist-install/package-data.mk: No such file or directory
libraries/ghc-prim/ghc.mk:4: libraries/ghc-prim/dist-install/package-data.mk: No such file or directory
libraries/integer-gmp/ghc.mk:4: libraries/integer-gmp/dist-install/package-data.mk: No such file or directory
libraries/base/ghc.mk:4: libraries/base/dist-install/package-data.mk: No such file or directory
libraries/filepath/ghc.mk:4: libraries/filepath/dist-install/package-data.mk: No such file or directory
libraries/array/ghc.mk:4: libraries/array/dist-install/package-data.mk: No such file or directory
libraries/deepseq/ghc.mk:4: libraries/deepseq/dist-install/package-data.mk: No such file or directory
libraries/bytestring/ghc.mk:4: libraries/bytestring/dist-install/package-data.mk: No such file or directory
libraries/containers/ghc.mk:4: libraries/containers/dist-install/package-data.mk: No such file or directory
libraries/old-locale/ghc.mk:4: libraries/old-locale/dist-install/package-data.mk: No such file or directory
libraries/time/ghc.mk:4: libraries/time/dist-install/package-data.mk: No such file or directory
libraries/unix/ghc.mk:4: libraries/unix/dist-install/package-data.mk: No such file or directory
libraries/directory/ghc.mk:4: libraries/directory/dist-install/package-data.mk: No such file or directory
libraries/process/ghc.mk:4: libraries/process/dist-install/package-data.mk: No such file or directory
libraries/hpc/ghc.mk:4: libraries/hpc/dist-install/package-data.mk: No such file or directory
libraries/pretty/ghc.mk:4: libraries/pretty/dist-install/package-data.mk: No such file or directory
libraries/template-haskell/ghc.mk:4: libraries/template-haskell/dist-install/package-data.mk: No such file or directory
libraries/Cabal/Cabal/ghc.mk:4: libraries/Cabal/Cabal/dist-install/package-data.mk: No such file or directory
libraries/binary/ghc.mk:4: libraries/binary/dist-install/package-data.mk: No such file or directory
libraries/bin-package-db/ghc.mk:4: libraries/bin-package-db/dist-install/package-data.mk: No such file or directory
libraries/hoopl/ghc.mk:4: libraries/hoopl/dist-install/package-data.mk: No such file or directory
libraries/transformers/ghc.mk:4: libraries/transformers/dist-install/package-data.mk: No such file or directory
libraries/xhtml/ghc.mk:4: libraries/xhtml/dist-install/package-data.mk: No such file or directory
libraries/terminfo/ghc.mk:4: libraries/terminfo/dist-install/package-data.mk: No such file or directory
libraries/haskeline/ghc.mk:4: libraries/haskeline/dist-install/package-data.mk: No such file or directory
libraries/integer-gmp/gmp/ghc.mk:49: libraries/integer-gmp/gmp/config.mk: No such file or directory
utils/hsc2hs/ghc.mk:16: utils/hsc2hs/dist-install/package-data.mk: No such file or directory
utils/ghc-pkg/ghc.mk:66: utils/ghc-pkg/dist-install/package-data.mk: No such file or directory
utils/dll-split/ghc.mk:18: utils/dll-split/dist-install/package-data.mk: No such file or directory
utils/ghc-pwd/ghc.mk:8: utils/ghc-pwd/dist-install/package-data.mk: No such file or directory
utils/ghc-cabal/ghc.mk:67: utils/ghc-cabal/dist-install/package-data.mk: No such file or directory
utils/hpc/ghc.mk:18: utils/hpc/dist-install/package-data.mk: No such file or directory
utils/runghc/ghc.mk:28: utils/runghc/dist-install/package-data.mk: No such file or directory
utils/mkUserGuidePart/ghc.mk:18: utils/mkUserGuidePart/dist/package-data.mk: No such file or directory
utils/compare_sizes/ghc.mk:8: utils/compare_sizes/dist-install/package-data.mk: No such file or directory
make[2]: *** No rule to make target `libraries/integer-gmp/gmp/config.mk'.  Stop.
make[1]: *** [all_ghc_stage1] Error 2
make: *** [1] Error 2

Using make stage=1 works fine, but computing the dependencies each time is annoying. In past experience, I've seen that, once the stage-1 compiler builds to completion at least once, make 1 works just fine -- it just fails after a clean.

I don't recall having this problem with make 2.

Change History (2)

comment:1 Changed 18 months ago by goldfire

On a whim, I went to libraries/integer-gmp and said ./configure. Now make 1 is working! Yay! But, this shouldn't require my intervention...

comment:2 Changed 3 weeks ago by thomie

  • Resolution set to worksforme
  • Status changed from new to closed

I think this bug is fixed in 092082e7583c8170ae41ef8d01a554db34f91bb3. Or at least it won't give an error anymore when libraries/integer-gmp/gmp/config.mk can't be found.

--- a/libraries/integer-gmp/gmp/ghc.mk
+++ b/libraries/integer-gmp/gmp/ghc.mk
@@ -47,7 +47,10 @@ endif
 ifeq "$(phase)" "final"
 
 ifneq "$(CLEANING)" "YES"
-include libraries/integer-gmp/gmp/config.mk
+# Hack. The file gmp/config.mk doesn't exist yet after running ./configure in
+# the toplevel (ghc) directory. To let some toplevel make commands such as
+# sdist go through, right after ./configure, don't consider this an error.
+-include libraries/integer-gmp/gmp/config.mk
 endif

Those 'No such file or directory' lines are perfectly normal.

Please reopen if you're still having problems. Ideally with a way to reproduce.

Note: See TracTickets for help on using tickets.