* config/vxworks/diab.mk
+ Implemented support for Wind River Compiler.
Incomplete yet, as I couldn't test each build
feature due to errors in earlier build stages.
* src/common/hbver.c
+ Added fourth version number level.
+ Added version detection for Wind River Compiler (diag).
* Formatting.
* src/common/hbprintf.c
* external/minizip/ioapi.h
+ Fixes for Wind River Compiler (diag)
* src/rtl/hbdyn.c
! Dirty fix to compile in HB_LONG_LONG_OFF mode.
Przemek if you see this, can you take a look at it if
it's right or at least not terribly off?
* include/hbsetup.h
! Temporary hack for Wind River Compiler to use
HB_LONG_LONG_OFF, otherwise the compiler crashes with
internal error in hvm.c (without hvmall and optimizations
also). Now, this flag caused another slew of problems,
so as it looks now support for this compiler cannot
be added:
"../../../hvm.c", line 9827: internal compiler error (etoa:1000): - Failed allocating register pair
please contact support@windriver.com */
* include/hbinit.h
+ Enabled Wind River compiler to use the GCC init mode.
(didn't actually test it, but it compiles)
* utils/hbmk2/hbmk2.prg
+ Added new debug switch -debugpars to get a list of
input parameters processed by hbmk2.
+ Synced automatic HB_CCPOSTFIX configuration based on cpu
setting with GNU Make logic.
* config/vxworks/gcc.mk
* Cleanups.
+ Added more CPU postfixes.
* INSTALL
* Minor convenience added to prev.
* include/hbthread.h
! Hacked around collision between vxWorks headers.
* ChangeLog
! Fixed casing of vxWorks.
* utils/hbmk2/hbmk2.prg
+ Added vxworks/gcc libpaths.
! Fixed vxworks/gcc system lib list.
! Fixed ar to have postfix.
; All these are syncs with GNU Make.
* src/rtl/hbsocket.c
! Typos in previous vxworks patchs.
* config/global.mk
! Fixed forming automatic HB_INSTALL_PREFIX value in *nix cross-build
situations. (it's still wrong as it assumes nix->win cross-builds)
; Now vxworks/gcc/x86 build is clean.
There are iTODOs left, and
- this particular class of warnings, which seems
to be a bug down the <pthread.h> system header:
hbnetio\netiocli.c:155: warning: missing initializer
hbnetio\netiocli.c:155: warning: (near initialization for 's_netioMtx.mutexAttr.mutexAttrType')
- also this, each time FD_ZERO() and friends are used:
warning: implicit declaration of function 'bzero'
- "argument n of 'x' differ in signedness" and "discards qualifiers from pointer target type"
warnings in hbsocket.c code.
; TOFIX:
- Unrecoverable error 9998: Harbour terminal (GT) initialization failure
when running hbtest.
- GPF when running hbmk2 and hbrun. (hbformat, hbi18 startup fine)
* INSTALL
+ config/vxworks
+ config/vxworks/libs.mk
+ config/vxworks/gcc.mk
+ config/vxworks/diab.mk
+ config/vxworks/global.mk
+ Started experimental VxWorks port.
; NOTE: VxWorks port was made possible by Wind River Systems Inc.,
who were so kind to mail me a full VxWorks development
environment, for the purpose of porting Harbour to this
platform. Thank you very much guys.
[ The free license is valid for one month, so if anyone
is interested in helping in this project, I can help with
real tests, builds and information. BTW, the devenv is
Eclipse based plus cmdline, running on Windows (available
for Linux and Solaris, too) and the target VxWorks exes
run in a virtual environment. ]
* config/global.mk
+ Added autodetection of VxWorks platform.
* utils/hbmk2/hbmk2.prg
+ Added VxWorks support. It's incomplete yet.
! Fixed to quote *nix/gcc compiler family in
Windows-host cross-platform situations.
* src/vm/thread.c
* src/common/hbgete.c
* src/common/hbffind.c
* src/common/hbtrace.c
* src/common/hbdate.c
* src/rtl/gtstd/gtstd.c
* src/rtl/gttrm/Makefile
* src/rtl/hbsocket.c
* src/rtl/filesys.c
* src/rtl/diskspac.c
* src/rtl/cputime.c
* src/rtl/disksphb.c
* src/rtl/gtpca/gtpca.c
* src/rtl/net.c
* src/rtl/hbproces.c
* src/rtl/gtsys.c
* src/rtl/hbcom.c
* external/zlib/inflate.c
* external/jpeg/jmorecfg.h
* external/pcre/Makefile
* include/hbapifs.h
* include/hbthread.h
* include/hbdefs.h
* include/hbsetup.h
* contrib/xhb/hboutdbg.c
* contrib/xhb/hbsyslog.c
* contrib/xhb/hbserv.c
+ vxworks/gcc port. First phase.
; Please review.
; NOTE: - vxworks has no termios, for serial comm
support it has sioLib.h.
- vxworks supports another C compiler, which
was not tested yet.
- vxworks supports lots of CPUs, only x86 was
tested yet.
- There are still mutex related warnings to sort out.
- Some parts had to disabled, like HB_LIB*() functionality.
; TODO: Regenarate .difs in external/.
* src/vm/hashfunc.c
* Silenced warnings shown by vxworks/gcc.
* src/rtl/hbdoc.prg
+ __HBDOC_LOADHBD()/__HBDOC_SAVEHBD() now adds signature
to .hbd file format, which is verified on load.
+ .hbd file format now uses zlib compression, hugely reducing
file sizes.
* include/hbextern.ch
* src/rtl/hbdoc.prg
+ Added __HBDOC_LOADHBD( <cFileName> ) -> <hbdoc> | NIL
+ Added __HBDOC_SAVEHBD( <cFileName>, <hbdoc> ) -> <lSuccess>
- doc/en/Makefile
* doc/Makefile
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.nsi
- Don't install doc sources.
* config/postinst.hbs
+ Will now build .hbd files from doc sources at 'install' phase.
.hbd files will be installed in HB_DOC_INSTALL path, which
is /doc by default.
; NOTE: Apps like hbide can now use __HBDOC_LOADHBD() to load
these .hbd files.
; NOTE: We may add other doc generators to hbrtl, plus we may
further enhance .hbd format to be more easily usable
for client apps (and f.e. to consume less disk space).
; TODO: Config HB_DOC_INSTALL also on *nix systems.
* contrib/gtwvg/wvgwing.c
! Fixes after previous commit.
Patch by Tamas Tevesz.
* contrib/make.hbs
* Minor.
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
! Fix for paint bug typo. Report/patch by Antonio Linares.
* src/rtl/hbdoc.prg
! __HBDOC_FROMSOURCE(): added parameter validation.
* tests/stripdoc.hbs
! Fixed -w3 warning.
* contrib/gtwvg/wvgwin.c
* contrib/gtwvg/wvgsink.c
* contrib/gtwvg/wvgwing.c
* contrib/hbwin/hbwinole.h
* contrib/hbwin/win_shell.c
* contrib/hbwin/olecore.c
* contrib/hbwin/hbolesrv.c
+ Applied patch sent by Tamas Tevesz, targeting to change
OLE code to use MS supplied macros to access certain
structure elements. Also contains tweaks to NONAMELESSUNION
Windows mess.
"the attached is take two to use ole api accessors instead of
hard-coded member names which may or may not be present anyway."
; Plus some casing adjusments in macro variable names.
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/wvggui.c
* contrib/gtwvg/wvgwin.c
% Deleted ( HWND ) casts from MS Windows-defined constants.
Still when using plain MS defined constant, msvc will
show some warnings when compiled in C mode:
gtwvg.c(3594) : warning C4306: 'type cast' : conversion from 'int' to 'HWND' of greater size
Couldn't find a way to defeat it.
* contrib/gtwvg/gtwvg.h
* contrib/gtwvg/wvggui.h
+ Upped IE version we are building against to 0x0500.
This avoids some plain C mode msvc warnings.
* contrib/gtwvg/wvgwing.c
+ Added ( HB_PTRDIFF ) cast to newly activated code
after making above change.
* include/hbapicdp.h
* src/rtl/cdpapi.c
* src/rtl/cdpapihb.c
+ tests/utf8at.prg
+ Added hb_cdpUTF8StringAt()
; Patch by Carlos Bacco. Many thanks!
* include/hbextern.ch
* include/hbapicdp.h
* src/rtl/cdpapi.c
* src/rtl/cdpapihb.c
; my modifications to above patch:
- Using HB_BOOL instead of int for flag value.
% HB_UTF8AT(), HB_UTF8RAT() optimized to use hb_param(),
plus optimized out variables.
! HB_UTF8AT(), HB_UTF8RAT() fixed 'nEnd < nStart' case.
! Some formatting.
+ Added new functions to hbextern.ch.
* tests/utf8at.prg
* Changed to use UTF8 string as base.
* Avoiding "OEM" and "ANSI" Microsoft misleading terms,
using standard CP names instead.
! Using HB_TRANSLATE() to convert between CPs (instead
of non-portable, Windows-only HB_OEMTOANSI()/HB_ANSITOOEM()
functions).
* Formatting.
* Using '?' instead of QOUT(), plus added simpleio.ch to
allow redirection of output.
* contrib/make.hbs
* Minor step to make dependency evaluation and automatic
sorting of components for build.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
+ Added -vcshead support for Monotone version control
software.
% Cleaned and optimized "in dir" C compiler run mode.
(currently used by mingw)
! Fixed "in dir" C compiler run mode when using -jobs=
option for multithreaded builds.
% Little optimization to --hbinfo option.
* src/rtl/hbdoc.prg
* include/hbextern.ch
+ Added __HBDOC_TOSOURCE( <aEntry> ) which is able to
rebuild original HBDOC source from memory variable.
ATM language information is lost in the process, this
will have to be solved in the future.
* utils/hbmk2/hbmk2.prg
+ Added experimental optimization to mingw build, where the
compiler is called only once to compile all files. Since
gcc doesn't have a switch for that, it's done in tricky
way by changing directory and recalculating source dir
relative from workdir. Now it's active by default, pls
report any build errors, especially in multithreaded mode.
* contrib/hbqt/generator/hbqtgen.prg
* Cleanups
* contrib/hbwin/win_shell.c
! Reverted previous patch 2010-07-13 08:55, it broke mingw builds.
* include/hbextern.ch
* src/rtl/Makefile
+ src/rtl/hbdoc.prg
+ Added __HBDOC_LOADDIR() internal RTL function to read
NFDOC formatted documentation source directories into
memory. The result will be a list of hashes which contain
the raw content of doc files. The function does format
validation (but not content) and add all agreed-on metadata
to the hashes.
It's a start and I hope others can join to create new
layers of function for below functionality:
- doc content validation
- pre-formatting
- output generators
The goal is to avoid local solutions and standardize
the format.
+ tests/hbdoctst.prg
+ Added small test app which will find and parse all
documentation inside the Harbour source tree and
save them in .hbd (serialized doc hash) format.
Such .hdb files can be generated by the build process
in the future, so tools like HBIDE can use the content
to display intellisense or built-in help.
; TODO: HBQT doc/html should be removed as it's
hbdoc tools' job to convert HBDOC source
format to html or whatever else format needed.
* harbour.spec
* debian/rules
- doc/man
+ src/pp/hbpp.1
+ src/main/harbour.1
+ utils/hbmk2/hbmk2.1
+ utils/hbtest/hbtest.1
+ utils/hbrun/hbrun.1
* Moved man doc files to their own component dirs.
* doc/Makefile
* doc/en/Makefile
+ doc/clipper.txt
- doc/en/clipper.txt
* Moved non-NFDOC formatted doc file to doc dir.
* doc/en/Makefile
! Fixed missing 1stread.txt
* doc/en/hb_apigt.txt
* doc/en/hbinet.txt
* doc/en/tbrowse.txt
* doc/en/hb_apifs.txt
! Fixed NFDOC non-standard entries.
* bin/hbxpatch.hbs
! Fixed detecting dirs. (could cause errors only in rare cases)
* contrib/hbdoc2/tmplates.prg
* Formatting.
* contrib/xhb/xhbat.c
* Renamed HB_SIZE/HB_ISIZ variables.
* src/vm/hashfunc.c
* src/rtl/at.c
* src/rtl/ati.c
* contrib/xhb/xhbat.c
% Deleted unnecessary HB_SIZE casts.
* contrib/hbdoc2/gentpl.prg
* contrib/hbdoc2/gentxt.prg
* contrib/hbdoc2/tmplates.prg
* contrib/hbdoc2/genxml.prg
* contrib/hbdoc2/genhtml.prg
* contrib/hbdoc2/hbdoc2.prg
* contrib/hbdoc2/genhbd.prg
! Typo in prev regarding .hdb output.
+ Attempt to creating separate .hbd file for each input.
Doesn't work.
* .NOT. -> !
! ' = ' -> ' := '
! Fixed to parse contrib dirs properly
(still not good, we'd need a better way to
indentify doc subdirs and enable doc parsing
only inside these dirs)
! Fixed to not crash when parsing hbgd docs. Now
this still needs fixing as it now shows errors for almost
all docs inside the contrib area.
! Added '#include "simpleio.ch"'
+ Enabled to parse contrib area (mainly for testing).
; NOTE: I sense an extreme chaos even in our "agreed"
doc format. This parser needs serious cleanup and
we should have _one_ _proper_ implementation to
parse doc texts and to write them to disk. Now
all tools have their own standards and imaginations
(extension) about the doc format, which is a sure
way to kill the whole effort.
A proper implementation should first convert the
on-disk NF format to an in-memory format, then
pass it to output generator modules.
* contrib/xhb/freadlin.c
! Fixed hb_xfree warning after recent cleanup.
* contrib/xhb/hboutdbg.c
* contrib/xhb/xhbenum.c
* contrib/xhb/dbf2txt.c
* contrib/xhb/fparse.c
* contrib/xhb/xstrdel.c
* contrib/xhb/xhbsave.c
* contrib/xhb/xhbwith.c
* contrib/xhb/xhbhasha.c
* contrib/xhb/datesxhb.c
* contrib/xhb/xhbat.c
* contrib/xhb/xhbmsgs.c
* contrib/xhb/freadlin.c
* contrib/xhb/xhbarr.c
* contrib/xhb/txtline.c
* contrib/xhb/xhbtrim.c
* contrib/xhb/hbserv.c
* contrib/xhb/cstructc.c
* contrib/xhb/xhbfunc.c
* HB_SIZE/HB_ISIZ variables renamed.
* 'unsigned int' -> 'HB_UINT' where applicable.
* src/rtl/gtsys.c
! Added hack to fix setting default GT in bcc C++ builds.
(please replace this with more elegant solution)
* src/rtl/gtwin/gtwin.c
* static var prefixed with 's_'
* contrib/hbqt/hbqt_common.hbm
* contrib/hbqt/hbqtcore.hbp
* contrib/hbqt/qtwebkit/hbqtwebkit.hbp
* contrib/hbqt/hbqscintilla/hbqscintilla.hbp
* contrib/hbqt/hbqtnetwork.hbp
* contrib/hbqt/qtdesigner/hbqtdesigner.hbp
* contrib/hbqt/hbqt.hbp
* contrib/hbqt/hbqtgui.hbp
- -hblib option moved from common part to each .hbp.
It's cleaner and more generic this way plus it helps
tools (make.hbs and hbide) to decide about project type.
* src/rtl/console.c
* src/rtl/hbgtcore.c
* Made internal error codes of "terminal init failure"s
occuring in different situations different. I hope I
left 9998 for the one that happens usually.
* contrib/Makefile
- Deleted hbnetio from list, it's now made by make.hbs.
* config/postinst.hbs
* Minor.
* src/rtl/filesys.c
* src/rtl/filebuf.c
* src/rtl/fssize.c
* HB_FOFFSET vars renamed to have n prefix (instead of ul and ll)
* contrib/make.hbs
! Fixed output dirs in stdalone mode.
* contrib/hbsqlit3/hbsqlit3.c
* contrib/hbwin/olecore.c
* contrib/hbwin/win_bmp.c
* HB_SIZE vars renamed.
* utils/hbmk2/hbmk2.prg
% Never delete the same file twice in -hbimplib -clean mode.
* harbour/src/rtl/cdpapi.c
% removed one redundant if() condition
* replaced not working HB_CDP_[UN]LOCK used in hb_cdpList()
function with simple counter as protection against possible
overflow.
* harbour/src/compiler/complex.c
+ added support also for "." as date delimiters in VFP compatible
date[time] constant values.
* harbour/doc/xhb-diff.txt
* updated description of date[time] constant values syntax
to follow current Harbour and xHarbour behavior.
* utils/hbrun/hbrun.prg
! Don't search passed program in PATH and hbrun dir, if
program name has path component.
* contrib/xhb/xhbenum.c
* contrib/xhb/xhbqself.c
* contrib/xhb/xhbwith.c
* contrib/xhb/xhberrc.c
! Fixed msvc64 warnings after HB_SIZE extension in stack API.
* contrib/make.hbs
+ Added logic to protect against case when 'clean install'
is used but hbrun or hbmk2 isn't available when launching
the make process. In this case 'clean' phase won't be executed
for contribs, which is solved by forcing a -rebuild in
'install' phase.
* src/vm/strapi.c
* src/vm/runner.c
* src/vm/itemapi.c
* src/vm/asort.c
* src/vm/hvm.c
* src/vm/arrays.c
* src/vm/memvars.c
* src/vm/set.c
* src/vm/classes.c
* src/rtl/lennum.c
* src/rtl/strcase.c
* src/rtl/replic.c
* src/rtl/padr.c
* src/rtl/padc.c
* src/rtl/strtran.c
* src/rtl/strtoexp.c
* src/rtl/padl.c
* src/rtl/saverest.c
* src/rtl/right.c
* src/rtl/philes.c
* src/rtl/mlcfunc.c
* src/rtl/left.c
* src/rtl/xsavescr.c
* src/rtl/setkey.c
* src/rtl/stuff.c
* src/rtl/trace.c
* src/rtl/samples.c
* src/rtl/inkeyapi.c
* src/rtl/inkey.c
* src/rtl/mtran.c
* src/rtl/colorind.c
* src/rtl/rat.c
* include/hbapi.h
* include/hbapistr.h
* Renamed HB_SIZE variables to have 'n' prefix.
(verified to generate the same objects as before)
* src/rtl/philes.c
* Changed hb_retnint()/hb_retni() to hb_retns().
* contrib/hbgd/gdwrp.c
* Formatting.
* src/rtl/console.c
* src/rtl/philes.c
* include/hbextern.ch
+ Added: HB_PS() function, which does the same as HB_OSPATHSEPARATOR().
+ Added: HB_EOL() function, which does the same as HB_OSNEWLINE().
; These are very often used functions with an exceptionally long and
hard to type name, so most programs employed macros for it. Now this
is unnecessary. Long names are deprecated.
* contrib/Makefile
- contrib/makefile.hbs
+ contrib/make.hbs
* Renamed to be shorter.
+ Little steps for standlone running mode.
+ Using HB_EOL() and HB_PS().
; TODO: Change it all over Harbour SVN.
* utils/hbmk2/hbmk2.prg
+ -clean will now delete the target for -hbdyn, -hblib and default
-hbexe modes. .bak is also deleted for -hblib mode.
Probably more autogenerated extensions will have to be deleted
here to become in sync with globsh.mk.
+ Extended -instfile and -instpath support to also accept
a file group prefix. This way multiple set of files can be
copied to a set of target directories.
; TODO: Change all -instfile options to point to 'inc' group.
+ dos/djgpp will now use -gstabs+ for debug mode instead of -g.
Following change made in GNU Make system by Tamas.
* contrib/makefile.hbs
+ Reworked the way GNU Make operations are mapped to hbmk2
actions. F.e. 'clean install' needs special attention as
plain clean cannot be done because
+ Added hbblat to limited set of test contribs.
+ Better isolation and preparation of hbmk2 configuration.
+ Cleanups to dynamic lib creation from contribs.
+ Added experimental support to install headers similarly
as GNU Make does.
* Makefile
! Fixed to reverse order and dependency of contrib and utils
trees in clean without install mode. In pure clean mode,
the contribs need to be traversed first, because hbrun and
hbmk2 are required for this task.
* Makefile
* contrib/Makefile
+ Will now inform about missing hbrun and .hbs scripts not
run because of it.
* examples/hbapollo/hbapollo.hbp
* -instfile updated with header file group.
* src/rtl/hbproces.c
! Fixed some unused variable warnings experienced with poccarm.
; Patches from Tamas Tevesz:
* config/dos/djgpp.mk
+ debug switch changed to -gstabs+ from -g. Following this:
http://www.delorie.com/djgpp//mail-archives/thread.cgi?msg=djgpp-workers/2002/05/29/06:33:31&mode=frames
* bin/hbxpatch.hbs
* Updated after latest changes. Thanks!
* src/common/hbver.c
! Fix for pcc detection.
* src/rtl/gtdos/gtdos.c
* src/rtl/hbproces.c
! MS-DOS fixes for TRACE() messages.
* src/common/hbver.c
* src/rtl/Makefile [t]
* src/rdd/Makefile [t]
* include/hbdefs.h
* include/hbsetup.h
+ config/bsd/pcc.mk
* config/rules.mk [t]
+ First step to add support for pcc (Portable C Compiler) on bsd.
; Patch by Tamas Tevesz.
; TODO: ? I guess the -gc3 and -l disabler hacks are temporary.
(in files marked with [t])
* src/rtl/cdpapi.c
* src/rtl/cdpapihb.c
* include/hbapicdp.h
+ Added new low level hb_cdpList() function.
! cdp list generation logic now protected with mutex.
! HB_CDPLIST() .prg level function moved to cdpapihb.c,
thus clearing the last pending TOFIX here regarding
layer separation. Low level can now be moved to
common lib (or is there anything else missing?).
* contrib/hbqt/hbmk2_plugin_qt.prg
* Minor correction in one stdalone error msg.
* contrib/hbqt/hbmk2_plugin_qt.prg
+ Activated new resource binary generator code, which
doesn't require qt headers anymore.
* contrib/hbqt/hbqt.hbc
- Deleted qt dependency. Not needed anymore.
* contrib/Makefile
* contrib/makefile.prg
+ Some contrib libs will now be built using new hbmk2 based
method as an experiment.
+ hbnetiosrv will now be built as well using hbmk2, also as
an experiment.
* contrib/hbide/hbide.prg
+ Loading resources manually using new QResource method
implemented by Bacco.
* utils/hbmk2/hbmk2.prg
+ Implemented support for #import Objective C specific
directive when detecting header dependencies.
* .m extension is now compiled with C compiler (not C++)
- Deleted 'experimental' status from plugin related options.
; Patches from Bacco:
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/qth/QResource.qth
* contrib/hbqt/qtcore/TQResource.prg
* contrib/hbqt/qtcore/QResource.cpp
* contrib/hbqt/doc/en/class_qresource.txt
* contrib/hbqt/hbqt.h
+ Added QResource:registerResource()/QResource:unregisterResource()
* With some minor modification from me (unsigned char -> uchar,
some formatting)
; Patches from Tamas Tevesz:
* src/rtl/memvarhb.prg
* src/rtl/hbcom.c
* Tweaks for prev patch: formatting and .hbv type description.
; Thanks to both contributors!
* ChangeLog
* Revised and updated status for pending TODOs TOFIXes of
this year.
* contrib/hbcurl/hbcurl.c
* contrib/hbcurl/hbcurl.ch
+ Added support for all new libcurl features introduced in
7.19.4, 7.20.0, 7.21.0
* Changed some recently added constants to be in sync libcurl
values.
* contrib/hbwin/Makefile
* contrib/hbwin/hbwin.hbp
+ contrib/hbwin/wapi_winnetwk.c
+ Added WAPI_WNETGETLASTERROR()
* contrib/hbct/ctnet.c
* NETREDIR(): Deleted Windows specific 4th parameter extension
which activated debug-style features (introduced in xhb)
based on WNetGetLastError() call. Such call was now added
separately to hbwin.
* contrib/hbide/hbide.prg
! Deleted hard-coded reference for specific QT version.
This should be solved differently.
; TOFIX: BTW the whole notion of having a special build
for a given distro is wrong. It should rather
do autodetection in all builds.
; Patches from Tamas Tevesz:
* src/rtl/memvarhb.prg
* Adjusted information on magic byte
+ Version number change to 1.
* src/rtl/hbcom.c
! Fix for linux/watcom link problem.
* bin/postinst.sh
* Ajustment for some undisclosed but probably weird system :)
* src/rtl/memvarhb.prg
+ Added file signature and version no. to .hbv files.
; Patch by Tamas Tevesz with a few modifications:
- added high byte at 1st pos is signature
- deleted RTEs in case of invalid file content on load
(to mimic original __MVRESTORE() which is also silent)
- minor optimization on signature checking.
; INCOMPATIBLE: The file format has changed so you won't be
able to interchange it with previous
versions of Harbour. Anyhow it's very new
format, so this shouldn't affect many users.
* utils/hbmk2/hbmk2.prg
* utils/hbrun/hbrun.prg
+ Shows .hbs as support input file format (where applicable)
! Little fix in displaying options w/o description on help
screen.
* utils/hbrun/hbrun.prg
+ Added clipboard paste support with Alt+V key.
* contrib/hbide/hbide.prg
- Temply disabled reference to new-style embedded resources.
* src/rtl/gtsln/kbsln.c
* public variable hb_DeadKey made static and renamed to
s_iDeadKey. Pls shout if this is needed to be kept public,
but even in that case it should get a new name.
* static hb_DeadKeyEnvName renamed to s_DeadKeyEnvName
* Changed HRBNATIONDEADKEY to HB_GTSLN_NATIONDEADKEY to better
fit into Harbour control envvar names.
Pls shout if this break lots of configurations.
* Whitespace formatting.
* contrib/hbqt/hbmk2_plugin_qt.prg
+ Added .qrc to .prg generator logic.
! Fixed .qrc to .c generator leaving last few bytes off.
% Optimized .qrc to .c generator output to have only one
line.
* utils/hbrun/hbrun.prg
+ Internal history length changed to 128 (from 32).
- Deleted extra limit on number of saved history items.
% Minor optimization to history saving.
* src/rtl/gtsln/gtsln.c
* Whitespace formatting.
* harbour/src/compiler/harbour.y
* harbour/src/compiler/harbour.yyh
* harbour/src/compiler/harbour.yyc
* increase the maximum bison stack size limit
from 10000 items to 100000
* harbour/src/rtl/gtsln/kbsln.c
+ added support for HB_K_RESIZE
* harbour/contrib/hbwin/axcore.c
* harbour/contrib/hbwin/hbolesrv.c
* do not pass message ID (DISPID) as first parameter of codeblock
or function taken from hash array indexed by DISPIDs.
This modification restores old format, i.e. the one expected
by GTWVG code.
* harbour/contrib/hbwin/tests/olesrv1.prg
! comment
* src/rtl/gtcrs/gtcrs.c
+ GTCRS will now generate HB_K_RESIZE Harbour INKEY() events
if the terminal window is resized.
Thanks for Tamas Tevesz for the suggestion + patch.
* Whitespace formatting.
* src/rtl/gttrm/gttrm.c
+ GTTRM will now generate HB_K_RESIZE Harbour INKEY() events
if the terminal window is resized.
* utils/hbrun/hbrun.prg
+ Will now automatically resize the UI if the window is
resized (on GTs which support this: GTTRM, GTWVT, GTXWC)
+ Now shows little red 'o' sign if history recording is enabled (default)
+ Set resize mode to 'rows' (only meaningful if using GTs
that support it).
% hbrun_Info() optimized.
* harbour/include/hbcom.ch
* harbour/rtl/hbcom.c
* implemented new error code HB_COM_ALREADYOPEN in hb_comOpen()
* harbour/contrib/hbct/ctcom1.c
* changed COM_OPEN() behaviour to be compatible with HBCOM API
and original CT behaviour
* src/rtl/gtwvt/gtwvt.c
+ SETMODE() will now support automatic resizing of font to make
requested dimensions fit on the screen, when HB_GTI_RESIZABLE
is enabled. (Previously in such case SETMODE() returned .F.)
Please test/review it.
* examples/rddado/tests/test.mdb
! Updated with newly generated one. Seems this file "rots" while
left sitting there on SVN, this is probably the 3rd time I'm
doing this, just to make it open. [ or maybe the file format
required by ADO changes constantly with OS updates/upgrades? ]
* examples/rddado/tests/access1.prg
! Deleted debug code leftover.
* Minor cleanups
* examples/rddado/tests/access2.prg
+ Added date column
! Fixed LOCATE command filter argument. It was not working
since the initial committer added it, because the filter
string used Harbour syntax, while it requires ADO (SQL-like)
syntax. RDDADO will make a very basic attempt to help in
that conversion, but f.e. aliased field names (and many
others) will break it. So: use ADO filter syntax until
this gets properly resolved.
* Minor cleanups
* examples/rddado/rddado.hbc
! Added missing libpath option.
* utils/hbmk2/hbmk2.prg
+ Added '-quiet-' option to turn off -quiet switch.
(note that -quiet will also force off -info, so after
-quiet- you also want to use a -info option to reverse
that)
* src/rtl/achoice.prg
! ACHOICE(): Fixed two navigation bugs (misplacement and RTE)
reported by Abe Buchinger.
Many thanks to Jerry Finuliar for the patches.
* harbour/include/hbgtinfo.ch
* harbour/include/hbgtcore.h
* harbour/src/rtl/hbgtcore.c
+ added HB_GTI_INKEYFILTER which allows to set/get codeblock used to
filter inkey key codes. This codeblock receives as 1-st parameter
actually processed inside INKEY() function key code. It should return
final inkey code (it can be the same or 0 if key should be ignored.
I.e. this code change key 'a' to 'B' and blocks 'c':
hb_gtInfo( HB_GTI_INKEYFILTER, { | nKey |
SWITCH nKey
CASE ASC( 'a' )
RETURN ASC( 'B' )
CASE ASC( 'c' )
RETURN '0'
ENDSWITCH
RETURN nKey
} )
+ added HB_GTI_INKEYREAD which allows to set/get codeblock executed
just before INKEY() reads key code from the GT typeahead buffer.
If it returns non 0 numeric value then this value is returned instead
as inkey code. Otherwise standard inkey procedure is activated and
key code is read from the GT typeahead buffer.
* harbour/include/hbextern.ch
* harbour/src/rtl/inkey.c
- removed HB_INKEYSETPREBLOCK() and HB_INKEYSETPOSTBLOCK() functions
* harbour/contrib/xhb/Makefile
* harbour/contrib/xhb/xhbgt.c
+ harbour/contrib/xhb/xhbinkey.prg
* harbour/contrib/xhb/hbcompat.ch
* updated emulation of xHarbour hb_SetInkeyBeforeBlock() and
hb_SetInkeyAfterBlock() functions to use new HB_GTI_* functionality.
Incompatibility warning!
In Harbour timeout value passed to inkey() is correctly respected
and not reset internally on each call to inkey after block.
If inkey before block returns non 0 numeric value then it's not
ignored but returned as INKEY() function result without touching
GT typeahead buffer.
* src/rtl/hbsha2.c
* src/rtl/hbsha2hm.c
+ Added Win64 support for SHA1 functions.
; NOTE: HMAC keys longer than 2^32 bytes are not support
(unlike with SHA1), probably not huge limitation.
* include/hbhash.h
* src/common/hbhash.c
+ hash key changed from HB_ULONG to HB_SIZE.
* src/rtl/cdpapi.c
* src/compiler/hbmain.c
* Added casts to pacify long time msvc warnings.
* include/hbapi.h
! HB_IS_VALID_INDEX() macro fixed to use HB_SIZE.
* Changed hb_struRefer.offset structure member from HB_LONG to
HB_ISIZ, fixing one pending Win64 type mismatch.
The change doesn't modify HB_ITEM size.
* include/hbapicls.h
+ Added parameter name to one declaration.
* src/common/hbstr.c
* hb_str2number() changed to limit string size to 'int' internally.
This fixes the warnings and inconsistencies on Win64.
* src/rtl/hbcom.c
! Pacified msvc warnings on component boundary.
* src/vm/cmdarg.c
* src/vm/fm.c
* src/nortl/nortl.c
* src/rtl/fmhb.c
* include/hbapi.h
+ hb_xquery() return value changed from HB_ULONG to HB_SIZE.
Also fixes all msvc64 warnings
* src/vm/macro.c
* src/vm/estack.c
* src/vm/dynsym.c
* src/vm/hvm.c
* src/vm/set.c
* src/rdd/wafunc.c
* src/compiler/hbmain.c
* src/compiler/cmdcheck.c
* src/compiler/genc.c
* src/compiler/gencc.c
* src/compiler/harbour.yyc
* src/compiler/harbour.y
* include/hbexprb.c
+ Added strlen() casts to pacify msvc64 warnings
* src/vm/cmdarg.c
! Readded one '( void * )' cast. (I've only tested C++ mode
on Windows, this fell into *nix code). Thanks for checking it.
* src/rtl/hbgtcore.c
+ HB_SIZE -> HB_UINT, plus added necessary casts. Signaled by warnings
* contrib/hbmisc/spd.c
+ HB_SIZE -> HB_UINT, plus added necessary casts. Signaled by warnings
; In case of this function it'd be probably better to make it fully
HB_SIZE compatible, instead of stepping back like this.
* src/rdd/sdf1.c
* src/rdd/delim1.c
+ Added casts to pacify some msvc64 warnings
* src/rdd/hsx/hsx.c
! HB_SIZE -> HB_LONG. Resolves msvc64 warnings.