diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 80eae2251c..fe00102bcb 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,59 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ +2007-11-09 15:20 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + * source/compiler/hbcomp.c + ! Changed error messaged to go to stderr on non-Unix + platforms too. With this change the Harbour compiler + uses the same output on non-Unix platforms as on Unixes. + With Przemek's previous and now this change, the + compiler uses stdout/stderr in the standard way + (messages to stdout, warnings/errors to stderr), + instead of being more or less CA-Cl*pper compatible. + (in CA-Cl*pper startup msg plus some info went to + stderr and errors/warnings and some other progress + info went to stdout) + + * source/compiler/hbusage.c + + Added -f* switches to help screen. + + * source/compiler/cmdcheck.c + ! -r= -> -r: + + * contrib/libct/screen2.c + * contrib/libct/cursor.c + * contrib/libct/ctstrfil.c + ! Fixed MSVC warnings. + + * contrib/libct/make_b32.bat + * contrib/libct/make_vc.bat + + * contrib/htmllib/Makefile.bc + * Changed to not generate .ppo output on build. + + * contrib/libct/make_b32.bat + * contrib/libct/make_vc.bat + - contrib/libct/makefile.bc + - contrib/libct/makefile.vc + + contrib/libct/common.mak + + contrib/maketpl.b32 + + contrib/maketpl.vc + + contrib/maketpl.mak + + Added BC/VC non-GNU generic make script for contribs. + + Using the above generic make scripts to build LIBCT. + Notice BC/VC now uses one make file per contrib project + named common.mak. The two helper batch files are essentially + identical for BC and VC, and there is no reduancy or any + complexity in common.mak (they much resemble in content + to Makefile). + Notice that with this new system users have to call + make_[b32|vc].bat INSTALL in order to get the libs and + headers installed in the final lib/header destinations. + (This step was previously done automatically by the .bat + files in LIBCT - or maybe not in other contribs.) + The new scripts also have a generic CLEAN functionality. + ; Thanks Marek Paliwoda for the generic make scripts. + 2007-11-09 00:09 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/tip/ftpcln.prg * converted TABs to SPACEs diff --git a/harbour/contrib/htmllib/Makefile.bc b/harbour/contrib/htmllib/Makefile.bc index 3f73fd5166..19cb42d731 100644 --- a/harbour/contrib/htmllib/Makefile.bc +++ b/harbour/contrib/htmllib/Makefile.bc @@ -70,7 +70,7 @@ TOOLS1_DIR = examples CFLAGS = -I$(INCLUDE_DIR) -d $(C_USR) $(CFLAGS) CLIBFLAGS = -c $(CFLAGS) $(CLIBFLAGS) CLIBFLAGSDEBUG = -v $(CLIBFLAGS) -HARBOURFLAGS = -i$(INCLUDE_DIR) -n -w2 -gc0 $(PRG_USR) $(HARBOURFLAGS) -p +HARBOURFLAGS = -i$(INCLUDE_DIR) -n -w2 -gc0 $(PRG_USR) $(HARBOURFLAGS) LDFLAGS = $(LDFLAGS) # diff --git a/harbour/contrib/libct/common.mak b/harbour/contrib/libct/common.mak new file mode 100644 index 0000000000..9313a44468 --- /dev/null +++ b/harbour/contrib/libct/common.mak @@ -0,0 +1,108 @@ +# +# $Id$ +# + +LIBNAME = libct + +LIB_PATH = $(LIB_DIR)\$(LIBNAME)$(LIBEXT) + +# +# LIB rules +# + +LIB_OBJS = \ + $(OBJ_DIR)\addascii$(OBJEXT) \ + $(OBJ_DIR)\asciisum$(OBJEXT) \ + $(OBJ_DIR)\ascpos$(OBJEXT) \ + $(OBJ_DIR)\atadjust$(OBJEXT) \ + $(OBJ_DIR)\atnum$(OBJEXT) \ + $(OBJ_DIR)\atrepl$(OBJEXT) \ + $(OBJ_DIR)\bitnum$(OBJEXT) \ + $(OBJ_DIR)\charevod$(OBJEXT) \ + $(OBJ_DIR)\charlist$(OBJEXT) \ + $(OBJ_DIR)\charmirr$(OBJEXT) \ + $(OBJ_DIR)\charmix$(OBJEXT) \ + $(OBJ_DIR)\charone$(OBJEXT) \ + $(OBJ_DIR)\charonly$(OBJEXT) \ + $(OBJ_DIR)\charop$(OBJEXT) \ + $(OBJ_DIR)\charrepl$(OBJEXT) \ + $(OBJ_DIR)\charsort$(OBJEXT) \ + $(OBJ_DIR)\charsprd$(OBJEXT) \ + $(OBJ_DIR)\charswap$(OBJEXT) \ + $(OBJ_DIR)\color$(OBJEXT) \ + $(OBJ_DIR)\count$(OBJEXT) \ + $(OBJ_DIR)\ctc$(OBJEXT) \ + $(OBJ_DIR)\ctchksum$(OBJEXT) \ + $(OBJ_DIR)\ctcrypt$(OBJEXT) \ + $(OBJ_DIR)\ctmath$(OBJEXT) \ + $(OBJ_DIR)\ctmath2$(OBJEXT) \ + $(OBJ_DIR)\ctnet$(OBJEXT) \ + $(OBJ_DIR)\ctpad$(OBJEXT) \ + $(OBJ_DIR)\ctset$(OBJEXT) \ + $(OBJ_DIR)\ctstr$(OBJEXT) \ + $(OBJ_DIR)\ctstrfil$(OBJEXT) \ + $(OBJ_DIR)\ctwfunc$(OBJEXT) \ + $(OBJ_DIR)\ctwin$(OBJEXT) \ + $(OBJ_DIR)\cursor$(OBJEXT) \ + $(OBJ_DIR)\datetime$(OBJEXT) \ + $(OBJ_DIR)\dattime2$(OBJEXT) \ + $(OBJ_DIR)\dattime3$(OBJEXT) \ + $(OBJ_DIR)\dbftools$(OBJEXT) \ + $(OBJ_DIR)\disk$(OBJEXT) \ + $(OBJ_DIR)\expand$(OBJEXT) \ + $(OBJ_DIR)\exponent$(OBJEXT) \ + $(OBJ_DIR)\files$(OBJEXT) \ + $(OBJ_DIR)\finan$(OBJEXT) \ + $(OBJ_DIR)\ftoc$(OBJEXT) \ + $(OBJ_DIR)\justify$(OBJEXT) \ + $(OBJ_DIR)\keyset$(OBJEXT) \ + $(OBJ_DIR)\like$(OBJEXT) \ + $(OBJ_DIR)\lton$(OBJEXT) \ + $(OBJ_DIR)\maxline$(OBJEXT) \ + $(OBJ_DIR)\misc1$(OBJEXT) \ + $(OBJ_DIR)\misc2$(OBJEXT) \ + $(OBJ_DIR)\misc3$(OBJEXT) \ + $(OBJ_DIR)\num1$(OBJEXT) \ + $(OBJ_DIR)\numat$(OBJEXT) \ + $(OBJ_DIR)\numcount$(OBJEXT) \ + $(OBJ_DIR)\numline$(OBJEXT) \ + $(OBJ_DIR)\pack$(OBJEXT) \ + $(OBJ_DIR)\pos1$(OBJEXT) \ + $(OBJ_DIR)\pos2$(OBJEXT) \ + $(OBJ_DIR)\posdiff$(OBJEXT) \ + $(OBJ_DIR)\print$(OBJEXT) \ + $(OBJ_DIR)\range$(OBJEXT) \ + $(OBJ_DIR)\relation$(OBJEXT) \ + $(OBJ_DIR)\remove$(OBJEXT) \ + $(OBJ_DIR)\replace$(OBJEXT) \ + $(OBJ_DIR)\screen1$(OBJEXT) \ + $(OBJ_DIR)\screen2$(OBJEXT) \ + $(OBJ_DIR)\setlast$(OBJEXT) \ + $(OBJ_DIR)\strdiff$(OBJEXT) \ + $(OBJ_DIR)\strswap$(OBJEXT) \ + $(OBJ_DIR)\tab$(OBJEXT) \ + $(OBJ_DIR)\token1$(OBJEXT) \ + $(OBJ_DIR)\token2$(OBJEXT) \ + $(OBJ_DIR)\trig$(OBJEXT) \ + $(OBJ_DIR)\video$(OBJEXT) \ + $(OBJ_DIR)\wordrepl$(OBJEXT) \ + $(OBJ_DIR)\wordtoch$(OBJEXT) \ + \ + $(OBJ_DIR)\blank$(OBJEXT) \ + $(OBJ_DIR)\ct$(OBJEXT) \ + $(OBJ_DIR)\ctmisc$(OBJEXT) \ + $(OBJ_DIR)\cttime$(OBJEXT) \ + $(OBJ_DIR)\fcopy$(OBJEXT) \ + $(OBJ_DIR)\getinfo$(OBJEXT) \ + $(OBJ_DIR)\getinput$(OBJEXT) \ + $(OBJ_DIR)\getsecrt$(OBJEXT) \ + $(OBJ_DIR)\keysave$(OBJEXT) \ + $(OBJ_DIR)\keysec$(OBJEXT) \ + $(OBJ_DIR)\keytime$(OBJEXT) \ + $(OBJ_DIR)\numconv$(OBJEXT) \ + $(OBJ_DIR)\screen3$(OBJEXT) \ + $(OBJ_DIR)\scrmark$(OBJEXT) \ + $(OBJ_DIR)\showtime$(OBJEXT) \ + +all: \ + $(LIB_PATH) \ diff --git a/harbour/contrib/libct/ctstrfil.c b/harbour/contrib/libct/ctstrfil.c index f362c16b34..71fd564647 100644 --- a/harbour/contrib/libct/ctstrfil.c +++ b/harbour/contrib/libct/ctstrfil.c @@ -248,7 +248,7 @@ HB_FUNC( FILESCREEN ) hb_gtRectSize( 0, 0, hb_gtMaxRow(), hb_gtMaxCol(), &ulSize ); pBuffer = ( char * ) hb_xgrab( ulSize ); - lLength = hb_fsRead( hFile, ( BYTE * ) pBuffer, ulSize ); + lLength = hb_fsReadLarge( hFile, ( BYTE * ) pBuffer, ulSize ); hb_gtRest( 0, 0, hb_gtMaxRow(), hb_gtMaxCol(), pBuffer ); hb_xfree( pBuffer ); diff --git a/harbour/contrib/libct/cursor.c b/harbour/contrib/libct/cursor.c index 2ac96ea301..54ce72d01b 100644 --- a/harbour/contrib/libct/cursor.c +++ b/harbour/contrib/libct/cursor.c @@ -74,11 +74,11 @@ HB_FUNC( RESTCURSOR ) { long lCursor = hb_parnl( 1 ); - hb_gtSetPos( ( lCursor >> 8 ) & 0xff, lCursor & 0xff ); + hb_gtSetPos( ( SHORT ) ( ( lCursor >> 8 ) & 0xff ), ( SHORT ) ( lCursor & 0xff ) ); #ifdef HB_C52_STRICT - hb_gtSetCursor( ( lCursor >> 16 ) & 0x01 ); + hb_gtSetCursor( ( USHORT ) ( ( lCursor >> 16 ) & 0x01 ) ); #else - hb_gtSetCursor( ( lCursor >> 16 ) & 0xff ); + hb_gtSetCursor( ( USHORT ) ( ( lCursor >> 16 ) & 0xff ) ); #endif hb_retc( NULL ); diff --git a/harbour/contrib/libct/make_b32.bat b/harbour/contrib/libct/make_b32.bat index 344f13d3a8..8f275c4c26 100644 --- a/harbour/contrib/libct/make_b32.bat +++ b/harbour/contrib/libct/make_b32.bat @@ -3,27 +3,35 @@ rem rem $Id$ rem +if "%CC_NAME%" == "" set CC_NAME=b32 +if "%HB_MAKE_PROGRAM%" == "" set HB_MAKE_PROGRAM=make.exe + if "%1" == "clean" goto CLEAN if "%1" == "CLEAN" goto CLEAN +if "%1" == "install" goto INSTALL +if "%1" == "INSTALL" goto INSTALL + :BUILD - make -fmakefile.bc %1 %2 %3 > make_b32.log - if errorlevel 1 goto BUILD_ERR - -:BUILD_OK - - copy ..\..\lib\b32\libct.lib ..\..\lib\*.* > nul - goto EXIT - -:BUILD_ERR - - notepad make_b32.log + %HB_MAKE_PROGRAM% -f ..\maketpl.%CC_NAME% %1 %2 %3 > make_%CC_NAME%.log + if errorlevel 1 notepad make_%CC_NAME%.log goto EXIT :CLEAN + %HB_MAKE_PROGRAM% %HB_MAKE_FLAGS% -f ..\maketpl.%CC_NAME% CLEAN > make_%CC_NAME%.log + goto EXIT + +:INSTALL + + if "%HB_INSTALL_PREFIX%" == "" set HB_INSTALL_PREFIX=..\.. + + if "%HB_BIN_INSTALL%" == "" set HB_BIN_INSTALL=%HB_INSTALL_PREFIX%\bin + if "%HB_INC_INSTALL%" == "" set HB_INC_INSTALL=%HB_INSTALL_PREFIX%\include + if "%HB_LIB_INSTALL%" == "" set HB_LIB_INSTALL=%HB_INSTALL_PREFIX%\lib + + %HB_MAKE_PROGRAM% %HB_MAKE_FLAGS% -f ..\maketpl.%CC_NAME% INSTALL > nul goto EXIT :EXIT - diff --git a/harbour/contrib/libct/make_vc.bat b/harbour/contrib/libct/make_vc.bat index bbc6ae1175..ca708873a7 100644 --- a/harbour/contrib/libct/make_vc.bat +++ b/harbour/contrib/libct/make_vc.bat @@ -3,19 +3,35 @@ rem rem $Id$ rem +if "%CC_NAME%" == "" set CC_NAME=vc +if "%HB_MAKE_PROGRAM%" == "" set HB_MAKE_PROGRAM=nmake.exe + +if "%1" == "clean" goto CLEAN +if "%1" == "CLEAN" goto CLEAN + +if "%1" == "install" goto INSTALL +if "%1" == "INSTALL" goto INSTALL + :BUILD - nmake /f makefile.vc %1 %2 %3 > make_vc.log - if errorlevel 1 goto BUILD_ERR - -:BUILD_OK - - copy ..\..\lib\vc\libct.lib ..\..\lib\*.* >nul + %HB_MAKE_PROGRAM% -f ..\maketpl.%CC_NAME% %1 %2 %3 > make_%CC_NAME%.log + if errorlevel 1 notepad make_%CC_NAME%.log goto EXIT -:BUILD_ERR +:CLEAN - notepad make_vc.log + %HB_MAKE_PROGRAM% %HB_MAKE_FLAGS% -f ..\maketpl.%CC_NAME% CLEAN > make_%CC_NAME%.log + goto EXIT + +:INSTALL + + if "%HB_INSTALL_PREFIX%" == "" set HB_INSTALL_PREFIX=..\.. + + if "%HB_BIN_INSTALL%" == "" set HB_BIN_INSTALL=%HB_INSTALL_PREFIX%\bin + if "%HB_INC_INSTALL%" == "" set HB_INC_INSTALL=%HB_INSTALL_PREFIX%\include + if "%HB_LIB_INSTALL%" == "" set HB_LIB_INSTALL=%HB_INSTALL_PREFIX%\lib + + %HB_MAKE_PROGRAM% %HB_MAKE_FLAGS% -f ..\maketpl.%CC_NAME% INSTALL > nul + goto EXIT :EXIT - diff --git a/harbour/contrib/libct/makefile.bc b/harbour/contrib/libct/makefile.bc deleted file mode 100644 index 861d59f98f..0000000000 --- a/harbour/contrib/libct/makefile.bc +++ /dev/null @@ -1,610 +0,0 @@ -# -# $Id$ -# - -# -# Makefile for Harbour Project for Borland C/C++ 3.x, 4.x, 5.x compilers -# - -# -# NOTE: You can use these envvars to configure the make process: -# (note that these are all optional) -# -# CFLAGS - Extra C compiler options for libraries and for -# executables -# C_USR - Extra C compiler options for libraries and for -# executables (GNU make compatible envvar) -# CLIBFLAGS - Extra C compiler options for the libraries -# HARBOURFLAGS - Extra Harbour compiler options -# PRG_USR - Extra Harbour compiler options -# (GNU make compatible envvar) -# - -# -# NOTE: "echo." intentionally used instead of "echo", to avoid conflicts -# with external commands named echo. -# - -!if $d(B16) - -CC = bcc -AS = tasm - -# Borland C/C++ (DOS 16 bits) -CFLAGS = -mh $(CFLAGS) - -BIN_DIR = bin\b16 -OBJ_DIR = obj\b16 -LIB_DIR = lib\b16 - -!else - -CC = bcc32 -AS = tasm32 - -BIN_DIR = ..\..\bin\b32 -OBJ_DIR = ..\..\obj\b32 -LIB_DIR = ..\..\lib\b32 - -# This is needed, otherwise the libs may overflow when -# debug info is requested with -v -y -ARFLAGS = /P32 - -!endif - -!if !$d(BCC_NOOPTIM) -CFLAGS = -O2 $(CFLAGS) -!endif - -# -# Directory macros. These should never have to change. -# - -INCLUDE_DIR = ..\..\include -TOOLS_DIR = . - -# -# C compiler definition and C flags. These should never have to change. -# - -CFLAGS = -I$(INCLUDE_DIR) -d $(C_USR) $(CFLAGS) -CLIBFLAGS = -c $(CFLAGS) $(CLIBFLAGS) -CLIBFLAGSDEBUG = -v $(CLIBFLAGS) -HARBOURFLAGS = -i$(INCLUDE_DIR) -n -q0 -w2 -es2 -gc0 $(PRG_USR) $(HARBOURFLAGS) -LDFLAGS = $(LDFLAGS) - -# -# Macros to access our library names -# - -TOOLS_LIB = $(LIB_DIR)\libct.lib - -HARBOUR_EXE = $(BIN_DIR)\harbour.exe - -# -# Rules -# - -# -# TOOLS.LIB rules -# - -TOOLS_LIB_OBJS = \ - $(OBJ_DIR)\addascii.obj \ - $(OBJ_DIR)\asciisum.obj \ - $(OBJ_DIR)\ascpos.obj \ - $(OBJ_DIR)\atadjust.obj \ - $(OBJ_DIR)\atnum.obj \ - $(OBJ_DIR)\atrepl.obj \ - $(OBJ_DIR)\bitnum.obj \ - $(OBJ_DIR)\charevod.obj \ - $(OBJ_DIR)\charlist.obj \ - $(OBJ_DIR)\charmirr.obj \ - $(OBJ_DIR)\charmix.obj \ - $(OBJ_DIR)\charone.obj \ - $(OBJ_DIR)\charonly.obj \ - $(OBJ_DIR)\charop.obj \ - $(OBJ_DIR)\charrepl.obj \ - $(OBJ_DIR)\charsort.obj \ - $(OBJ_DIR)\charsprd.obj \ - $(OBJ_DIR)\charswap.obj \ - $(OBJ_DIR)\color.obj \ - $(OBJ_DIR)\count.obj \ - $(OBJ_DIR)\ctc.obj \ - $(OBJ_DIR)\ctchksum.obj \ - $(OBJ_DIR)\ctcrypt.obj \ - $(OBJ_DIR)\ctmath.obj \ - $(OBJ_DIR)\ctmath2.obj \ - $(OBJ_DIR)\ctnet.obj \ - $(OBJ_DIR)\ctpad.obj \ - $(OBJ_DIR)\ctset.obj \ - $(OBJ_DIR)\ctstr.obj \ - $(OBJ_DIR)\ctstrfil.obj \ - $(OBJ_DIR)\ctwfunc.obj \ - $(OBJ_DIR)\ctwin.obj \ - $(OBJ_DIR)\cursor.obj \ - $(OBJ_DIR)\datetime.obj \ - $(OBJ_DIR)\dattime2.obj \ - $(OBJ_DIR)\dattime3.obj \ - $(OBJ_DIR)\dbftools.obj \ - $(OBJ_DIR)\disk.obj \ - $(OBJ_DIR)\expand.obj \ - $(OBJ_DIR)\exponent.obj \ - $(OBJ_DIR)\files.obj \ - $(OBJ_DIR)\finan.obj \ - $(OBJ_DIR)\ftoc.obj \ - $(OBJ_DIR)\justify.obj \ - $(OBJ_DIR)\keyset.obj \ - $(OBJ_DIR)\like.obj \ - $(OBJ_DIR)\lton.obj \ - $(OBJ_DIR)\maxline.obj \ - $(OBJ_DIR)\misc1.obj \ - $(OBJ_DIR)\misc2.obj \ - $(OBJ_DIR)\misc3.obj \ - $(OBJ_DIR)\num1.obj \ - $(OBJ_DIR)\numat.obj \ - $(OBJ_DIR)\numcount.obj \ - $(OBJ_DIR)\numline.obj \ - $(OBJ_DIR)\pack.obj \ - $(OBJ_DIR)\pos1.obj \ - $(OBJ_DIR)\pos2.obj \ - $(OBJ_DIR)\posdiff.obj \ - $(OBJ_DIR)\print.obj \ - $(OBJ_DIR)\range.obj \ - $(OBJ_DIR)\relation.obj \ - $(OBJ_DIR)\remove.obj \ - $(OBJ_DIR)\replace.obj \ - $(OBJ_DIR)\screen1.obj \ - $(OBJ_DIR)\screen2.obj \ - $(OBJ_DIR)\setlast.obj \ - $(OBJ_DIR)\strdiff.obj \ - $(OBJ_DIR)\strswap.obj \ - $(OBJ_DIR)\tab.obj \ - $(OBJ_DIR)\token1.obj \ - $(OBJ_DIR)\token2.obj \ - $(OBJ_DIR)\trig.obj \ - $(OBJ_DIR)\video.obj \ - $(OBJ_DIR)\wordrepl.obj \ - $(OBJ_DIR)\wordtoch.obj \ - \ - $(OBJ_DIR)\blank.obj \ - $(OBJ_DIR)\ct.obj \ - $(OBJ_DIR)\ctmisc.obj \ - $(OBJ_DIR)\cttime.obj \ - $(OBJ_DIR)\fcopy.obj \ - $(OBJ_DIR)\getinfo.obj \ - $(OBJ_DIR)\getinput.obj \ - $(OBJ_DIR)\getsecrt.obj \ - $(OBJ_DIR)\keysave.obj \ - $(OBJ_DIR)\keysec.obj \ - $(OBJ_DIR)\keytime.obj \ - $(OBJ_DIR)\numconv.obj \ - $(OBJ_DIR)\screen3.obj \ - $(OBJ_DIR)\scrmark.obj \ - $(OBJ_DIR)\showtime.obj \ - -# -# Our default target -# - -all: \ - $(TOOLS_LIB) \ - -# -# Library dependencies and build rules -# - -$(TOOLS_LIB) : $(TOOLS_LIB_OBJS) - -# -# TOOLS.LIB dependencies -# - -$(OBJ_DIR)\addascii.obj : $(TOOLS_DIR)\addascii.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\asciisum.obj : $(TOOLS_DIR)\asciisum.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ascpos.obj : $(TOOLS_DIR)\ascpos.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\atadjust.obj : $(TOOLS_DIR)\atadjust.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\atnum.obj : $(TOOLS_DIR)\atnum.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\atrepl.obj : $(TOOLS_DIR)\atrepl.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\bitnum.obj : $(TOOLS_DIR)\bitnum.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charevod.obj : $(TOOLS_DIR)\charevod.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charlist.obj : $(TOOLS_DIR)\charlist.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charmirr.obj : $(TOOLS_DIR)\charmirr.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charmix.obj : $(TOOLS_DIR)\charmix.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charone.obj : $(TOOLS_DIR)\charone.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charonly.obj : $(TOOLS_DIR)\charonly.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charop.obj : $(TOOLS_DIR)\charop.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charrepl.obj : $(TOOLS_DIR)\charrepl.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charsort.obj : $(TOOLS_DIR)\charsort.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charsprd.obj : $(TOOLS_DIR)\charsprd.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\charswap.obj : $(TOOLS_DIR)\charswap.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\color.obj : $(TOOLS_DIR)\color.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\count.obj : $(TOOLS_DIR)\count.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctc.obj : $(TOOLS_DIR)\ctc.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctmath.obj : $(TOOLS_DIR)\ctmath.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctmath2.obj : $(TOOLS_DIR)\ctmath2.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctnet.obj : $(TOOLS_DIR)\ctnet.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctset.obj : $(TOOLS_DIR)\ctset.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctstr.obj : $(TOOLS_DIR)\ctstr.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctstrfil.obj : $(TOOLS_DIR)\ctstrfil.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctchksum.obj : $(TOOLS_DIR)\ctchksum.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctcrypt.obj : $(TOOLS_DIR)\ctcrypt.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctwfunc.obj : $(TOOLS_DIR)\ctwfunc.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctwin.obj : $(TOOLS_DIR)\ctwin.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\cursor.obj : $(TOOLS_DIR)\cursor.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctpad.obj : $(TOOLS_DIR)\ctpad.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\datetime.obj : $(TOOLS_DIR)\datetime.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\dattime2.obj : $(TOOLS_DIR)\dattime2.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\dattime3.obj : $(TOOLS_DIR)\dattime3.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\dbftools.obj : $(TOOLS_DIR)\dbftools.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\disk.obj : $(TOOLS_DIR)\disk.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\expand.obj : $(TOOLS_DIR)\expand.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\exponent.obj : $(TOOLS_DIR)\exponent.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\files.obj : $(TOOLS_DIR)\files.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\finan.obj : $(TOOLS_DIR)\finan.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ftoc.obj : $(TOOLS_DIR)\ftoc.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\justify.obj : $(TOOLS_DIR)\justify.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\keyset.obj : $(TOOLS_DIR)\keyset.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\like.obj : $(TOOLS_DIR)\like.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\lton.obj : $(TOOLS_DIR)\lton.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\maxline.obj : $(TOOLS_DIR)\maxline.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\misc1.obj : $(TOOLS_DIR)\misc1.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\misc2.obj : $(TOOLS_DIR)\misc2.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\misc3.obj : $(TOOLS_DIR)\misc3.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\num1.obj : $(TOOLS_DIR)\num1.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\numat.obj : $(TOOLS_DIR)\numat.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\numcount.obj : $(TOOLS_DIR)\numcount.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\numline.obj : $(TOOLS_DIR)\numline.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\pack.obj : $(TOOLS_DIR)\pack.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\pos1.obj : $(TOOLS_DIR)\pos1.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\pos2.obj : $(TOOLS_DIR)\pos2.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\posdiff.obj : $(TOOLS_DIR)\posdiff.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\print.obj : $(TOOLS_DIR)\print.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\range.obj : $(TOOLS_DIR)\range.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\relation.obj : $(TOOLS_DIR)\relation.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\remove.obj : $(TOOLS_DIR)\remove.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\replace.obj : $(TOOLS_DIR)\replace.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\screen1.obj : $(TOOLS_DIR)\screen1.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\screen2.obj : $(TOOLS_DIR)\screen2.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\setlast.obj : $(TOOLS_DIR)\setlast.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\strswap.obj : $(TOOLS_DIR)\strswap.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\strdiff.obj : $(TOOLS_DIR)\strdiff.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\tab.obj : $(TOOLS_DIR)\tab.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\token1.obj : $(TOOLS_DIR)\token1.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\token2.obj : $(TOOLS_DIR)\token2.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\trig.obj : $(TOOLS_DIR)\trig.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\video.obj : $(TOOLS_DIR)\video.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\wordrepl.obj : $(TOOLS_DIR)\wordrepl.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\wordtoch.obj : $(TOOLS_DIR)\wordtoch.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\blank.c : $(TOOLS_DIR)\blank.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\blank.obj : $(OBJ_DIR)\blank.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ct.c : $(TOOLS_DIR)\ct.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\ct.obj : $(OBJ_DIR)\ct.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\ctmisc.c : $(TOOLS_DIR)\ctmisc.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\ctmisc.obj : $(OBJ_DIR)\ctmisc.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\cttime.c : $(TOOLS_DIR)\cttime.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\cttime.obj : $(OBJ_DIR)\cttime.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\fcopy.c : $(TOOLS_DIR)\fcopy.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\fcopy.obj : $(OBJ_DIR)\fcopy.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\getinfo.c : $(TOOLS_DIR)\getinfo.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\getinfo.obj : $(OBJ_DIR)\getinfo.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\getinput.c : $(TOOLS_DIR)\getinput.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\getinput.obj : $(OBJ_DIR)\getinput.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\getsecrt.c : $(TOOLS_DIR)\getsecrt.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\getsecrt.obj : $(OBJ_DIR)\getsecrt.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\keysave.c : $(TOOLS_DIR)\keysave.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\keysave.obj : $(OBJ_DIR)\keysave.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\keysec.c : $(TOOLS_DIR)\keysec.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\keysec.obj : $(OBJ_DIR)\keysec.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\keytime.c : $(TOOLS_DIR)\keytime.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\keytime.obj : $(OBJ_DIR)\keytime.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\numconv.c : $(TOOLS_DIR)\numconv.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\numconv.obj : $(OBJ_DIR)\numconv.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\screen3.c : $(TOOLS_DIR)\screen3.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\screen3.obj : $(OBJ_DIR)\screen3.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\scrmark.c : $(TOOLS_DIR)\scrmark.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\scrmark.obj : $(OBJ_DIR)\scrmark.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, - -$(OBJ_DIR)\showtime.c : $(TOOLS_DIR)\showtime.prg - $(HARBOUR_EXE) $(HARBOURFLAGS) $** -o$@ - -$(OBJ_DIR)\showtime.obj : $(OBJ_DIR)\showtime.c - $(CC) $(CLIBFLAGS) -o$@ $** - tlib $(TOOLS_LIB) $(ARFLAGS) -+$@,, diff --git a/harbour/contrib/libct/makefile.vc b/harbour/contrib/libct/makefile.vc deleted file mode 100644 index 47293e50c2..0000000000 --- a/harbour/contrib/libct/makefile.vc +++ /dev/null @@ -1,317 +0,0 @@ -# -# $Id$ -# - -# -# Makefile for Harbour Project for Microsoft Visual C (32 bits) -# - -# -# NOTE: You can use these envvars to configure the make process: -# (note that these are all optional) -# -# CFLAGS - Extra C compiler options for libraries and for -# executables -# C_USR - Extra C compiler options for libraries and for -# executables (GNU make compatible envvar) -# CLIBFLAGS - Extra C compiler options for the libraries -# HARBOURFLAGS - Extra Harbour compiler options -# PRG_USR - Extra Harbour compiler options -# (GNU make compatible envvar) -# - -# -# Notes about this makefile: -# -# 1. To add new files to a dependancy list, add an obj name to one of the -# OBJ lists for the appropriate library. -# NOTE: put .prg related obj's last in the lib list. -# -# 2. This is a recursive script. If you change the name of this file, -# be sure to change MK_FILE (a few lines down) to the new name as well. -# -# 3. Recurrsion rules are quite simple: -# If you specifiy /a on the command line, files in the obj\vc dir -# will be deleted, and when nmake recurses, it's without the /a flag -# -# If a .prg.obj rule is fired, nmake will execute this script with -# a specific target as a parameter immediatley after compiling a given -# set of prg files. -# ie: Harbour $< -# nmake /fmakefile.vc obj\vc\rtl.lib2 -# which will simply get make to re-evaluate the dependancy list for the -# lib, and as a result, it will execute the C compiler using the .c.obj -# rule below to create the obj's for the prg's that were created just -# prior to the recurrsive call. Once the obj's are created, the -# recurrsion is complete. -# See additional notes under RTL.LIB below. -# - -MK_FILE = makefile.vc -MK_FLAGS = $(MAKEFLAGS: =) - -OBJ_DIR = ..\..\obj\vc -LIB_DIR = ..\..\lib\vc -BIN_DIR = ..\..\bin - -# -# Directory macros. These should never have to change. -# - -INCLUDE_DIR = ..\..\include -TOOLS_DIR = . - -# -# C compiler definition and C flags. These should never have to change. -# - -AS = masm -CFLAGS = -I$(INCLUDE_DIR) -W3 -nologo $(C_USR) $(CFLAGS) -CLIBFLAGS = -c $(CFLAGS) $(CLIBFLAGS) -CLIBFLAGSDEBUG = -Zi $(CLIBFLAGS) -HARBOURFLAGS = -i$(INCLUDE_DIR) -n -q0 -w2 -es2 -gc0 $(PRG_USR) $(HARBOURFLAGS) -LDFLAGS = $(LDFLAGS) - -# -# Macros to access our library names -# - -TOOLS_LIB = $(LIB_DIR)\libct.lib - -HARBOUR_EXE = $(BIN_DIR)\harbour.exe - -# -# Rules -# - -.SUFFIXES: .prg .lib .c .obj .asm - -# override builtin - -.c.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< - -# -# -# - -LIBLIST = \ - $(TOOLS_LIB) - -# -# TOOLS.LIB rules -# - -{$(TOOLS_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< - -{$(TOOLS_DIR)}.prg{$(OBJ_DIR)}.obj:: - $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(TOOLS_LIB)2 - -TOOLS_LIB_OBJS = \ - $(OBJ_DIR)\addascii.obj \ - $(OBJ_DIR)\asciisum.obj \ - $(OBJ_DIR)\ascpos.obj \ - $(OBJ_DIR)\atadjust.obj \ - $(OBJ_DIR)\atnum.obj \ - $(OBJ_DIR)\atrepl.obj \ - $(OBJ_DIR)\bitnum.obj \ - $(OBJ_DIR)\charevod.obj \ - $(OBJ_DIR)\charlist.obj \ - $(OBJ_DIR)\charmirr.obj \ - $(OBJ_DIR)\charmix.obj \ - $(OBJ_DIR)\charone.obj \ - $(OBJ_DIR)\charonly.obj \ - $(OBJ_DIR)\charop.obj \ - $(OBJ_DIR)\charrepl.obj \ - $(OBJ_DIR)\charsort.obj \ - $(OBJ_DIR)\charsprd.obj \ - $(OBJ_DIR)\charswap.obj \ - $(OBJ_DIR)\color.obj \ - $(OBJ_DIR)\count.obj \ - $(OBJ_DIR)\ctc.obj \ - $(OBJ_DIR)\ctchksum.obj \ - $(OBJ_DIR)\ctcrypt.obj \ - $(OBJ_DIR)\ctmath.obj \ - $(OBJ_DIR)\ctmath2.obj \ - $(OBJ_DIR)\ctnet.obj \ - $(OBJ_DIR)\ctpad.obj \ - $(OBJ_DIR)\ctset.obj \ - $(OBJ_DIR)\ctstr.obj \ - $(OBJ_DIR)\ctstrfil.obj \ - $(OBJ_DIR)\ctwfunc.obj \ - $(OBJ_DIR)\ctwin.obj \ - $(OBJ_DIR)\cursor.obj \ - $(OBJ_DIR)\datetime.obj \ - $(OBJ_DIR)\dattime2.obj \ - $(OBJ_DIR)\dattime3.obj \ - $(OBJ_DIR)\dbftools.obj \ - $(OBJ_DIR)\disk.obj \ - $(OBJ_DIR)\expand.obj \ - $(OBJ_DIR)\exponent.obj \ - $(OBJ_DIR)\files.obj \ - $(OBJ_DIR)\finan.obj \ - $(OBJ_DIR)\ftoc.obj \ - $(OBJ_DIR)\justify.obj \ - $(OBJ_DIR)\keyset.obj \ - $(OBJ_DIR)\like.obj \ - $(OBJ_DIR)\lton.obj \ - $(OBJ_DIR)\maxline.obj \ - $(OBJ_DIR)\misc1.obj \ - $(OBJ_DIR)\misc2.obj \ - $(OBJ_DIR)\misc3.obj \ - $(OBJ_DIR)\num1.obj \ - $(OBJ_DIR)\numat.obj \ - $(OBJ_DIR)\numcount.obj \ - $(OBJ_DIR)\numline.obj \ - $(OBJ_DIR)\pack.obj \ - $(OBJ_DIR)\pos1.obj \ - $(OBJ_DIR)\pos2.obj \ - $(OBJ_DIR)\posdiff.obj \ - $(OBJ_DIR)\print.obj \ - $(OBJ_DIR)\range.obj \ - $(OBJ_DIR)\relation.obj \ - $(OBJ_DIR)\remove.obj \ - $(OBJ_DIR)\replace.obj \ - $(OBJ_DIR)\screen1.obj \ - $(OBJ_DIR)\screen2.obj \ - $(OBJ_DIR)\setlast.obj \ - $(OBJ_DIR)\strdiff.obj \ - $(OBJ_DIR)\strswap.obj \ - $(OBJ_DIR)\tab.obj \ - $(OBJ_DIR)\token1.obj \ - $(OBJ_DIR)\token2.obj \ - $(OBJ_DIR)\trig.obj \ - $(OBJ_DIR)\video.obj \ - $(OBJ_DIR)\wordrepl.obj \ - $(OBJ_DIR)\wordtoch.obj \ - \ - $(OBJ_DIR)\blank.obj \ - $(OBJ_DIR)\ct.obj \ - $(OBJ_DIR)\ctmisc.obj \ - $(OBJ_DIR)\cttime.obj \ - $(OBJ_DIR)\fcopy.obj \ - $(OBJ_DIR)\getinfo.obj \ - $(OBJ_DIR)\getinput.obj \ - $(OBJ_DIR)\getsecrt.obj \ - $(OBJ_DIR)\keysave.obj \ - $(OBJ_DIR)\keysec.obj \ - $(OBJ_DIR)\keytime.obj \ - $(OBJ_DIR)\numconv.obj \ - $(OBJ_DIR)\screen3.obj \ - $(OBJ_DIR)\scrmark.obj \ - $(OBJ_DIR)\showtime.obj \ - -# -# Our default target -# - - -all: \ - $(TOOLS_LIB) - -CLEAN: - -@if exist $(OBJ_DIR)\addascii.* del $(OBJ_DIR)\addascii.* - -@if exist $(OBJ_DIR)\asciisum.* del $(OBJ_DIR)\asciisum.* - -@if exist $(OBJ_DIR)\ascpos.* del $(OBJ_DIR)\ascpos.* - -@if exist $(OBJ_DIR)\atadjust.* del $(OBJ_DIR)\atadjust.* - -@if exist $(OBJ_DIR)\atnum.* del $(OBJ_DIR)\atnum.* - -@if exist $(OBJ_DIR)\atrepl.* del $(OBJ_DIR)\atrepl.* - -@if exist $(OBJ_DIR)\bitnum.* del $(OBJ_DIR)\bitnum.* - -@if exist $(OBJ_DIR)\charevod.* del $(OBJ_DIR)\charevod.* - -@if exist $(OBJ_DIR)\charlist.* del $(OBJ_DIR)\charlist.* - -@if exist $(OBJ_DIR)\charmirr.* del $(OBJ_DIR)\charmirr.* - -@if exist $(OBJ_DIR)\charmix.* del $(OBJ_DIR)\charmix.* - -@if exist $(OBJ_DIR)\charone.* del $(OBJ_DIR)\charone.* - -@if exist $(OBJ_DIR)\charonly.* del $(OBJ_DIR)\charonly.* - -@if exist $(OBJ_DIR)\charop.* del $(OBJ_DIR)\charop.* - -@if exist $(OBJ_DIR)\charrepl.* del $(OBJ_DIR)\charrepl.* - -@if exist $(OBJ_DIR)\charsort.* del $(OBJ_DIR)\charsort.* - -@if exist $(OBJ_DIR)\charsprd.* del $(OBJ_DIR)\charsprd.* - -@if exist $(OBJ_DIR)\charswap.* del $(OBJ_DIR)\charswap.* - -@if exist $(OBJ_DIR)\color.* del $(OBJ_DIR)\color.* - -@if exist $(OBJ_DIR)\count.* del $(OBJ_DIR)\count.* - -@if exist $(OBJ_DIR)\ctc.* del $(OBJ_DIR)\ctc.* - -@if exist $(OBJ_DIR)\ctchksum.* del $(OBJ_DIR)\ctchksum.* - -@if exist $(OBJ_DIR)\ctcrypt.* del $(OBJ_DIR)\ctcrypt.* - -@if exist $(OBJ_DIR)\ctmath.* del $(OBJ_DIR)\ctmath.* - -@if exist $(OBJ_DIR)\ctmath2.* del $(OBJ_DIR)\ctmath2.* - -@if exist $(OBJ_DIR)\ctnet.* del $(OBJ_DIR)\ctnet.* - -@if exist $(OBJ_DIR)\ctpad.* del $(OBJ_DIR)\ctpad.* - -@if exist $(OBJ_DIR)\ctset.* del $(OBJ_DIR)\ctset.* - -@if exist $(OBJ_DIR)\ctstr.* del $(OBJ_DIR)\ctstr.* - -@if exist $(OBJ_DIR)\ctstrfil.* del $(OBJ_DIR)\ctstrfil.* - -@if exist $(OBJ_DIR)\ctwfunc.* del $(OBJ_DIR)\ctwfunc.* - -@if exist $(OBJ_DIR)\ctwin.* del $(OBJ_DIR)\ctwin.* - -@if exist $(OBJ_DIR)\cursor.* del $(OBJ_DIR)\cursor.* - -@if exist $(OBJ_DIR)\datetime.* del $(OBJ_DIR)\datetime.* - -@if exist $(OBJ_DIR)\dattime2.* del $(OBJ_DIR)\dattime2.* - -@if exist $(OBJ_DIR)\dattime3.* del $(OBJ_DIR)\dattime3.* - -@if exist $(OBJ_DIR)\dbftools.* del $(OBJ_DIR)\dbftools.* - -@if exist $(OBJ_DIR)\disk.* del $(OBJ_DIR)\disk.* - -@if exist $(OBJ_DIR)\expand.* del $(OBJ_DIR)\expand.* - -@if exist $(OBJ_DIR)\exponent.* del $(OBJ_DIR)\exponent.* - -@if exist $(OBJ_DIR)\files.* del $(OBJ_DIR)\files.* - -@if exist $(OBJ_DIR)\finan.* del $(OBJ_DIR)\finan.* - -@if exist $(OBJ_DIR)\ftoc.* del $(OBJ_DIR)\ftoc.* - -@if exist $(OBJ_DIR)\justify.* del $(OBJ_DIR)\justify.* - -@if exist $(OBJ_DIR)\keyset.* del $(OBJ_DIR)\keyset.* - -@if exist $(OBJ_DIR)\like.* del $(OBJ_DIR)\like.* - -@if exist $(OBJ_DIR)\lton.* del $(OBJ_DIR)\lton.* - -@if exist $(OBJ_DIR)\maxline.* del $(OBJ_DIR)\maxline.* - -@if exist $(OBJ_DIR)\misc1.* del $(OBJ_DIR)\misc1.* - -@if exist $(OBJ_DIR)\misc2.* del $(OBJ_DIR)\misc2.* - -@if exist $(OBJ_DIR)\misc3.* del $(OBJ_DIR)\misc3.* - -@if exist $(OBJ_DIR)\num1.* del $(OBJ_DIR)\num1.* - -@if exist $(OBJ_DIR)\numat.* del $(OBJ_DIR)\numat.* - -@if exist $(OBJ_DIR)\numcount.* del $(OBJ_DIR)\numcount.* - -@if exist $(OBJ_DIR)\numline.* del $(OBJ_DIR)\numline.* - -@if exist $(OBJ_DIR)\pack.* del $(OBJ_DIR)\pack.* - -@if exist $(OBJ_DIR)\pos1.* del $(OBJ_DIR)\pos1.* - -@if exist $(OBJ_DIR)\pos2.* del $(OBJ_DIR)\pos2.* - -@if exist $(OBJ_DIR)\posdiff.* del $(OBJ_DIR)\posdiff.* - -@if exist $(OBJ_DIR)\print.* del $(OBJ_DIR)\print.* - -@if exist $(OBJ_DIR)\range.* del $(OBJ_DIR)\range.* - -@if exist $(OBJ_DIR)\relation.* del $(OBJ_DIR)\relation.* - -@if exist $(OBJ_DIR)\remove.* del $(OBJ_DIR)\remove.* - -@if exist $(OBJ_DIR)\replace.* del $(OBJ_DIR)\replace.* - -@if exist $(OBJ_DIR)\screen1.* del $(OBJ_DIR)\screen1.* - -@if exist $(OBJ_DIR)\screen2.* del $(OBJ_DIR)\screen2.* - -@if exist $(OBJ_DIR)\setlast.* del $(OBJ_DIR)\setlast.* - -@if exist $(OBJ_DIR)\strdiff.* del $(OBJ_DIR)\strdiff.* - -@if exist $(OBJ_DIR)\strswap.* del $(OBJ_DIR)\strswap.* - -@if exist $(OBJ_DIR)\tab.* del $(OBJ_DIR)\tab.* - -@if exist $(OBJ_DIR)\token1.* del $(OBJ_DIR)\token1.* - -@if exist $(OBJ_DIR)\token2.* del $(OBJ_DIR)\token2.* - -@if exist $(OBJ_DIR)\trig.* del $(OBJ_DIR)\trig.* - -@if exist $(OBJ_DIR)\video.* del $(OBJ_DIR)\video.* - -@if exist $(OBJ_DIR)\wordrepl.* del $(OBJ_DIR)\wordrepl.* - -@if exist $(OBJ_DIR)\wordtoch.* del $(OBJ_DIR)\wordtoch.* - -@if exist $(OBJ_DIR)\blank.* del $(OBJ_DIR)\blank.* - -@if exist $(OBJ_DIR)\ct.* del $(OBJ_DIR)\ct.* - -@if exist $(OBJ_DIR)\ctmisc.* del $(OBJ_DIR)\ctmisc.* - -@if exist $(OBJ_DIR)\cttime.* del $(OBJ_DIR)\cttime.* - -@if exist $(OBJ_DIR)\fcopy.* del $(OBJ_DIR)\fcopy.* - -@if exist $(OBJ_DIR)\getinfo.* del $(OBJ_DIR)\getinfo.* - -@if exist $(OBJ_DIR)\getinput.* del $(OBJ_DIR)\getinput.* - -@if exist $(OBJ_DIR)\getsecrt.* del $(OBJ_DIR)\getsecrt.* - -@if exist $(OBJ_DIR)\keysave.* del $(OBJ_DIR)\keysave.* - -@if exist $(OBJ_DIR)\keysec.* del $(OBJ_DIR)\keysec.* - -@if exist $(OBJ_DIR)\keytime.* del $(OBJ_DIR)\keytime.* - -@if exist $(OBJ_DIR)\numconv.* del $(OBJ_DIR)\numconv.* - -@if exist $(OBJ_DIR)\screen3.* del $(OBJ_DIR)\screen3.* - -@if exist $(OBJ_DIR)\scrmark.* del $(OBJ_DIR)\scrmark.* - -@if exist $(OBJ_DIR)\showtime.* del $(OBJ_DIR)\showtime.* - -@if exist $(TOOLS_LIB) del $(TOOLS_LIB) - -# -# Library dependencies and build rules -# - -$(TOOLS_LIB) : $(TOOLS_LIB_OBJS) - lib /out:$@ $** - -# dummy targets used for prg to c creation - -$(TOOLS_LIB)2 : $(TOOLS_LIB_OBJS) diff --git a/harbour/contrib/libct/screen2.c b/harbour/contrib/libct/screen2.c index 1603d87686..6f2b917f35 100644 --- a/harbour/contrib/libct/screen2.c +++ b/harbour/contrib/libct/screen2.c @@ -137,7 +137,7 @@ HB_FUNC( SAYSPREAD ) do { for( ul = 0; ul < ulLen && iCol + ( int ) ul <= iMaxCol; ++ul ) - hb_gtPutChar( iRow, iCol + ul, bColor, 0, szText[ulPos + ul] ); + hb_gtPutChar( iRow, iCol + ( int ) ul, bColor, 0, szText[ulPos + ul] ); ulLen += 2; if( lDelay ) { @@ -182,7 +182,7 @@ HB_FUNC( SAYMOVEIN ) BYTE bColor = hb_gt_GetColor(); sRow = iRow; - sCol = iCol + ulLen; + sCol = iCol + ( int ) ulLen; if( fBack ) iCol += ulLen - 1; else @@ -197,14 +197,14 @@ HB_FUNC( SAYMOVEIN ) if( iCol <= iMaxCol ) { for( ul = 0; ul < ulChars; ++ul ) - hb_gtPutChar( iRow, iCol + ul, bColor, 0, szText[ul] ); + hb_gtPutChar( iRow, iCol + ( int ) ul, bColor, 0, szText[ul] ); } --iCol; } else { for( ul = 0; ul < ulChars; ++ul ) - hb_gtPutChar( iRow, iCol + ul, bColor, 0, szText[ul] ); + hb_gtPutChar( iRow, iCol + ( int ) ul, bColor, 0, szText[ul] ); --szText; } if( ( int ) ulChars + iCol <= iMaxCol ) diff --git a/harbour/contrib/maketpl.b32 b/harbour/contrib/maketpl.b32 new file mode 100644 index 0000000000..7062e90154 --- /dev/null +++ b/harbour/contrib/maketpl.b32 @@ -0,0 +1,127 @@ +# +# $Id$ +# + +# Makefile common section for Harbour Project Contrib libs +# for Borland C/C++ +# -------------------------------------------------------- + +# NOTE: You can use these envvars to configure the make process: +# (note that these are all optional) +# +# CFLAGS - Extra C compiler options for libraries and for +# executables +# C_USR - Extra C compiler options for libraries and for +# executables (GNU make compatible envvar) +# CLIBFLAGS - Extra C compiler options for the libraries +# HARBOURFLAGS - Extra Harbour compiler options +# PRG_USR - Extra Harbour compiler options +# (GNU make compatible envvar) + +#.KEEP +.AUTODEPEND +.SUFFIXES: + +#********************************************************** + +!include ..\_makelib.mak + +#********************************************************** +# C compiler definition and C flags. These should never have to change. +#********************************************************** + +CC = bcc32.exe +LINKER = ilink32.exe +MKLIB = tlib.exe + +#********************************************************** + +!if !$d(BCC_NOOPTIM) +CFLAGS = -O2 $(CFLAGS) +!endif + +CFLAGS = -I$(INCLUDE_DIR) -d $(C_USR) $(CFLAGS) +CLIBFLAGS = -c $(CFLAGS) $(CLIBFLAGS) +CLIBFLAGSDEBUG = -v $(CLIBFLAGS) +HARBOURFLAGS = -i$(INCLUDE_DIR) -n -q0 -w2 -es2 -gc0 $(PRG_USR) $(HARBOURFLAGS) +LDFLAGS = $(LDFLAGS) + +# This is needed, otherwise the libs may overflow when +# debug info is requested with -v -y +ARFLAGS = /P32 + +#********************************************************** +# COMPILE Rules +#********************************************************** + +ALL_LIB_SRC_DIRS_TMP=\ +.;\ +$(OBJ_DIR);\ + +#********************************************************** +# General *.c --> *.obj COMPILE rule for STATIC Libraries +{$(ALL_LIB_SRC_DIRS)}.c{$(OBJ_DIR)}$(OBJEXT): + $(CC) $(CLIBFLAGS) -o$@ $< +#********************************************************** +# General *.prg --> *.obj COMPILE rule for STATIC Libraries +{$(ALL_LIB_SRC_DIRS)}.prg{$(DLL_OBJ_DIR)}$(OBJEXT): + $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $** + $(CC) $(CLIBFLAGS) -o$@ $(OBJ_DIR)\$&.c +#********************************************************** +# General Library BUILD rule - does not work +#{$(OBJ_DIR)}.obj{$(LIB_DIR)}.lib: +# IF EXIST "$@" $(DEL) "$@" > NUL +# $(MKLIB) "$@" $(ARFLAGS) @&&! +#+$(**: = &^ +#+) +#! +#********************************************************** + +!include common.mak + +#********************************************************** +$(LIB_PATH) : $(LIB_OBJS) + IF EXIST "$(LIB_PATH)" $(DEL) "$(LIB_PATH)" > NUL + $(MKLIB) "$(LIB_PATH)" $(ARFLAGS) @&&! ++$(**: = &^ ++) +! +#********************************************************** + +#********************************************************** +# CLEAN rule(s) +#********************************************************** + +clean: doClean +CLEAN: doClean + +doClean: + $(ECHO) echo off > delone.bat + $(ECHO) if "%1"x == "x" goto skip >> delone.bat + $(ECHO) if exist %1.c $(DEL) %1.c > nul >> delone.bat + $(ECHO) if exist %1.obj $(DEL) %1.obj > nul >> delone.bat + $(ECHO) :skip >> delone.bat + type &&! +call delone.bat $(LIB_OBJS:.obj=^ +call delone.bat ) +! > alldel.bat + $(ECHO) @echo off > delall.bat + type alldel.bat >> delall.bat + delall.bat + if exist $(LIB_PATH) $(DEL) $(LIB_PATH) > nul + $(DEL) alldel.bat > nul + $(DEL) delone.bat > nul + $(DEL) delall.bat > nul + +#********************************************************** + +#********************************************************** +# INSTALL rule(s) +#********************************************************** + +install: doInstall +INSTALL: doInstall + +doInstall: + copy $(LIB_DIR)\$(LIBNAME)$(LIBEXT) $(HB_LIB_INSTALL) > nul + copy *.ch $(HB_INC_INSTALL) > nul diff --git a/harbour/contrib/maketpl.mak b/harbour/contrib/maketpl.mak new file mode 100644 index 0000000000..c57cc1c78d --- /dev/null +++ b/harbour/contrib/maketpl.mak @@ -0,0 +1,50 @@ +# +# $Id$ +# + +# Makefile common section for Harbour Project Contrib libs +# for Microsoft Visual C/Borland C/C++ +# ----------------------------------------------------------------- + +#********************************************************** + +# NOTE: "echo." intentionally used instead of "echo", to avoid conflicts +# with external commands named echo. + +!ifndef ECHO +ECHO = echo. +!endif +!ifndef DEL +DEL = del +!endif + +#********************************************************** +# binary file suffixes and prefixes +#********************************************************** + +!ifndef OBJEXT +OBJEXT = .obj +!endif +!ifndef LIBEXT +LIBEXT = .lib +!endif + +.SUFFIXES: $(LIBEXT) $(OBJEXT) .prg .c .asm + +#********************************************************** +# Directory macros. These should never have to change. +#********************************************************** + +OBJ_DIR = ..\..\obj\$(CC_NAME) +LIB_DIR = ..\..\lib\$(CC_NAME) +BIN_DIR = ..\..\bin\$(CC_NAME) + +INCLUDE_DIR = ..\..\include + +#********************************************************** +# Macros to access Harbour executable and other goodies +#********************************************************** + +HARBOUR_EXE = $(BIN_DIR)\harbour.exe + +#********************************************************** diff --git a/harbour/contrib/maketpl.vc b/harbour/contrib/maketpl.vc new file mode 100644 index 0000000000..dff908fec5 --- /dev/null +++ b/harbour/contrib/maketpl.vc @@ -0,0 +1,114 @@ +# +# $Id$ +# + +# Makefile common section for Harbour Project Contrib libs +# for Microsoft Visual C +# -------------------------------------------------------- + +# NOTE: You can use these envvars to configure the make process: +# (note that these are all optional) +# +# CFLAGS - Extra C compiler options for libraries and for +# executables +# C_USR - Extra C compiler options for libraries and for +# executables (GNU make compatible envvar) +# CLIBFLAGS - Extra C compiler options for the libraries +# HARBOURFLAGS - Extra Harbour compiler options +# PRG_USR - Extra Harbour compiler options +# (GNU make compatible envvar) + +# Visual C++ version +!ifndef HB_VISUALC_VER +HB_VISUALC_VER = 60 +!endif + +#********************************************************** + +!include ..\_makelib.mak + +#********************************************************** +# C compiler definition and C flags. These should never have to change. +#********************************************************** + +CC = cl.exe +LINKER = link.exe +MKLIB = lib.exe + +#********************************************************** + +CFLAGS = -I$(INCLUDE_DIR) -W3 -nologo $(C_USR) $(CFLAGS) +CLIBFLAGS = -c $(CFLAGS) $(CLIBFLAGS) +CLIBFLAGSDEBUG = -Zi $(CLIBFLAGS) +HARBOURFLAGS = -i$(INCLUDE_DIR) -n -q0 -w2 -es2 -gc0 $(PRG_USR) $(HARBOURFLAGS) +LDFLAGS = $(LDFLAGS) + +#********************************************************** +# COMPILE Rules +#********************************************************** + +#********************************************************** +# General *.c --> *.obj COMPILE rule for STATIC Libraries +{.}.c{$(OBJ_DIR)}$(OBJEXT):: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +#********************************************************** +# General *.prg --> *.obj COMPILE rule for STATIC Libraries +{.}.prg{$(OBJ_DIR)}$(OBJEXT): + $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\$(*B).c +#********************************************************** +# General Library BUILD rule - does not work +#{$(OBJ_DIR)}$(OBJEXT){$(LIB_PATH)}.lib: +# IF EXIST "$@" $(DEL) "$@" > nul +# $(MKLIB) /out:$@ @<< +#$** +#<<$(KEEPSTATE) +#********************************************************** + +!include common.mak + +#********************************************************** +$(LIB_PATH) : $(LIB_OBJS) + IF EXIST "$@" $(DEL) "$@" > nul + $(MKLIB) /out:$@ @<< +$** +<<$(KEEPSTATE) +#********************************************************** + +#********************************************************** +# CLEAN rule(s) +#********************************************************** + +clean: doClean +CLEAN: doClean + +doClean: + $(ECHO) echo off > delone.bat + $(ECHO) if "%1" == "" goto skip >> delone.bat + $(ECHO) if exist %1.c $(DEL) %1.c > nul >> delone.bat + $(ECHO) if exist %1.obj $(DEL) %1.obj > nul >> delone.bat + $(ECHO) :skip >> delone.bat + type < delall.bat + type alldel.bat >> delall.bat + delall.bat + if exist $(LIB_PATH) $(DEL) $(LIB_PATH) > nul + $(DEL) alldel.bat > nul + $(DEL) delone.bat > nul + $(DEL) delall.bat > nul + +#********************************************************** + +#********************************************************** +# INSTALL rule(s) +#********************************************************** + +install: doInstall +INSTALL: doInstall + +doInstall: + copy $(LIB_DIR)\$(LIBNAME)$(LIBEXT) $(HB_LIB_INSTALL) > nul + copy *.ch $(HB_INC_INSTALL) > nul diff --git a/harbour/source/compiler/cmdcheck.c b/harbour/source/compiler/cmdcheck.c index aa21f84639..0d6eefbe0b 100644 --- a/harbour/source/compiler/cmdcheck.c +++ b/harbour/source/compiler/cmdcheck.c @@ -486,7 +486,7 @@ static void hb_compChkEnvironVar( HB_COMP_DECL, char *szSwitch ) case 'r': case 'R': - if( *( s + 1 ) == '=' ) + if( *( s + 1 ) == ':' ) { int iOverflow; int iCycles = ( int ) hb_strValInt( s + 2, &iOverflow ); diff --git a/harbour/source/compiler/hbcomp.c b/harbour/source/compiler/hbcomp.c index 0fc806b590..94bce17cfe 100644 --- a/harbour/source/compiler/hbcomp.c +++ b/harbour/source/compiler/hbcomp.c @@ -294,9 +294,7 @@ void hb_compOutStd( HB_COMP_DECL, const char * szMessage ) if( HB_COMP_PARAM->outStdFunc ) HB_COMP_PARAM->outStdFunc( HB_COMP_PARAM->cargo, szMessage ); else - { fprintf( stdout, "%s", szMessage ); fflush( stdout ); - } } } @@ -307,12 +305,6 @@ void hb_compOutErr( HB_COMP_DECL, const char * szMessage ) if( HB_COMP_PARAM->outErrFunc ) HB_COMP_PARAM->outErrFunc( HB_COMP_PARAM->cargo, szMessage ); else - { -#if defined( OS_UNIX_COMPATIBLE ) fprintf( stderr, "%s", szMessage ); fflush( stderr ); -#else - fprintf( stdout, "%s", szMessage ); fflush( stdout ); -#endif - } } } diff --git a/harbour/source/compiler/hbusage.c b/harbour/source/compiler/hbusage.c index 2584c442c9..fee50d2e31 100644 --- a/harbour/source/compiler/hbusage.c +++ b/harbour/source/compiler/hbusage.c @@ -65,6 +65,10 @@ void hb_compPrintUsage( HB_COMP_DECL, char * szSelf ) "\n %ccredits display credits", "\n %cd[=] #define ", "\n %ces[] set exit severity", + "\n %cfn[:[l|u]|-] set filename casing (l=lower u=upper)", + "\n %cfd[:[l|u]|-] set directory casing (l=lower u=upper)", + "\n %cfp[:] set path separator", + "\n %cfs[-] turn filename space trimming on or off (default)", "\n %cg output type generated is (see below)", "\n %cgc[] output type: C source (.c) (default)", "\n : 0=compact 1=normal 2=verbose (default)",