* harbour/include/blob.ch
! fixed minor typo
* harbour/source/rdd/dbffpt/dbffpt1.c
! fixed two bugs in garbage collector. One of them was critical and could
cause FPT or DBV file corruption when memoblock size was smaller then 8
bytes. Thanks to Mike Evans for self contain example.
* include/hbexprb.c
+ Allowing user defined 'gettext' functions to be used
under the names hb_i18n_gettext[_strict|_noop]_*(),
where * is a function name postfix.
* source/vm/Makefile
! Disabled HB_HVM_ALL for owatcom/win compiler.
The compiler hangs in hvmall.c (Reported by Marek Horodyski).
Please make tests on other platforms whether it does the same.
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/hbmk2.hbm
- utils/hbmk2/hbmk2.hu_HU.pot
+ utils/hbmk2/hbmk2.hu_HU.po
* Changed hbmk to use official gettext terminology, where
.pot refers to raw extracted translation file, .po refers
to merged .pot files which holds the actual translations.
hbmk switch names and extensions changed accordingly.
! Fixes to .po from .pot generation support.
* utils/hbmk2/hbmk2.prg
! Fixed -pot= option mentioned in prev entry.
! -pot= refinement to handle missing source .pots (which
is normal). Also added/fixed some lng related debug options.
! Remaining debug texts made non-translatable.
; NOTE: It's now possible to handle all aspect of translation
files using hbmk2 alone. (extraction from source ->
creation of unified translation file -> merging this
file with previous version retaining existing
translations -> creation of .hbl file from .pots)
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/hbmk2.hu_HU.pot
+ Added new -pot= switch with which it's possible to create
one .pot file for the whole project. When this switch is
used, Harbour compiler will be run with -j parameter so
that .pot files will be generated.
hbmk will take care of preserving existing translations.
This changes contains parts taken from hbi18n, work of
Przemek, copyright retained.
; TOFIX: For some reason update of existing .pot file with
new one doesn't work. It's probably something obvious
but I cannot see what.
* utils/hbmk2/hbmk2.prg
! Further fixes to texts.
+ Added hb_cdpSelect() call as provision. Also included a few CPs
in executable.
* utils/hbmk2/hbmk2.hu_HU.pot
+ Finished HU translation (probably it could be tweak with
regards to terminology).
* harbour/include/hbcomp.h
* harbour/source/compiler/hbmain.c
* harbour/source/compiler/hbcomp.c
* harbour/source/compiler/compi18n.c
* changed -j<path>/ and -j<file> behavior when more the one .prg file
is compiled. Now when <path>/ is used then it's respected by all
compiler .prg modules. When <file> is used then only single .pot
file is generated but it contains i18n entries from all compiled
.prg modules.
* harbour/ChangeLog
+ added two thanks notes, one to Miguel and using HeapAlloc() and
second to Walter Negro for his DATETIME work in xHarbour what gives
valuable test platform for Harbour and was important inspiration for
Harbour TIMESTAMP implementation.
* harbour/contrib/gtwvg/gtwvg.h
* harbour/contrib/gtwvg/hbgtwvg.ch
* harbour/contrib/gtwvg/gtwvg.c
* harbour/contrib/gtwvg/wvgcore.c
* harbour/contrib/gtwvg/wvgcuig.c
* harbour/contrib/gtwvg/wvgcrt.prg
! Fixed many artifacts. Probbaly it is difficult to jot down all.
* harbour/source/rtl/hbi18n2.prg
+ added new Harbour internal i18n functions:
__I18N_POTARRAYTRANS() and __I18N_HASHJOIN()
* harbour/utils/hbi18n/hbi18n.prg
+ added new switch to hb18n tool:
-a add automatic translations to 1-st .pot file using
translations from other .pot or .hbl files
* contrib/hbole/tests/testole.prg
+ Readded CDO and OO open examples (working).
* utils/hbmk2/hbmk2.hbm
+ Added .hbl file generation.
* utils/hbmk2/hbmk2.prg
+ Added translator info to banner.
! Minor fix to now display job # if single-threaded compilation is done.
(Thanks for __enumBase() trick to Przemek)
* Some steps to better support xhb shared mode (untested).
+ Added filter support for .prg and .c/.cpp input files.
(This also means that input files with '{' '}' char pairs in them
aren't supported anymore).
! Minor terminology fix in one of the rare error messages.
; TODO: ? Adding GNU Make support to .pot -> .hbl generation, plus
we'd also need to develop a common rule for naming and
placement for these translation files. Current hbmk2 method
cannot be considered final.
+ utils/hbmk2/hbmk2.hu_HU.pot
+ Added Hungarian translation (not complete/final yet).
* harbour/contrib/hbole/oleauto.prg
* harbour/contrib/hbole/olecore.c
* added runtime error on descend FOR EACH ICollection enumeration
* added a few more runtime errors
* fixed reference counter managament if OLE object is used as
parameter for another OLE function call
+ implemented array parameter support
TODO/TOCHECK: multidimentional array support
* harbour/contrib/hbole/tests/testole.prg
* changed test to work with current hbole library
+ added new OppenOffice tests
* utils/hbmk2/hbmk2.prg
+ Added experimental and partial support to build using/for xhb.
This is to help some 3rd party lib developers who'd like to
target both compilers. Some aspects of xhb support aren't working
or working slightly differently: Default Harbour switch is
-n instead of -n2 which isn't supported in xhb. Everything
related to dll handling won't currently work. Cross-compiling
won't work either due to at least differences in __PLATFORM__
macros. Anyway, play with it and tweak the source if needed.
I hope we can add support without adding too much hacks into
hbmk2 source, if however we need to bend logic too far, I'd
rather leave those problematic parts of to keep the code
maintainable. F.e. xhb compatible COMP/ARCH values aren't
supported and I don't plan to add them.
Enable support by renaming hbmk2 to have an 'x' prefix: xhbmk2,
or use -xhb command line switch. The only intent is be able
to use hbmk2 to build binaries from sources using xhb compiler
and libs. Also notice that I've made just very light tests
only with bcc55 compiler.
[ notice: xhb support doesn't mean you can compile hbmk2 with
xhb. This wasn't intented or planned. ]
* utils/hbmk2/examples/contribf.hbp
! Fixes.
* utils/hbmk2/hbmk2.prg
* Cleanup: Added few internal constants.
* Cleanup: Some debug strings marked as non-translatable.
+ Help screen forming changed to be friendly to translators.
Please update .pot files.
* utils/hbmk2/hbmk2.prg
+ Added multilanguage support. Now LC_ALL, LC_MESSAGES and
LANG envvar will be checked for language ID and loading
of translation will be attempted from <hbmkdir>hbmk2.<lang>.hbl
file (not final name yet). You can compile such .hbl file by using
command:
> hbi18n -g -ohbmk2.<lang>.hbl hbmk2.<lang>.pot
You can create .pot using this command:
> ..\..\bin\harbour hbmk2.prg /jhbmk2-<lang>.pot /i..\..\include
Where <lang> is preferable the std ISO language ID, like: pt_BR.
* utils/hbmk2/hbmk2.prg
+ Changed all output texts to translatable format, using hb_StrFormat().
+ Added hb_i18n_gettext() to all translatable texts, so now it's possible
to create a .pot file. It's not yet perfect for the help text yet.
* utils/hbmk2/hbmk2.prg
+ Added MT support for rest of C compilers (gcc, pocc).
Please test. MT support is now complete, maybe in the
future it can be added for resource compiling if that's
a bottleneck for some users.
* bin/postinst.bat
+ Added generation of libpq.lib from .dll for msvc. (not tested)
+ Added generation of QT implibs for msvc. (not tested)
+ Copying QT implibs for mingw.
* source/common/hbverdsp.c
! Minor in comment.
* utils/hbmk2/hbmk2.prg
+ Added MT support for C compilation phase.
Single input compilers aren't covered yet (gcc, pocc).
+ Added -debugtime internal option to measure running time.
* utils/hbmk2/hbmk2.prg
+ Added -vcshead=<file[.ch]> option. This will generate
a header with local repository information: type of
repository and unique ID (in case of SVN this is the
revision number).
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/hbmk2.hbm
* utils/hbmk2/Makefile
+ Added experimental support for multithreaded compilation.
Enable with -jobs=<x>.
Currently Harbour compilation phase supports MT.
If it works out well and details are polished, the same
can be implemented for C/resource compilation phases, too.
I'd appreciate of someone with MT experiences could review
current code and spot bugs/problems with it before I go
any further.
* Changed to build hbmk2 in MT mode.
* utils/hbmk2/hbmk2.prg
! Readded -map support for *nixes.
! Changed -strip support for darwin to use separate strip command.
+ .hbmk dir is now set hidden.
+ Target name is displayed on screen.
* ChangeLog
- Removed one empty line from license header after last commit.
(Przemek pls update your script to reflect that)
* harbour/include/hbexprb.c
! modified := optimization to keep alive original LValue name
used in the assign expression. It fixes FOR / NEXT loops which
in which such optimized expression were used, f.e.:
FOR n := n + 1 TO 10; ? n; next
In fact it's only workaround for potentially bigger problem with
multiple references to single expression which we probably have to
resolve if we extend the compiler to not generate PCODE online
for each compiled statement but only after preprocessing and
optimizing at least whole function or procedure.
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/hbqt.h
* contrib/gtqtc/gtqtc.h
* contrib/gtqtc/Makefile
! Fixed to use no dir when including qglobal.h. This fixes
darwin compile error.
* utils/hbmk2/hbmk2.prg
! Fixed static lib output extension for rest of compilers (*nix/gcc).
! Fixed 'lib' prefix handling for static lib output names when dir
was present in the name.
* Now -inc files will be put into .hbmk/* dirs.
! Disabled -map option for *nix gcc as it doesn't seem supported
(probably isn't needed on these platforms anyway).
% Cleaned code redundancy in forming output names.
; TOFIX: gcc/darwin complains that -s switch is obsolete and being ignored.
* COPYING
+ Added Creative Commons Attribution-ShareAlike 3.0 Unported (CC-by-sa)
license section. To be used for misc text, documentation and typically
everything which isn't source/program code. Currently these files
(in part or whole) are covered by this license:
INSTALL
ChangeLog
doc/whatsnew.txt
; TODO: If this works out well, IMO we should apply this license to
all non-code parts of our repository. /doc, /man sections
and some files in the root specifically. We can also cover
the homepage content with this license.
* INSTALL
+ Added CC-by-sa license.
* doc/whatsnew.txt
* ChangeLog
+ Added CC-by-sa license. I've covered all my past entries with
this license, besides these, only the new entries will fall
under the license.
* contrib/hbblat/blatwrp.c
! Fixed extern declaration to work in C++ mode.
* source/lang/msgtrwin.c
* source/lang/msgtr857.c
! Typos in comments.
* source/vm/set.c
+ Added copyright for few functions (hb_osEncode()/hb_osDecode()).
* utils/hbmk2/hbmk2.prg
! Fixed RTE in Harbour-only (-gh) mode.
* harbour/ChangeLog
* removed TOVERIFY note - Viktor checked it.
* harbour/contrib/hbct/ctwin.c
! redraw windows after each WCENTER() call
* harbour/contrib/rddads/ads1.c
+ added support for ADS_VARCHAR_FOX and ADS_VARBINARY_FOX fields
in ADS_VFP tables
* harbour/include/dbinfo.ch
* harbour/include/hbrdddbf.h
* harbour/include/hbrddcdx.h
* harbour/include/hbrddnsx.h
* harbour/include/hbrddntx.h
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/workarea.c
+ added support for VFP tables with VARCHAR and VARBINARY fields
+ added support for VFP tables with NULLABLE fields
+ added new dbFieldInfo() action to check if given field is NULL, f.e.:
? dbFieldInfo( DBS_ISNULL, FieldPos( <cFieldName> ) )
The above modifications were not tested with real VFP files. I do
not have VFP. VFP users should make some real life tests with tables
created by VFP.