diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 8c37a1c993..af1f274251 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,18 @@ +19991214-14:55 EDT David G. Holm + + * config/dos/dir.cf + * config/linux/dir.cf + * config/os2/dir.cf + * config/w32/dir.cf + + Don't set up a directory rule if only compiling one module (for + (example, when using 'make -r PM=rtfclass' in the tests directory), + because that module should be in the current directory and there is + no need to compile some module with the same name in a subdirectory. + + * tests/regress/Makefile + + Added a default setting for HB_MAIN = std, because the IBM C++ + linker can't pull the 'main' module out of a library file. + 19991212-13:45 EST Paul Tucker * tests/bld_vc.bat + ..\lib\vc\macro.lib diff --git a/harbour/config/dos/dir.cf b/harbour/config/dos/dir.cf index 52c515f997..c32f7221a5 100644 --- a/harbour/config/dos/dir.cf +++ b/harbour/config/dos/dir.cf @@ -4,6 +4,8 @@ include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf +ifeq ($(PM),) # Only traverse directories if not compiling a specific module + ifeq ($(DIRS),) # Empty directory list DIR_RULE =\ @echo Done @@ -13,3 +15,5 @@ DIR_MAKE := $(subst /,\,$(MK)) DIR_RULE =\ $(COMSPEC) /C FOR %d IN ($(DIR_LIST)) DO $(DIR_MAKE) -C %d $@ endif + +endif # ! compiling a specific program module \ No newline at end of file diff --git a/harbour/config/linux/dir.cf b/harbour/config/linux/dir.cf index 990075b76b..08f9ed936f 100644 --- a/harbour/config/linux/dir.cf +++ b/harbour/config/linux/dir.cf @@ -2,9 +2,13 @@ # $Id$ # +ifeq ($(PM),) # Only traverse directories if not compiling a specific module + DIR_RULE =\ @for d in $(DIRS); do \ if [ -d $$d ]; then \ $(MAKE) -C $$d $@; \ fi \ done + +endif # ! compiling a specific program module \ No newline at end of file diff --git a/harbour/config/os2/dir.cf b/harbour/config/os2/dir.cf index a8a761acf3..2355bf96f3 100644 --- a/harbour/config/os2/dir.cf +++ b/harbour/config/os2/dir.cf @@ -2,6 +2,8 @@ # $Id$ # +ifeq ($(PM),) # Only traverse directories if not compiling a specific module + ifeq ($(SHLVL),) # An OS/2 command shell ifeq ($(DIRS),) # Empty directory list @@ -23,3 +25,5 @@ DIR_RULE =\ done endif # ! Windows + +endif # ! compiling a specific program module diff --git a/harbour/config/w32/dir.cf b/harbour/config/w32/dir.cf index 33fcbf48e2..65ecabf872 100644 --- a/harbour/config/w32/dir.cf +++ b/harbour/config/w32/dir.cf @@ -2,6 +2,8 @@ # $Id$ # +ifeq ($(PM),) # Only traverse directories if not compiling a specific module + ifeq ($(SHLVL),) # COMMAND.COM ifeq ($(DIRS),) # Empty directory list @@ -24,3 +26,5 @@ DIR_RULE =\ done endif # ! Windows + +endif # ! compiling a specific program module \ No newline at end of file diff --git a/harbour/tests/regress/Makefile b/harbour/tests/regress/Makefile index 27393700e1..2f6384e97f 100644 --- a/harbour/tests/regress/Makefile +++ b/harbour/tests/regress/Makefile @@ -2,6 +2,10 @@ # $Id$ # +ifeq ($(HB_MAIN),) + HB_MAIN = std +endif + ROOT = ../../ PRG_SOURCES=\ @@ -18,16 +22,16 @@ PRG_SOURCES=\ PRG_MAIN=rt_main.prg LIBS=\ - tools \ - debug \ - rtl \ + tools \ + debug \ + rtl \ rdd \ vm \ rdd \ rtl \ macro \ pp \ - runner \ - common \ + runner \ + common \ include $(TOP)$(ROOT)config/bin.cf