[GHC] #8102: Parallel build of HEAD consistently fails

#8102: Parallel build of HEAD consistently fails ------------------------------------+------------------------------------- Reporter: edsko | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 7.7 Keywords: | Operating System: Unknown/Multiple Architecture: Unknown/Multiple | Type of failure: None/Unknown Difficulty: Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | ------------------------------------+------------------------------------- A parallel build (with make -j2 or higher) consistently fails for me at {{{ libtool: link: ln mpn/remove.o .libs/libgmp.lax/lt104-remove.o || cp mpn/remove.o .libs/libgmp.lax/lt104-remove.o libtool: link: /usr/bin/ar cq .libs/libgmp.a assert.o compat.o errno.o extract-dbl.o invalid.o memory.o mp_bpl.o mp_clz_tab.o mp_dv_tab.o mp_minv_tab.o mp_get_fns.o mp_set_fns.o rand.o randclr.o randdef.o randiset.o randlc2s.o randlc2x.o randmt.o randmts.o rands.o randsd.o randsdui.o randbui.o randmui.o version.o nextprime.o tal-reent.o mpf/init.o mpf/init2.o mpf/inits.o mpf/set.o mpf/set_ui.o mpf/set_si.o mpf/set_str.o mpf/set_d.o mpf/set_z.o mpf/iset.o mpf/iset_ui.o mpf/iset_si.o mpf/iset_str.o mpf/iset_d.o mpf/clear.o mpf/clears.o mpf/get_str.o mpf/dump.o mpf/size.o mpf/eq.o mpf/reldiff.o mpf/sqrt.o mpf/random2.o mpf/inp_str.o mpf/out_str.o mpf/add.o mpf/add_ui.o mpf/sub.o mpf/sub_ui.o mpf/ui_sub.o mpf/mul.o mpf/mul_ui.o mpf/div.o mpf/div_ui.o mpf/cmp.o mpf/cmp_d.o mpf/cmp_ui.o mpf/cmp_si.o mpf/mul_2exp.o mpf/div_2exp.o mpf/abs.o mpf/neg.o mpf/set_q.o mpf/get_d.o mpf/get_d_2exp.o mpf/set_dfl_prec.o mpf/set_prc.o mpf/set_prc_raw.o mpf/get_dfl_prec.o mpf/get_prc.o mpf/ui_div.o mpf/sqrt_ui.o mpf/ceilfloor.o mpf/trunc.o mpf/pow_ui.o mpf/urandomb.o mpf/swap.o mpf/fits_sint.o mpf/fits_slong.o mpf/fits_sshort.o mpf/fits_uint.o mpf/fits_ulong.o mpf/fits_ushort.o mpf/get_si.o mpf/get_ui.o mpf/int_p.o .libs/libgmp.lax/lt1-abs.o .libs/libgmp.lax/lt2-add.o .libs/libgmp.lax/lt3-add_ui.o mpz/aorsmul.o mpz/aorsmul_i.o mpz/and.o mpz/array_init.o mpz/bin_ui.o mpz/bin_uiui.o mpz/cdiv_q.o mpz/cdiv_q_ui.o mpz/cdiv_qr.o mpz/cdiv_qr_ui.o mpz/cdiv_r.o mpz/cdiv_r_ui.o mpz/cdiv_ui.o mpz/cfdiv_q_2exp.o mpz/cfdiv_r_2exp.o .libs/libgmp.lax/lt4-clear.o .libs/libgmp.lax/lt5-clears.o mpz/clrbit.o .libs/libgmp.lax/lt6-cmp.o .libs/libgmp.lax/lt7-cmp_d.o .libs/libgmp.lax/lt8-cmp_si.o .libs/libgmp.lax/lt9-cmp_ui.o mpz/cmpabs.o mpz/cmpabs_d.o mpz/cmpabs_ui.o mpz/com.o mpz/combit.o mpz/cong.o mpz/cong_2exp.o mpz/cong_ui.o mpz/divexact.o mpz/divegcd.o mpz/dive_ui.o mpz/divis.o mpz/divis_ui.o mpz/divis_2exp.o .libs/libgmp.lax/lt10-dump.o mpz/export.o mpz/fac_ui.o mpz/fdiv_q.o mpz/fdiv_q_ui.o mpz/fdiv_qr.o mpz/fdiv_qr_ui.o mpz/fdiv_r.o mpz/fdiv_r_ui.o mpz/fdiv_ui.o mpz/fib_ui.o mpz/fib2_ui.o .libs/libgmp.lax/lt11-fits_sint.o .libs/libgmp.lax/lt12-fits_slong.o .libs/libgmp.lax/lt13-fits_sshort.o .libs/libgmp.lax/lt14-fits_uint.o .libs/libgmp.lax/lt15-fits_ulong.o .libs/libgmp.lax/lt16-fits_ushort.o mpz/gcd.o mpz/gcd_ui.o mpz/gcdext.o .libs/libgmp.lax/lt17-get_d.o .libs/libgmp.lax/lt18-get_d_2exp.o .libs/libgmp.lax/lt19-get_si.o .libs/libgmp.lax/lt20-get_str.o .libs/libgmp.lax/lt21-get_ui.o mpz/getlimbn.o mpz/hamdist.o mpz/import.o .libs/libgmp.lax/lt22-init.o .libs/libgmp.lax/lt23-init2.o .libs/libgmp.lax/lt24-inits.o mpz/inp_raw.o .libs/libgmp.lax/lt25-inp_str.o mpz/invert.o mpz/ior.o .libs/libgmp.lax/lt26-iset.o .libs/libgmp.lax/lt27-iset_d.o .libs/libgmp.lax/lt28-iset_si.o .libs/libgmp.lax/lt29-iset_str.o .libs/libgmp.lax/lt30-iset_ui.o mpz/jacobi.o mpz/kronsz.o mpz/kronuz.o mpz/kronzs.o mpz/kronzu.o mpz/lcm.o mpz/lcm_ui.o mpz/lucnum_ui.o mpz/lucnum2_ui.o mpz/millerrabin.o mpz/mod.o .libs/libgmp.lax/lt31-mul.o .libs/libgmp.lax/lt32-mul_2exp.o mpz/mul_si.o .libs/libgmp.lax/lt33-mul_ui.o mpz/n_pow_ui.o .libs/libgmp.lax/lt34-neg.o .libs/libgmp.lax/lt35-nextprime.o mpz/out_raw.o .libs/libgmp.lax/lt36-out_str.o mpz/perfpow.o mpz/perfsqr.o mpz/popcount.o .libs/libgmp.lax/lt37-pow_ui.o mpz/powm.o mpz/powm_sec.o mpz/powm_ui.o mpz/pprime_p.o mpz/random.o .libs/libgmp.lax/lt38-random2.o mpz/realloc.o mpz/realloc2.o mpz/remove.o mpz/root.o mpz/rootrem.o mpz/rrandomb.o mpz/scan0.o mpz/scan1.o .libs/libgmp.lax/lt39-set.o .libs/libgmp.lax/lt40-set_d.o mpz/set_f.o .libs/libgmp.lax/lt41-set_q.o .libs/libgmp.lax/lt42-set_si.o .libs/libgmp.lax/lt43-set_str.o .libs/libgmp.lax/lt44-set_ui.o mpz/setbit.o .libs/libgmp.lax/lt45-size.o mpz/sizeinbase.o .libs/libgmp.lax/lt46-sqrt.o mpz/sqrtrem.o .libs/libgmp.lax/lt47-sub.o .libs/libgmp.lax/lt48-sub_ui.o .libs/libgmp.lax/lt49-swap.o mpz/tdiv_ui.o mpz/tdiv_q.o mpz/tdiv_q_2exp.o mpz/tdiv_q_ui.o mpz/tdiv_qr.o mpz/tdiv_qr_ui.o mpz/tdiv_r.o mpz/tdiv_r_2exp.o mpz/tdiv_r_ui.o mpz/tstbit.o mpz/ui_pow_ui.o .libs/libgmp.lax/lt50-ui_sub.o .libs/libgmp.lax/lt51-urandomb.o mpz/urandomm.o mpz/xor.o .libs/libgmp.lax/lt52-abs.o mpq/aors.o mpq/canonicalize.o .libs/libgmp.lax/lt53-clear.o .libs/libgmp.lax/lt54-clears.o .libs/libgmp.lax/lt55-cmp.o .libs/libgmp.lax/lt56-cmp_si.o .libs/libgmp.lax/lt57-cmp_ui.o .libs/libgmp.lax/lt58-div.o .libs/libgmp.lax/lt59-get_d.o mpq/get_den.o mpq/get_num.o .libs/libgmp.lax/lt60-get_str.o .libs/libgmp.lax/lt61-init.o .libs/libgmp.lax/lt62-inits.o .libs/libgmp.lax/lt63-inp_str.o mpq/inv.o mpq/md_2exp.o .libs/libgmp.lax/lt64-mul.o .libs/libgmp.lax/lt65-neg.o .libs/libgmp.lax/lt66-out_str.o .libs/libgmp.lax/lt67-set.o mpq/set_den.o mpq/set_num.o .libs/libgmp.lax/lt68-set_si.o .libs/libgmp.lax/lt69-set_str.o .libs/libgmp.lax/lt70-set_ui.o mpq/equal.o .libs/libgmp.lax/lt71-set_z.o .libs/libgmp.lax/lt72-set_d.o .libs/libgmp.lax/lt73-set_f.o .libs/libgmp.lax/lt74-swap.o mpn/fib_table.o mpn/mp_bases.o .libs/libgmp.lax/lt75-add.o mpn/add_1.o mpn/add_n.o .libs/libgmp.lax/lt76-sub.o mpn/sub_1.o mpn/sub_n.o .libs/libgmp.lax/lt77-neg.o .libs/libgmp.lax/lt78-com.o mpn/mul_1.o mpn/addmul_1.o mpn/submul_1.o mpn/lshift.o mpn/rshift.o mpn/dive_1.o mpn/diveby3.o .libs/libgmp.lax/lt79-divis.o mpn/divrem.o mpn/divrem_1.o mpn/divrem_2.o .libs/libgmp.lax/lt80-fib2_ui.o mpn/mod_1.o mpn/mod_34lsub1.o mpn/mode1o.o mpn/pre_mod_1.o .libs/libgmp.lax/lt81-dump.o mpn/mod_1_1.o mpn/mod_1_2.o mpn/mod_1_3.o mpn/mod_1_4.o mpn/lshiftc.o .libs/libgmp.lax/lt82-mul.o mpn/mul_fft.o mpn/mul_n.o mpn/sqr.o mpn/mul_basecase.o mpn/sqr_basecase.o mpn/nussbaumer_mul.o .libs/libgmp.lax/lt83-random.o .libs/libgmp.lax/lt84-random2.o mpn/pow_1.o .libs/libgmp.lax/lt85-rootrem.o .libs/libgmp.lax/lt86-sqrtrem.o .libs/libgmp.lax/lt87-get_str.o .libs/libgmp.lax/lt88-set_str.o .libs/libgmp.lax/lt89-scan0.o .libs/libgmp.lax/lt90-scan1.o .libs/libgmp.lax/lt91-popcount.o .libs/libgmp.lax/lt92-hamdist.o .libs/libgmp.lax/lt93-cmp.o .libs/libgmp.lax/lt94-perfsqr.o .libs/libgmp.lax/lt95-perfpow.o mpn/gcd_1.o .libs/libgmp.lax/lt96-gcd.o mpn/gcdext_1.o .libs/libgmp.lax/lt97-gcdext.o mpn/gcd_lehmer.o mpn/gcd_subdiv_step.o mpn/gcdext_lehmer.o mpn/gcdext_subdiv_step.o mpn/div_q.o .libs/libgmp.lax/lt98-tdiv_qr.o mpn/jacbase.o .libs/libgmp.lax/lt99-get_d.o mpn/matrix22_mul.o mpn/hgcd2.o mpn/hgcd.o mpn/mullo_n.o mpn/mullo_basecase.o mpn/toom22_mul.o mpn/toom32_mul.o mpn/toom42_mul.o mpn/toom52_mul.o mpn/toom62_mul.o mpn/toom33_mul.o mpn/toom43_mul.o mpn/toom53_mul.o mpn/toom63_mul.o mpn/toom44_mul.o mpn/toom6h_mul.o mpn/toom6_sqr.o mpn/toom8h_mul.o mpn/toom8_sqr.o mpn/toom_couple_handling.o mpn/toom2_sqr.o mpn/toom3_sqr.o mpn/toom4_sqr.o mpn/toom_eval_dgr3_pm1.o mpn/toom_eval_dgr3_pm2.o mpn/toom_eval_pm1.o mpn/toom_eval_pm2.o mpn/toom_eval_pm2exp.o mpn/toom_eval_pm2rexp.o mpn/toom_interpolate_5pts.o mpn/toom_interpolate_6pts.o mpn/toom_interpolate_7pts.o mpn/toom_interpolate_8pts.o mpn/toom_interpolate_12pts.o mpn/toom_interpolate_16pts.o mpn/invertappr.o .libs/libgmp.lax/lt100-invert.o mpn/binvert.o mpn/mulmod_bnm1.o mpn/sqrmod_bnm1.o mpn/sbpi1_div_q.o mpn/sbpi1_div_qr.o mpn/sbpi1_divappr_q.o mpn/dcpi1_div_q.o mpn/dcpi1_div_qr.o mpn/dcpi1_divappr_q.o mpn/mu_div_qr.o mpn/mu_divappr_q.o mpn/mu_div_q.o mpn/bdiv_q_1.o mpn/sbpi1_bdiv_q.o mpn/sbpi1_bdiv_qr.o mpn/dcpi1_bdiv_q.o mpn/dcpi1_bdiv_qr.o mpn/mu_bdiv_q.o mpn/mu_bdiv_qr.o mpn/bdiv_q.o mpn/bdiv_qr.o .libs/libgmp.lax/lt101-divexact.o mpn/bdiv_dbm1c.o mpn/redc_1.o mpn/redc_2.o mpn/redc_n.o .libs/libgmp.lax/lt102-powm.o mpn/powlo.o .libs/libgmp.lax/lt103-powm_sec.o mpn/subcnd_n.o mpn/redc_1_sec.o mpn/trialdiv.o .libs/libgmp.lax/lt104-remove.o mpn/and_n.o mpn/andn_n.o mpn/nand_n.o mpn/ior_n.o mpn/iorn_n.o mpn/nior_n.o mpn/xor_n.o mpn/xnor_n.o mpn/copyi.o mpn/copyd.o mpn/zero.o mpn/invert_limb.o mpn/mul_2.o mpn/addmul_2.o mpn/addlsh1_n.o mpn/sublsh1_n.o mpn/rsblsh1_n.o mpn/rsh1add_n.o mpn/rsh1sub_n.o mpn/addlsh2_n.o mpn/rsblsh2_n.o mpn/addlsh_n.o mpn/rsblsh_n.o mpn/addaddmul_1msb0.o printf/asprintf.o printf/asprntffuns.o printf/doprnt.o printf/doprntf.o printf/doprnti.o printf/fprintf.o printf/obprintf.o printf/obvprintf.o printf/obprntffuns.o printf/printf.o printf/printffuns.o printf/snprintf.o printf/snprntffuns.o printf/sprintf.o printf/sprintffuns.o printf/vasprintf.o printf/vfprintf.o printf/vprintf.o printf/vsnprintf.o printf/vsprintf.o printf/repl- vsnprintf.o scanf/doscan.o scanf/fscanf.o scanf/fscanffuns.o scanf/scanf.o scanf/sscanf.o scanf/sscanffuns.o scanf/vfscanf.o scanf/vscanf.o scanf/vsscanf.o /usr/bin/ranlib: file: .libs/libgmp.a(mp_clz_tab.o) has no symbols /usr/bin/ranlib: file: .libs/libgmp.a(obprintf.o) has no symbols /usr/bin/ranlib: file: .libs/libgmp.a(obvprintf.o) has no symbols /usr/bin/ranlib: file: .libs/libgmp.a(obprntffuns.o) has no symbols /usr/bin/ranlib: file: .libs/libgmp.a(repl-vsnprintf.o) has no symbols libtool: link: ranlib .libs/libgmp.a ranlib: file: .libs/libgmp.a(mp_clz_tab.o) has no symbols ranlib: file: .libs/libgmp.a(obprintf.o) has no symbols ranlib: file: .libs/libgmp.a(obvprintf.o) has no symbols ranlib: file: .libs/libgmp.a(obprntffuns.o) has no symbols ranlib: file: .libs/libgmp.a(repl-vsnprintf.o) has no symbols libtool: link: rm -fr .libs/libgmp.lax libtool: link: ( cd ".libs" && rm -f "libgmp.la" && cp -p "../libgmp.la" "libgmp.la" ) cp libraries/integer-gmp/gmp/gmpbuild/gmp.h libraries/integer-gmp/gmp/ cp libraries/integer-gmp/gmp/gmpbuild/.libs/libgmp.a libraries/integer- gmp/gmp/ inplace/bin/mkdirhier libraries/integer-gmp/gmp/objs cd libraries/integer-gmp/gmp/objs && /usr/bin/ar x ../libgmp.a ranlib libraries/integer-gmp/gmp/libgmp.a ranlib: file: libraries/integer-gmp/gmp/libgmp.a(mp_clz_tab.o) has no symbols ranlib: file: libraries/integer-gmp/gmp/libgmp.a(obprintf.o) has no symbols ranlib: file: libraries/integer-gmp/gmp/libgmp.a(obvprintf.o) has no symbols ranlib: file: libraries/integer-gmp/gmp/libgmp.a(obprntffuns.o) has no symbols ranlib: file: libraries/integer-gmp/gmp/libgmp.a(repl-vsnprintf.o) has no symbols make: *** [all] Error 2 }}} I can continue the build without problems at tihs point by simply calling "make -j2" again, at which point it continues with {{{ ===--- building phase 0 make -r --no-print-directory -f ghc.mk phase=0 phase_0_builds make[1]: Nothing to be done for `phase_0_builds'. ===--- building phase 1 make -r --no-print-directory -f ghc.mk phase=1 phase_1_builds make[1]: Nothing to be done for `phase_1_builds'. ===--- building final phase make -r --no-print-directory -f ghc.mk phase=final all rts/ghc.mk:510: rts/dist/build/.depend-v-dyn-l-debug-thr-thr_debug-thr_l- debug_dyn-thr_dyn-thr_debug_dyn-l_dyn-thr_l_dyn.c_asm: No such file or directory libraries/old-time/ghc.mk:5: libraries/old-time/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/old-time/ghc.mk:5: libraries/old-time/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/haskell98/ghc.mk:5: libraries/haskell98/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/haskell98/ghc.mk:5: libraries/haskell98/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/haskell2010/ghc.mk:5: libraries/haskell2010/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/haskell2010/ghc.mk:5: libraries/haskell2010/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/random/ghc.mk:5: libraries/random/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/random/ghc.mk:5: libraries/random/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/primitive/ghc.mk:5: libraries/primitive/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/primitive/ghc.mk:5: libraries/primitive/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/vector/ghc.mk:5: libraries/vector/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/vector/ghc.mk:5: libraries/vector/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-base/ghc.mk:5: libraries/dph/dph-base/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-base/ghc.mk:5: libraries/dph/dph-base/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-prim-interface/ghc.mk:5: libraries/dph/dph-prim- interface/dist-install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-prim-interface/ghc.mk:5: libraries/dph/dph-prim- interface/dist-install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-prim-seq/ghc.mk:5: libraries/dph/dph-prim-seq/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-prim-seq/ghc.mk:5: libraries/dph/dph-prim-seq/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-prim-par/ghc.mk:5: libraries/dph/dph-prim-par/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-prim-par/ghc.mk:5: libraries/dph/dph-prim-par/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-lifted-base/ghc.mk:5: libraries/dph/dph-lifted-base /dist-install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-lifted-base/ghc.mk:5: libraries/dph/dph-lifted-base /dist-install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-lifted-boxed/ghc.mk:5: libraries/dph/dph-lifted-boxed /dist-install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-lifted-boxed/ghc.mk:5: libraries/dph/dph-lifted-boxed /dist-install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-lifted-copy/ghc.mk:5: libraries/dph/dph-lifted-copy /dist-install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-lifted-copy/ghc.mk:5: libraries/dph/dph-lifted-copy /dist-install/build/.depend-v-dyn.c_asm: No such file or directory libraries/dph/dph-lifted-vseg/ghc.mk:5: libraries/dph/dph-lifted-vseg /dist-install/build/.depend-v-dyn.haskell: No such file or directory libraries/dph/dph-lifted-vseg/ghc.mk:5: libraries/dph/dph-lifted-vseg /dist-install/build/.depend-v-dyn.c_asm: No such file or directory libraries/ghc-prim/ghc.mk:4: libraries/ghc-prim/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/ghc-prim/ghc.mk:4: libraries/ghc-prim/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/integer-gmp/ghc.mk:4: libraries/integer-gmp/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/integer-gmp/ghc.mk:4: libraries/integer-gmp/dist- install/build/.depend-v-dyn.c_asm: No such file or directory libraries/base/ghc.mk:4: libraries/base/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/unix/ghc.mk:4: libraries/unix/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/hpc/ghc.mk:4: libraries/hpc/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/haskeline/ghc.mk:4: libraries/haskeline/dist- install/build/.depend-v-dyn.haskell: No such file or directory libraries/integer-gmp/mkGmpDerivedConstants/ghc.mk:20: libraries/integer- gmp/mkGmpDerivedConstants/dist/build/.depend.c_asm: No such file or directory compiler/ghc.mk:442: compiler/stage2/build/.depend-v-dyn.haskell: No such file or directory utils/hpc/ghc.mk:18: utils/hpc/dist-install/build/.depend.haskell: No such file or directory utils/runghc/ghc.mk:28: utils/runghc/dist-install/build/.depend.haskell: No such file or directory ghc/ghc.mk:115: ghc/stage2/build/.depend.haskell: No such file or directory "rm" -f ghc/stage2/build/.depend.haskell.tmp "rm" -f utils/runghc/dist-install/build/.depend.haskell.tmp "rm" -f utils/hpc/dist-install/build/.depend.haskell.tmp "inplace/bin/ghc-stage1" -M -fPIC -dynamic -H64m -O0 -fasm -hide-all- packages -i -iutils/runghc/. -iutils/runghc/dist-install/build -iutils/runghc/dist-install/build/autogen -Iutils/runghc/dist- install/build -Iutils/runghc/dist-install/build/autogen -optP-include -optPutils/runghc/dist-install/build/autogen/cabal_macros.h -package base-4.7.0.0 -package directory-1.2.0.1 -package filepath-1.3.0.2 -package process-1.2.0.0 -XHaskell98 -no-user-package-db -rtsopts -cpp -DVERSION="\"7.7.20130728\"" -odir utils/runghc/dist-install/build -hidir utils/runghc/dist-install/build -stubdir utils/runghc/dist- install/build -dep-makefile utils/runghc/dist- install/build/.depend.haskell.tmp -dep-suffix "dyn_" -include-pkg-deps utils/runghc/dist-install/build/Main.hs }}} and so on and then continues to completion. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Changes (by kazu-yamamoto): * cc: kazu@… (added) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by kazu-yamamoto): To fix this, we need to ensure that "libraries/integer- gmp/mkGmpDerivedConstants" is build after building "libraries/integer- gmp/gmp" is completed. How can we express this dependency in Makefile? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by kazu-yamamoto): mkGmpDerivedConstants-parallel.patch fixes this problem in my Mac. Please verify. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Changes (by thoughtpolice): * cc: marlowsd@…, igloo@… (added) * status: new => patch Comment: Simon, Ian, can you double check this one? I would think compiling the C sources would require generating the `.depend` file, and with the rule Kazu changed, the `.depend` file would depend on `gmp.h` being in place first, yes? So I would think this rule is correct already. We also don't do anything quite like this anywhere else from what I can tell, although this seems like an odd case since we build GMP in place and all... -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by simonmar): I'm not familiar with this bit of the build system. Perhaps `$(libraries /integer-gmp/mkGmpDerivedConstants_dist_depfile_c_asm)` isn't defined early enough? There are ways to debug what the build system is doing, see wiki:Building/Modifying. At the least, we need to know (a) what was wrong and (b) why the change fixes it. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by kazu-yamamoto): ghc.mk has: {{{ $(eval $(call build-prog,libraries/integer- gmp/mkGmpDerivedConstants,dist,1)) }}} So, $(libraries/integer-gmp/mkGmpDerivedConstants_dist_depfile_c_asm) should be defined. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by kazu-yamamoto): Are there any ways to make only integer-gmp including GHC's rule files? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by simonmar): Kazu, see wiki:Building/Using#Buildingasinglesub-component -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by edsko): I cannot comment on the validity of this specific patch but I can confirm that it seems to resolve the problem. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:9 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails
-------------------------------------+------------------------------------
Reporter: edsko | Owner:
Type: bug | Status: patch
Priority: normal | Milestone:
Component: Build System | Version: 7.7
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets:
-------------------------------------+------------------------------------
Comment (by Austin Seipp

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: infoneeded Priority: high | Milestone: 7.10.1 Component: Build System | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Changes (by thoughtpolice): * priority: normal => high * status: patch => infoneeded * milestone: => 7.10.1 Comment: Kazu, I merged your patch because after some debugging, I couldn't figure out the problem still. In the mean time, this will help Windows and OS X builds until I can pin down the real problem. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:11 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8102: Parallel build of HEAD consistently fails -------------------------------------+------------------------------------- Reporter: edsko | Owner: Type: bug | Status: closed Priority: high | Milestone: Component: Build | Version: 7.7 System | Keywords: Resolution: fixed | Architecture: Unknown/Multiple Operating System: | Difficulty: Unknown Unknown/Multiple | Blocked By: Type of failure: | Related Tickets: None/Unknown | Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- Changes (by thomie): * status: infoneeded => closed * resolution: => fixed * milestone: 7.10.1 => Comment: The mentioned hack was added to the file `libraries/integer- gmp/mkGmpDerivedConstants/ghc.mk`, with a comment referring to this ticket. Since we are using `integer-gmp2` now, which doesn't have that file, I think we can close this ticket. Parallel builds do not consistenly fail anymore. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8102#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC