ChangeLogTag:Fri Jun 11 17:11:09 1999 Gonzalo A. Diethelm <Gonzalo.Diethelm@jda.cl>

This commit is contained in:
Gonzalo A. Diethelm
1999-06-12 00:13:33 +00:00
parent 1eb1414280
commit e2cde9bb35
17 changed files with 204 additions and 57 deletions

View File

@@ -1,3 +1,27 @@
Fri Jun 11 17:11:09 1999 Gonzalo A. Diethelm <Gonzalo.Diethelm@jda.cl>
* config/bin.cf:
* config/dir.cf:
* config/global.cf:
* config/install.cf:
* config/lib.cf:
* config/rules.cf:
* config/test.cf:
* config/dos/dir.cf:
* config/dos/djgpp.cf:
* config/dos/global.cf:
* config/dos/install.cf:
* config/win32/dir.cf:
* config/win32/gcc.cf:
* config/win32/global.cf:
* config/win32/install.cf:
* config/win32/msvc.cf:
* config/win32/rules.cf:
Reorganized things in an attempt to make it clearer how to support
different platforms and compilers. Also added as much support as I
could for running the GNU-make build system under plain
COMMAND.COM (DOS and Win95), not only under bash.
19990611-17:00 CET Matthew Hamiltion
* tests/working/inifiles.prg
new version installed

View File

@@ -13,7 +13,7 @@ ALL_OBJS = $(ALL_C_OBJS) $(ALL_PRG_OBJS)
first : dirbase descend
descend :
$(MAKE) -C $(ARCH_DIR) -f $(GRANDP)Makefile 'TOP=$(GRANDP)' $(EXE_NAME)
@$(MK) -C $(ARCH_DIR) -f $(GRANDP)Makefile 'TOP=$(GRANDP)' $(EXE_NAME)
$(EXE_NAME) : $(ALL_OBJS)
$(LD_RULE)

View File

@@ -2,15 +2,10 @@
# $Id$
#
include $(TOP)$(ROOT)config/global.cf
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/dir.cf
all : first
first clean install ::
ifeq ($(SHLVL),)
@cmd /c FOR /D %d IN ($(DIRS)) DO @$(MAKE) -C %d $@
else # ! Windows
@for d in $(DIRS); do \
if [ -d $$d ]; then \
$(MAKE) -C $$d $@; \
fi \
done
endif # ! Windows
$(DIR_RULE)

14
harbour/config/dos/dir.cf Normal file
View File

@@ -0,0 +1,14 @@
#
# $Id$
#
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf
ifeq ($(DIRS),) # Empty directory list
DIR_RULE =\
@echo Done
else
DIR_LIST = $(subst /,\,$(DIRS))
DIR_RULE =\
command.com /c FOR %d IN ($(DIR_LIST)) DO $(MK) -C %d $@
endif

View File

@@ -0,0 +1,29 @@
#
# $Id$
#
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf
OBJ_EXT = .obj
EXE_EXT = .exe
LIB_PREF =
LIB_EXT = .lib
CC = gcc
CC_OUT = -o
CPPFLAGS = -DDEBUG -I. -I$(HB_INC_DIR)
CFLAGS = -Wall -g
LD = gcc
LD_OUT = -o
ifdef HB_LIB_DIR
LDFLAGS = -L$(HB_LIB_DIR)
endif
LINKLIBS = $(foreach lib, $(LIBS), -l$(lib))
# LINKLIBS += -lm
AR = ar
ARFLAGS =
AR_RULE = $(AR) $(ARFLAGS) r $@ $^ || $(RM) $@
include $(TOP)$(ROOT)config/rules.cf

View File

@@ -0,0 +1,21 @@
#
# $Id$
#
ARCH_DIR = $(subst /,\,$(ARCH)\)
MK = $(subst /,\,$(subst \~,~,$(MAKE)))
RM = del /q
RD = rmdir
CP = copy
MV = move
MD = md
dirbase::
-$(MD) $(HB_ARCHITECTURE) >NUL
-$(MD) $(ARCH_DIR) >NUL
clean::
-$(RM) $(ARCH_DIR)\*.*
-$(RD) $(ARCH_DIR)

View File

@@ -0,0 +1,9 @@
#
# $Id$
#
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf
INSTALL_LIST = $(subst /,\,$(INSTALL_OBJS))
INSTALL_RULE =\
command.com /c FOR %f IN ($(INSTALL_LIST)) DO COPY %f $(INSTALL_DIR)

View File

@@ -2,27 +2,7 @@
# $Id$
#
all : first
GRANDP = ../../
ARCH = $(HB_ARCHITECTURE)/$(HB_COMPILER)
ifeq ($(SHLVL),)
ARCH_DIR = $(subst /,\\,$(ARCH))\\
else # ! Windows
ARCH_DIR = $(ARCH)/
endif
include $(TOP)$(ROOT)config/$(ARCH).cf
dirbase::
ifeq ($(SHLVL),)
-$(MD) $(HB_ARCHITECTURE)
-$(MD) $(ARCH_DIR) >NUL
else # ! Windows
@[ -d $(HB_ARCHITECTURE) ] || $(MD) $(HB_ARCHITECTURE); \
[ -d $(ARCH) ] || $(MD) $(ARCH)
endif
clean::
$(RM) -r $(ARCH_DIR)

View File

