* harbour/include/hbapicdp.h
* harbour/source/rtl/cdpapi.c
+ added hb_cdpGetChar()
+ harbour/tests/wcecon.prg
+ added demonstration console program for WinCE,
compile it using:
hbmk -n -w -es2 -gtwvt wcecon
* harbour/include/hbwince.h
* harbour/source/common/hbwince.c
* harbour/contrib/win32/w32_ole.c
* harbour/contrib/odbc/odbc.c
* use UNICODE macro instead of HB_WINCE to allow using Unicode
WINAPI also in other MS-Windows versions
* harbour/source/rtl/gtwvt/gtwvt.h
* harbour/source/rtl/gtwvt/gtwvt.c
+ added support for Unicode IO
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/disksphb.c
! fixed wrongly set error code
! fixed possible access to uninitialized memory
* use GetDiskFreeSpaceEx() on WinCE instead of GetDiskFreeSpace()
for disk larger then 4GB - I do not know if PocketPC have such
large devices now or if WinCE can support it but for sure it will
somewhere in the future
* harbour/bin/hb-mkslib.sh
* harbour/bin/pack_src.sh
* updated for recent Viktor's modifications
* harbour/source/rtl/oemansix.c
! added missing #include "hbpai.h"
* harbour/include/Makefile
+ harbour/include/hbwince.h
* harbour/include/hbrdddbf.h
* harbour/include/hbrdddbt.h
* harbour/include/hbdefs.h
* harbour/include/hbsetup.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrddfpt.h
* harbour/contrib/xhb/hboutdbg.c
* harbour/contrib/xhb/hbsyslog.c
* harbour/contrib/xhb/xhbfunc.c
* harbour/contrib/libct/ctnet.c
* harbour/contrib/libct/files.c
* harbour/contrib/libct/disk.c
* harbour/contrib/libnf/getenvrn.c
* harbour/contrib/win32/tprinter.c
* harbour/contrib/win32/w32_ole.c
* harbour/contrib/win32/w32_prn.c
* harbour/contrib/odbc/odbc.c
* harbour/source/pp/ppgen.c
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/gtclip.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/gtchrmap.c
* harbour/source/rtl/oemansi.c
* harbour/source/rtl/disksphb.c
* harbour/source/rtl/fssize.c
* harbour/source/rtl/hbffind.c
* harbour/source/rtl/filesys.c
* harbour/source/rtl/net.c
* harbour/source/rtl/gtgui/gtdef.c
* harbour/source/rtl/gtwvt/gtwvt.c
* harbour/source/rtl/gtpca/gtpca.c
* harbour/source/rtl/gtstd/gtstd.c
* harbour/source/rtl/gtwin/gtwin.c
* harbour/source/vm/Makefile
* harbour/source/vm/mainwin.c
* harbour/source/vm/dynlibhb.c
+ harbour/source/vm/mainwin/Makefile
* harbour/source/common/Makefile
* harbour/source/common/hbgete.c
* harbour/source/common/hbver.c
+ harbour/source/common/hbwince.c
* harbour/utils/hbpp/hbpp.c
* harbour/utils/hbdot/hbdot.prg
* harbour/utils/hbver/hbverfix.c
+ added support for WinCE and PocketPC
+ harbour/make_xcemgw.sh
+ harbour/config/w32/cemgw.cf
* harbour/bin/hb-mkslib.sh
* harbour/bin/hb-func.sh
* harbour/bin/postinst.sh
+ added support for CeGCC-MinGW32 port - those of you who want to
create applications for WinCE on PockePC with ARM processors on
Linux or MS-Windows can download from SF cegcc-mingw32ce port.
User using RPM based Linux distribution for x86 CPUs can simply
download cegcc-mingw32ce-0.50-1.i586.rpm and install it.
The hb* scripts created by ./make_xcemgw.sh [tgz|gnu] are
automatically updated to work with CeGCC-MinGW32 so later you
can simply crate WinCE-ARM binaries using them as for native port.
I'm waiting for users feedback. Please remember that I'm not Windows
user and even this port was created without any Pocket machine.
With Marek Paliwoda help I only tested that final applications are
working using PocketPC emulator.
* harbour/hbgtmk.sh
* replaced CVS checkout commands by SVN checkout
# This script checks you have all tools to build Harbour binaries
# installed then takes current Harbour sources from SourceForge SVN
# repository and build binary RPMs at your local host
If possible I think it will be good to put this script on
Harbour home page so Linux users using RPM based distributions
can simply download it and execute. It should greatly help them
and it will reduce some repeated questions.
* harbour/include/hbapifs.h
* harbour/source/rtl/filesys.c
+ added hb_fsNameConv() function, hb_fileNameConv() kept only for
backward compatibility - it should not be used
* use hb_fsNameConv() instead of hb_fileNameConv()
* updated conversion code to use hb_fsFNameSplit()/hb_fsFNameMerge()
and respect some other DOS like conditions
* harbour/include/hbdate.h
* harbour/source/common/hbdate.c
* harbour/source/rtl/seconds.c
* use MT safe localtime_r() instead of localtime() in Linux
+ hb_dateTimeStamp(), hb_timeStampStr(), hb_timeStampDecode(),
hb_dateTimeStampStr(), hb_dateTimeStampStrGet()
* harbour/contrib/libct/files.c
* harbour/contrib/libct/disk.c
* harbour/contrib/hbzlib/hbcomprs.c
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/disksphb.c
* harbour/source/rtl/file.c
* use hb_fsNameConv() instead of hb_fileNameConv()
* harbour/source/debug/dbgentry.c
+ added modifications by Phil Krylow borowed from xHarbour for
supporting :: in command line expressions
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/dbfdbt/dbfdbt1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* harbour/source/rdd/delim1.c
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/dbffpt/dbffpt1.c
* harbour/source/rdd/sdf1.c
* minor clenup:
use hb_parptr(n) instead of hb_itemGetPtr(hb_param(n,HB_IT_POINTER))
* harbour/source/rtl/diskspac.c
* formatting
* harbour/source/rtl/disksphb.c
! fixed typo in numeric drive parameter, now 1->A, 2->B, ..., 0->default
* extract drive letter only when second letter in path is
OS_DRIVE_DELIMITER
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/disksphb.c
! casting for C++ compilers
* harbour/source/rtl/hbinet.c
* added hack for unimplemented in Linux OpenWatcom version
h_errno and hstrerror()
* harbour/source/rtl/hbregex.c
* harbour/source/hbpcre/pcreglob.c
* harbour/contrib/btree/hb_btree.c
* workaround for C/C++ compilers which may use different calling
convention for standard C functions
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/disksphb.c
* use statvfs() instead of statfs() in *nixes - unlike statfs()
statvfs() is documented POSIX function
* respect superuser status in calculating free space in DISKSPACE()
* respect _SET_FILECASE, _SET_DIRCASE in HB_DISKSPACE()
* accept numeric parameter with driver number in systems
which supports drive letters
* harbour/source/rtl/binnum.c
* harbour/source/rtl/binnumx.c
* force positive return value in BIN2W() and BIN2U()
* harbour/source/rtl/diskspac.c
! Fixed to return free space instead of disk size under Unix OSes.
* harbour/source/rtl/tget.prg
! Fixed checking for invalid GET var types.
! More C5x compatible behaviour for invalid types.
! ::UnTransform() fixed when not in focus.
- ::UnTransform() cBuffer incompatible parameter removed.
! ::Reform() probably made more compatible.
+ ::PosInBuffer() XBase++ compatible method implemented.
(but not tested or compared with XBase++)
! ::Minus assignment fixed.
! ::Clear assignment fixed.
! ::Changed assignment fixed.
! ::Buffer assignment fixed.
! ::Block assignment fixed.
! ::Name assignment fixed.
! ::UnTransform() extra parameter removed.
! ::UpdateBuffer() minor fix when not in focus.
! ::Reform() made more compatible.
% ::SetFocus() some superfluous stuff removed.
% ::SetFocus() some fixes, cleanups.
! ::KillFocus() now sets ::TypeOut properly.
! ::VarPut(), ::VarGet() fixed for invalid ::Subscript contents.
! ::VarPut(), ::VarGet() fixed for invalid ::Block content.
! ::Pos rewritten to be fully compatible.
! ::ColorSpec made fully compatible.
! ::UnTransform() fixed when not in focus.
! ::UnTransform() fixed handling "YL" in string pictures.
% ::UnTransform() minor optimization.
% ::PutMask() some hacks removed.
! ::PutMask() invalid types handling.
! ::BackSpace() fixed when not in focus.
! ::Delete() fixed when not in focus.
! ::DeleteAll() fixed when not in focus.
! ::IsEditable() fixes.
! ::Picture fixes for invalid types, assignment behaviour.
! ::Picture hacks removed.
! Non-assignable vars made READONLY. (will generate
different RTEs than in CA-Cl*pper due to the more
refined oo engine in Harbour.)
! ::BadDate changed to be a METHOD.
! ::ToDecPos fixes.
! ::Row assigment and behaviour fixes.
! ::Col assigment and behaviour fixes.
+ Several comments and NOTEs added.
* harbour/include/hbapigt.h
* harbour/source/rtl/gtapi.c
* harbour/source/rtl/setcolor.c
+ hb_gtColorsToString() public API added.
+ hb_NToColor() function added to convert a single color
value (returned by hb_ColorToN()) back to a string.
Used in TGet():ColorSpec implementation.
* harbour/source/vm/fm.c
* "Blocks" -> "Block(s)"
* harbour/tests/rto_get.prg
+ Added many test cases.
* harbour/source/vm/cmdarg.c
+ Added support to use "--" instead of "//" for internal
command line options.
* harbour/source/rtl/tbcolumn.prg
+ Formatting.
* harbour/source/rtl/tbrowse.prg
+ Added Harbour (undocumented) extension NOTE.
* harbour/include/Makefile
- harbour/include/usrrdd.ch
+ harbour/include/hbusrrdd.ch
* harbour/source/rdd/usrrdd/usrrdd.c
* harbour/source/rdd/usrrdd/rdds/dbtcdx.prg
* harbour/source/rdd/usrrdd/rdds/fcomma.prg
* harbour/source/rdd/usrrdd/rdds/fptcdx.prg
* harbour/source/rdd/usrrdd/rdds/hscdx.prg
* harbour/source/rdd/usrrdd/rdds/rlcdx.prg
* harbour/source/rdd/usrrdd/rdds/smtcdx.prg
* harbour/contrib/pgsql/pgrdd.prg
! Changed public header filename to comply with the "hb*.ch" rule.
(namespace protection)
* harbour/include/hbcomp.h
* harbour/include/hbexpra.c
* harbour/include/hbexprb.c
* harbour/include/hbexprc.c
* harbour/include/hbmacro.h
* harbour/include/hbpcode.h
* harbour/include/hbxvm.h
* harbour/source/common/hbdate.c
* harbour/source/compiler/genc.c
* harbour/source/compiler/gencc.c
* harbour/source/compiler/harbour.c
* harbour/source/compiler/harbour.y
* harbour/source/compiler/harbour.yyc
* harbour/source/compiler/hbdead.c
* harbour/source/compiler/hbfix.c
* harbour/source/compiler/hblbl.c
* harbour/source/compiler/hbopt.c
* harbour/source/compiler/hbpcode.c
* harbour/source/compiler/hbstripl.c
* harbour/source/rtl/abs.c
* harbour/source/rtl/at.c
* harbour/source/rtl/chrasc.c
* harbour/source/rtl/datec.c
* harbour/source/rtl/dateshb.c
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/disksphb.c
* harbour/source/rtl/gtfunc.c
* harbour/source/rtl/left.c
* harbour/source/rtl/len.c
* harbour/source/rtl/math.c
* harbour/source/rtl/minmax.c
* harbour/source/rtl/mod.c
* harbour/source/rtl/philes.c
* harbour/source/rtl/philesx.c
* harbour/source/rtl/replic.c
* harbour/source/rtl/round.c
* harbour/source/rtl/set.c
* harbour/source/rtl/space.c
* harbour/source/rtl/strcase.c
* harbour/source/rtl/strpeek.c
* harbour/source/rtl/transfrm.c
* harbour/source/rtl/trim.c
* harbour/source/rtl/type.c
* harbour/source/rtl/val.c
* harbour/source/rtl/word.c
* harbour/source/vm/hvm.c
* harbour/source/vm/macro.c
* added some PCODEs to cover all possible combination of ++, --, <op>=
operations in the same way and keep Clipper compatible RT errors.
* added some other PCODEs to optimize some commonly used expressions/
statements
* use HB_ERR_ARGS_BASEPARAMS instead of hb_paramError()
* some other cleanups and minor optimizations
* harbour/utils/hbtest/rt_math.prg
* update expected result for MOD() - it was not Clipper compatible and
it will be hard to make it compatible without introducing some Clipper's
side effects
* harbour/hbgtmk.sh
* harbour/make_rpm.sh
* harbour/harbour.spec
* added flex to dependences
* added --without gpl swich to exclude code which needs 3-rd party
GPL libs (GPM, SLANG) - necessary for people who want to create
commercial closed source application
* harbour/make_gnu.sh
* modified DJGPP detection - try to use env var first
* set HB_GT_LIB depending on platform information
* check PREFIX env var for default installation
* harbour/make_tgz.sh
* modified to work with DJGPP and 8.3 file names
* harbour/bin/hb-func.sh
* DJGPP support
* harbour/bin/pack_src.sh
* autodetect Harbour version number
* harbour/config/linux/gcc.cf
* added small comment
+ harbour/config/linux/owatcom.cf
+ OpenWatcom support on Linux
* harbour/config/w32/global.cf
* harbour/config/w32/mingw32.cf
* small modification in clean procedure
+ added Phil's modification for MINGW cross compilation in Linux and BSD
* harbour/source/compiler/gencobj.c
+ added Phil's modification for MINGW cross compilation in Linux and BSD
* harbour/include/hbsetup.h
* added OS_HAS_DRIVE_LETTER, OS_PATH_DELIMITER_STRING, OS_FILE_MASK,
OS_DRIVE_DELIMITER and HOST_OS_UNIX_COMPATIBLE
* modified for OW on Linux and MINGW cross compilation
* added snprintf macro for compilers which do not support it
* harbour/source/rtl/mod.c
! fixed bug in mod(a,b) when a/b exceeds LONG limit
* harbour/source/rtl/filesys.c
* removed HB_FS_DRIVE_LETTER - use OS_HAS_DRIVE_LETTER
* modified for OW on Linux and MINGW cross compilation
* harbour/contrib/libct/files.c
* harbour/include/hb_io.h
* harbour/include/hbdefs.h
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/disksphb.c
* harbour/source/rtl/fssize.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/hbffind.c
* harbour/source/rtl/net.c
* harbour/source/rtl/seconds.c
* harbour/source/rtl/gtcrs/Makefile
* harbour/source/rtl/gtcrs/kbdcrs.c
* harbour/source/rtl/gtpca/gtpca.c
* harbour/source/rtl/gtsln/Makefile
* harbour/source/rtl/gtsln/gtsln.c
* harbour/source/rtl/gtsln/kbsln.c
* harbour/source/rtl/gtstd/gtstd.c
* harbour/source/vm/hvm.c
* harbour/source/vm/mainstd.c
* harbour/source/vm/mainwin.c
* modified for OW on Linux and MINGW cross compilation
* harbour/source/vm/memvars.c
- removed unnecessary checking for s_globalTable == NULL in
hb_memvarValueDecRef() - in Harbour it cannot happen
* harbour/source/vm/itemapi.c
- removed snprintf macros (see hbsetup.h)
* fixed possible GPF in hb_itemCopyC()
* modified hb_itemGetPtr() to check item type
* harbour/bin/hb-func.sh
* changed 'sed' and 'tr' expresions to be compatible with SunOS
+ added Darwin dynlib support borrowed from xHarbour thanks
to Phil Krylov
* harbour/bin/hb-mkslib.sh
* minor modification
* harbour/bin/postinst.sh
* harbour/config/darwin/gcc.cf
+ Phil's modification for Darwin
* removed HB_OS_BSD and HB_BIG_ENDIAN - the first macro is set in
hbsetup.h when HB_OS_DARWIN is set, the second one should be
automatically detected inside hbdefs.h using C header files.
* harbour/config/sunos/gcc.cf
* removed HB_BIG_ENDIAN macro - the same as above
* harbour/include/hbapi.h
* harbour/source/vm/fm.c
* changed 16/32 bit hack #if UINT_MAX == ULONG_MAX for hb_xmem*()
functions to still not perfect but working on current platforms
#if UINT_MAX > USHRT_MAX
* harbour/include/hbdefs.h
+ added HB_DBL_LIM_INT24(d) and HB_LIM_INT24(l) macros
+ try to autodect byte order using information form system C header
files - it whoud work for Linux, BSD/Darwin, SunOS - maybe also
for some other *nixes
* removed some dangerous casting. [x]Harbour code still depnds on
8bytes double - in CDX for binary compatibility IEEE754 double is
necessary - if some architectures uses differ type of double value
for binary compatibility we will have to create proper conversion
functions for HB_{PUT|GET}_{LE|BE}_DOUBLE and HB_ORD2DBL/HB_DBL2ORD
macros
* harbour/include/hbsetup.h
* define HB_OS_UNIX when HB_OS_SUNOS set
* harbour/source/common/hbstr.c
* harbour/source/pp/ppcore.c
* casting
* harbour/source/compiler/harbour.c
* use HB_LIM_INT*() macros instead of hard coded values
* removed some unnecessary if () statement - always true
* harbour/source/compiler/harbour.l
* harbour/source/compiler/hbfix.c
* harbour/source/vm/macro.c
* use HB_LIM_INT*() macros instead of hard coded values
* harbour/source/rdd/dbfcdx/dbfcdx1.c
! minor fix
* harbour/source/rdd/dbfntx/dbfntx1.c
! small fix - the temporary index file was not removed
* do not force any name for temporary index files - important
in some cases (like DOS and short file names)
* harbour/source/rtl/diskspac.c
! fixed type in SunOS version
* harbour/source/rtl/gtsln/Makefile
* minor cleanups
* harbour/utils/hbtest/rt_math.prg
* changed to number results to be Clipper compatible.
* harbour/bin/hb-func.sh
* harbour/bin/pack_src.sh
+ harbour/config/sunos/dir.cf
+ harbour/config/sunos/gcc.cf
+ harbour/config/sunos/global.cf
+ harbour/config/sunos/install.cf
+ added SunOS support
* harbour/config/darwin/gcc.cf
* small modification for nicer work with OS-X installed
on SF compile farm - I'm not Darwin user and SF is the only
one place I can make tests - if someone may fix me and leave
some comments 'why?' it will be nice.
* harbour/contrib/Makefile
* exclude ADS RDD from Darwin build
* harbour/contrib/rdd_ads/adsfunc.c
* some minor modification to avoid compiler warnings.
* harbour/include/hbdefs.h
* fixed typo in HB_PUT_LE_DOUBLE() macro for big endian machines.
* harbour/source/compiler/genc.c
! fixed endian dependend code I left by mistake
* harbour/source/compiler/harbour.c
* harbour/source/compiler/harbour.sly
* harbour/source/compiler/harbour.y
! commented out hb_compSequenceFinish()
* harbour/source/pp/ppcore.c
+ added ( void * ) size as result of __ARCH{16,32,64}BIT__ and
__{LITTLE,BIG,PDP}_ENDIAN__ macros
* harbour/source/pp/pragma.c
! fixed possible string overflow
* harbour/source/vm/itemapi.c
* harbour/source/rtl/diskspac.c
* harbour/source/rtl/disksphb.c
* harbour/source/rtl/fstemp.c
* harbour/source/rtl/idle.c
* harbour/source/rtl/math.c
* harbour/source/rtl/gtcrs/Makefile
* harbour/source/rtl/gtcrs/gtcrs.c
* harbour/source/rtl/gtcrs/kbdcrs.c
* harbour/source/rtl/gtcrs/mousecrs.c
* modified for SunOS and Darwin support.