- fix wrong path to scripts/usage; It is in the builddir and not in the srcdir.

- flag .depend as .NOTPARALLEL to workaround bug in make-3.80 and make-3.81
Some more details on the second workaround (i.e. kludge):
make-3.80 silently fails, while make-3.81 is at least self-conscious enough to
admit:
include/usage_compressed.h: .config scripts/usage
#  Implicit rule search has not been done.
#  File does not exist.
#  File has not been updated.
#  Dependencies commands running (THIS IS A BUG).
#  commands to execute (from `/home/cow/src/bb2/Makefile', line 430):
        $(Q)$(SHELL) $(top_srcdir)/scripts/usage_compressed "$(top_builddir)/scripts" > $@

I'm giving up on trying to run the rest of the prerequisites of .depend in
parallel and just (try to) indicate that the prerequisites of .depend are
not to be run in parallel.

While this makes `make distclean defconfig;make -j´ work for me, it is not a
real -- longterm -- solution; FIXME
This commit is contained in:
Bernhard Reutner-Fischer 2006-05-21 15:05:49 +00:00
parent a1e130f122
commit 4148afe049

View File

@ -415,17 +415,21 @@ include/bbconfigopts.h: .config
endif endif
ifeq ($(strip $(CONFIG_FEATURE_COMPRESS_USAGE)),y) ifeq ($(strip $(CONFIG_FEATURE_COMPRESS_USAGE)),y)
scripts/usage: $(top_srcdir)/scripts/usage.c USAGE_BIN:=scripts/usage
$(USAGE_BIN): $(top_srcdir)/scripts/usage.c
$(do_link.h) $(do_link.h)
DEP_INCLUDES += include/usage_compressed.h DEP_INCLUDES += include/usage_compressed.h
include/usage_compressed.h: scripts/usage .config include/usage_compressed.h: .config $(USAGE_BIN)
$(Q)$(SHELL) $(top_srcdir)/scripts/usage_compressed "$(top_srcdir)/scripts" > $@ $(Q)$(SHELL) $(top_srcdir)/scripts/usage_compressed "$(top_builddir)/scripts" > $@
endif # CONFIG_FEATURE_COMPRESS_USAGE endif # CONFIG_FEATURE_COMPRESS_USAGE
# workaround alleged bug in make-3.80, make-3.81
.NOTPARALLEL: .depend
depend dep: .depend depend dep: .depend
.depend: scripts/bb_mkdep $(DEP_INCLUDES) .depend: scripts/bb_mkdep $(USAGE_BIN) $(DEP_INCLUDES)
$(disp_gen) $(disp_gen)
$(Q)rm -f .depend $(Q)rm -f .depend
$(Q)mkdir -p include/config $(Q)mkdir -p include/config