diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 0c6a5059bb..299751542e 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,14 @@ past entries belonging to author(s): Viktor Szakats. */ +2009-08-18 18:02 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/config/dir.mk + % small simplification in used logic + + * harbour/config/dirsh.mk + ! use := instead of = for DIR_RULE assignment - these rules contain + dependencies macros which cannot be resolved during assignment + 2009-08-17 17:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * config/dir.mk ! Fixed DIR_RULE assignment (:= back to =) diff --git a/harbour/config/dir.mk b/harbour/config/dir.mk index 991c7c7973..3c08a02b8a 100644 --- a/harbour/config/dir.mk +++ b/harbour/config/dir.mk @@ -18,10 +18,11 @@ else endif ifeq ($(JOB_SRV),NO) - include $(TOP)$(ROOT)config/dirsh.mk -endif -ifeq ($(DIR_RULE),) + DIRS := $(filter-out {%},$(subst {, {,$(DIRS))) + include $(TOP)$(ROOT)config/dirsh.mk + +else # NOTE: The empty line directly before 'endef' HAVE TO exist! # It causes that every command will be separated by LF @@ -34,18 +35,12 @@ ifeq ($(DIR_RULE),) DIRS_DEP := $(filter-out $(DIRS_PURE),$(DIRS)) DIRS_MK := $(foreach d, $(DIRS_PURE), $(if $(wildcard $(d)/Makefile),$(d),)) DIR_RULE = $(foreach dir, $(DIRS_MK), $(dir_mk)) - MULTI_DEPS := yes - -else - - DIRS := $(filter-out {%},$(subst {, {,$(DIRS))) - MULTI_DEPS := no endif all : first -ifneq ($(MULTI_DEPS),yes) +ifeq ($(JOB_SRV),NO) first clean install:: +$(DIR_RULE) diff --git a/harbour/config/dirsh.mk b/harbour/config/dirsh.mk index 0d1c3723dd..3d10f65fee 100644 --- a/harbour/config/dirsh.mk +++ b/harbour/config/dirsh.mk @@ -12,7 +12,7 @@ ifeq ($(DIRS),) # Empty directory list else ifeq ($(HB_SHELL),sh) - DIR_RULE := \ + DIR_RULE = \ @for d in $(DIRS); do \ if [ -d "$$d" ]; then \ $(MK) $(MKFLAGS) -C $$d $@; \ @@ -21,11 +21,11 @@ ifeq ($(HB_SHELL),sh) endif ifeq ($(HB_SHELL),nt) - DIR_RULE := for %%d in ($(DIRS_OS)) do $(MK_OS) $(MKFLAGS) -C %%d $@ + DIR_RULE = for %%d in ($(DIRS_OS)) do $(MK_OS) $(MKFLAGS) -C %%d $@ endif ifeq ($(HB_SHELL),os2) - DIR_RULE := for %d in ($(DIRS_OS)) do $(MK_OS) $(MKFLAGS) -C %d $@ + DIR_RULE = for %d in ($(DIRS_OS)) do $(MK_OS) $(MKFLAGS) -C %d $@ endif ifeq ($(HB_SHELL),dos) @@ -38,7 +38,7 @@ define dir_mk endef -DIR_RULE := $(foreach file,$(DIRS_OS),$(dir_mk)) +DIR_RULE = $(foreach file,$(DIRS_OS),$(dir_mk)) endif