Files
harbour-core/harbour/config/w32/global.cf
Przemyslaw Czerpak 9967551273 2006-11-28 19:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/compiler/harbour.y
    * use HB_COMP_PARAM macro in expression destructor instead of
      direct accessing hb_comp_data global variable to make compiler
      code MT safe

  + harbour/source/compiler/harbour.yyc
  + harbour/source/compiler/harbour.yyh
  + harbour/source/macro/macro.yyc
  + harbour/source/macro/macro.yyh
    + added generated by bison 2.3 grammar parsers for compiler and
      macro compiler

  * harbour/config/dos/global.cf
  * harbour/config/dos/install.cf
  * harbour/config/w32/global.cf
    * changed CP definition for COMMAND.COM so it can work as standalone
      command and added DIRSEP macro

  * harbour/config/c.cf
    + added support for HB_REBUILD_PARSER=no environment variable.
      When it's set then during build process grammars parsers
      will not be generated from grammar definitions files (.y)
      but instead the predefined ones (.yyc) used.
      Tested and works well in Linux and DOS

  * harbour/makefile.bc
    + added support for HB_REBUILD_PARSER=no environment variable.
      Not tested. It's even possible that I've just broken the BCC
      compilation with this modification. Please check it and fix
      me if necessary.
2006-11-28 18:29:44 +00:00

95 lines
1.5 KiB
CFEngine3

#
# $Id$
#
all : first
HB_GT_LIBS=\
gtcgi \
gtpca \
gtstd \
gtwin \
gtwvt \
gtgui \
# gtcrs \
# gtsln \
ifeq ($(HB_GT_LIB),)
HB_GT_LIB = gtwin
endif
ifeq ($(SHLVL),) # COMMAND.COM
# There is a conflict with the use of '\' and '/' characters
# The MAKE requires '/' in filenames (ARCH_DIR) however some compilers
# and some DOS commands require '\' (ARCH_DOS)
ARCH_DIR = $(subst \,/,$(HB_ARCH))
ARCH_DOS = $(subst /,\,$(HB_ARCH))
DIRSEP = $(subst /,\,\)
MK := $(subst \,/,$(subst \~,~,$(MAKE)))
ifeq ($(COMSPEC),) #location of command.com
ifeq ($(OS),Windows_NT)
COMSPEC := cmd.exe
else
COMSPEC := command.com
endif
endif
ifeq ($(findstring cmd.exe,$(COMSPEC)),cmd.exe)
CMD_EXE := yes
else
CMD_EXE := no
endif
RM = del
RD = rmdir
MD = md
CP = $(COMSPEC) /C copy
MV = move
ifeq ($(CMD_EXE),yes)
RM = del /q /f
RD = rmdir /q /s
dirbase::
-@$(COMSPEC) /c \
'for %d in ($(HB_ARCHITECTURE) $(ARCH_DOS)) do if not exist %d\. $(MD) %d'
clean::
-@$(COMSPEC) /c \
'if exist $(ARCH_DOS) $(RD) $(ARCH_DOS)'
else # command.com
dirbase::
-@for %%d in ($(HB_ARCHITECTURE) $(ARCH_DOS)) do if not exist %%d\nul $(MD) %%d
clean::
-@for %%f in ($(ARCH_DOS)\*.* *.bak *.obj *.o *.tds) do $(RM) %%f
-@for %%d in ($(ARCH_DOS) $(HB_ARCHITECTURE)) do if exist %%d\nul $(RD) %%d
endif
else # bash
ARCH_DIR = $(HB_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 $(HB_ARCH) ] || $(MD) $(HB_ARCH)
clean::
-$(RD) $(ARCH_DIR)
endif