* external/sqlite3/sqlite3.c
* external/sqlite3/sqlite3.h
* sqlite upgraded to 3.6.14.1 (from 3.6.11)
* external/sqlite3/Makefile
+ Enabled for bcc compiler. Seems to compile fine now.
; NOTE: poccarm still fails, even with pocc6.
* contrib/hbwin/win_reg.prg
* contrib/hbwin/win_regc.c
* Cleanups: Documenting params, changing default, using SWITCH,
HKEY to HKCU (from HKLM) to be friendly with restricted user
situations (code may become incompatible), removed unused params,
changed return values to logical, more consistently filling params
returned by ref, fixed hkResult usage, fixed hbResult to use real
pointer type, minor opts.
Some of these changes may create incompatibility if:
- no hkey is passed, since the default has changed.
- using win_reg*() functions directly, since return value and
hbResult type has changed.
! Fixed potential GPF is non-string was passed for string params.
* contrib/hbwin/tests/testreg.prg
+ Added registry write test.
* utils/hbmk2/hbmk2.prg
* utils/hbi18n/hbi18n.prg
* utils/hbrun/hbrun.prg
* Minor opt.
* harbour/contrib/gtwvg/wvgsink.c
* harbour/contrib/gtwvg/wvgax.c
! Fixes to newer OLE implementation.
Thanks to Mindaugus and Przemek for doing all the spadework.
Now I can receive events as was doing before, fantastic.
* utils/hbmk2/hbmk2.prg
+ Changed default workdir to use output binary dir as a base.
! Fixed -instpath and -compr option not working with -hblib and -hbdyn modes.
* utils/hbmk2/hbmk2.hu_HU.po
! Cleaned.
* utils/hbmk2/hbmk2.prg
! Fixed setup of .hbl input codepages.
+ Added support to specify output CPs for Windows/DOS/OS2
and *nix systems.
; TOFIX: This isn't enough as f.e. all my *nixes require
UTF-8 output which we currently cannot provide in a
transparent way, so accented chars are all broken
on these platforms. I could hack it around by
calling HB_STRTOUTF8() on all strings going to
output when *nix is detected, but if possible it'd
better to do it transparently.
* utils/hbmk2/hbmk2.hu_HU.po
* Converted to ISO CP from 852.
* utils/hbmk2/hbmk2.prg
! Fixed handling of self-detected name inducted automatic
options (like -xhb when xhbmk2 is used) after adding
multitarget support.
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/hbmk2.hu_HU.po
* Minor cleanup to a few texts.
! Fixed doing nothing for single target cmdlines after latest commit.
+ Added dir/path inheritance of .hbm file path to more options
(-hbl, -po, -o, -L, -instpath, -incpath, -incpathtry, -i, -workdir,
-vcshead, -tshead, *.hbl + .hbp equivalents.)
+ Added dir support for VCS ID readout.
* utils/hbmk2/hbmk2.pt_BR.po
! Tabs -> Spaces
* utils/hbmk2/hbmk2.prg
+ Added experimental support for multitarget command lines.
The final usage may be changed.
There are two ways to do multitarget hbmk2 sessions:
1.) hbmk2 [<common_params1>] target1.hbt [<common_params2>] target2.hbt [<common_params3>]
where .hbt is an .hbm file just with an .hbt extension.
Examples:
hbmk2 mylib1.hbt mylib2.hbt myapp.hbt
hbmk2 -trace -pause mylib1.hbt mylib2.hbt myapp.hbt -beep
2.) hbmk2 [<common_params1>] -target <target1_params> -target <target2_params> [-notarget <common_params2>]
Examples:
hbmk2 -target hello1.prg -target hello2.prg
hbmk2 -trace -target hello1.prg -target hello2.prg
hbmk2 -trace -target hello1.prg -target hello2.prg -notarget -beep
! Fixed not expanding wildcards in .hbm files on *nix systems.
* contrib/xhb/xhbcomp.prg
* Minor formatting.
* bin/hb-func.sh
! HB_USER_LIBS_DEF -> CC_HB_USER_LIBS
; QUESTION: Is it a problem to move these to HB_ namespace?
* source/rtl/lang.c
! Fixed to return language IDs with consistent '-' separators
instead of '_'. We may change this to consistent '_', if
we decide it's better.
* harbour/source/rtl/filesys.c
! fixed OpenWatcom Linux builds which does not support utimes() yet.
* harbour/contrib/rddads/ads1.c
* pacified two BCC warnings
* utils/hbmk2/hbmk2.prg
! Just added bcc hack fixed to not cause problems when
bcc is explicitly selected, but the compiler cannot be
detected in path.
* utils/hbmk2/hbmk2.prg
+ Added automatic bcc configuration hack to add PSDK dir to
the libpath list. This is to fix bcc installations where
this isn't done in bcc configuration itself in bcc32.cfg,
ilink32.cfg. PSDK dir is required for hbmk2 because most
libs on the standard hbmk2 list of Windows system libs
(like winspool) included in link process are stored in
this subdir. It's still recommended to do this tweak in
local bcc environment.
; Please test it.
* utils/hbmk2/examples/contribf.hbp
+ Added hbqt.
* harbour/contrib/hbwin/hbwinole.h
* harbour/contrib/hbwin/olecore.c
+ functions hb_oleParam(), hb_oleItemToVariant() made public
* harbour/contrib/rddsql/hbrddsql.h
* harbour/contrib/rddsql/sqlbase.c
+ added NULL SDD driver. It allows to use SQLBASE, SQLMIX RDD
without any real SDD driver. It could be usefull to implement
memory/array RDD
* unspecified SDD methods are "inherited" from NULL SDD
+ harbour/contrib/rddsql/tests/arrayrdd.prg
+ "Array RDD" example added
* harbour/contrib/rddsql/sddfb/fbirddd.c
* harbour/contrib/rddsql/sddmy/mysqldd.c
* harbour/contrib/rddsql/sddodbc/odbcdd.c
* harbour/contrib/rddsql/sddpg/pgsqldd.c
* deleted empty or default SDD methods. They are inherited from
NULL SDD now
* harbour/contrib/rddsql/sddodbc/tests/test1.prg
+ added svn:keywords header
* extended to show SQLMIX index features
* utils/hbmk2/hbmk2.prg
! Fix to prev commit.
! Fix ignoring .po input without a language macro when
checking .hbl dependencies.
! Cosmetic fix to some i18n related outputs.
! Fixed recent RTE when generating .hbl.
* utils/hbmk2/hbmk2.prg
! Fixed -beep to work on all build failures.
+ Linking gtwin/trm/dos/os2 as non-default GT for -pause
support (gtcgi doesn't support Inkey(0)).
+ Added -pause option to force a pause on exit in case of
any error. This only works with alternate GTs above.
! Added missing -beep from help screen.
* source/rtl/hbi18n2.prg
! Minor fix to change dir separators to "/" so that
there won't be multiple entries for the same file
in mixed environments.
(like: '#: src\file.prg:1022 src/file.prg:1022')
+ utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hbm
+ Added Portuguese translation. Work of Vailton Renato. Thanks!
; NOTE: Quite some strings has changed since version, so the .po
file by now needs an update from source plus some parts
translated.
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
* Minor updates.
* utils/hbmk2/hbmk2.prg
% Changed default way of updating .po files. New method supports
incremental updates, thus much faster than previous solution.
As a side-effect, removed from source and changed translatable
strings won't automatically disappear from .po files.
This new method is also much friendlier to version control
systems, as .po entry order won't change on each minor update
(and generate a huge commit diff).
+ Added -rebuildpo option to activate a complete rebuild of .po
files, clearing all no more existing entries. This operation
will take more time, will create big diffs and it's recommended
to be done when doing a complete rebuild (maybe this will
be automatically enforced later on).
; With this, hbmk2 seems feature complete. (maybe C++/C mode
switching could be added yet, it's on the TODO list)
* bin/hb-func.sh
* Addition of libs= entry in hbmk.cfg file will now be
initiated by setting envvar HB_USER_LIBS_DEF (was HB_USER_LIBS),
to avoid potential binary build problems where locally
set HB_USER_LIBS envvar could create an unusuable (on other
systems) builds (hbmk2 setup).
+ contrib/rddsql/readme.txt
+ Added readme (posted on the list). Work of Mindaugas.
* utils/hbmk2/hbmk2.prg
+ Using HB_USERLANG() to detect language, so it now also
works on Windows.
+ Added support for -lang= switch to override language.
+ Added support for HB_LANG envvar to override language.
(this is the recommended method)
* include/hbextern.ch
* source/rtl/Makefile
+ source/rtl/lang.c
+ Added HB_USERLANG() function to retrieve ietf code of
language set by user. Works also on Windows.
* contrib/hbwin/win_misc.c
* contrib/hbwin/wapi_winbase.c
* contrib/hbwin/wapi_winuser.c
* WAPI_*() functions moved to wapi_* files.
+ WAPI_GETPROCADDRESS() added. This is a pure wrapper to
this Windows API.
* contrib/hbwin/win_prn1.c
* contrib/hbwin/win_prt.c
% hb_parnl() -> hb_parni() where it was cast to int anyway.
* contrib/hbwin/legacy.c
+ Added old MESSAGEBOX() call.
* contrib/hbwin/win_misc.c
* WAPI_MESSAGEBOX() now accepts pointer only.
+ WAPI_LOADLIBRARY() added, pointer based only.
+ WAPI_FREELIBRARY() added, pointer based only.
+ WIN_N2P() added to convert numeric pointers to real pointers.
+ WIN_P2N() added to convert real pointers to numeric ones.
I know this is a hack but it's IMO better than embedding the
conversion logic to all functions, and makes it possible to
"bridge" this parameter passing difference between existing
apps/libs and our developing Windows API layer.
So f.e. 3rd party app may switch to our new API, while
keeping some parts of his local code intact by using:
WAPI_MESSAGEBOX( WIN_N2P( MYWINFUNC_RETURNING_A_NUMHND() ), "hello", "world", MB_OK )
Later after doing local fixes this can be changed to:
WAPI_MESSAGEBOX( MYWINFUNC_PROPER(), "hello", "world", MB_OK )
* contrib/hbwin/win_dll.c
* Changed stub order for DLLLOAD()/LOADLIBRARY(),
DLLUNLOAD()/FREELIBRARY(), so that it workd if XBase++ parts
are disabled.
* harbour/bin/hb-func.sh
* respect HB_USER_LIBS creating hbmk.cfg
* harbour/contrib/rddads/ads1.c
! fixed minimal record buffer size calculation
! fixed adsGetValue() method hacked to not report errors due to too
small field buffer.
Warning! Now ADS RDD will report any error as RTE if sth wrong
will happen in one of AdsGet*() function when field is read so
it's possible that also some other hidden bugs will be exploited
and you will see RTE. Please test it.
* utils/hbmk2/hbmk2.prg
* -shareable -> -fullshared/-fixshared
+ contrib/hbmysql/mysqlold.c
* contrib/hbmysql/mysql.c
* contrib/hbmysql/Makefile
* Compatibility function names moved to separate file.
+ contrib/hbodbc/odbcold.c
* contrib/hbodbc/odbc.c
* contrib/hbodbc/Makefile
* Compatibility function names moved to separate file.
* contrib/hbwin/win_prt.c
! Applied fix submitted by Alex Strickland. Thank you.
* contrib/hbwin/legacy.c
* contrib/hbwin/win_dll.c
* GETLASTERROR()/SETLASTERROR() moved to legacy.c.
We have WAPI_GETLASTERROR()/WAPI_SETLASTERROR() and
it's recommended to use them instead.
+ XBase++ compatible DLL handling functions marked with
HB_COMPAT_XPP.
! DLLLOAD() changed back to return numeric pointer. This
is required to stay compatible with XBase++.
; TODO:
- Add C API to make DLL calls.
- Move CALLDLL*() functions to xhb lib.
- Add WAPI_LOADLIBRARY()/WAPI_FREELIBRARY()/WIN_GETPROCADDRESS()
functions to replace current LOADLIBRARY()/FREELIBRARY()/GETPROCADDRESS()
calls, fixing them to work on pointers only.
* utils/hbmk2/hbmk2.prg
+ Added -shareable/-shareable- option to control the aspect
of harbour.so absolute dir reference. It can override
previous rule controlled by system location detection. See
more in help.
* Minor internal change to one of the functions.
+ source/rtl/hbzlibgz.c
* source/rtl/hbzlib.c
* source/rtl/Makefile
% Split source into two, so unnecessary code parts won't be
included in final binaries.
* contrib/hbwin/tests/testdll.prg
* contrib/hbwin/win_dll.c
+ DLLPREPARECALL() will now accept pointer type as dll handle.
+ DLLLOAD() will now return pointer type, instead of numeric pointer.
May be incompatible if the value is used outside the scope of hbwin lib.
+ DLLUNLOAD() will now accept pointer type for dll handle.
+ DLLUNLOAD() will now gracefully fail if non pointer or numeric param
is passed.
+ DLLCALL() will now accept pointer type for dll handle.
+ GETPROCADDRESS() will now accept pointer type for dll handle.
; TODO: Remove compatibility with numeric pointers.
* contrib/hbwin/win_misc.c
* WIN_SHELLEXECUTE() no longer accepts numeric pointers
as optional first parameter. Use pointers instead.
* contrib/rddads/rddads.h
! Fixed version autodetection for ACE clients 9.00.0.7.
Now 900 is detected, previously it was 910 (Sybase
retrofitted some macros from 9.10 into this minor update.)
* utils/hbmk2/hbmk2.prg
! Fixed regression causing -o not to work in -hbcmp mode.
(bug introd in the compile/link phase switch)
+ Added support for -o in -hbcmp mode for pocc compilers.
+ Added support for -o in -hbcmp mode for owatcom compilers.
; Please test.
* contrib/rddads/rddads.h
- Deleted some commented lines targeting compatibility with
some now forgotten macros.
* harbour/contrib/rddads/ads1.c
* re-enabled workaround code for wrong character field size returned by
AdsGetFiled() for all ACE versions until we will not have good
confirmation from Extended System that problem is fixed in some
newer client versions.
* include/hbextern.ch
* source/rtl/Makefile
+ source/rtl/tgethb.prg
* source/rtl/tget.prg
+ HB_EXTENSION functionality (:hideInput() and :style()) moved
from GET to a new derived class called HB_GET(). It means
this functionality is available in default builds.
Further extensions can be added to this class.
* include/hbextern.ch
* contrib/xhb/hbcompat.ch
* source/rtl/setkey.c
+ Added HB_SETKEY() which is similar to SETKEY() but contains
3rd parameter extension. Now this functionality is available
for default Harbour builds under this new function name.
+ Added cross mappings for xhb SETKEY().
* source/rtl/setfunc.prg
+ F11/F12 key handling now protected with HB_C52_STRICT instead
of HB_EXTENSION so it will available in default builds.
- Other HB_EXTENSION protected feature deleted (allowing to
assign non-string key sequences to F keys. This effect can
easily be achieved with direct SETKEY() calls, so it wasn't
an essential extension here.
* source/rtl/hbffind.c
+ Internal HB_EXTENSION protected part enabled.
- Deleted HB_EXTENSION dealing with Windows-specific attribute
chars. Those needing this functionality can access it using
C level API.
* source/rtl/tpopup.prg
* source/rtl/ttopbar.prg
- Deleted minor (non Clipper-compatible) behaviour change
in handling disabled menu items when HB_EXTENSION
is enabled.
; Only remains few class extensions covered by HB_EXTENSION.
Overall there is no reason anymore to use this macro.
TODO: Solve these using inheritance.
* harbour/contrib/rddads/ads1.c
* enable workaround code added in previous commit only for ACE 9.00.
If other ACE clients need it too then please report them.
Fernando reported that 9.10 is fixed.
* harbour/contrib/rddads/ads1.c
! added workaround for ACE bug: character fields longer then 23 bytes are
increased by one byte when read by AdsGetField().
* contrib/hbwin/Makefile
+ contrib/hbwin/legacy.c
+ Added deprecated compatibility wrappers:
MESSAGEBOX(), ANSITOWIDE(), WIDETOANSI(), OLE2TXTERROR().
+ Added deprecated compatibility wrapper TOLEAUTO for HB_OLEAUTO
class. This is probably not enough as there are other remaining
incompatibilities.
; TODO: users needing this please tweak it further.
+ Added deprecated compatibility wrapper hb_oleWideToAnsi(), which
now calls hb_mbtowc(). Not fully compatible for error cases, old
one could return NULL in some cases.
; TODO: Switch to hb_mbntowc().
+ Added deprecated compatibility wrapper hb_oleAnsiToWide(), which
now calls hb_wctomb(). Not fully compatible for error cases, old
one could return NULL in some cases.
; TODO: Switch to hb_wcntomb().
* contrib/hbwin/win_misc.c
+ Added WAPI_MESSAGEBOX()
+ Added WIN_ANSITOWIDE() (rewritten using common API. Please check.)
+ Added WIN_WIDETOANSI() (rewritten using common API. Please check.)
; NOTE: ANSI/WIDE conversions aren't 100% compatible for error
situations and empty strings. Old version could return NIL
in certain situations.
; None of these were tested besides successful compile.