@@ -2,23 +2,7 @@
# $Id$
#
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/install.cf
install:: first
ifeq ($(SHLVL),)
@cmd /c FOR %f IN ($(INSTALL_OBJS)) DO @COPY %f $(INSTALL_DIR)
else # ! Windows
@if [ ! -d $(INSTALL_DIR) ]; \
then \
echo "! Can't install, path not found:" $(INSTALL_DIR); \
else \
for i in $(INSTALL_OBJS); \
do \
if [ -r $$i ]; \
then \
echo "! Installing $$i on $(INSTALL_DIR)"; \
$(CP) $$i $(INSTALL_DIR); \
else \
echo "! Can't install $$i, not found"; \
fi \
done \
fi
endif # ! Windows
$(INSTALL_RULE)

View File

@@ -14,7 +14,7 @@ ALL_OBJS = $(ALL_C_OBJS) $(ALL_PRG_OBJS)
first : dirbase descend
descend :
$(MAKE) -C $(ARCH_DIR) -f $(GRANDP)Makefile 'TOP=$(GRANDP)' $(LIB_NAME)
@$(MK) -C $(ARCH_DIR) -f $(GRANDP)Makefile 'TOP=$(GRANDP)' $(LIB_NAME)
$(LIB_NAME) : $(ALL_OBJS)
$(AR_RULE)

View File

@@ -8,7 +8,7 @@ YACC_FLAGS = -d
# How to run lex.
LEX = flex
LEX_FLAGS = -i
LEX_FLAGS = -i -8
# How to run Harbour.
HB = harbour$(EXE_EXT)
@@ -43,4 +43,4 @@ LD_RULE = $(LD) $(CFLAGS) $(LD_OUT)$@ $^ $(LDFLAGS) $(LINKLIBS)
# Generic rule to clean up.
clean::
$(RM) core *~ *.o
-$(RM) *.bak *.obj core *~ *.o

View File

@@ -8,4 +8,4 @@ include $(TOP)$(ROOT)config/prg.cf
first : dirbase descend
descend :
$(MAKE) -C $(ARCH_DIR) -f $(GRANDP)Makefile 'TOP=$(GRANDP)' $(PRG_EXES)
@$(MK) -C $(ARCH_DIR) -f $(GRANDP)Makefile 'TOP=$(GRANDP)' $(PRG_EXES)

View File

@@ -0,0 +1,25 @@
#
# $Id$
#
ifeq ($(SHLVL),) # COMMAND.COM
ifeq ($(DIRS),) # Empty directory list
DIR_RULE =\
@echo Done
else
DIR_LIST = $(subst /,\,$(DIRS))
DIR_RULE =\
command.com /c FOR %d IN ($(DIR_LIST)) DO $(MK) -C %d $@
endif
else # bash
DIR_RULE =\
@for d in $(DIRS); do \
if [ -d $$d ]; then \
$(MAKE) -C $$d $@; \
fi \
done
endif # ! Windows

View File

@@ -26,4 +26,4 @@ AR = ar
ARFLAGS =
AR_RULE = $(AR) $(ARFLAGS) r $@ $^ || $(RM) $@
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/rules.cf
include $(TOP)$(ROOT)config/rules.cf

View File

@@ -2,7 +2,45 @@
# $Id$
#
all : first
ifeq ($(SHLVL),) # COMMAND.COM
ARCH_DIR = $(subst /,\,$(ARCH)\)
MK = $(subst /,\,$(subst \~,~,$(MAKE)))
RM = del /q
RD = rmdir
CP = copy
MV = move
MD = md
dirbase::
-$(MD) $(HB_ARCHITECTURE) >NUL
-$(MD) $(ARCH_DIR) >NUL
clean::
-$(RM) $(ARCH_DIR)\*.*
-$(RD) $(ARCH_DIR)
else # bash
ARCH_DIR = $(ARCH)/
MK = $(MAKE)
RM = rm -f
RD = rm -f -r
CP = cp -f
MV = mv -f
MD = mkdir
dirbase::
@[ -d $(HB_ARCHITECTURE) ] || $(MD) $(HB_ARCHITECTURE); \
[ -d $(ARCH) ] || $(MD) $(ARCH)
clean::
-$(RD) $(ARCH_DIR)
endif

View File

@@ -0,0 +1,30 @@
#
# $Id$
#
ifeq ($(SHLVL),) # COMMAND.COM
INSTALL_LIST = $(subst /,\,$(INSTALL_OBJS))
INSTALL_RULE =\
command.com /c FOR %f IN ($(INSTALL_LIST)) DO COPY %f $(INSTALL_DIR)
else # bash
INSTALL_RULE =\
@if [ ! -d $(INSTALL_DIR) ]; \
then \
echo "! Can't install, path not found:" $(INSTALL_DIR); \
else \
for i in $(INSTALL_OBJS); \
do \
if [ -r $$i ]; \
then \
echo "! Installing $$i on $(INSTALL_DIR)"; \
$(CP) $$i $(INSTALL_DIR); \
else \
echo "! Can't install $$i, not found"; \
fi \
done \
fi
endif

View File

@@ -2,8 +2,6 @@
# $Id$
#
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf
OBJ_EXT = .obj
EXE_EXT = .exe
LIB_PREF =
@@ -25,4 +23,4 @@ AR = lib.exe
ARFLAGS =
AR_RULE = $(AR) $(ARFLAGS) /out:$@ $^ || $(RM) $@
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/rules.cf
include $(TOP)$(ROOT)config/rules.cf