* utils/hbmk2/hbmk2.prg
+ Added support for input/output filenames containing spaces.
Only for msvc and bcc so far.
! Fixed to always delete target lib in -hblib + non-incremental mode
before creating it.
+ Small miracles of life: Microsoft finally added /nologo switch to
resource compiler in MSVC 2010. Hard to believe, but true. Now
I'll have to find out what method to use to detect C compiler
version to enable it.
+ Support for HB_COMPILER_VER envvar to tell hbmk2 what C compiler
version is expected. Currently only used with MSVC targets.
Use values like:
- 710 (for MSVC .NET 2003)
- 800 (for MSVC 2005)
- 900 (for MSVC 2008)
- 1000 (for MSVC 2010)
The generic format is <99><99>[.<99>] as <major><minor>[.<revision>].
That makes BCC 5.5.1 '505.1' or shortly '505'.
Currently the only situation where such switch is necessary is when
using pre-8.0 MSVC versions, so most users don't have to bother with
this for now.
NOTE: Harbour GNU Make compatible HB_VISUALC_VER_PRE80 envvar still
supported to stay uniform.
+ Added /nologo switch to MSVC lib command.
! Protect against adding internally inherited C compiler switches,
if they are already on the switch list.
* tests/testhrb.prg
! Adapted to latest hbhrb.ch changes.
* tests/setkeys.prg
* Minor formatting.
* contrib/hbxbp/xbp.ch
* contrib/hbxbp/xbpscrollbar.prg
* contrib/hbxbp/xbpsle.prg
* contrib/hbxbp/xbplistbox.prg
* contrib/hbxbp/xbpcheckbox.prg
* contrib/hbxbp/xbpradiobutton.prg
* contrib/hbxbp/xbptabpage.prg
* contrib/hbxbp/xbpwindow.prg
* contrib/hbxbp/xbpstatusbar.prg
* contrib/hbxbp/xbppushbutton.prg
* Moved these constants to HBXBP_ namespace as they
don't seem to be defined by Xbase++:
- EVENT_HANDELLED -> HBXBP_EVENT_HANDLED
- EVENT_UNHANDELLED -> HBXBP_EVENT_UNHANDLED
! Using manifest constants instead of literals.
; TOFIX: AFAICS these macros and headers are also not Xbase++ ones:
- apig.ch
- DA_MODE
- objType*
If so, these should be resolved.
* contrib/hbqt/hbqt_slots.cpp
! Deleted readded windows.h.
; QUESTION: Is there any way to enforce such headers aren't
included in these portable sources?
* contrib/hbxbp/hbxbp.hbc
! Deleted hbwin lib.
; Pritpal, please use some other means to add hbwin.
hbxbp is a portable lib, so it mustn't depend on hbwin.
Use HB_USER_LIBS envvar, or pass it via command line,
use a local batch file, or add a local .hbc file in
your test dir with 'libs=hbwin' line only. These
will not cause problems for other users and will add
hbwin lib in your local environment.
* harbour/contrib/hbxbp/hbxbp.hbc
* harbour/contrib/hbxbp/Makefile
* harbour/contrib/hbxbp/xbpdataref.prg
* harbour/contrib/hbxbp/xbpgeneric.prg
+ harbour/contrib/hbxbp/xbpsle.prg
* harbour/contrib/hbxbp/xbpwindow.prg
* harbour/contrib/hbxbp/tests/demoxbp.prg
+ Implemented XbpSLE() class. This implementation is almost
95% identical to Xbase++. One or two features remain to be implemented.
Please test and report back the differences.
* utils/hbmk2/hbmk2.prg
+ .hbl files will be created relative to target executable
directory if it was specified. If not, it will be created
relative to .hbm file dir, or hbmk2 launch dir (as before).
* include/hbhrb.ch
! Minor typo in comment.
* contrib/gtwvg/Makefile
* contrib/gtwvg/wvgwin.c
+ contrib/gtwvg/wvgwing.c
* Moved WVG_* prefixed functions to separate file.
* harbour/include/hbhrb.ch
* harbour/source/vm/runner.c
+ added support for HB_HRB_BIND_LAZY flag.
Lazy binding with public external functions allows to load .hrb files
with unresolved or cross function references.
* contrib/hbblat/blatcls.prg
* contrib/hbgd/gdimage.prg
* contrib/xhb/hblog.prg
* contrib/xhb/stream.prg
* contrib/xhb/ttable.prg
* reverted to 'procedure' declaration as methods fail to compile without
a return value; will address this within the new hbextern
* bin/hb-mkdyn.sh
! Fixed to not use HB_CCPREFIX for libtool command.
* utils/hbmk2/hbmk2.prg
! Fixed typo in libtool cmd.
* ChangeLog
* Items marked DONE.
* config/darwin/gcc.cf
* Changed to use 'gcc' as compiler name like on other platforms
and in hbmk2.
For old Darwin systems it may need to be redefined to 'cc' using
export HB_CMP=cc.
* tests/testhrb.prg
* tests/exthrb.prg
! Fixed missing SVN props.
* ChangeLog
! Removed conflict marker from ChangeLog from a recent commit.
; NOTE: I'd encourage everyone to check doc/howtosvn.txt
before committing.
* doc/howtosvn.txt
+ Added link to svn cmdline tools.
+ Added link to svn online documentation (a complete free book)
! Fixed a few svn commands written in uppercase.
- harbour/include/hbhrb.ch
+ harbour/include/hbhrb.ch
* replaced hbhrb.ch with slightly different version and set SVN
attributes:
svn:keywords : Author Date Id Revision
svn:eol-style : native
Now optional HB_HRBLOAD()/HB_HRBRUN() parameter is bitfield and
the following predefined values can be used to control function
bindings in loaded .hrb files:
HB_HRB_BIND_DEFAULT - do not overwrite any functions, ignore
public HRB functions if functions with
the same names already exist in HVM
HB_HRB_BIND_LOCAL - do not overwrite any functions
but keep local references, so
if module has public function FOO and
this function exists also in HVM
then the function in HRB is converted
to STATIC one
HB_HRB_BIND_OVERLOAD - overload all existing public functions
HB_HRB_BIND_FORCELOCAL - covert all public functions to
STATIC ones
Other HB_HRB_* defines will be added in the future
* harbour/include/hbvm.h
* declared hb_vmSetFunction() as internal function
* harbour/source/vm/hvm.c
* modified hb_vmSetFunction() to update references also in unused
modules.
* harbour/source/vm/runner.c
* removed CanUnload - it was not fully functional. Modules which
overloads public functions cen be unload just like any other ones
but unloading does not restore references to overloaded functions.
Now such references are simply lost and this should be fixed in the
future.
+ added support for HB_HRB_BIND_FORCELOCAL
! fixed <nOptions> parameter decoding in HB_HRBLOAD() to strictly
follow declaration:
HB_HRBLOAD( [ <nOptions>, ] <cHrb> [, <xparams,...> ] )
! fixed init procedures parameters in HB_HRBLOAD() to no pass <nOptions>
+ added support for <nOptions> to HB_HRBRUN()
HB_HRBRUN( [ <nOptions>, ] <cHrb> [, <xparams,...> ] ) -> <retVal>
* changed HB_HRBRUN() return value - now it's the result of executed
function instead of .T.
! fixed public symbol updating to keep valid references to HB_FS_LOCAL
function
! fixed possible memory leak
% added const to some char * declarations
TOFIX/TODO: add support for restoring overloaded functions when module
is unloaded.
* tests/testhrb.prg
* tests/Makefile
* include/Makefile
* include/hbhrb.ch
* source/vm/runner.c
! Added new files to Makefiles.
! Fixed to use hbhrb.ch from .c rather than replicating #defines.
(also fixed comments to be ANSI)
! Added self protection to .ch.
! Made .hrb file lowercase in testhrb.prg
! Deleted double license header from .ch.
* utils/hbmk2/hbmk2.prg
+ Added logic to move embedded compilers under a common subdir.
To stay compatible with 2.0.0beta1 release I didn't yet set
this, but it will be for final release.
Probably 'comp', or maybe 'opt'. Sorry for asking for opininons,
but they're welcome anyway.
* vm/runner.c
FIXED ;
../../runner.c:413: error: '_HB_SYMB' undeclared (first use in this function)
+ include/hbhrb.ch: HB_HRBLOAD() mode #define new file
+ tests/testhrb.prg: test program fro new params
+ tests/exthrb.prg: test program to be compiled as .HRB using /gh option
* source/vm/runner.c
* Formatted.
; TOFIX:
../../runner.c: In function 'hb_hrbLoad':
../../runner.c:413: error: '_HB_SYMB' undeclared (first use in this function)
../../runner.c:413: error: (Each undeclared identifier is reported only once
../../runner.c:413: error: for each function it appears in.)
* .
! Deleted "bugtraq:append" (not mentioned in ChangeLog)
property added to main Harbour trunk in:
2009-06-18 21:18 UTC+0200
JF, pls fix this in your SVN client, otherwise next time
it will just reappear. Majority of these extensions and
dirs aren't present in Harbour source tree since long.
* contrib/hbct/Makefile
+ contrib/hbct/dattime4.c
* contrib/hbct/datetime.c
* Moved STOD() into separate file to avoid linking problems
when HB_COMPAT_XPP is defined.
! Removed HB_COMPAT_XPP protection. No longer needed.
! Restored my copyright for STOD().
* Updated STOD() content with core code.
; TOFIX: ? Probably it would be best to remove this function
from here, otherwise it may just create syncing
problems. Also from xpp lib. Opinions?
* contrib/xpp/xpp.ch
+ Now defining HB_COMPAT_XPP. This can be helpful to enable
some extra XPP feature in our core headers. (unless we find
a better solution for this)
+ Added NOTE to include this header before Harbour ones.
* include/hbextern.ch
* source/rtl/mousehb.c
* source/rdd/rddinfo.c
* source/rdd/dbdrop.c
* source/rdd/dbexists.c
* source/rdd/fieldhb.c
* Rest of similar to STOD() status functions also
protected with ! HB_C52_STRICT.
* include/hbextern.ch
* source/rtl/datesx.c
* STOD() function not protected by HB_COMPAT_XPP anymore.
Instead it's turned off only in HB_C52_STRICT mode.
+ contrib/xpp/xppextrn.ch
+ Added.
* contrib/hbwin/win_misc.c
+ Added WIN_HIWORD() and WIN_LOWORD() functions (from GTWVG).
But commented because of colliding names.