* config/global.cf
* config/lib.cf
* config/bin.cf
* config/globsh.cf
* config/instsh.cf
* config/none.cf
* config/dirsh.cf
! Using embedded GNU Tools on OS/2. This fixes the install dir
creation problems (at least makes it work like on other platforms).
Fixes HB_BUILD_SUBDIR support. It also allowed to remove all
remaining hacks to try to create dirs for platforms where 'mkdir -p'
equivalent isn't available.
Probably it would be better to solve this using some GNU Make
tricks, but couldn't find one yet.
% Using native DOS commands for RM and MD. (MD is not used currently)
* EXE_DIR, LIB_DIR moved to global.cf
% Deleted (I hope) unnecessary $(CMDPREF) variables.
If someone knows what was the purpose of them, we can readd them, but
we should then readd them to all shell types and all commands consistently.
! Fixed nt dir walking rule for old GNU Make versions.
+ config/os2-rm.exe
+ Added OS/2 GNU rm binary.
60 lines
837 B
CFEngine3
60 lines
837 B
CFEngine3
#
|
|
# $Id$
|
|
#
|
|
|
|
ifneq ($(HB_SHELL),sh)
|
|
|
|
MK_OS = $(subst /,\,$(MK))
|
|
DIRS_OS = $(subst /,\,$(DIRS))
|
|
|
|
endif
|
|
|
|
ifeq ($(DIRS),) # Empty directory list
|
|
|
|
DIR_RULE =\
|
|
@echo Done
|
|
|
|
else
|
|
|
|
ifeq ($(HB_SHELL),sh)
|
|
|
|
DIR_RULE =\
|
|
@for d in $(DIRS); do \
|
|
if [ -d "$$d" ]; then \
|
|
$(MAKE) -C $$d $@; \
|
|
fi \
|
|
done
|
|
|
|
endif
|
|
|
|
ifeq ($(HB_SHELL),nt)
|
|
|
|
DIR_RULE =\
|
|
for %%d in ($(DIRS_OS)) do $(MK_OS) -C %%d $@
|
|
|
|
endif
|
|
|
|
ifeq ($(HB_SHELL),os2)
|
|
|
|
DIR_RULE =\
|
|
for %d in ($(DIRS_OS)) do $(MK_OS) -C %d $@
|
|
|
|
endif
|
|
|
|
ifeq ($(HB_SHELL),dos)
|
|
|
|
# We have to use script to overcome the DOS limit of max 128 characters
|
|
# NOTE: The empty line directly before 'endef' HAVE TO exist!
|
|
# It causes that every commands will be separated by LF
|
|
define dir_mk
|
|
$(MK_OS) -C $(file) $@
|
|
|
|
endef
|
|
|
|
DIR_RULE =\
|
|
$(foreach file, $(DIRS_OS), $(dir_mk))
|
|
|
|
endif
|
|
|
|
endif # ! Empty directory list
|