Files
harbour-core/harbour/make_vc.mak
Przemyslaw Czerpak bf68197ca0 2008-04-09 20:42 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
  * harbour/harbour.spec
    * reverted translation to UTF8 - Tomaz please check your editor
      settings and disable automatic translation to UTF8. It's not
      the first as such situation happens.

  * harbour/include/hbclass.ch
    + added two missing PP directives
    ! protected against some repeated external definitions

  * harbour/source/pp/Makefile
  * harbour/source/pp/hbppgen.c
  * harbour/source/pp/ppcore.c
  * harbour/source/common/hbver.c
  * harbour/source/common/hbverdsp.c
  * harbour/source/main/harbour.c
  * harbour/source/vm/cmdarg.c
  * harbour/utils/hbpp/hbpp.c
  * harbour/include/hbpp.h
  * harbour/include/hbcomp.h
  * harbour/include/hbver.h
  * harbour/include/hbapi.h
  * harbour/make_vcce.mak
  * harbour/make_b32.mak
  * harbour/make_vc.mak
  * harbour/make_gcc.mak
    + added support for dynamically set during compilation ChangeLog entry
      ChangeLog ID and SVN revision and compilation flags
      Now hbppgen creates in include directory hbverbld.h file with
      information extracted from ChangeLog. New hbppgen parameters:
         Syntax:  ./hbppgen <file>[.prg] [options]
         Options: -i<path>       add #include file search path
                  -c[<file>]     look for ChangeLog file
                  -o<file>       creates .c file with PP rules
                  -v<file>       creates .h file with version information
                  -w             write preprocessed (.ppo) input file
                  -q             disable information messages
    + added new C functions:
         int hb_verSvnID( void )
            - retrieves ChangeLog SVN revision number
         const char * hb_verSvnChangeLogID( void )
            - retrieves a static buffer containing ChangeLog ID string
         const char * hb_verSvnLastEntry( void )
            - retrieves a static buffer containing ChangeLog last entry string
         const char * hb_verFlagsC( void )
            - retrieves a static buffer containing build time C compiler
              flags in C_USR envvar
         const char * hb_verFlagsL( void )
            - retrieves a static buffer containing build time linker
              flags in L_USR envvar
         const char * hb_verFlagsPRG( void )
            - retrieves a static buffer containing build time Harbour compiler
              flags in PRG_USR envvar
    + added new default PP defines which can be used in .prg code compiled
      by Harbour compiler: HB_VER_LENTRY, HB_VER_CHLID, HB_VER_SVNID

  * harbour/source/rtl/gtxwc/gtxwc.c
    * formatting

  * harbour/source/rtl/gttrm/gttrm.c
    ! fixed redrawing GPM mouse pointer after screen updating

  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtpca/gtpca.c
    * updated for compilation even if some POSIX macros are not supported
      f.e. problems with some DJGPP versions reported recently

  * harbour/source/debug/dbgentry.c
  * harbour/source/debug/dbgtobj.prg
  * harbour/source/debug/dbgbrwsr.prg
  * harbour/source/debug/dbgthsh.prg
  * harbour/source/debug/tbrwtext.prg
  * harbour/source/debug/dbgwa.prg
  * harbour/source/debug/debugger.prg
  * harbour/source/debug/dbghelp.prg
  * harbour/source/debug/dbgtarr.prg
    ! Fixed object inspector in the debugger.
    ! Added HbDbBrowser:invalidate() message. Fixes work area browsing in debugger.
    ! Added an minimalistic TBrowse implementation that is just enough
      for internal use by the debugger. Fixes miscellaneous problems e.g.
      when debugging a piece of code with RELATIONs turned on.
    Fixes by Phil Krylov borrowed from xHarbour.
2008-04-09 18:44:03 +00:00

1059 lines
44 KiB
Makefile

