* harbour/contrib/hbw32/dllcall.c
* minor cleanup in return values
* harbour/contrib/hbole/ole2.c
* cleaned casting in UNICODE conversions
* harbour/source/common/expropt2.c
* replicate CA-Cl*pper compile time optimization bugs:
"" $ <literString> => .T.
AT( "", <literString> ) => 1
CHR( 256 ) => ""
only when Harbour extensions (-kh) are not enabled, f.e.
in strict Clipper compatibility mode (-kc)
* harbour/utils/hbtest/rt_hvma.prg
* harbour/utils/hbtest/rt_str.prg
* updated to test Clipper and Harbour compile time modes in
the above situations
* harbour/common.mak
* harbour/source/rtl/Makefile
- harbour/source/rtl/strings.c
* harbour/source/common/hbstr.c
* moved hb_strEmpty() from RTL to COMMON library
* harbour/include/hbexprb.c
* harbour/include/hbexprop.h
* harbour/source/common/expropt2.c
+ added compile time optimization for EMPTY() function
; removed 'TODO: empty optimization' note
* harbour/source/rtl/itemseri.c
% compress trailing spaces during string item serialization
* harbour/include/hbapi.h
* harbour/source/vm/hashes.c
+ added hb_hashAddNew() - works like hb_hashAdd() but it adds item
only if new key is used
* harbour/source/vm/hvm.c
* use hb_hashAddNew() instead of hb_hashAdd() for HB_P_HASHGEN
I cannot revert the order of hash item during compilation because
it will also change the order of user expression evaluation.
* harbour/contrib/xhb/Makefile
* harbour/contrib/xhb/common.mak
- harbour/contrib/xhb/hbchksum.c
* removed HB_CHECKSUM() code - it's not necessary
* harbour/contrib/xhb/xhbfunc.c
+ redirected HB_CHECKSUM() to HB_ADLER32()
* harbour/source/rtl/gtwvt/gtwvt.c
! fixed WINCE builds. It was only for MiGWCE which partially emulates
GetSystemMenu() but probably other builds will report that this
function is missing.
If possible please test if current Harbour application can be
executed in real WinCE environment.
* harbour/make_deb.sh
* updated contrib library list
* harbour/contrib/hbmysql/mysql.c
! fixed compilation for older MYSQL versions
* harbour/contrib/gtwvg/gtwvg.c
* harbour/contrib/gtwvg/wvgutils.c
! fixed UNICODE builds
+ harbour/config/none.cf
+ added dummy header file for GNU make to avoid errors on unsupported
platforms
* harbour/contrib/hbw32ddr/Makefile
* harbour/contrib/hbmysql/Makefile
* harbour/contrib/hbodbc/Makefile
* harbour/contrib/hbwhat32/Makefile
* harbour/contrib/hbtpathy/Makefile
* harbour/contrib/hbw32/Makefile
* harbour/contrib/hbole/Makefile
* harbour/contrib/hbapollo/Makefile
* harbour/contrib/hbfbird/Makefile
* harbour/contrib/hbziparch/Makefile
* harbour/contrib/hbcurl/Makefile
* harbour/contrib/hbhpdf/Makefile
* harbour/contrib/rddado/Makefile
* harbour/contrib/gtwvg/Makefile
* harbour/contrib/hbpgsql/Makefile
* harbour/contrib/rddads/Makefile
* harbour/contrib/hbfimage/Makefile
* harbour/contrib/hbgd/Makefile
* harbour/contrib/hbgf/hbgfw32/Makefile
* harbour/contrib/hbgf/hbgfos2/Makefile
* harbour/contrib/hbgf/hbgfgtk/Makefile
* harbour/contrib/hbtip/Makefile
* harbour/contrib/hbbmcdx/Makefile
* updated to not generate errors for unsupported builds
* contrib/hbmisc/spd.c
+ SQL_SPRINTF() enhancements from Javier.
(internal modifiers for date and numeric types
are now accepted).
* contrib/hbw32/w32_ole.c
* contrib/hbole/ole2.c
* Formatting.
* harbour/source/vm/extrap.c
! disabled SetUnhandledExceptionFilter() for WinCE builds
* harbour/contrib/hbole/ole2.c
* cleaned compilation in different env C/C++/UNICODE/compilers
* harbour/contrib/hbw32/w32_ole.c
* harbour/contrib/hbole/ole2.c
* harbour/contrib/gtwvg/gtwvg.h
! do not use HB_ID_REF() for _WIN64 - I would like to ask someone
with Win64 to verify current Harbour build status?
* harbour/source/rtl/hbgtcore.c
* removed unnecessary variable
* harbour/contrib/hbw32/w32_ole.c
* harbour/contrib/hbole/ole2.c
* harbour/contrib/gtwvg/gtwvg.h
! use trick with HB_ID_REF() only for BCC and MSVC
some other C++ compilers like OpenWatcom have different
header files and does not need it.
* source/rtl/tget.prg
* ::picture(), ::PutMask(), ::unTransform() moved next
to each other for easier editing/fixing.
* common.mak
- source/common/hbfhnd.c
* source/common/Makefile
- Removed file not used by Harbour anymore.
* contrib/hbole/ole2.c
! Fixed OLE C++ errors under MSVC. Using Przemek's method.
; TOFIX: This one is still left:
.\ole2.c(714) : error C2664: 'HRESULT (IUnknown *,const IID &,void **)' : cannot convert parameter 2 from 'LPIID' to 'const IID &'
Reason: cannot convert from 'LPIID' to 'const IID'
No constructor could take the source type, or constructor overload resolution was ambiguous
+ harbour/contrib/gtwvg/make_gcc.sh
+ harbour/contrib/hbapollo/make_gcc.sh
+ harbour/contrib/hbclipsm/make_gcc.sh
+ harbour/contrib/hbct/make_gcc.sh
+ harbour/contrib/hbfbird/make_gcc.sh
+ harbour/contrib/hbfimage/make_gcc.sh
+ harbour/contrib/hbgd/make_gcc.sh
+ harbour/contrib/hbgt/make_gcc.sh
+ harbour/contrib/hbmisc/make_gcc.sh
+ harbour/contrib/hbmsql/make_gcc.sh
+ harbour/contrib/hbmysql/make_gcc.sh
+ harbour/contrib/hbnf/make_gcc.sh
+ harbour/contrib/hbodbc/make_gcc.sh
+ harbour/contrib/hbole/make_gcc.sh
+ harbour/contrib/hbpgsql/make_gcc.sh
+ harbour/contrib/hbtip/make_gcc.sh
+ harbour/contrib/hbtpathy/make_gcc.sh
+ harbour/contrib/hbw32/make_gcc.sh
+ harbour/contrib/hbw32ddr/make_gcc.sh
+ harbour/contrib/hbwhat32/make_gcc.sh
+ harbour/contrib/hbziparch/make_gcc.sh
+ harbour/contrib/hbzlib/make_gcc.sh
+ harbour/contrib/rddads/make_gcc.sh
+ harbour/contrib/xhb/make_gcc.sh
+ Added missing files to allow compilation using non standard
build system. Please note that some contribs require external
packages, so to succesfuully compile them you will have to
set a proper environment variable, pointing to a list of
directories, containig required package header files. Those
envvars are listed below :
APOLLO_INC
FIREBIRD_INC
FREEIMAGE_INC
GD_INC
MYSQL_INC
PGSQL_INC
ZLIB_INC
ADS_INC
Note that those envvars may contain list of directories,
for example :
export ADS_INC="/usr/include include ."
Also note that on Windows systems, using MingW or Cygwin, you will
have to generate a proper import files from dlls, available in those
packages - using MingW or Cygwin dlltool - to build end user programs,
utilizing those packages.
* harbour/contrib/mtpl_gcc.mak
* harbour/contrib/mtpl_gcc.sh
* harbour/contrib/make_gcc_all.sh
+ Added the rest of contrib libs to compile
* harbour/contrib/hbtpathy/tplinux.c
* harbour/contrib/hbtpathy/tpos2.c
* harbour/contrib/hbtpathy/tpwin32.c
+ Added an operating system guard around the content of
thses files to allow including all three files in a
library.
* contrib/gtwvg/common.mak
* contrib/hbapollo/common.mak
* contrib/hbbmcdx/common.mak
* contrib/hbbtree/common.mak
* contrib/hbclipsm/common.mak
* contrib/hbct/common.mak
* contrib/hbfbird/common.mak
* contrib/hbfimage/common.mak
* contrib/hbgd/common.mak
* contrib/hbgt/common.mak
* contrib/hbmisc/common.mak
* contrib/hbmsql/common.mak
* contrib/hbmysql/common.mak
* contrib/hbnf/common.mak
* contrib/hbodbc/common.mak
* contrib/hbole/common.mak
* contrib/hbpgsql/common.mak
* contrib/hbtip/common.mak
* contrib/hbtpathy/common.mak
* contrib/hbw32/common.mak
* contrib/hbw32ddr/common.mak
* contrib/hbwhat32/common.mak
* contrib/hbziparch/common.mak
* contrib/hbzlib/common.mak
* contrib/rddado/common.mak
* contrib/rddads/common.mak
* contrib/xhb/common.mak
! Changed to be compatible with GNU make for alternative
building system centered around common.mak.
+ contrib/make_gcc_all.sh
+ contrib/mtpl_gcc.mak
+ contrib/mtpl_gcc.sh
+ New files for building contrib libs with GNU make using
alternative building system centered around common.mak.
+ contrib/hbbmcdx/make_gcc.sh
+ contrib/hbbtree/make_gcc.sh
+ contrib/rddado/make_gcc.sh
+ New files for building contrib libs with GNU make using
alternative building system centered around common.mak.
Work in progress.
* contrib/make_b32_all.bat
* contrib/make_vc_all.bat
+ Added Copyright notes.
* contrib/mtpl_b32.bat
* contrib/mtpl_b32.mak
* contrib/mtpl_vc.bat
* contrib/mtpl_vc.mak
! Minor cleanup and formatting.
* make_gcc.mak
* make_gcc.sh
! Minor fix related to Cygwin platform
* harbour-ce-spec
* harbour-w32-spec
* bin/bld.bat
* harbour.spec
* common.mak
* source/pp/Makefile
* source/lang/Makefile
* source/macro/Makefile
* source/rtl/Makefile
* source/vm/mainstd/Makefile
* source/vm/Makefile
* source/vm/mainwin/Makefile
* source/main/Makefile
* source/debug/Makefile
* source/codepage/Makefile
* source/common/Makefile
* source/rdd/nulsys/Makefile
* source/rdd/Makefile
* source/rdd/hsx/Makefile
* source/rdd/usrrdd/Makefile
* source/compiler/Makefile
* contrib/hbct/tests/Makefile
* contrib/hbodbc/tests/bld_b32.bat
* contrib/hbole/tests/bld_b32.bat
* contrib/hbapollo/tests/bld.bat
* contrib/hbfbird/tests/bld_b32.bat
* contrib/hbfbird/tests/Makefile
* contrib/hbpgsql/tests/Makefile
* contrib/hbfimage/tests/bld_b32.bat
* contrib/hbgd/tests/bldtest.bat
* contrib/hbmisc/tests/Makefile
* contrib/hbgf/tests/bld_b32.bat
* contrib/hbbtree/tests/Makefile
* contrib/examples/guestbk/Makefile
* contrib/examples/pe/Makefile
* contrib/examples/dbu/Makefile
* contrib/examples/misc/Makefile
* contrib/examples/hscript/Makefile
* utils/hbdoc/Makefile
* utils/hbextern/Makefile
* utils/hbdot/Makefile
* utils/hbmake/Makefile
* utils/hbmake/hbmutils.prg
* utils/hbmake/hbmake.prg
* utils/hbpp/Makefile
* utils/hbpptest/Makefile
* utils/hbtest/Makefile
* utils/hbrun/Makefile
* tests/Makefile
* Core libs renamed to be prefixed with hb, while
having the first significant 5 chars unique.
Old name New name
-------- --------
codepage -> hbcpage
common -> hbcommon
compiler -> hbcplr
debug -> hbdebug
hbsix -> hbsix
hsx -> hbhsx
lang -> hblang
macro -> hbmacro
pp -> hbpp
rtl -> hbrtl
vm -> hbvm
rdd -> hbrdd
dbfcdx -> rddcdx
dbffpt -> rddfpt
dbfntx -> rddntx
nulsys -> hbnulrdd
usrrdd -> hbusrrdd
mainwin -> hbmainwin
mainstd -> hbmainstd
NOTE/TODO: We're currently not in sync with contribs,
regarding hb prefixing, since in contrib
rdds and gts (rightly) also have hb prefixes.
The only reason not to add them in core this
time, is to keep compatibility with DJGPP.
Maybe we should remove those prefixes from
contrib.
NOTE/TODO: Do tests in as many platforms and as many contrib
tests as possible. Feedback from hbmake users is
also welcome.
!!! Please update your local make files !!!
* include/hbgtinfo.ch
+ Added HB_ prefixed versions for all GTI_ macros.
Unprefixed GTI_ macros are to be considered xhb
compatible (or legacy) ones, and they can be
excluded by #defining HB_GT_NO_XHB if they seem to
collide with user code.
TODO: Switch to use HB_GTI_* inside Harbour code.