+ utils/hbmk2/pkg_dynl.hbm
* utils/hbmk2/hbmk2.prg
+ added built-in package $hb_pkg_dynlib.hbm which adds
hbmk2 options needed to build standard dynamic libs out
of lib projects the same way contribs are built when
using HB_BUILD_CONTRIB_DYN=yes.
* utils/hbmk2/pkg_inst.hbm
! fixed to place target dynamic libs to main project
directory, so they can be used right away
* extras/hbvpdf/hbvpdf.hbp
- extras/hbvpdf/hbvpdf.prg
+ extras/hbvpdf/core.prg
- extras/hbvpdf/hbvpsup.prg
+ extras/hbvpdf/fonts.prg
* renamed source to not collide with .hbx file
* renamed other source to simpler name
* fonts.prg hbformatted
* extras/gtwvw/gtwvw.hbp
* extras/hbusb/hbusb.hbp
* extras/hbvpdf/hbvpdf.hbp
* extras/hbxlsxml/hbxlsxml.hbp
+ added $hb_pkg_dynlib.hbm built-in build rules,
so now these can be built as dynamic libs using
command:
'hbmk2 -hbdyn <name>.hbp'
* extras/gtwvw/gtwvwd.c
! fixed wrong startup code causing GPF when
used as hbrun script.
* extras/hbusb/tests/test.prg
* extras/hbvpdf/tests/pdf_demo.prg
* extras/hbxlsxml/tests/example.prg
* extras/hbxlsxml/tests/example2.prg
* extras/hbxlsxml/tests/example3.prg
+ added #require directives to make
them run as scripts.
* extras/gtwvw/tests/cbtest1.prg
* extras/gtwvw/tests/cbtest6.prg
* extras/gtwvw/tests/drawimg.prg
* extras/gtwvw/tests/ebtest7.prg
* extras/gtwvw/tests/inpfocus.prg
* extras/gtwvw/tests/maincoor.prg
* extras/gtwvw/tests/maximize.prg
* extras/gtwvw/tests/prog0.prg
* extras/gtwvw/tests/prog1.prg
* extras/gtwvw/tests/prog2.prg
* extras/gtwvw/tests/wvwtest9.hbp
* extras/gtwvw/tests/wvwtest9.prg
- extras/gtwvw/tests/wvwmouse.prg
+ extras/gtwvw/tests/_wvwmous.prg
+ added #require directives and dynamic switching
to GTWVW GT to make them run as scripts.
* renamed one internal .prg to start with an
underscore
* changed the way _wvwmous.prg is added to the
main project source to make it run as
script (though the .rc file won't be available
in this case)
* extras/hbxlsxml/tests/example.prg
! fixed typo in a recent manual cleanup update
; After this, 3rd party addons can easily use this
facility to build and used as dynamic libs, making
it possible to use them from scripts.
; NOTE: I didn't check if these dynamic libs can be
linked statically to dependent projects. Left
for the future.
; TODO: - clean contrib/hbpost.hbm to be more in
sync with utils/hbmk2/pkg_dynl.hbm
- inspect if _HB_DYNSUFF can be avoided in
contrib .hbc files
- contrib/gtwvg/tests/activex.prg
- contrib/gtwvg/tests/cuigdlgs.prg
- contrib/gtwvg/tests/dyndlgs.prg
- contrib/gtwvg/tests/modal.prg
- contrib/gtwvg/tests/tbrowser.prg
- contrib/gtwvg/tests/utils.prg
- contrib/gtwvg/tests/wvtcls.prg
- contrib/gtwvg/tests/xbp.prg
+ contrib/gtwvg/tests/_activex.prg
+ contrib/gtwvg/tests/_cuigdlg.prg
+ contrib/gtwvg/tests/_dyndlgs.prg
+ contrib/gtwvg/tests/_modal.prg
+ contrib/gtwvg/tests/_tbrowse.prg
+ contrib/gtwvg/tests/_utils.prg
+ contrib/gtwvg/tests/_wvtcls.prg
+ contrib/gtwvg/tests/_xbp.prg
* contrib/gtwvg/tests/demowvg.prg
* renamed internal .prg files to not confuse them
with those that can be run as scripts or built
to exes.
- contrib/gtwvg/gtwvg.c
+ contrib/gtwvg/gtwvgd.c
- contrib/gtwvg/wvggui.h
+ contrib/gtwvg/gtwgu.h
- contrib/gtwvg/wvggui.c
+ contrib/gtwvg/gtwgud.c
* contrib/gtwvg/gtwvg.hbp
* contrib/gtwvg/gtwvg.hbx
! fixed object name collision between compiled gtwvw.hbx
and gtwvw.c driver code.
+ enabled gtwvg build in dynamic (dll) mode.
+ include HB_GT_WBG and HB_GT_WGU in gtwvg.hbx
* renamed WGU driver sources to have a consistent
name with GTWVG.
! fixed GTWVG and GTWVU driver code to not abend
when hb_winMainArg() return false, but fall back
just like GTWVT does.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/demowvg1.prg
* contrib/gtwvg/tests/demoxbp.prg
* GT driver request tweaks to make it possible to
run them as scripts.
+ added #require "gtwvg" so that these now work
as hbrun scripts.
* contrib/gtwvg/tests/activex.prg
* contrib/gtwvg/tests/cuigdlgs.prg
* contrib/gtwvg/tests/demowvg.prg
* minor cleanups
* contrib/gtwvg/tests/hbmk.hbm
- contrib/gtwvg/tests/demowvg.hbp
% no longer necessary
* necessary options moved to hbmk.hbm
* contrib/gtwvg/tests/cuigdlgs.prg
! fix to one of prev mods
- extras/gtwvw/gtwvw.c
+ extras/gtwvw/gtwvwd.c
* extras/gtwvw/gtwvw.hbp
! fixed object name collision between compiled gtwvw.hbx
and gtwvw.c driver code.
* contrib/hbnf/tests/metaph.prg
% optimized code
* contrib/gtwvg/crt.prg
* contrib/gtwvg/paint.prg
* contrib/gtwvg/wnd.prg
! few fixes applied from hbformat, plus one manual
mod to keep make one code line hbformat friendly
* contrib/hbssl/*.c
* contrib/xhb/*.c
* manual code cleanup (single {} blocks, commented
code converted to #if 0/#endif, deleted extra empty lines,
made code uncrustify friendly)
* applied all uncrustify fixes, except for
HB_FUNC_[TRANSLATE|EXEC|etc] related code in xhb which it
messes up badly. And some horizontally layed out
lines in hbssl.
* contrib/hbnf/any2any.prg
* contrib/hbnf/d2e.prg
! Fixed wrongly cased local macros after last formatting.
These macro names collided with function names used in
other libs. I gave these macros a unique name to avoid that.
Based on Andi Jahja's patch. Thank you.
* include/*.ch
* formatting (except std.ch)
* contrib/xhb/hbcompat.ch
! minor fix to prev
* include/harbour.hbx
! minor fix
* contrib/gtwvg/hbgtwvg.ch
* contrib/hbblink/hbblink.ch
* contrib/hbcairo/hbcairo.ch
* contrib/hbct/ct.ch
* contrib/hbct/ctdisk.ch
* contrib/hbct/ctvideo.ch
* contrib/hbfimage/freeimag.ch
* contrib/hbmxml/hbmxml.ch
* contrib/hbnf/any2any.prg
* contrib/hbnf/d2e.prg
* contrib/hbtip/thtml.ch
* contrib/hbtip/tip.ch
* contrib/hbxpp/hbxpp.ch
* contrib/hbzebra/hbzebra.ch
* contrib/xhb/hbcompat.ch
* contrib/xhb/hbdll.ch
* contrib/xhb/hblog.ch
* contrib/xhb/ttable.ch
* extras/hbdoc/hbdoc.ch
* extras/hbvpdf/hbvpdf.ch
* utils/hbtest/rt_init.ch
* minor cleanups/formatting
* harbour/src/rtl/rat.c
! fixed HB_RAT() to respect end range in the same way as in HB_AT()
; Warnings: 1) It's not backward compatible and may change the behavior
of some code which expects that ranges are not strictly
respected. If someone uses HB_RAT() with 4-th parameter
then he should check if above modification interacts with
his code. The modification is significant only if 1-st
parameter is longer then 1 character.
2) xHarbour supports in its RAT() function 3-rd and 4-th
parameters but their meaning is reverted then in HB_RAT()
and they do not have any range checking so they are used
in raw form accessing any memory addresses (even out of
process memory area generating GPF in such case).
It means that also above fix is not respected and may
introduce the same incompatibilities in code which tires
to use sth like HB_RAT() with reverted 3-rd and 4-th
parameters to emulate xHarbour RAT().
* harbour/src/rtl/rat.c
% use 4-th parameter of HB_RAT() function instead of creating temporary
substring from 2-nd parameter.
* harbour/contrib/hbtinymt/3rd/tinymt/tinymt.hbx
* regenerated (removed Id header)
* contrib/hbgd/doc/en/hbgd.txt
* contrib/hbgd/gdimage.prg
* cleanups related to no longer needed "destroy" code
* GDImage:Destory() method deprecated with HB_LEGACY_LEVEL4
* harbour/src/rtl/rat.c
! fixed HB_RAT() used with 3-rd and/or 4-th parameter and multibyte CPs
* harbour/contrib/hbct/disk.c
+ enabled NUMDISKL() in OpenWatcom DOS builds
% extract string length in the same STR API call instead of using
additional hb_parclen()
* added real protection for buffer overflow in windows version of
TRUENAME(). I do not know if it's really necessary but without
the code which allocates one byte bigger buffer does not make
any sense.
; TOFIX: this code still uses HB_TCHAR_*() macros
* contrib/hbblink/hbblink.hbx
* found original sources and formatted Blinker
compatibility functions, too
* contrib/hbblink/blinker.prg
* hbformatted source (automatic)
* contrib/hbnf/tests/mouse1.prg
* minor
* config/postinst.hb
* renamed harbour.hbr to contrib.hbr
* contrib/hbformat/hbfmtcls.prg
% minor optimizations
! added workaround for RTE while processing
contrib/hbhttpd/core.prg (previously reported)
* contrib/hbhttpd/hbhttpd.hbx
* minor sync to actual casing used in code
* contrib/hbhttpd/core.prg
* hbformatted (only one sections gives problems
due to reported issue)
* contrib/gtwvg/gtwvg.hbx
* cleanups
* ChangeLog
! missed this entry from prev patch:
* contrib/hbformat/hbfmtcls.prg
+ Committed Maurizio's latest patch (#5)
Many thanks for this great work to Maurizio.
It resolves a great number of problems.
* contrib/hbformat/hbfmtcls.prg
! fix for line ending spaces remaining after formatting
* fixed few formatting for the recent patch
* contrib/hbformat/hbformat.hbx
* formatted new function name
* contrib/hbct/hbct.hbx
* minor cleanup
+ contrib/hbformat/hbfuncs.prg
* contrib/hbformat/hbfmtcls.prg
* contrib/hbformat/hbformat.hbp
* contrib/hbformat/hbformat.hbx
* moved function name loading functions to
separate file
+ proper cased function names will now be loaded
from .hbr files and /contrib and /addons
folder structures automatically.
* utils/hbmk2/hbmk2.prg
+ hbmk2 will now read *.hbr for function/lib pairs
instead of only hbmk2.hbr
* config/postinst.hb
* renamed hbmk2.hbr to harbour.hbr
* INSTALL
+ added table of content (experimental)