#
# $Id$
#
#**********************************************************
# Makefile for Harbour Project for MSVC compilers
#**********************************************************
# ---------------------------------------------------------------
# Copyright 2007 Marek Paliwoda (mpaliwoda "at" interia "dot" pl)
# See doc/license.txt for licensing terms.
# ---------------------------------------------------------------
# ---------------------------------------------------------------
# If you need to set additional compiler/linker options use the
# environment variables below, but please DON'T MODIFY THIS FILE
# for this purpose.
# ---------------------------------------------------------------
#
# NOTE: You can use these envvars to configure the make process:
# (note that these are all optional)
#
# C_USR - Extra C compiler options for libraries and for
# executables (GNU make compatible envvar)
# CLIBFLAGS - Extra C compiler options for the static libraries
# CLIBFLAGSDLL - Extra C compiler options for the shared libraries
#
# LDFLAGS - Extra linker options for the static libraries
# LDFLAGSDLL - Extra linker options for the shared libraries
#
# HARBOURFLAGS - Extra Harbour compiler options for static libs/exes
# HARBOURFLAGSDLL - Extra Harbour compiler options for shared libraries
# PRG_USR - Extra Harbour compiler options
# (GNU make compatible envvar)
# HB_GT_DEFAULT - The default GT driver, Choose between :
# gtstd (default),gtcgi,gtwin,gtwvt
# HB_GT_LIB - To override the default GT driver
# (search for HB_GT_LIBS for a list of values)
# HB_BUILD_ST - If set to yes builds harbour in SingleThread mode
# HB_BUILD_DLL - If set to yes enables building harbour VM+RTL
# dll in addition to normal static build
# HB_BUILD_MODE - If set to cpp causes to compile in C++ mode
# HB_BUILD_DEBUG - If set to yes causes to compile with debug info
# HB_BUILD_VERBOSE - enables echoing commands being executed
# HB_INSTALL_PREFIX - Path to instalation directory into which
# Harbour will be installed when the command
# "make_vc.bat install" is lauched. Defaults
# to current directory
# HB_VISUALC_VER - Version of Visual C++ compiler (defaults to 60).
# Possible values are : 60, 70, 71, 80
#
# HB_DOC_PDF - Turns on the .PDF file support in the HBDOC utility.
# Note that this will require the pdflib contrib.
#**********************************************************
.SUFFIXES:
#**********************************************************
HB_ARCHITECTURE = w32
#**********************************************************
!if "$(HB_GT_LIB)" == ""
HB_GT_LIB = gtwin
!endif
#**********************************************************
# Visual C++ version
!ifndef HB_VISUALC_VER
HB_VISUALC_VER = 60
!endif
#**********************************************************
CC = cl.exe
LINKER = link.exe
MKLIB = lib.exe
#**********************************************************
# Include Common Object list files
# shared between Msvc and Borland
!include common.mak
#**********************************************************
.SUFFIXES: $(EXEEXT) $(LIBEXT) $(OBJEXT) .prg .c .l .y
#**********************************************************
# Some definitions cannot be kept in Common.mak
# due to serious limitations of Microsoft Nmake
# Nmake does not support macros in string
# substitution, so we have to hardcode it
DLL_OBJS = $(TMP_DLL_OBJS:obj\vc=obj\dll\vc)
#**********************************************************
# C compiler, Harbour compiler and Linker flags.
#**********************************************************
# Main "Include" directory
INCLUDE_DIR = include
#**********************************************************
# In which mode compile Harbour C or CPP
!if "$(HB_BUILD_MODE)" == "cpp"
HB_BUILD_MODE = P
!else
HB_BUILD_MODE = C
!endif
#**********************************************************
# C Compiler Flags
!if $(HB_VISUALC_VER) >= 80
CFLAGS_VER = -Ot2b1 -EHs-c- -FD -Gs -D_CRT_SECURE_NO_DEPRECATE
!else
CFLAGS_VER = -Ogt2yb1p -GX- -G6 -YX -FD -Gs
!endif
CFLAGS = -I$(INCLUDE_DIR) $(CFLAGS_VER) -T$(HB_BUILD_MODE) \
-W3 -nologo -D__WINDOWS__ -DWIN32 -D__WIN32__ \
$(C_USR) $(CFLAGS) -I$(OBJ_DIR)
#-----------
!if "$(HB_BUILD_DEBUG)" == "yes"
CFLAGS = -Zi $(CFLAGS)
DBGMARKER = d
!endif
#-----------
!if "$(HB_BUILD_ST)" != "yes"
CFLAGS = -MT$(DBGMARKER) $(CFLAGS)
!endif
#-----------
!if "$(HB_GT_DEFAULT)" != ""
CFLAGS = -D"HB_GT_DEFAULT=$(HB_GT_DEFAULT:gt=)" $(CFLAGS)
!endif
#-----------
!if "$(HB_GT_LIB)" != ""
CFLAGS = -D"HB_GT_LIB=$(HB_GT_LIB:gt=)" $(CFLAGS)
!endif
#-----------
#**********************************************************
CLIBFLAGS = -c $(CFLAGS) $(CLIBFLAGS)
CLIBFLAGSxxx = $(CLIBFLAGS: -MT= )
CLIBFLAGSxxx = $(CLIBFLAGSxxx: -MTd= )
CLIBFLAGSDLL = -D__EXPORT__ -MT$(DBGMARKER) $(CLIBFLAGS) $(CLIBFLAGSDLL)
CEXEFLAGSDLL = -MT$(DBGMARKER) $(CLIBFLAGS) $(CEXEFLAGSDLL)
#**********************************************************
# Harbour Compiler Flags
HBFLAGSCMN = -i$(INCLUDE_DIR) -q0 -w2 -es2 -gc0 -kM $(PRG_USR)
!ifdef HB_DOC_PDF
HBFLAGSCMN = $(HBFLAGSCMN) -dPDF
!endif
HARBOURFLAGS = -n $(HBFLAGSCMN) $(HARBOURFLAGS)
HARBOURFLAGSDLL= -D__EXPORT__ -n1 $(HBFLAGSCMN) $(HARBOURFLAGSDLL)
#**********************************************************
# Linker Flags
LDFLAGS = /NOLOGO /SUBSYSTEM:console /OPT:WIN98 /LIBPATH:$(LIB_DIR) $(LDFLAGS)
LDFLAGSDLL = /NOLOGO /DLL /OPT:WIN98 /LIBPATH:$(LIB_DIR) $(LDFLAGSDLL)
!if "$(HB_BUILD_DEBUG)" == "yes"
LDFLAGS = /DEBUG $(LDFLAGS)
LDFLAGSDLL = /DEBUG $(LDFLAGSDLL)
!endif
#**********************************************************
# COMPILE Rules
#**********************************************************
#*******************************************************
# General *.c --> *.obj COMPILE rules for STATIC Libraries
#*******************************************************
{$(OBJ_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(MAIN_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(COMMON_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(COMPILER_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(PP_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(VM_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(RTL_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(MACRO_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(DEBUG_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(LANG_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(CODEPAGE_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(PCRE_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(RDD_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(NULSYS_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(DBFNTX_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(DBFCDX_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(DBFFPT_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBSIX_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HSX_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(USRRDD_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(GTCGI_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(GTPCA_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(GTSTD_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(GTWIN_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(GTWVT_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(GTGUI_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(COMPILER_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBPP_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBPPTEST_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBRUN_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBDOT_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBTEST_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBDOC_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBMAKE_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
{$(HBVER_DIR)}.c{$(OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $<
#*******************************************************
#*******************************************************
# General *.prg --> *.obj COMPILE rules for STATIC Libraries
#*******************************************************
{$(OBJ_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(COMMON_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(PP_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(VM_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(RTL_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(MACRO_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(DEBUG_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(LANG_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(CODEPAGE_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(PCRE_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(RDD_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(NULSYS_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(DBFNTX_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(DBFCDX_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(DBFFPT_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBSIX_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HSX_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(USRRDD_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTCGI_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTPCA_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTSTD_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTWIN_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTWVT_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTGUI_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(COMPILER_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBPP_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBPPTEST_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) $< -o$(OBJ_DIR)\\
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBRUN_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBDOT_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBTEST_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBDOC_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBMAKE_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBVER_DIR)}.prg{$(OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $<
$(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c
#*******************************************************
#*******************************************************
# General *.c --> *.obj COMPILE rules for SHARED Libraries
#*******************************************************
{$(DLL_OBJ_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(MAIN_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(COMMON_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(COMPILER_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(PP_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(VM_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(RTL_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(MACRO_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(DEBUG_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(LANG_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(CODEPAGE_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(PCRE_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(RDD_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(NULSYS_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(DBFNTX_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(DBFCDX_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(DBFFPT_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBSIX_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HSX_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(USRRDD_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(GTCGI_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(GTPCA_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(GTSTD_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(GTWIN_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(GTWVT_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(GTGUI_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
#*******************************************************
# General *.c --> *.obj COMPILE rules for EXECUTABLES,
# which use Harbour SHARED Library compiled as DLL
#*******************************************************
#{$(COMPILER_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
# $(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
#{$(HBPP_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
# $(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBPPTEST_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBRUN_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBDOT_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBTEST_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBDOC_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBMAKE_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
{$(HBVER_DIR)}.c{$(DLL_OBJ_DIR)}$(OBJEXT)::
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $<
#*******************************************************
#*******************************************************
# General *.prg --> *.obj COMPILE rules for SHARED Libraries
#*******************************************************
{$(DLL_OBJ_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(COMMON_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(PP_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(VM_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(RTL_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(MACRO_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(DEBUG_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(LANG_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(PCRE_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(CODEPAGE_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(RDD_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(NULSYS_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(DBFNTX_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(DBFCDX_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(DBFFPT_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBSIX_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HSX_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(USRRDD_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTCGI_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTPCA_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTSTD_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTWIN_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTWVT_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(GTGUI_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGSDLL) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CLIBFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
#*******************************************************
# General *.prg --> *.obj COMPILE rules for EXECUTABLES,
# which use Harbour SHARED Library compiled as DLL
#*******************************************************
#{$(COMPILER_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
# $(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
# $(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
#{$(HBPP_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
# $(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
# $(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBPPTEST_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBRUN_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBDOT_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBTEST_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBDOC_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBMAKE_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#*******************************************************
{$(HBVER_DIR)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT):
$(HB) $(HARBOURFLAGS) -o$(DLL_OBJ_DIR)\ $<
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $(DLL_OBJ_DIR)\$(*B).c
#**********************************************************
#**********************************************************
# TARGET dependencies
#**********************************************************
all : $(HB_DEST_DIRS) $(HB_BUILD_TARGETS)
#**********************************************************
# Helper targets - disabled for Msvc
#**********************************************************
#BasicLibs : $(COMMON_LIB) $(COMPILER_LIB) $(PP_LIB)
#BasicExes : $(HARBOUR_EXE)
#StdLibs : $(STANDARD_STATIC_HBLIBS)
#**********************************************************
$(HB_DEST_DIRS) $(HB_BIN_INSTALL) $(HB_LIB_INSTALL) $(HB_INC_INSTALL):
!if not exist $@\nul mkdir $@
#**********************************************************
# LIBRARY Targets BUILD rules
#**********************************************************
$(COMMON_LIB) : $(COMMON_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(PP_LIB) : $(PP_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(COMPILER_LIB) : $(COMPILER_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(VM_LIB) : $(VM_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(RTL_LIB) : $(RTL_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(MACRO_LIB) : $(MACRO_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(DEBUG_LIB) : $(DEBUG_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(LANG_LIB) : $(LANG_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(CODEPAGE_LIB) : $(CODEPAGE_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(PCRE_LIB) : $(PCRE_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(RDD_LIB) : $(RDD_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(NULSYS_LIB) : $(NULSYS_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(DBFNTX_LIB) : $(DBFNTX_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(DBFCDX_LIB) : $(DBFCDX_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(DBFFPT_LIB) : $(DBFFPT_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(HBSIX_LIB) : $(HBSIX_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(HSX_LIB) : $(HSX_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(USRRDD_LIB) : $(USRRDD_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(GTCGI_LIB) : $(GTCGI_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(GTDOS_LIB) : $(GTDOS_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(GTPCA_LIB) : $(GTPCA_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(GTSTD_LIB) : $(GTSTD_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(GTWIN_LIB) : $(GTWIN_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(GTWVT_LIB) : $(GTWVT_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
$(GTGUI_LIB) : $(GTGUI_LIB_OBJS)
$(MKLIB) /out:$@ $**
#**********************************************************
#**********************************************************
# EXECUTABLE Targets
#**********************************************************
#**********************************************************
# HARBOUR build rule
#**********************************************************
$(HARBOUR_EXE) : $(HARBOUR_EXE_OBJS)
IF EXIST "$(HARBOUR_EXE)" $(DEL) "$(HARBOUR_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HARBOUR_EXE)
$(**: = ^
)
$(COMMON_LIB)
$(COMPILER_LIB)
$(PP_LIB)
<<$(KEEPSTATE)
#**********************************************************
# HBPPGEN build rule
#**********************************************************
$(HBPPGEN_EXE) : $(HBPPGEN_EXE_OBJS)
IF EXIST "$(HBPPGEN_EXE)" $(DEL) "$(HBPPGEN_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBPPGEN_EXE)
$(**: = ^
)
$(COMMON_LIB)
<<$(KEEPSTATE)
#**********************************************************
# HBPP build rule
#**********************************************************
$(HBPP_EXE) : $(HBPP_EXE_OBJS)
IF EXIST "$(HBPP_EXE)" $(DEL) "$(HBPP_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBPP_EXE)
$(**: = ^
)
$(COMMON_LIB)
<<$(KEEPSTATE)
#**********************************************************
# HBRUN build rule
#**********************************************************
$(HBRUN_EXE) : $(HBRUN_EXE_OBJS)
IF EXIST "$(HBRUN_EXE)" $(DEL) "$(HBRUN_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBRUN_EXE)
$(**: = ^
)
$(STANDARD_STATIC_HBLIBS)
user32.lib winspool.lib wsock32.lib advapi32.lib
<<$(KEEPSTATE)
#**********************************************************
# HBDOT build rule
#**********************************************************
$(HBDOT_EXE) : $(HBDOT_EXE_OBJS)
IF EXIST "$(HBDOT_EXE)" $(DEL) "$(HBDOT_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBDOT_EXE)
$(**: = ^
)
$(STANDARD_STATIC_HBLIBS)
user32.lib winspool.lib wsock32.lib advapi32.lib
<<$(KEEPSTATE)
#**********************************************************
# HBTEST build rule
#**********************************************************
$(HBTEST_EXE) : $(HBTEST_EXE_OBJS)
IF EXIST "$(HBTEST_EXE)" $(DEL) "$(HBTEST_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBTEST_EXE)
$(**: = ^
)
$(STANDARD_STATIC_HBLIBS)
user32.lib winspool.lib
<<$(KEEPSTATE)
#**********************************************************
# HBPPTEST build rule
#**********************************************************
$(HBPPTEST_EXE) : $(HBPPTEST_EXE_OBJS)
IF EXIST "$(HBPPTEST_EXE)" $(DEL) "$(HBPPTEST_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBPPTEST_EXE)
$(**: = ^
)
$(PP_LIB)
$(STANDARD_STATIC_HBLIBS)
user32.lib winspool.lib
<<$(KEEPSTATE)
#**********************************************************
# HBDOC build rule
#**********************************************************
$(HBDOC_EXE) : $(HBDOC_EXE_OBJS)
IF EXIST "$(HBDOC_EXE)" $(DEL) "$(HBDOC_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBDOC_EXE)
$(**: = ^
)
$(STANDARD_STATIC_HBLIBS)
user32.lib winspool.lib
<<$(KEEPSTATE)
#**********************************************************
# HBMAKE build rule
#**********************************************************
$(HBMAKE_EXE) : $(HBMAKE_EXE_OBJS)
IF EXIST "$(HBMAKE_EXE)" $(DEL) "$(HBMAKE_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBMAKE_EXE)
$(**: = ^
)
$(STANDARD_STATIC_HBLIBS)
user32.lib winspool.lib
<<$(KEEPSTATE)
#**********************************************************
# HBVER build rule
#**********************************************************
$(HBVER_EXE) : $(HBVER_EXE_OBJS)
IF EXIST "$(HBVER_EXE)" $(DEL) "$(HBVER_EXE)" > nul
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBVER_EXE)
$(**: = ^
)
$(STANDARD_STATIC_HBLIBS)
user32.lib winspool.lib
<<$(KEEPSTATE)
#**********************************************************
#**********************************************************
# DLL Targets
#**********************************************************
#$(HARBOUR_DLL) : $(HARBOUR_EXE) $(DLL_OBJS)
$(HARBOUR_DLL) : $(HB) $(DLL_OBJS)
$(LINKER) @<<
$(LDFLAGSDLL) /OUT:$(@)
/IMPLIB:$(@:.dll=.lib)
$(DLL_OBJS: = ^
)
advapi32.lib gdi32.lib user32.lib winspool.lib wsock32.lib
<<$(KEEPSTATE)
#**********************************************************
# DLL EXECUTABLE Targets
#**********************************************************
HBTESTDLL_OBJS = $(DLL_OBJ_DIR)\mainstd$(OBJEXT) $(HBTEST_EXE_OBJS:obj\vc=obj\dll\vc)
$(HBTESTDLL_EXE) : $(HARBOUR_DLL) $(HBTESTDLL_OBJS)
$(LINKER) @<<
$(LDFLAGS)
/OUT:$(HBTESTDLL_EXE)
$(HBTESTDLL_OBJS: = ^
)
$(HARBOUR_DLL:.dll=.lib)
<<$(KEEPSTATE)
#----------------------------------------------------------
$(DLL_OBJ_DIR)\mainstd$(OBJEXT) : $(VM_DIR)\mainstd.c
$(CC) $(CEXEFLAGSDLL) -Fo$(DLL_OBJ_DIR)\ $**
#**********************************************************
#**********************************************************
# EXTRA Object's DEPENDENCIES
#**********************************************************
# Generated by an intermediate utility hbppgen.exe
# built at the initial phase of build process
$(OBJ_DIR)\pptable.obj : $(OBJ_DIR)\pptable.c
$(DLL_OBJ_DIR)\pptable.obj : $(DLL_OBJ_DIR)\pptable.c
$(OBJ_DIR)\pptable.c : include\hbstdgen.ch include\std.ch ChangeLog $(PP_DIR)\ppcore.c $(PP_DIR)\hbppgen.c
IF EXIST "$(OBJ_DIR)\pptable.c" $(DEL) "$(OBJ_DIR)\pptable.c" > nul
$(HBPPGEN) include/hbstdgen.ch -o$(OBJ_DIR)/pptable.c -q -cChangeLog -vinclude/hbverbld.h
$(DLL_OBJ_DIR)\pptable.c : include\hbstdgen.ch include\std.ch ChangeLog $(PP_DIR)\ppcore.c $(PP_DIR)\hbppgen.c
IF EXIST "$(DLL_OBJ_DIR)\pptable.c" $(DEL) "$(DLL_OBJ_DIR)\pptable.c" > nul
$(HBPPGEN) include/hbstdgen.ch -o$(DLL_OBJ_DIR)/pptable.c -q -cChangeLog -vinclude/hbverbld.h
#**********************************************************
!if "$(HB_REBUILD_PARSER)" == "yes"
$(OBJ_DIR)\harboury.c : $(COMPILER_DIR)\harbour.y
bison --no-line -d $** -o$@
$(OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.y
bison --no-line -d $** -o$@
$(DLL_OBJ_DIR)\harboury.c : $(COMPILER_DIR)\harbour.y
bison --no-line -d $** -o$@
$(DLL_OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.y
bison --no-line -d $** -o$@
!else
$(OBJ_DIR)\harboury.c : $(COMPILER_DIR)\harbour.yyc
copy /A $** $@
copy /A $(**:.yyc=.yyh) $(@:.c=.h)
$(OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.yyc
copy /A $** $@
copy /A $(**:.yyc=.yyh) $(@:.c=.h)
$(DLL_OBJ_DIR)\harboury.c : $(COMPILER_DIR)\harbour.yyc
copy /A $** $@
copy /A $(**:.yyc=.yyh) $(@:.c=.h)
$(DLL_OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.yyc
copy /A $** $@
copy /A $(**:.yyc=.yyh) $(@:.c=.h)
!endif
$(OBJ_DIR)\harboury.obj : $(OBJ_DIR)\harboury.c
$(OBJ_DIR)\macroy.obj : $(OBJ_DIR)\macroy.c
$(DLL_OBJ_DIR)\harboury.obj : $(DLL_OBJ_DIR)\harboury.c
$(DLL_OBJ_DIR)\macroy.obj : $(DLL_OBJ_DIR)\macroy.c
#**********************************************************
#**********************************************************
# CLEAN rules
#**********************************************************
clean: doClean
Clean: doClean
CLEAN: doClean
doClean:
-if exist *.idb $(DEL) *.idb > nul
-if exist *.pch $(DEL) *.pch > nul
-if exist *.pdb $(DEL) *.pdb > nul
-if exist $(OBJ_DIR)\*.obj $(DEL) $(OBJ_DIR)\*.obj > nul
-if exist $(OBJ_DIR)\*.c $(DEL) $(OBJ_DIR)\*.c > nul
-if exist $(OBJ_DIR)\*.h $(DEL) $(OBJ_DIR)\*.h > nul
-if exist $(OBJ_DIR)\*.pch $(DEL) $(OBJ_DIR)\*.pch > nul
-if exist $(LIB_DIR)\*.lib $(DEL) $(LIB_DIR)\*.lib > nul
-if exist $(BIN_DIR)\*.exe $(DEL) $(BIN_DIR)\*.exe > nul
-if exist $(BIN_DIR)\*.pdb $(DEL) $(BIN_DIR)\*.pdb > nul
-if exist $(BIN_DIR)\*.ilk $(DEL) $(BIN_DIR)\*.ilk > nul
-if exist $(BIN_DIR)\*.map $(DEL) $(BIN_DIR)\*.map > nul
-if exist $(BIN_DIR)\*.dll $(DEL) $(BIN_DIR)\*.dll > nul
-if exist $(BIN_DIR)\*.lib $(DEL) $(BIN_DIR)\*.lib > nul
-if exist $(BIN_DIR)\*.exp $(DEL) $(BIN_DIR)\*.exp > nul
-if exist $(DLL_OBJ_DIR)\*.obj $(DEL) $(DLL_OBJ_DIR)\*.obj > nul
-if exist $(DLL_OBJ_DIR)\*.c $(DEL) $(DLL_OBJ_DIR)\*.c > nul
-if exist $(DLL_OBJ_DIR)\*.h $(DEL) $(DLL_OBJ_DIR)\*.h > nul
-if exist inst_$(HB_CC_NAME).log $(DEL) inst_$(HB_CC_NAME).log > nul
-if exist bin\*.exe $(DEL) bin\*.exe > nul
-if exist lib\*.lib $(DEL) lib\*.lib > nul
#**********************************************************
# INSTALL rules
#**********************************************************
install : doInstall
Install : doInstall
INSTALL : doInstall
doInstall: $(HB_BIN_INSTALL) $(HB_LIB_INSTALL) $(HB_INC_INSTALL)
-if exist $(HB_BIN_INSTALL)\nul if exist $(BIN_DIR)\*.exe copy /B $(BIN_DIR)\*.exe $(HB_BIN_INSTALL) > inst_$(HB_CC_NAME).log
-if exist $(HB_BIN_INSTALL)\nul if exist $(BIN_DIR)\*.dll copy /B $(BIN_DIR)\*.dll $(HB_BIN_INSTALL) >> inst_$(HB_CC_NAME).log
-if exist $(HB_LIB_INSTALL)\nul if exist $(BIN_DIR)\*.lib copy /B $(BIN_DIR)\*.lib $(HB_LIB_INSTALL) >> inst_$(HB_CC_NAME).log
-if exist $(HB_LIB_INSTALL)\nul if exist $(LIB_DIR)\*.lib copy /B $(LIB_DIR)\*.lib $(HB_LIB_INSTALL) >> inst_$(HB_CC_NAME).log
!if "$(HB_INSTALL_PREFIX)" != "."
-if exist $(HB_INC_INSTALL)\nul copy /A include\*.api $(HB_INC_INSTALL) >> inst_$(HB_CC_NAME).log
-if exist $(HB_INC_INSTALL)\nul copy /A include\*.ch $(HB_INC_INSTALL) >> inst_$(HB_CC_NAME).log
-if exist $(HB_INC_INSTALL)\nul copy /A include\*.h $(HB_INC_INSTALL) >> inst_$(HB_CC_NAME).log
!endif
#**********************************************************