* utils/hbmk2/hbmk2.*.po
* utils/hbmk2/hbmk2.prg
+ added '-hb30' option and '{hb30}' filter macro to allow
reverting back to Harbour 3.0.0
+ added provisions for merging 'hblang' and 'hbcpage'
core libs into new 'hbnat' lib
+ SETCURSOR() and SETCOLOR() references will now also
trigger full screen CUI mode in hbrun scripts
+ documented the fact that GTCGI is default GT for scripts
and that it's switched to another one (and which) when
CUI mode script is detected
+ marked all information in help with '[*]' which shows
host platform dependent, dynamic data (f.e. systems paths)
+ hbmk.hbc will now be searched for under user's home
directory on non-*nix, too
+ added '-find' special hbmk2 option for finding Harbour functions.
It will lookup any strings passed as command line arguments
and display in which library they can be found. It will
also do the lookup in packages not currently installed.
Replaces similar 'hbrun bin/find' functionality, but now
uses existing code inside hbmk2. The new implementation
also supports wildcards.
Example:
hbmk2 -find wapi_*string ntos wild
! documented that hbstart.hb is first searched for in
current working directory
! ${hb_ver} and ${hb_verstr} macros now change their value
in compatibility modes (-hb10, -hb20, -hb30, -xhb)
+ -longhelpmd output will now not contain installation
specific (and potentially sensitive) data: home directory,
hbmk2 directory, only generic replacement terms
+ version= directive help text got a mention of its default
value (it was so far only mentioned next to HBMK_HAS_<hbcname>
envvar)
+ documented exit codes in help text
* minor tweaks to some help lines
* cleanup for Markdown formatting internals
* plugin callback variable "nErrorLevel" renamed to "nExitCode"
[INCOMPATIBLE]
* exit code changed to value 6 from 1 when hbrun script has
a compile error [INCOMPATIBLE]
+ use core hb_DirSepToOS() where possible
- deleted hbmk2 plugin API function hbmk_PathSepToSelf()
Use core hb_DirSepToOS() instead. [INCOMPATIBLE]
+ added '-exitstr' hbmk2 option which will display the exit result
in textual format
* contrib/hbpre.hbm
* contrib/make.hb
% use -exitstr hbmk2 option instead of rolling a local copy
of possible result strings
* src/pp/ppcore.c
+ generate '\a' '\f' '\v' escape chars
- bin/find.hb
* config/postinst.hb
* package/harbour.spec
- deleted find.hb for 'hbrun bin/find' functionality.
Replaced by 'hbmk2 -find' option.
* src/rtl/Makefile
- src/rtl/strxchg.c
+ src/rtl/strrepl.c
* src/rtl/tget.prg
* utils/hbmk2/hbmk2.prg
* include/harbour.hbx
* ChangeLog.txt
* renamed HB_STRXCHG() to HB_STRREPLACE(), according to:
https://groups.google.com/d/topic/harbour-devel/vSzlAkv6h9Y/discussion
* updated function skeleton in ChangeLog and C source
(also with new hash parameter)
* contrib/hbsqlit3/hbsqlit3.hbp
* contrib/hbsqlit3/hbsqlit3.hbx
+ contrib/hbsqlit3/errstr.prg
+ hb_sqlite3_errstr_short( <nError> ) -> <cError>
* contrib/hbsqlit3/tests/authoriz.prg
* contrib/hbsqlit3/tests/backup.prg
* contrib/hbsqlit3/tests/hooks.prg
% use hb_sqlite3_errstr_short() instead of implementing
it locally in each example
% use sqlite3_errstr() API to get long error strings instead
of reimplementing it locally
% minor opt
* contrib/hbsqlit3/hbsqlit3.hbp
- contrib/hbsqlit3/hdbcsqlt.prg
+ contrib/hbsqlit3/hdbc.prg
* renamed
* contrib/hbhpdf/errstr.prg
* contrib/hbmzip/mziperr.prg
! indenting
* contrib/hbtip/tests/tiptest.prg
* leave color
* harbour/contrib/hbct/ctwin.c
! fixed default translation in GETSCRUC() for control characters
* harbour/package/harbour.spec
* updated for new files in bin dir
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/*.po
+ added '-warn=yes' option in sync with warn= .hbc directive
* cleaned help for -cpp and -cpp= options
* '-inc' option moved to short help page and clarified a little
- deprecated several hbmk2 options synonyms. After this
update, hbmk2 will issue a warning with the recommended
replacement switch (and exact location where it has
found it), and these will ultimately disappear with
HB_LEGACY_LEVEL4 (after next release, or earlier, depending
on how disrupting it is or how long the new release
will take):
-compiler= -> -comp=
-platform -> -plat=
-mwindows -> -gui
-mconsole -> -std
-nodebug -> -debug-
-nooptim -> -optim-
-nomap -> -map-
-noimplib -> -implib-
-nobeep -> -beep-
-nominipo -> -minipo-
-noinc -> -inc-
-noignore -> -ignore-
-nohbcppmm -> -hbcppmm-
-nostrip -> -strip-
-warn= (value omitted) -> -warn=yes
-nowarn -> -warn-
-compr= (value omitted) -> -compr=yes
-compr=def -> -compr=yes
-nocompr -> -compr-
-head= (value omitted) -> -head=full
-head -> -head=full
-head- -> -head=off
-nohead -> -head=off
-nocpp -> -cpp-
-norun -> -run-
-notrace -> -trace-
.hbc directives (no warning for these ones):
compr=def -> compr=yes
<*>=1 -> <*>=yes
<*>=0 -> <*>=no
Macros (no warning for these ones):
${hb_platform} -> ${hb_plat}
${hb_compiler} -> ${hb_comp}
; Update your .hbp/.hbm/.hbc files and hbmk2
command-line according to above and the new
warnings. Important to note, that _all_ of the
required modifications are _backward
compatible_ with Harbour 3.0.0 and 2.0.0.
* package/winuni/RELNOTES.txt
* use -plat= option in examples
* tests/testcom1.prg
+ made it compatible with unicode/script mode
+ config/win/bcc64.mk
* config/global.mk
* config/postinst.hb
* config/win/bcc.mk
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* README.txt
* utils/hbmk2/hbmk2.prg
+ added rough cut support for bcc64 to the two make systems.
Untested. Autodetection and some 32-bit specific tricks
not implemented.
bcc64 is based on clang and it's only a bcc "emulation"
layer on top of it. At least it will be a good compiler
now, but it's important to see that it's internally
a clang compiler, so its behavior and raw options are
gcc-like.
Changes are based on xhb patches and bcc64 online docs:
http://docwiki.embarcadero.com/RADStudio/XE3/en/Command_Line_Utilities_Index
* contrib/xhb/regexrpl.prg
* contrib/xhb/xhb.hbx
! minor casing fix
+ contrib/xhb/tests/regexrpl.prg
+ added test from xhb (the function doesn't
seem to work)
+ tests/regex.prg
+ tests/regextst.prg
+ added regex tests from xhb
* contrib/hblzf/tests/test.prg
! typos
* package/winuni/RELNOTES.txt
* minor
- ChangeLog
+ ChangeLog.txt
* bin/commit.hb
* doc/howtorel.txt
* doc/howtorep.txt
* package/harbour.spec
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* package/winuni/RELNOTES.txt
* README.txt
* src/pp/hbpp.c
* tests/fixcase.hb
* website/changelog.html
* website/index.html
* website/news.html
* website/news1.html
* website/snapshot.html
* renamed ChangeLog to ChangeLog.txt
; TODO: Please update SVN URL references in google groups web headers:
.../ChangeLog -> .../ChangeLog.txt
.../README -> .../README.txt
; NOTE: Also update your local scripts to use ChangeLog.txt instead
of ChangeLog. Or use bin/hbcommit.hb script, which supports
both.
- w64-make.exe
* README.txt
% deleted. it was my private build and it didn't offer
much over win-make.exe.
- README
+ README.txt
* config/global.mk
* config/postinst.hb
* contrib/hbtpathy/telepath.prg
* contrib/hbtpathy/tests/testtp.prg
* doc/gmake.txt
* doc/howtorep.txt
* doc/oldnews.txt
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* package/winuni/RELNOTES.txt
* tests/hbdoctst.prg
* website/menu/harbour-menu.js
* website/news.html
* renamed README to README.txt
This will make it easy for non-*nix users to open it,
it also makes it clear that we're talking about a
document when referring to it
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.nsi
* changed to launch README. It needs a hefty trick
to open such extensionless filename
* README
+ minor to welcome section
- doc/welcome.txt
* doc/Makefile
- deleted obsolete welcome message
* COPYING
* debian/copyright
* changed explicit reference to certain CC licensed
files to generic wording.
* TODO
* GTWVG -> GTWVT
- NEWS
+ doc/oldnews.txt
- TODO
+ doc/todo.txt
* renamed these files. TODO is essentially static
since 10 years, not worth to keep in root and in
distro root. NEWS was not updated since 2008.
* doc/Makefile
+ updated with above files. (so they will still be
distributed, just not in root)
* doc/howtorel.txt
* updated reference to NEWS doc
* config/postinst.hb
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* deleted references to TODO and NEWS
- INSTALL
+ README
* config/global.mk
* config/postinst.hb
* contrib/hbmysql/readme.txt
* doc/gmake.txt
* NEWS
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* package/winuni/RELNOTES
* tests/hbdoctst.prg
* website/menu/harbour-menu.js
* website/news.html
* doc/howtorep.txt
* 'INSTALL' doc renamed to 'README'.
A little disruption, but hopefully it will be
more intuitive place to look for. The doc by
now contains lots more than installation procedures.
This "new" name is also recognized and displayed
by several source management web UIs automatically.
; To mailing list admins: Please update the
links in the web group headers. Thank you!
* harbour/include/hbexpra.c
* indenting
* harbour/package/harbour.spec
! fixed ssl library detection
* harbour/contrib/hbnetio/netiosrv.c
! fixed parameters numbers in NETIO_COMPRESS()
* harbour/config/linux/libs.mk
* harbour/config/bin.mk
! use pthread in linked library list if shared linking is enabled
! do not strip system libraries in shared mode - some systems
(i.e. RH7.3) needs pthread to be given at link time to create
correct MT programs and now harbour shared library is only in MT.
* config/postinst.hb
+ compile list of all available contrib functions (into
a file named 'hbmk2.hbr'), so hbmk2 can use it as for
hints for libs, even if they are not built/installed on
the user's system.
* utils/hbmk2/hbmk2.prg
* tweaked the hint message for not installed packages
! fixed new strings not marked as translatable
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* include .hbr files in winuni packages
* contrib/xhb/xdbmodst.prg
* contrib/xhb/xhbmemo.prg
* contrib/hbct/disk.c
* contrib/hbct/doc/en/dattime3.txt
* contrib/hbct/doc/en/video.txt
* extras/hbxlsxml/tests/*.prg
* extras/hbxlsxml/*.prg
* src/debug/dbgentry.c
* minor cleanups
- config/hb_c.cfg
+ bin/harbour.ucf
* renamed and moved to public dir
* config/postinst.hb
+ added find.hb to the installed files
+ added harbour.ucf to the installed file
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
+ added harbour.ucf to files included in winuni distro
! fixed missing bin/*.hb scripts in .7z winuni archive
* include/harbour.hbx
* fixes/changes to some function names
* config/hb_c.cfg
+ updated to do better vertical aligment in
structs, var declarations and assignments
; TODO: move this to /bin folder and add to 'install'-ed
file list, rename to 'harbour.ucf'
* src/debug/*.prg
* src/rdd/*.prg
* src/rdd/hbsix/*.prg
* src/rdd/usrrdd/rdds/*.prg
* src/rtl/*.prg
* src/vm/*.prg
* utils/hbi18n/hbi18n.prg
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/examples/*.hb
* contrib/hbblat/blatcls.prg
* contrib/gtwvg/*.prg
* contrib/gtwvg/tests/*.prg
* contrib/hbblink/*.prg
* contrib/hbcairo/tests/*.prg
* contrib/hbcomm/*.prg
* contrib/hbcomm/tests/*.prg
* contrib/hbcups/tests/*.prg
* contrib/hbcurl/tests/*.prg
* contrib/hbexpat/*.prg
* contrib/hbexpat/tests/*.prg
* contrib/hbfbird/*.prg
* contrib/hbfbird/tests/*.prg
* contrib/hbfoxpro/*.prg
* contrib/hbfship/*.prg
* contrib/hbgd/*.prg
* contrib/hbgd/tests/*.prg
* contrib/hbgs/tests/*.prg
* contrib/hbhpdf/*.prg
* contrib/hbhpdf/tests/*.prg
* contrib/hbhttpd/*.prg
* contrib/hbhttpd/tests/*.prg
* contrib/hblzf/tests/*.prg
* contrib/hbmagic/tests/*.prg
* contrib/hbmisc/*.prg
* contrib/hbmisc/tests/*.prg
* contrib/hbct/*.prg
* contrib/hbct/tests/*.prg
* contrib/hbmlzo/tests/*.prg
* contrib/hbmxml/*.prg
* contrib/hbmxml/tests/*.prg
* contrib/hbmysql/*.prg
* contrib/hbmysql/tests/*.prg
* contrib/hboslib/*.prg
* contrib/hbsms/*.prg
* contrib/hbtinymt/tests/*.prg
* contrib/hbtpathy/*.prg
* contrib/hbtpathy/tests/*.prg
* contrib/hbunix/tests/*.prg
* contrib/hbxdiff/tests/*.prg
* contrib/hbzebra/tests/*.prg
* contrib/hbziparc/*.prg
* contrib/hbziparc/tests/*.prg
* contrib/rddads/*.prg
* contrib/rddads/tests/*.prg
* contrib/hbodbc/*.prg
* contrib/hbodbc/tests/*.prg
* contrib/hbpgsql/*.prg
* contrib/hbpgsql/tests/*.prg
* contrib/hbsqlit3/*.prg
* contrib/hbsqlit3/tests/*.prg
* contrib/hbwin/*.prg
* contrib/hbwin/tests/*.prg
* contrib/hbxpp/*.prg
* contrib/hbxpp/tests/*.prg
* contrib/hbxhb/*.prg
* contrib/hbxhb/tests/*.prg
* contrib/hbnetio/*.prg
* contrib/hbnetio/utils/hbnetio/*.hb
* contrib/hbnetio/utils/hbnetio/*.prg
* contrib/hbtip/*.prg
* contrib/hbtip/tests/*.prg
* tests/usrrdd/*.prg
* tests/funcarr.prg
* extras/gfspell/spell.prg
* extras/gtwvw/tests/*.prg
* extras/guestbk/*.prg
* extras/hbdoc/*.prg
* extras/rddado/*.prg
* extras/rddado/tests/*.prg
* extras/hbxlsxml/*.prg
* extras/httpsrv/*.prg
* extras/httpsrv/modules/*.prg
* extras/hbsuper/*.prg
* extras/hbvpdf/*.prg
* extras/hbvpdf/tests/*.prg
* tests/*.prg (except some which are well formatted but in different/fast-typing style)
* tests/*.hb
* bin/*.hb
* contrib/*.hb
* config/*.hb
* some manual formatting to better be able to verify
changes made by hbformat and be friendlier with hbformat.
* most files reformatted with hbformat using Maurizio's
patch, with mostly minor manual corrections and verification.
All hbformat changes for revised one-by-one.
! __DIR(): fixed to be unicode compatible
! __hbdoc_ToSource(): make sure to not generate line ending
spaces in output.
+ hbmk2/hbrun: HBMK_WITH_GTXWC built-time option to include
GTXWC. Useful for hbrun.
* hbct tests: change to not use [] as string delimiter
+ added full prototypes to Array class declaration
; NOTE: Only these were not or not fully formatted:
contrib/hbnetio/tests/*.prg
tests/hbpptest/*.prg
tests/mt/*.prg
tests/multifnc/*.prg
tests/rddtest/*.prg
utils/hbmk2/hbmk2.prg (for the most part)
src/rtl/tbrowse.prg (for the most part)
utils/hbtest/*.prg
*.ch, *.c, *.h
* src/rtl/cdpapihb.c
* src/rtl/hbadler.c
* src/rtl/hbsocket.c
* src/rtl/sha1.c
* src/vm/classes.c
* src/vm/dynsym.c
* src/vm/garbage.c
* src/debug/dbgentry.c
* do not end macros with ';' to avoid uncrustify warning
and wrong formatting as a consequence
* src/compiler/cmdcheck.c
* minor changes for uncrustify-friendliness
* contrib/hbformat/utils/hbfmtcls.prg
* contrib/hbformat/utils/hbformat.prg
% optimizations in hbformat.prg
! fixed mask/filename handling to be
multiplatform in hbformat.prg
+ added 'HBXList=' hbformat.ini parameter allowing
to add any .hbx file for proper function name
casing.
! fixed progress bar to display correctly
* tests/speedstr.prg
! fixed to run as intended in unicode code
* hbformatted
- contrib/hbwin/tests/dlg.xml
* contrib/hbwin/tests/dlg.rc
- extras/gtwvw/tests/wvwtest9.xml
+ extras/gtwvw/tests/wvwtest9.mft
* extras/gtwvw/tests/wvwtest9.rc
* renamed manifest to have .mft extension
% deleted unnecessary manifest
* "Win32 API" -> "Windows API"
! deleted CPU arch from manifest
* package/harb_win.mft
* formatting
* src/common/hbver.c
+ added version detection for win 8 and win server 2012
* minor formatting/code cleanup
* tests/gfx.prg
* updated to run in script mode.
; TOFIX: it doesn't draw anything with GTWVT
* tests/gfx.prg
* tests/gtwin.prg
* tests/gtxfnt.prg
* tests/wvt_fs.prg
* tests/wvtext.prg
+ support for GTXWC when run as script
* doc/en/*.txt
* contrib/hbct/doc/en/*.txt
* contrib/hbgd/doc/en/*.txt
* contrib/hbgt/doc/en/*.txt
* contrib/hbmisc/doc/en/*.txt
* contrib/hbnf/doc/en/*.txt
* contrib/hbziparc/doc/en/*.txt
* contrib/rddads/doc/en/*.txt
! fixed few broken tags reported by Carlos
% deleted line ending spaces
* some minor formatting
* contrib/hbnf/*.c
* contrib/hbnf/*.h
* extras/gfspell/spellc.c
* uncrustified with updated hb_c.cfg
* contrib/hbnf/*.prg
* contrib/hbnf/tests/*.prg
* hbformatted with Mauriozo's patch.
* a few manual corrections (avoiding #translates, using hb_ColorIndex())
in general and to make hbformat happy.
+ contrib/hbnf/tests/menuto.prg
+ added sample code for MENU TO (adatped from docs)
- src/rdd/dbfntx/dbfntx0.prg
- deleted unused file with no enabled code in it
* contrib/hbtip/tests/dbtohtml.prg
* contrib/hbtip/tests/loadhtml.prg
* contrib/hbtip/tests/tipmmail.prg
* minor cleanups
* contrib/hbtip/thtml.prg
! fixed typo due to s&r
% use hb_memowrit()
* src/rtl/tbrowse.prg
* conditional code sorted to be hbformat friendly
* some formatting
* INSTALL
* package/harbour.rb
* package/mpkg_src_nightly.sh
* package/mpkg_win_nightly.bat
* package/updt_web_nightly.sh
* website/changelog.html
* website/faq/harbour17.html
* website/faq/harbour27.html
* website/index.html
* website/menu/harbour-menu.js
* updated repository URL to new sf.net one
* tests/function.cfm
* contrib/hbhttpd/tests/tpl/_main.tpl
* contrib/hbtip/tests/tipmmail.prg
* website/faq/*.html
* website/samples/*.html
* use utf-8 in html and email
* contrib/hbrun/hbrun.hbp
+ support for HBMK_WITH_GTXWC
* tests/rto_get.prg
* tests/onidle.prg
* tests/mousetst.prg
* tests/wcecon.prg
* tests/vmasort.prg
- contrib/hbnf/tests/metaph.prg
* minor cleanups
* contrib/hbmysql/tests/test.prg
* contrib/hbmysql/tests/dbf2mysq.prg
% minor optimization, deleted outdated comment/line
* src/compiler/harbour.yyc
* src/compiler/harbour.y
* minor formatting
+ package/updt_web_nightly.sh
+ added automatic nightly script to update live website from SVN.
; it's also setup now on Tamas Tevesz's server (which serves
to create nightly source packages). We will see how they
work tonight.
* website/mailing.html
! minor formatting for testing website automatic update
* package/mpkg_src_nightly.sh
* minor fix in comment
* contrib/hbrun/hbrun.hbp
* utils/hbmk2/hbmk2.hbp
* utils/hbmk2/Makefile
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.nsi
; trying to crawl out from this pool of dynamic mud.
* enabled all embedded headers for both hbmk2 and hbrun
so we're back to square one with this, except that
now hbmk2 also holds the full set of core headers not
just a minimal selection. The reason is to keep hbmk2
as the distributable runner tool. It also syncs all
C compilers and platforms.
* hbmk2 built in -static mode again. It will fix the
'make clean' problem, it will make it distributable.
* hbrun changed to be built in -shared mode to allow
to load dynamic modules.
; so this is the state right now (if I didn't make any mistake):
hbmk2:
all embedded core headers
no contrib modules
static build
no dynamic modules
fully movable/distributable as a runner
cannot be self-registered as .hb runner on Windows
hbrun:
all embedded core headers
some contrib modules
shared build when HB_BUILD_CONTRIB_DYN enabled
dynamic modules possible
less movable/distributable, needs harbour dll, dynamic modules need Harbour dir layout
can be self-registered as .hb runner on Windows
; "Ext:" banner on interactive shell will have blue color
if dynamic modules are enabled and grey if not.
* utils/hbmk2/hbmk2.prg
* minor change to show the actual name of the tool
in the error message requesting a -shared build.
* INSTALL
+ documented hbmk2 usage as shell, script runner and
.hrb builder/runner
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.nsi
+ use hbmk2 as interactive shell instead of hbrun
* utils/hbmk2/hbmk2.prg
+ display Harbour version when starting up the interactive shell
* utils/hbmk2/hbmk2.prg
* .hb? input make files are now considered with UTF8 encoding.
+ enabled full UTF8 CP on *nix systems. EXPERIMENTAL.
* debian/copyright
* package/winuni/mpkg_win_uni.nsi
* utils/hbmk2/hbmk2.prg
* contrib/hbpost.hbm
* contrib/hbnetio/utils/hbnetio/modules.hbp
* contrib/hbnetio/utils/hbnetio/netiosrv.prg
* contrib/hbqt/hbqt_common.hbm
* contrib/hbide/ideedit.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/idesaveload.prg
* contrib/hbrun/hbrun.prg
* contrib/hbrun/plugins.prg
* config/postinst.hbs
* COPYING
+ added support for .hb extension for Harbour scripts.
I plan to make a full switch to .hb from .hbs.
* include/hbver.h
* package/harbour.spec
* package/harb_win.mft
* package/harbour-win.spec.in
* package/harbour-wce.spec.in
* package/winuni/mpkg_win_uni.bat
* harbour/debian/changelog
* trunk version bump. 3.1.0dev -> 3.2.0dev
this is to make it easy to create conditional code
for new features and the few incompatibilities after
introducing unicode in Harbour. May be bumped further
when FOR EACH is decided.
* contrib/hbexpat/tests/tohash.prg
+ enabled UTF8EX for testing
* contrib/make.hbs
* contrib/hbpost.hbm
+ use HB_LIB3RD hbmk2 macro instead of rolling custom logic
to detect and enable unicows lib.
* utils/hbmk2/hbmk2.prg
+ added HB_LIB3RD internal variable (usable as filter and as macro)
it's filled when '<hbroot>/lib/3rd/<plat>/<comp>' directory is present
+ added EXPERIMENTAL pseudo-function for filters to detect presence
of file or directory: {hb_ispath='<file or directory>'}. if the
value is not an absolute path, it will be meant relative to source
hbmk2 file.
* package/harb_win.mft
* package/harb_win.rc
* package/mpkg_win.nsi
* package/mpkg_src_nightly.sh
* package/winuni/mpkg_win_uni.nsi
* "Harbour Project" -> "Harbour"
* "hbrun" shortcut -> "Harbour (Interactive shell)"
* utils/hbmk2/hbmk2.prg
+ will now add lib/3rd dir to the link commands, so
unicows lib will be found in uninstalled Harbour SVN
source tree.
* contrib/make.hbs
* contrib/hbpost.hbm
+ automatically enable unicows support for contribs, if available.
- deleted support for undocumented __HB_BUILD_WINUNI envvar
* config/global.mk
* config/rules.mk
- deleted support for undocumented __HB_BUILD_WINUNI envvar
* package/winuni/mpkg_win_uni.bat
* package/mpkg_win_nightly.bat
- deleted special support for unicows libs for nightly
and official releases, along with HB_DIR_UNICOWS envvar.
Now these libs are included in all builds.
* config/win/global.mk
+ automatically enable unicows support for core, if available.
* config/win/xcc.mk
* config/win/icc.mk
* config/win/mingw.mk
* config/win/pocc.mk
* config/win/bcc.mk
* config/win/msvc.mk
+ added support for SYSLIBPATHS. (used by unicows support)
! fixed bcc dynlib link command missing libpaths.
; NOTE: watcom unicows support is missing, as it needs
special tricks due to missing separate libpath option
in this compiler/linker.
* config/wce/mingwarm.mk
* config/wce/poccarm.mk
* config/wce/msvcarm.mk
* synced with config/win files
+ config/libbin.mk
+ added rule to install pre-built binary libs.
(for unicows libs)
* Makefile
+ lib/3rd
+ lib/3rd/win
+ lib/3rd/win/mingw
+ lib/3rd/win/mingw/Makefile
+ lib/3rd/win/mingw/libunicows.a
+ lib/3rd/win/mingw/libunicows_license.txt
+ lib/3rd/win/bcc
+ lib/3rd/win/bcc/unicows_license.txt
+ lib/3rd/win/bcc/unicows.lib
+ lib/3rd/win/bcc/Makefile
+ added locally hosted unicows runtime/implibs from:
http://libunicows.sourceforge.net/ by author Vaclav Slavik.
With these libs, it's possible to use UNICODE builds
with both MS unicows.dll and opencows .dll on legacy
Windows-system (Win9x).
These libs will be installed to Harbour core lib directory,
and also used from lib/3rd directory, if they are available.
I've uploaed mingw and bcc libs because these are used
nearly exclusively by users, but they are also available
for older msvc, watcom, dmc and lcc compilers. I don't
think it's worth the extra size to support Win9x using
these legacy compilers, anyhow they can be added easily
if needed (except watcom, which requires more work).
; These changes mean three things:
1. Harbour now has only one build mode on Windows: UNICODE
This will greatly simplify coding and testing and will
allow to focus much better on what's important. It also
allows to drop lots of dual code dealing with separate
UNICODE and non-UNICODE branches.
2. Harbour default builds will now run on Win9x (currently
when using mingw or bcc compilers), though UNICOWS.DLL
is now required. See INSTALL how to get this free .dll
from MS. This also means that Harbour can now theoretically
by built on Win9x systems (I didn't try).
3. Harbour users can create UNICODE builds compatible with
Win9x, by simply adding -lunicows to their .hbp projects.
No extra installation is required.
* harbour/package/harbour.spec
! added missing attribute for harbour.ld.conf file
! added optional hbhttpds library
* harbour/contrib/hbct/envparam.c
* harbour/contrib/hbct/dummy.c
* harbour/contrib/hbct/hbct.hbp
* harbour/contrib/hbct/hbct.hbx
+ added ENVPARM() - now it's implemented for all platforms but
it should be tested on different *nixes - some of them may not
support 'char * environ' public variable
* harbour/contrib/xhb/hbserv.c
* added missing dummy functions in DOS builds
* harbour/utils/hbmk2/hbmk2.prg
! do not set binding to hb_forceLinkMainWin() when -nohblib and -gui
switches are used together
* harbour/include/hbapicdp.h
* harbour/src/rtl/cdpapi.c
+ added new C functions hb_cdpnDupUpper(), hb_cdpnDupLower(),
hb_cdpnDup2Upper() and hb_cdpnDup2Lower().
They should be used instead of hb_strUpper() and hb_strLower()
functions because they can work well with CPs where upper and
lower characters uses different number of bytes, i.e. UTF8 has
such characters.
* harbour/src/rtl/strcase.c
* harbour/src/rtl/fstemp.c
* harbour/src/rtl/filesys.c
* harbour/src/rdd/dbfcdx/dbfcdx1.c
* harbour/src/rdd/hbsix/sxsem.c
* replaced obsolete hb_strUpper() and hb_strLower() functions with
new hb_cdpnDup*Upper()/hb_cdpnDup*Lower() ones.
* harbour/src/rdd/hbsix/sxutil.c
* replaced obsolete hb_charUpper() function with hb_cdpnDupUpper()
* harbour/contrib/sddpg/sddpg.c
* harbour/contrib/sddsqlt3/sddsqlt3.c
* harbour/contrib/sddmy/sddmy.c
* harbour/contrib/sddfb/sddfb.c
* harbour/contrib/sddodbc/sddodbc.c
* harbour/contrib/sddoci/sddoci.c
! fixed memory leaks
* replaced obsolete hb_strUpper() and hb_strLower() functions with
new hb_cdpnDup*Upper()/hb_cdpnDup*Lower() ones.
; TODO: these conversions are redundant - I'll remove them in next
commit.
+ package/harbour.rb
+ experimental (and untested) Homebrew formula
* debian/dirs
* debian/rules
+ added contrib dir (untested)
* utils/hbmk2/hbmk2.prg
* autodetect contrib/addons dirs at
/usr/local/share/harbour/ and /usr/share/harbour/
* config/global.mk
* changed contrib location on *nix systems to <root>/share/harbour/contrib
unless the <root> is /opt/harbour.