Hi,As it appears that upstream is reluctant to consider it a bug in make (see 346248 for discussion), I started playing with ghc6 build system in an attempt to come up with a workaround. I was able to build it in under 3.5 hours on a 1.7GHz Pentium IV machine with the attached patch. For some targets it takes forever for make to parse the dependency graph of a large list of prerequisites, the patch just remakes these prerequisites one by one in three bottleneck places. The resulting ghc6 binary appears to work fine. The complete build log may be found at
http://www.wooyd.org/debian/ghc6/ Best regards, Jurij Smakov [EMAIL PROTECTED] Key: http://www.wooyd.org/pgpkey/ KeyID: C99E03CC
--- a/mk/target.mk 2005-03-09 02:28:13.000000000 -0800 +++ b/mk/target.mk 2006-02-25 16:11:37.000000000 -0800 @@ -234,7 +234,8 @@ all :: $(HS_PROG) ifneq "$(BootingFromHc)" "YES" -$(HS_PROG) :: $(OBJS) +$(HS_PROG) :: + for i in $(OBJS) ; do $(MAKE) -wr $${i} ; done $(HC) -o $@ $(HC_OPTS) $(LD_OPTS) $(OBJS) else # see bootstrap.mk @@ -383,7 +384,8 @@ # Note: $(STUBOBJS) isn't depended on here, but included when building the lib. # (i.e., the assumption is that $(STUBOBJS) are created as a side-effect # of building $(LIBOBJS)). -$(LIBRARY) : $(LIBOBJS) +$(LIBRARY) : + for i in $(LIBOBJS) ; do $(MAKE) -wr $${i} ; done $(BUILD_LIB) endif # LIBRARY = "" --- a/libraries/base/Makefile 2005-03-03 01:41:35.000000000 -0800 +++ b/libraries/base/Makefile 2006-02-26 13:02:53.000000000 -0800 @@ -134,7 +134,8 @@ include $(TOP)/mk/target.mk ifeq "$(OBJECT_FILEFORMAT)" "PEi" -HSbase.o : $(GHCI_LIBOBJS) +HSbase.o : + for i in $(GHCI_LIBOBJS) ; do $(MAKE) -wr $${i} ; done $(LD) -r $(LD_X) -o HSbase1.o $(filter GHC/%, $(GHCI_LIBOBJS)) $(LD) -r $(LD_X) -o HSbase2.o $(filter Text/%, $(GHCI_LIBOBJS)) $(LD) -r $(LD_X) -o HSbase3.o $(filter-out GHC/% Text/%, $(GHCI_LIBOBJS) $(STUBOBJS))