* harbour/src/rdd/dbfcdx/dbfcdx1.c
* removed old unused macros
* harbour/include/hbcompdf.h
* harbour/src/compiler/hbmain.c
* harbour/src/compiler/cmdcheck.c
* harbour/src/compiler/complex.c
* harbour/src/compiler/hbcomp.c
* harbour/src/compiler/gencobj.c
* harbour/src/compiler/hbusage.c
+ added support for -gd[.<destExt>] switch.
When used Harbour compiler generates also .d file with dependencies
list in the form like for make systems:
<destFile>: <sourceFiles,...>
optional .<destExt> parameter value can be used to replace default
extension in <destFile>.
Now users can generate .d files without additional overhead in the
same pass as normal compilation by simple adding -gd[.<destExt>]
switch to compilation command instead of executing harbour compiler
second time with -sm switch.
* harbour/doc/man/harbour.1
* updated man page
* harbour/utils/hbmk2/hbmk2.prg
* removed -kj switch - it's not longer necessary to improve -sm
* minor formatting
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
+ Added support for .d dependency files as source files in both
command line and .hbc sources= line.
* Changed to use hash operators instead of functions in FindNewerHeaders().
[ Probably hashes could be used much more in hbmk2 code to optimize
some parts. ]
* Synced the way hb_FGetDateTime() call success is handled.
+ Added more provision for inctrypath handling in conjunction
with new dependency checking techniques. Still doesn't work
though.
; TOFIX: inctrypath with new dependency checking techniques.
; Please test .d support.
; NOTE: As for different fallback techniques when .d files are used,
well, maybe this should be somehow signaled on a .d file basis,
inside the .d file, like continue to check, stop checking, etc.
; NOTE: There is a slight chance for regressions.
* src/rtl/filesys.c
! hb_fsIsDrv() changed on win platform to use GetLogicalDrives() API
instead of GetDriveTypeA(). This should fix existing TOFIX.
Thanks for Saulius Zrelskis for the suggestion.
I'd like to ask users to make side-by-side comparisons with
CA-Cl*pper to see if we're compatible.
! Fixed hb_fsIsDrv() on non-win platforms to always set
internal error to zero. CA-Cl*pper does the same.
* utils/hbmk2/hbmk2.prg
+ Added .d file parsing routines contributed by Przemek.
with few minor adaptations for hbmk2 and formatting.
; NOTE: Not yet used.
* contrib/hbwin/tests/testole.prg
+ Added PocketSOAP example. Contributed by Toninho.
* contrib/hbwin/win_misc.c
* contrib/hbwin/wapi_shellapi.c
+ Added _SET_OSCODEPAGE support for WAPI_SHELLEXECUTE() and
WIN_RUNDETACHED(). This may make these functions incompatible
in some situations. This clears to TODOs in source.
* INSTALL
* Minor.
* ChangeLog
+ Item marked DONE.
* utils/hbmk2/hbmk2.prg
+ Added 'gcc -MM' based C header dependency detection in -head=native mode.
Please note that it's slower than regular methods, so for projects
with many .c source files this setting may not be ideal.
! Added gccomf to a few more places where checking for gcc family.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
* Renamed header parsing mode 'real' to 'native'.
Looks to be the final.
! Fixed minor error in prev: one debug message was always on.
! Turn off native .prg header parsing in -xhb and -hb10 operating
modes.
; TODO: for .prg header parsing use one compiler call instead of
one for each .prg.
; TODO: with gcc family compilers use 'gcc -MM' mode for header
parsing. Probably needs separate control, as (at first)
it seems to be much slower than current simple method.
* src/codepage/cpes850c.c
! Updated to be compatible with CA-Cl*pper.
Submitted by Maurizio Faccio.
* src/codepage/cpesisoc.c
* src/codepage/cpeswinc.c
* Synced with cpes850c.
* contrib/hbwin/tests/testole.prg
* Minor cleanups.
* harbour/src/compiler/cmdcheck.c
* minor formatting
* harbour/src/compiler/complex.c
% disabled lexer when -sm is used with -m switch.
In Harbour compiler lexer is only simple translator between PP and
grammar parser tokens so the overhead is rather small anyhow it
eliminates executing some unnecessary code.
If -sm switch is used then we need lexer to detect files included by
statements like:
DO <file> [WITH ... ]
_procReq_( <file> )
_procReq_( <file> + <ext> )
-m switch disable including such files so we can fully eliminate
lexer and preprocess PP tokens directly in a loop.
Now the cost of -sm switch is reduced to the PP cost plus some
minor static overhead.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
+ Added support for new dependency checking method which uses
Harbour compiler to find out dependent files in incremental
mode. This of course only works for .prg sources, .c/rc source
dependency checking will continue to use simple method
which looks for '#include "' string.
Enable new mode with: -head=real cmdline or "head=real" .hbc
option. When this mode is active .c/.rc dependency checking
will be set to default 'partial' level.
NOTE: The activation method is tentative and will be finalized
after doing some functional and performance testing
with this new feature.
; TODO: Multimodule support in incremental mode isn't complete
and should be added. Currently all modules are considered
as equal dependencies of parent source. I'd appreciate if
this code would be peer-reviewed as I didn't make any
multimodule tests.
* harbour/include/hbpp.h
* harbour/include/hbcompdf.h
* harbour/src/pp/ppcore.c
* harbour/src/compiler/hbmain.c
* harbour/src/compiler/cmdcheck.c
* harbour/src/compiler/ppcomp.c
* harbour/src/compiler/hbusage.c
* harbour/doc/man/harbour.1
+ added support for new compiler switch -sm which can be used to
generate dependencies list.
* modified HB_COMPILEBUF() function to return dependencies list
instead of .HRB file body when -sm switch is used. Files in
single module are separated by spaces and modules are separated
by TABs (chr(9))
To reduce overhead I suggest to use in programs like hbmk2
together with -sm also -kj switch - it disables some time
consuming optimizations in compiler code.
* contrib/hbwin/win_prn2.c
! alter hb_PrintFileRaw() to open printed file in FILE_SHARE_READ mode.
(borrowed from xhb, patch by Peter Rees <peter(AT)rees.co.nz>)
* contrib/hbtip/sendmail.prg
+ Fixed to allow inclusion of descriptive name in "from" address.
* contrib/hbtip/mail.prg
* Minor formatting.
+ Apply Q encoding to subject/from/to fields.
(descriptive name part only for from/to fields)
; NOTE: Please make necessary corrections.
* contrib/hbtip/encqp.prg
! Also encode ASC 127.
+ Also encode a few more chars to make EBDIC systems happy
in sync with RFC recommendation.
* contrib/hbtip/client.prg
+ Changed to make CR LF chars appear in log output.
* harbour/src/rtl/hbini.prg
* Changed hb_IniString() function name to hb_IniReadStr()
+ Added hb_IniWriteStr() that returns a string from an Ini hash
hb_iniWriteStr( hIni, cCommentBegin, cCommentEnd, lAutoMain )
-> cData | NIL
! Fixed a previous error in logic in case of hIni with missing MAIN section
* harbour/include/hbextern.ch
- Removed hb_IniString() declaration
+ Added hb_IniReadStr() and hb_IniWriteStr() external declarations
* harbour/tests/parseini.prg
+ Added samples of hb_IniReadStr() and hb_IniWriteStr() functions
* harbour/src/rtl/hbini.prg
* Splitted hb_IniRdLow() internal function into two functions:
hb_IniFileLow( cFileSpec ) -> cData
hb_IniStringLow( hIni, cData, lKeyCaseSens, cSplitters, lAutoMain ) -> hIni
+ Added new hb_IniString() funtion
hb_IniString( cData, lKeyCaseSens, cSplitters, lAutoMain ) -> hIni
that reads directly from a string.
So hb_IniRead() read from a file, hb_IniString() read from memory string.
* contrib/hbtip/sendmail.prg
! Fixed wrongly referring to 7-bit encoding.
! Fixed some more hardcoded charsets.
+ Added support for user-selectable encoding.
; TOFIX: Still doesn't work for some reason.
* contrib/hbtip/encqp.prg
* contrib/hbtip/mail.prg
* Formatting.
* contrib/hbtip/encqp.prg
+ Implemented quoted-printable encoder/decoder.
Not yet used. Not extremely well tested, just something
to start with. Please review. Probably should be done
in C for speed, but anyway.
* contrib/hbtip/sendmail.prg
* contrib/hbtip/mail.prg
+ Added 'charset' property and setting hb_sendmail().
Not yet effective, as Harbour uses 7-bit encoding yet.
* utils/hbmk2/examples/hmg.hbc
* Updated HMG hbmk2 config file with some extra tricks.
* harbour/config/darwin/gcc.mk
* harbour/config/darwin/icc.mk
* harbour/config/darwin/clang.mk
* harbour/config/linux/gcc.mk
! fixed soft links to harbour shared library - they should not contain
any paths
* harbour/include/hbapicdp.h
* harbour/src/rtl/cdpapi.c
* harbour/src/rtl/is.c
* moved hb_charIs*() functions to cdpapi.c file for easier updating
in the future
% optimized memory allocation for new codepages
* harbour/contrib/hbct/pos1.c
* use hb_charIs*() functions instead of accessing HB_CODEPAGE
structure members
- source
+ src
* src/Makefile
* src/dynlib/mt/Makefile
* src/dynlib/Makefile
* INSTALL
* Makefile
* ChangeLog
* harbour.spec
* mpkg_tgz.sh
* Renamed 'source' dir to 'src' to move closer to other FOSS
projects. It's also easier to type, plus it has the side
effect that some cmdlines will be shorter in the
build process.
* harbour/source/compiler/hbmain.c
! fixed unnecessary hb_xfree() call when given @<name>.clp file
does not exist. Thanks to Jose Luis Capel for information about
the problem.
* harbour/source/rdd/dbfntx/dbfntx1.c
* harbour/source/rdd/dbfnsx/dbfnsx1.c
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* minor cleanup
* harbour/source/rdd/dbf1.c
! fixed GPF trap in DBINFO( DBI_MEMOHANDLE ) executed for tables without
any memo fields - thank to Saulius for information and self contain
example.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
* "(internal") -> "(embedded)" (also HU translation)
To avoid possible misunderstandings in some contexts.
* package/winuni/mpkg_win_uni.bat
* Changed to use 7za instead of 7z as 7zip cmdline tool name.
* contrib/hbsqlit3/hbsqlit3.ch
* Formatting.
; TOFIX: ? What is the meaning of this snipped in the header:
---
#ifdef SQLITE_TEXT
#undef SQLITE_TEXT
#else
#define SQLITE_TEXT 3
#endif
---
Seems wrong to me.
* package/winuni/RELNOTES
+ Note about upx update. (still no win64 support, but there are
some other goodies for OS X and Linux)
* utils/hbmk2/hbmk2.prg
+ Enabled upx support on darwin. (You need to install it via
macports)
* INSTALL
+ Added upx to macports install list for darwin.
+ Added few missing '$' prefixes from commands included in text.
* config/common/watcom.mk
- Deleted OS/2 make bug workaround.
Thanks to David Arturo Macias Corona for instructions/tests.
* harbour/source/rtl/gtwvt/gtwvt.c
* check if startup (default or user (SetMode())) console window dimensions
do not exceed screen size and if yes then reduce the initial number of
console window rows and cols to the screen size also in
HB_GTI_RESIZEMODE_FONT mode.