2009-08-01 15:35 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

* 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.
This commit is contained in:
Viktor Szakats
2009-08-01 13:49:20 +00:00
parent 3edb418b26
commit b531d010db
9 changed files with 61 additions and 59 deletions

View File

@@ -17,6 +17,31 @@
past entries belonging to author(s): Viktor Szakats.
*/
2009-08-01 15:35 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* 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.
2009-08-01 14:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/global.cf
+ Minor improvements.

View File

@@ -7,11 +7,6 @@ include $(TOP)$(ROOT)config/global.cf
ifneq ($(HB_ARCHITECTURE),)
ifneq ($(HB_COMPILER),)
# no slash at the end
EXE_ARCH_DIR := $(TOP)$(ROOT)bin/$(HB_ARCHITECTURE)
# no slash at the end
EXE_DIR := $(TOP)$(ROOT)bin/$(ARCH_COMP)
include $(TOP)$(ROOT)config/c.cf
include $(TOP)$(ROOT)config/prg.cf
@@ -33,8 +28,6 @@ endif
EXE_FILE := $(EXE_DIR)/$(EXE_NAME)
LIB_DIR := $(TOP)$(ROOT)lib/$(ARCH_COMP)
ALL_OBJS = $(ALL_C_OBJS) $(ALL_PRG_OBJS)
first:: dirbase descend

View File

@@ -30,14 +30,14 @@ endif
ifeq ($(HB_SHELL),nt)
DIR_RULE =\
$(CMDPREF)for %d in ($(DIRS_OS)) do $(MK_OS) -C %d $@
for %%d in ($(DIRS_OS)) do $(MK_OS) -C %%d $@
endif
ifeq ($(HB_SHELL),os2)
DIR_RULE =\
$(CMDPREF)for %d in ($(DIRS_OS)) do $(MK_OS) -C %d $@
for %d in ($(DIRS_OS)) do $(MK_OS) -C %d $@
endif

View File

@@ -337,9 +337,9 @@ ARCH_COMP := $(HB_ARCHITECTURE)/$(HB_COMPILER)
ifneq ($(HB_BUILD_SUBDIR),)
ARCH_COMP += /$(subst \,/,$(HB_BUILD_SUBDIR))
endif
OBJ_BASE := obj
OBJ_DIR := $(OBJ_BASE)/$(ARCH_COMP)
OBJ_ARCH_DIR := $(OBJ_BASE)/$(HB_ARCHITECTURE)
OBJ_DIR := obj/$(ARCH_COMP)
EXE_DIR := $(TOP)$(ROOT)bin/$(ARCH_COMP)
LIB_DIR := $(TOP)$(ROOT)lib/$(ARCH_COMP)
# TODO: Set this in <arch>/<comp>.cf
HB_CPU :=

View File

@@ -50,23 +50,23 @@ ifeq ($(HB_SHELL),nt)
MK = "$(subst \,/,$(subst \~,~,$(MAKE)))"
RM = del /q /f
RDP = rmdir /q /s
CP = $(CMDPREF)copy
CP = copy
MD = mkdir
MDP = mkdir
dirbase::
-@$(CMDPREF)if not exist "$(OBJ_DIR_OS)" $(MDP) "$(OBJ_DIR_OS)"
$(if $(LIB_FILE),-@$(CMDPREF)if not exist "$(LIB_DIR_OS)" $(MDP) "$(LIB_DIR_OS)",)
$(if $(EXE_FILE),-@$(CMDPREF)if not exist "$(EXE_DIR_OS)" $(MDP) "$(EXE_DIR_OS)",)
-@if not exist "$(OBJ_DIR_OS)" $(MDP) "$(OBJ_DIR_OS)"
$(if $(LIB_FILE),-@if not exist "$(LIB_DIR_OS)" $(MDP) "$(LIB_DIR_OS)",)
$(if $(EXE_FILE),-@if not exist "$(EXE_DIR_OS)" $(MDP) "$(EXE_DIR_OS)",)
clean::
-@$(CMDPREF)if exist "$(OBJ_DIR_OS)" $(RDP) "$(OBJ_DIR_OS)"
$(if $(LIB_FILE),-@$(CMDPREF)if exist "$(LIB_FILE_OS)" $(RM) "$(LIB_FILE_OS)",)
$(if $(LIB_FILE),-@$(CMDPREF)if exist "$(basename $(LIB_FILE_OS)).bak" $(RM) "$(basename $(LIB_FILE_OS)).bak",)
$(if $(LIB_FILE),-@$(CMDPREF)if exist "$(LIB_DIR_OS)" if not exist "$(LIB_DIR_OS)\*" $(RDP) "$(LIB_DIR_OS)",)
$(if $(EXE_FILE),-@$(CMDPREF)if exist "$(EXE_FILE_OS)" $(RM) "$(EXE_FILE_OS)",)
$(if $(EXE_FILE),-@$(CMDPREF)if exist "$(basename $(EXE_FILE_OS)).tds" $(RM) "$(basename $(EXE_FILE_OS)).tds",)
$(if $(EXE_FILE),-@$(CMDPREF)if exist "$(EXE_DIR_OS)" if not exist "$(EXE_DIR_OS)\*" $(RDP) "$(EXE_DIR_OS)",)
-@if exist "$(OBJ_DIR_OS)" $(RDP) "$(OBJ_DIR_OS)"
$(if $(LIB_FILE),-@if exist "$(LIB_FILE_OS)" $(RM) "$(LIB_FILE_OS)",)
$(if $(LIB_FILE),-@if exist "$(basename $(LIB_FILE_OS)).bak" $(RM) "$(basename $(LIB_FILE_OS)).bak",)
$(if $(LIB_FILE),-@if exist "$(LIB_DIR_OS)" if not exist "$(LIB_DIR_OS)\*" $(RDP) "$(LIB_DIR_OS)",)
$(if $(EXE_FILE),-@if exist "$(EXE_FILE_OS)" $(RM) "$(EXE_FILE_OS)",)
$(if $(EXE_FILE),-@if exist "$(basename $(EXE_FILE_OS)).tds" $(RM) "$(basename $(EXE_FILE_OS)).tds",)
$(if $(EXE_FILE),-@if exist "$(EXE_DIR_OS)" if not exist "$(EXE_DIR_OS)\*" $(RDP) "$(EXE_DIR_OS)",)
endif
@@ -74,26 +74,20 @@ ifeq ($(HB_SHELL),os2)
MK = $(subst /,\,$(subst \~,~,$(MAKE)))
RM = del /n
RD = rmdir
CP = $(CMDPREF)copy
RD = $(TOOL_DIR)os2-rm -f -r
CP = copy
MD = mkdir
OBJ_ARCH_DIR_OS = $(subst /,\,$(OBJ_ARCH_DIR))
LIB_ARCH_DIR_OS = $(subst /,\,$(LIB_ARCH_DIR))
EXE_ARCH_DIR_OS = $(subst /,\,$(EXE_ARCH_DIR))
MDP = $(TOOL_DIR)os2-mkdir -p
dirbase::
-@for %d in ($(OBJ_BASE) $(OBJ_ARCH_DIR_OS) $(OBJ_DIR_OS)) do if not exist %d $(MD) %d
$(if $(LIB_FILE),-@for %d in ($(LIB_ARCH_DIR_OS) $(LIB_DIR_OS)) do if not exist %d $(MD) %d,)
$(if $(EXE_FILE),-@for %d in ($(EXE_ARCH_DIR_OS) $(EXE_DIR_OS)) do if not exist %d $(MD) %d,)
-@if not exist $(OBJ_DIR_OS) $(MDP) $(OBJ_DIR_OS)
$(if $(LIB_FILE),-@if not exist $(LIB_DIR_OS) $(MDP) $(LIB_DIR_OS),)
$(if $(EXE_FILE),-@if not exist $(EXE_DIR_OS) $(MDP) $(EXE_DIR_OS),)
clean::
-@if exist $(OBJ_DIR_OS)\*.* $(RM) $(OBJ_DIR_OS)\*.*
-@for %d in ($(OBJ_DIR_OS) $(OBJ_ARCH_DIR_OS) $(OBJ_BASE)) do if exist %d $(RD) %d
$(if $(LIB_FILE),-@if exist $(LIB_FILE_OS) $(RM) $(LIB_FILE_OS),)
$(if $(LIB_FILE),-@for %d in ($(LIB_DIR_OS) $(LIB_ARCH_DIR_OS)) do if exist %d $(RD) %d,)
$(if $(EXE_FILE),-@if exist $(EXE_FILE_OS) $(RM) $(EXE_FILE_OS),)
$(if $(EXE_FILE),-@for %d in ($(EXE_DIR_OS) $(EXE_ARCH_DIR_OS)) do if exist %d $(RD) %d,)
-@$(RDP) $(OBJ_DIR_OS) $(LIB_FILE_OS) $(EXE_FILE_OS)
$(if $(LIB_FILE),-@if not exist $(LIB_DIR_OS) $(RDP) $(LIB_DIR_OS),)
$(if $(EXE_FILE),-@if not exist $(EXE_DIR_OS) $(RDP) $(EXE_DIR_OS),)
endif
@@ -102,22 +96,22 @@ ifeq ($(HB_SHELL),dos)
TOOL_DIR := $(subst /,\,$(TOP)$(ROOT)config/)
MK = $(subst \,/,$(subst \~,~,$(MAKE)))
RM = $(TOOL_DIR)dj-rm -f
RM = del
RDP = $(TOOL_DIR)dj-rm -f -r
CP = $(TOOL_DIR)dj-cp -f
MD = $(TOOL_DIR)dj-mkdir
MD = mkdir
MDP = $(TOOL_DIR)dj-mkdir -p
dirbase::
-@$(CMDPREF)if not exist $(OBJ_DIR_OS)\nul $(MDP) $(OBJ_DIR_OS)
$(if $(LIB_FILE),-@$(CMDPREF)if not exist $(LIB_DIR_OS)\nul $(MDP) $(LIB_DIR_OS),)
$(if $(EXE_FILE),-@$(CMDPREF)if not exist $(EXE_DIR_OS)\nul $(MDP) $(EXE_DIR_OS),)
-@if not exist $(OBJ_DIR_OS)\nul $(MDP) $(OBJ_DIR_OS)
$(if $(LIB_FILE),-@if not exist $(LIB_DIR_OS)\nul $(MDP) $(LIB_DIR_OS),)
$(if $(EXE_FILE),-@if not exist $(EXE_DIR_OS)\nul $(MDP) $(EXE_DIR_OS),)
clean::
-@$(RDP) $(OBJ_DIR_OS) $(LIB_FILE_OS) $(EXE_FILE_OS)
$(if $(LIB_FILE),-@$(CMDPREF)if exist $(basename $(LIB_FILE_OS)).bak $(RM) $(basename $(LIB_FILE_OS)).bak,)
$(if $(LIB_FILE),-@$(CMDPREF)if not exist $(LIB_DIR_OS)\*.* $(RDP) $(LIB_DIR_OS),)
$(if $(EXE_FILE),-@$(CMDPREF)if exist $(basename $(EXE_FILE_OS)).tds $(RM) $(basename $(EXE_FILE_OS)).tds,)
$(if $(EXE_FILE),-@$(CMDPREF)if not exist $(EXE_DIR_OS)\*.* $(RDP) $(EXE_DIR_OS),)
$(if $(LIB_FILE),-@if exist $(basename $(LIB_FILE_OS)).bak $(RM) $(basename $(LIB_FILE_OS)).bak,)
$(if $(LIB_FILE),-@if not exist $(LIB_DIR_OS)\*.* $(RDP) $(LIB_DIR_OS),)
$(if $(EXE_FILE),-@if exist $(basename $(EXE_FILE_OS)).tds $(RM) $(basename $(EXE_FILE_OS)).tds,)
$(if $(EXE_FILE),-@if not exist $(EXE_DIR_OS)\*.* $(RDP) $(EXE_DIR_OS),)
endif

View File

@@ -58,7 +58,7 @@ endif
ifeq ($(HB_SHELL),os2)
define inst_file_all
if not exist $(INSTALL_DIR_OS) $(MD) $(INSTALL_DIR_OS)
if not exist $(INSTALL_DIR_OS) $(MDP) $(INSTALL_DIR_OS)
$(foreach file, $(INSTALL_FILES_OS), $(inst_file))
endef

View File

@@ -7,11 +7,6 @@ include $(TOP)$(ROOT)config/global.cf
ifneq ($(HB_ARCHITECTURE),)
ifneq ($(HB_COMPILER),)
# no slash at the end
LIB_ARCH_DIR := $(TOP)$(ROOT)lib/$(HB_ARCHITECTURE)
# no slash at the end
LIB_DIR := $(TOP)$(ROOT)lib/$(ARCH_COMP)
include $(TOP)$(ROOT)config/c.cf
include $(TOP)$(ROOT)config/prg.cf
@@ -19,11 +14,6 @@ LIB_NAME := $(LIB_PREF)$(LIBNAME)$(LIB_EXT)
LIB_FILE := $(LIB_DIR)/$(LIB_NAME)
ifeq ($(HB_SHELL),os2)
EXE_ARCH_DIR := $(TOP)$(ROOT)bin/$(HB_ARCHITECTURE)
endif
EXE_DIR := $(TOP)$(ROOT)bin/$(ARCH_COMP)
ALL_OBJS = $(ALL_C_OBJS) $(ALL_PRG_OBJS)
first:: dirbase descend

View File

@@ -8,7 +8,7 @@ ifneq ($(HB_ARCHITECTURE),)
ifneq ($(HB_COMPILER),)
ifneq ($(LIBNAME),)
DIR_RULE := @$(CMDPREF)echo "The '$(LIBNAME)' library ignored."
DIR_RULE := @echo "The '$(LIBNAME)' library ignored."
else
DIR_RULE :=
endif

BIN
harbour/config/os2-rm.exe Normal file

Binary file not shown.