* bin/commit.hb
! fixed UTC offset formatting
* contrib/hbwin/win_os.prg
* updated win_osNetRegOk() for modern MS-Windows versions:
- on Win7 and upper set
System\CurrentControlSet\Services\LanmanServer\Parameters\DisableLeasing
to disable opportunistic locks.
- do not force SMB1 to disable oplocks on Win7 and upper - new MS-Win10
does not support SMB1 at all so this setting on the server with
such system completely disables SMB network and forcing SMB1 on the
client side blocks access to new Win10 servers.
Warning! this setting is still activated on Vista so it cannot
connect work with new Win10 but I do not know any other
working method to disable oplocks in Windows Vista.
* synced with Viktor's branch
* contrib/xhb/hbserv.c
! added missing return
* include/harbour.hbx
* src/harbour.def
* src/rtl/version.c
+ added new PRG functions:
hb_osIsWin7(), hb_osIsWin8(), hb_osIsWin81(), hb_osIsWin10()
* src/rtl/gttrm/gttrm.c
+ added autodetection for few other XTerm compatible terminals
+ respect color extension in TERM name of all XTerm compatible
terminals
* utils/hbmk2/hbmk2.prg
+ added support for -cpp=isoXX borowed from Viktor's branch
* contrib/gtqtc/gtqtc.hbc
* contrib/gtqtc/gtqtc.hbp
* use -cpp=iso11 required for QT 5.7.0 or upper
* extended QT detection and partial syncing with Viktor's branch
* include/harbour.hbx
* include/hbchksum.h
* src/harbour.def
* src/rtl/hbmd5.c
+ added new C function
void hb_hmac_md5( const void * key, HB_SIZE nKeyLen,
const void * message, HB_SIZE nMsgLen,
char * digest );
+ added new PRG function
HB_HMAC_MD5( <cMessage>, <cKey> ) -> <cMAC>
; HMAC MD5 is used in some authentication methods i.e. CRAM-MD5
authentication in SMTP protocol
* src/rtl/gttrm/gttrm.c
+ enable extended XTERM colors automatically when xterm-16color,
xterm-256color, xterm+256color, xterm-88color, rxvt-16color,
rxvt-256color, rxvt-98color or putty terminal is detected
+ added support for HB_GTI_SCREENDEPTH
* contrib/gtqtc/gtqtc1.cpp
+ set clipboard data also into selection buffer on platforms which
support it
+ when main clipboard buffer is empty retrieve clipboard data from
selection buffer and if it's empty too from find buffer
* include/harbour.hbx
* src/harbour.def
* src/vm/memvars.c
+ added new PRG function
__mvGetDef( <cMemvar> [, <xDefault> ] ) -> <xValue>
it works in similar way to __mvGet() but if <cMemvar> does
not exist then it returns <xDefault> or NIL instead of RTE
* contrib/hbwin/hbwin.hbx
+ added missing declarations for win_osIs10() and win_osIs81()
* contrib/hbssl/ssl.c
! fixed compilation with OpenSSL < 0.9.8k
* contrib/sddodbc/core.c
* pacified warning
* contrib/xhb/hbxml.c
* contrib/xhb/hbxml.h
! fixed CDATA terminator, it should be "]]>" instead of " ]]>"
+ added support for HBXML_STYLE_NONEWLINE flag
* src/3rd/pcre/Makefile
! typo wince -> wce
* src/main/Makefile
* use harbour.rc only in MS-Windows builds - it fixes OS2 OpenWatcom
builds
* config/global.mk
! in DOS builds check if the 'uname' exists before running it
* include/hbapigt.h
* include/hbgtcore.h
* src/rtl/hbgtcore.c
* src/rtl/inkey.c
* src/rtl/inkeyapi.c
* contrib/xhb/xhbfunc.c
+ added 3-rd parameter to hb_inkeySetText() function. When this parameter
is true then ';' is not translated to Chr( 13 ) but DOS and UNIX EOLs
are translated to Chr( 13 )
+ added logical parameter to HB_GTI_CLIPBOARDPASTE which allows to set
text without ';' translation but with platform independent EOLs
* src/rtl/memoedit.prg
* utils/hbmk2/hbmk2.prg
* contrib/hbnetio/utils/hbnetio/_console.prg
* extras/dbu/dbu52.patch
* extras/dbu/dbu53.patch
* use hb_gtInfo( HB_GTI_CLIPBOARDPASTE, .T. ) instead of
hb_gtInfo( HB_GTI_CLIPBOARDPASTE ) for pasting data from clipboard
with platform independent EOLs and ';' characters
* package/harbour.mft
+ added version manifest to Harbour compiler binaries, which is more
important on Windows 10 builds, to not include false Windows version
in build info.
This doesn't affect programs built with Harbour, where similar manifest
should be included or not, according to your needs.
* utils/hbmk2/hbmk2.prg
* define _UNICODE (activates unicode C RTL functions in OpenWatcom
and some MS C compilers) together with UNICODE in -winuni mode.
Similar change was done in Viktor's forked Harbour 3.4. Harbour
core/contrib code doesn't use any of these C RTL, but in most 3rd
party code it's expected that these are enabled both.
* config/darwin/clang.mk
* config/darwin/gcc.mk
* config/darwin/global.mk
* config/darwin/icc.mk
* config/darwin/libs.mk
* utils/hbmk2/hbmk2.prg
* synced with Viktor's modifications in 3.4 branch:
; 2017-11-11 13:14 UTC Viktor Szakats:
* switch to call the C compiler to link dynamic libs on darwin,
which is the recommended way to do this, as suggested by Apple.
This also aligns the platform better with other *nix platforms.
'libtool' was used before, but that started having intermittent
issues around Sierra (mitigated by disabling parallel build),
which returned and got worse in High Sierra (with no remedy).
The symptom was 'ld: file not found: ' errors with the filename
not shown or appearing as garbage, then a 'libtool: internal link
edit command failed'. This was reported and will be fixed in a
future Xcode release.
Ref: Apple Radar 34944562
* config/global.mk
* config/rules.mk
+ added new user build envvar HB_USER_DCFLAGS
It allows to set C compiler parameters to compile .c code for
dynamic libraries.
* src/rtl/hbsocket.c
! fixed fcntl(F_SETFL) 3-rd parameter in hb_socketSetBlockingIO(),
By mistake I used long instead of int. it created problem on big
endian 64 bit machines.
* include/hbgtcore.h
* src/rtl/hbgtcore.c
+ added new C functions for GT programmers:
void hb_gt_BaseUnlock( PHB_GT pGT );
void hb_gt_BaseLock( PHB_GT pGT );
void hb_gtSleep( PHB_GT pGT, double dSeconds );
* src/rtl/hbgtcore.c
* src/rtl/gtcrs/gtcrs.c
* src/rtl/gtdos/gtdos.c
* src/rtl/gtgui/gtgui.c
* src/rtl/gtos2/gtos2.c
* src/rtl/gtpca/gtpca.c
* src/rtl/gtsln/gtsln.c
* src/rtl/gtstd/gtstd.c
* src/rtl/gttrm/gttrm.c
* src/rtl/gtwin/gtwin.c
* src/rtl/gtwvt/gtwvt.c
* src/rtl/gtxwc/gtxwc.c
* use new functions to unblock GT when low level TONE() code is
executed. It allows other threads to access shared GT driver
when one of them executes TONE()
* contrib/hbexpat/hbexpat.hbx
* regenerated automatically
* contrib/hbrun/hbrun.hbp
* ChangeLog.txt
* package/harbour-wce.spec.in
* package/harbour-win.spec.in
* package/harbour.spec
* package/mpkg_rpm_wce.sh
* package/mpkg_rpm_win.sh
* package/mpkg_rpm.sh
* package/mpkg_src.sh
* package/mpkg_ver.sh
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.nsi
* utils/hbmk2/hbmk2.hbp
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/Makefile
* package/harb_osx.icns -> package/harbour.icns
* package/harb_win.ico -> package/harbour.ico
* package/harb_win.mft -> package/harbour.mft
* package/harb_win.rc -> package/harbour.rc
* utils/hbmk2/hbmk2.rc -> utils/hbmk2/harbour.rc
* sync more file renames with the 3.4 fork
NOTE: some projects used to rely on harb_win.ico. This will
not work anymore and these will need to be updated or even
better fixed to rely on it local .ico file instead.
* sync bash formatting and fixes. Formatting guidelines here
https://google.github.io/styleguide/shell.xml
* sync two hbmk2 macro names
* utils/hbmk2/hbmk2.prg
* remove `_HBSHELL_EXEC_PRE` macro
+ add `_HBSHELL_EXTRA_HEADER` macro that can be defined to a header
(.ch) filename which will be included in all dot prompt and script
execution sessions. The header will also be embedded in
hbmk2/hbrun at build-time, so it's not necessary to be present at
runtime. The macro may also be defined in the `hbmk2_extra.prg`
source.
* utils/hbmk2/hbmk2.prg
+ add ability to inject extra code/directives to the hbmk2/hbrun source
code at build time. It can be enabled by defining
`_HBMK2_EXTRA_CODE`, when a source file named `hbmk2_extra.prg` will
be included between the header and code section of hbmk2.prg.
+ display note when above option is enabled
+ add ability to prepend extra code before the shell execution stub via
the `_HBSHELL_EXEC_PRE` macro. It's initialized by an empty string in
a default build. This macro can be redefined at will by
`hbmk2_extra.prg`.
; commit backported to 3.2 from the 3.4 fork:
2017-05-14 19:35 UTC Viktor Szakats (vszakats users.noreply.github.com)
1ee9a9c6dc
* src/common/hbdate.c
* implemented monotonic timers in POSIX and MS-Windows builds
* config/wce/global.mk
* config/wce/mingwarm.mk
* config/win/global.mk
* utils/hbmk2/hbmk2.prg
* added winmm/mmtimer to list of system libraries - required
for timeGetTime()
* ChangeLog.txt
! typos
* *
% remove brandings and homepage [1] from copyright header. Pass 1 - using script.
[1] nobody has access to it anymore AFAIK - and it's also just
a redirect since long
! update url in copyright header
; this should make the diff between 3.4 and 3.2 easier to manage
+ src/3rd/hbdossrl/Makefile
+ src/3rd/hbdossrl/serial.c
+ src/3rd/hbdossrl/serial.h
+ src/3rd/hbdossrl/README
+ added DOS Serial Library - it's much cleaner and simpler then COMLib
we used so far in DOS builds. It also supports hardware and software
flow control. Many thanks for Karl Stenerud for his wonderful job.
* src/rtl/hbcom.c
+ added support for DOS Serial Library used as low level backend in
Harbour DOS builds.
* config/dos/djgpp.mk
* config/dos/watcom.mk
* config/dyn.mk
* config/lib.mk
* src/3rd/Makefile
* src/Makefile
* utils/hbmk2/hbmk2.hbp
* utils/hbmk2/hbmk2.prg
* use DOS Serial Library (hbdossrl) instead of COMLib (hbpmcom)
* config/dos/watcom.mk
* config/win/watcom.mk
* config/linux/watcom.mk
! enabled -bd OpenWatcom switch for code compiled as part of dynamic
libraries
* use CauseWay as default DOS extender for dynamic DOS builds
* config/dyn.mk
* config/lib.mk
* src/Makefile
! fixed list of libraries used to create Harbour DLL in DOS builds
* config/bin.mk
* src/vm/Makefile
* create hbmainstd library for OpenWatcom DOS shared builds
* src/vm/maindllh.c
+ added DLL entry function for CauseWay DLLs in OpenWatcom builds
* src/vm/main.c
* include maindllh.c in OpenWatcom DOS shared builds
* utils/hbmk2/hbmk2.prg
+ added support for dynamic binaries in DOS OpenWatcom builds.
Support for CauseWay DLLs is still broken in current OpenWatcom
builds so it will have to wait for the fix to be usable.
* src/vm/dynlibhb.c
+ added support for dynamic libraries to OpenWatcom DOS builds.
Now it's enabled only in harbour.dll due to problems with
CW and current OW.
* src/3rd/zlib/zconf.h
* src/3rd/zlib/zlib.dif
* use OS2 patch for exporting ZLIB symbols also in DOS builds
* src/rdd/dbf1.c
* pacified warning
* utils/hbmk2/hbmk2.prg
+ Partially merge 8f16b6731 from vszakats/harbour-core:
"refined the way pkg-config queries the package version. Now
it does it in a separate call to make some pkg-config versions
happy where version query option cannot be mixed with --cflags
and similar options (f.e. pkg-config 0.28 in current homebrew)."
* src/rtl/filesys.c
* implemented hb_fsSetDevMode() only for DOS builds,
all other platforms always use O_BINARY mode
* utils/hbmk2/hbmk2.prg
! fixed EOL handling in stdout and stderr output
* utils/hbmk2/hbmk2.prg
! fix header search algorithm to handle headers specified
with _absolute paths_.
This fixed the problem reported by Sergy, here:
https://groups.google.com/d/msg/harbour-users/EYT9VQ9M7jk/SPtHIxpUB1oJ
Using absolute path to refer to a headers inside source
should be avoided and not necessary given properly setup
header paths.
; merged Viktor's patch: 2015-06-23 17:50 UTC+0200 Viktor Szakats
* include/hbrddcdx.h
* src/rdd/dbfcdx/dbfcdx1.c
* added support for user defined index page size in DBFCDX.
To change page size for newly created index it's enough to call:
hb_rddInfo( RDDI_INDEXPAGESIZE, <nNewSize>,, "DBFCDX" )
DBFCDX accepts page sizes which are power of 2 in from 512 to 8192.
The upper range is my personal decision and can be easy changed
in Harbour source code. 512 is default CDX index page size and
only such indexes can be read by other RDDs.
In some cases bigger pages can increase performance and reduce
index size. In local networks probably 1024 should give optimal
performance because can be transferred in single ethernet frame.
Just make a tests.
; In next step I plan to add support for longer index keys when
bigger pages are used.
* utils/hbmk2/hbmk2.prg
! added -stop fix borrowed from Viktor's branch
* config/win/msvc.mk
* utils/hbmk2/hbmk2.prg
* disabled -nologo option used with resource compiler in MSVC builds.
Compiler version is not enough to detect supported parameters when
Platform SDK rc.exe is used.
* extras/gtwvw/gtwvwd.c
! fixed typo in WVW_SETICON() - thanks to Ash
* src/rdd/dbcmd53.c
! typo in comment
* src/rtl/dateshb.c
% use hb_retclen() instead of hb_retc() when size is well known.
* src/rtl/valtoexp.prg
% use hb_defaultValue()
* src/vm/estack.c
* minor cleanup
* src/vm/fm.c
* modified a little bit HB_MEMINFO structure to force strict alignment
+ added debug code covered by HB_FM_FORCE_REALLOC macro which forces
allocateing new block in each hb_xrealloc() call
! protect realloc() in HB_FM_STATISTIC by mutex, it fixes issue #77.
* src/rtl/hbproces.c
% unlock HVM waiting for process in OS2 builds
! build array of argument passed to process in hb_processRun() in
parent process not forked one. It fixes possible deadlock in forked
process because memory is allocated to create arguments array and
in MT program memory managers may use mutexes internally which can
be cloned to forked process in locked state.
It fixes seldom and random HBMK2 freezing during compilation
with -jobs=<n> parameter.
* utils/hbmk2/hbmk2.prg
! fixed race condition in concurrent C compiler execution (-jobs=<n>)
with script file
* src/debug/dbgentry.c
! fixed crash when wrong expression is used as tracepoint
! fixed expression analyzer to correctly recognized extended strings e"..."
* formatting
* src/debug/dbgbrwsr.prg
* src/debug/dbghelp.prg
* src/debug/dbgtarr.prg
* src/debug/dbgthsh.prg
* src/debug/dbgtinp.prg
* src/debug/dbgtmenu.prg
* src/debug/dbgtobj.prg
* src/debug/dbgtwin.prg
* src/debug/dbgwa.prg
* src/debug/debugger.prg
* added calls to ::NotSupported() method for some still missing
functionality
! do not use SetColor() but directly pass colors to used objects
and functions
! do not use SetPos() and Row()/Col() for core functionality - it was
source of few minor bugs
% enable cursor only in input objects and disable it just after
% eliminated code to save and restore cursor position and shape
! fixed initial positioning in help window
+ implemented HiLite() and DeHiLite() methods in HBDbBrowser() class
! fixed positioning when end of source data is reached in browser
% eliminated some redundant or completely useless code and comments
% use some fully functional HBDbBrowser() features instead of manual
encoding similar functionality
! validate watchpoint and tracepoint expressions
% use SWITCH statements
! fixed expression presentation (added __dbgValToExp() and __dbgValToStr())
! fixed input for new expressions
! fixed browser scrolling in object inspector
! fixed inkey() processing inside debugger (ALT+D and ALT+C)
! fixed browsers highliting in WA inspector
! fixed hardcoded limit for 512 workareas in WA inspector
! fixed initial WA positioning in WA inspector
* resized WA inspector window
* many other minor fixes and improvements
* src/rtl/hbproces.c
! do not use SetHandleInformation() in WinCE builds
* config/wce/global.mk
* utils/hbmk2/hbmk2.prg
! added iphlpapi to WinCE builds
* config/win/global.mk
* utils/hbmk2/hbmk2.prg
* src/rtl/hbsocket.c
+ added support for returning NIC MAC address by hb_socketGetIFaces()
in MS-Windows builds.
To see physical device addresses bound with active IP interfaces use:
#include "hbsocket.ch"
PROCEDURE Main()
LOCAL aIFace
FOR EACH aIFace IN hb_socketGetIFaces( , .t. )
? "IP:", aIFace[ HB_SOCKET_IFINFO_ADDR ], ;
" MAC:", aIFace[ HB_SOCKET_IFINFO_HWADDR ]
NEXT
WAIT
RETURN
* src/rtl/fstemp.c
! fixed casting for DOS C++ builds
* config/dos/watcom.mk
! moved CRTL library to the end of linked library list - some
other libraries may overload some C RTL functions or symbols,
f.e. error descriptions in WATT-32
* utils/hbmk2/hbmk2.prg
! added hbpmcom library to linked library list in DOS builds
! fixed WATT-32 support in DOS builds to work in cross compilation
environment
! link WATT-32 library before C RTL
! fixed simultaneous compilation with -jobs=N when N >= 2
The same hash array (hReplace) was shared between different threads
and each thread tried to modify it overloading their own parameters.
It was causing different side effects, i.e. all threads compiled
the same .c file instead of their own ones or HBMK2 was crashing
due to memory corruption.
* always join all started threads
* utils/hbmk2/hbmk2.prg
! reverted 2nd hunk of 2013-06-03 16:45 UTC+0200. It
introduced unnecessary and confusing disparity between
command-line and .hbp/.hbm while they are supposed to
be working similarly. It also breaks syntax supported
in .hbc directives, and it also makes behavior contracting
with the way documented in hbmk2 help and hbmk2 examples.
All this, to resolve the problem of space containing option
values for one specific and rare subcase of reverted apostrophs.
To pass option/directive value containing a space, put
the whole option (or the option value) in double quotes
(as documented in help), this works equally well on the
command line and in .hbp/.hbm/.hbc files.
* ChangeLog.txt
! ending whitespaces
! explicitly filled git $Id
* src/rtl/hbtoken.c
+ added support for passing token parser parameters as bit field number.
The goal is to replace last to parameters with single bit field which
allows to set many different parsing aspects instead of adding many
new parameters.
+ added support for reverted apostrophes quoting: `a b c`
; TODO: add constant values to control parser in token functions
* utils/hbmk2/hbmk2.prg
! respect reverted apostrophes quoting in options read from .hbp/.hbm
files.
! do not ignore tool parameters passed in -*flags= hbmk2 params if
they do not start with '-'. It resolves problems with shells which
need special quoting to pass parameters, i.e. with both modifications
it's possible to use in hbp files dynamic parameters encapsulated in
different forms, depending on used platform, shell and parameter type,
i.e. parameters are passed as set of separated arguments:
-cflag=`config-tool1`
or paramters are passed as single argument:
-cflag="`config-tool2`"
or parameters are passed in file which name shows config-tool3:
-cflag="@`config-tool3`"
In short words now things like:
-cflag=`pkg-config --cflags gtk+-3.0`
will work correctly with .hbp files
* src/pp/hbpp.c
! fixed ChangeLog file name detection broken after adding .txt
extension.
* src/rtl/hbproces.c
+ added support merged stdout and stderr output in hb_fsProcessRun()
* src/rtl/hbprocfn.c
+ added support merged stdout and stderr output in hb_processRun()
PRG function. To extract merged stdin and stdout application output
it's enough to pass by reference in 3-rd and 4-th parameters the same
variable, i.e.:
nResult := hb_processRun( cCommand,, @cOutErr, @cOutErr )
* utils/hbmk2/hbmk2.prg
! use hb_processRun() intead of hb_processOpen() to extract merged
stdout and stderr output. It fixes all builds in which hb_processOpen()
does not exists due to some system limitations like missing pipes,
i.e. DOS builds.
* src/vm/fm.c
! fixed typo in DOS builds
* src/rtl/gtwin/gtwin.c
! ignore mouse position reported in mouse wheel events which use
screen based coordinates instead of console window ones.
* bin/check.hb
* bin/commit.hb
! added executable attribute
* doc/xhb-diff.txt
! xBase++ -> Xbase++, Harbor -> Harbour
* utils/hbmk2/hbmk2.prg
+ show project name in error messages
! applied Viktor fixes:
2013-04-17 03:45 UTC+0200 Viktor Szakats (harbour syenar.net)
! fixed to not leave temp .lnk file on disk with -hbdyn[vm]
targets in win/gcc compiler family
! fixed win/tcc to not use gcc style .lnk files when creating
-hbdyn[vm] targets
! added workaround for linker stderr messages redirected to stdout.
It's not perfect but for sure much better then previous behavior.
Now recently created problems like broken *nix builds can be well
seen in stderr output.
* bin/commit.hb
+ added code to launch default git editor with ChangeLog.txt
(not yet activated)
* contrib/hbexpat/hbexpat.hbc
- reverted these two:
2013-04-03 16:01 UTC+0200
2013-03-27 16:29 UTC+0100
It seems that expat.hbc is always installed regardless
of local or system copy is used along the build/install
process
* utils/hbmk2/hbmk2.prg
! fixed -run on Darwin after 2013-03-15 13:57 UTC+0100
(untested)
* bin/check.hb
! fixed shrinking of ChangeLog.txt to not result in broken EOLs
! refinements around interactions of EOL checks and fixes
! include Harbour files "hidden" under /3rd/ dirs
* bin/commit.hb
+ set errorlevel, so it can now be used as a git pre-commit hook
(as 'exec hbrun bin/commit' in .gits/hooks/pre-commit)
* contrib/hbexpat/hbexpat.hbc
! fixed expat.hbc detection to actually look for .hbc file not .h
(which is never present)
* utils/hbmk2/hbmk2.prg
+ added depfinish= .hbc directive. It was missing, yet I
was using it in hbexpat.hbc in recent patch, and wondered
why it didn't work
[ the necessity of the whole previous patch is still suspect
though. ]
+ show warning for any .hbc directives that is unknown.
This should avoid above situation nicely.
INCOMPATIBILITY: Thus far all lines with unknown directives
were ignored, now only empty ones or ones that begin with
'#' character (in first column), as documented. Clean your
.hbc files accordingly.
! fixed typo in one help text. Pls retranslate, I hope Transifex
keeps previous texts, but you can find it in next language
update commit, if not.
* package/harb_win.mft
! deleted BOM (detected by check.hb)
* contrib/3rd/sqlite3/sqlite3.hbc
* contrib/3rd/sqlite3/sqlite3.hbp
* contrib/hbbz2/3rd/bz2/bz2.hbc
* contrib/hbbz2/3rd/bz2/bz2.hbp
* contrib/hbexpat/3rd/expat/_hbconf.h
* contrib/hbexpat/3rd/expat/expat.hbc
* contrib/hbexpat/3rd/expat/expat.hbp
* contrib/hbhpdf/3rd/libhpdf/_hbhbpdf.c
* contrib/hbhpdf/3rd/libhpdf/libhpdf.hbc
* contrib/hbhpdf/3rd/libhpdf/libhpdf.hbp
* contrib/hblzf/3rd/liblzf/lzf.hbc
* contrib/hblzf/3rd/liblzf/lzf.hbp
* contrib/hbmlzo/3rd/minilzo/minilzo.hbc
* contrib/hbmlzo/3rd/minilzo/minilzo.hbp
* contrib/hbmxml/3rd/minixml/config.h
* contrib/hbmxml/3rd/minixml/minixml.dif
* contrib/hbmxml/3rd/minixml/mxml.hbc
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/hbmzip/3rd/minizip/minizip.hbc
* contrib/hbmzip/3rd/minizip/minizip.hbp
* contrib/hbxdiff/3rd/libxdiff/_hbconf.h
* contrib/hbxdiff/3rd/libxdiff/xdiff.hbc
* contrib/hbxdiff/3rd/libxdiff/xdiff.hbp
* lib/3rd/win/bcc/Makefile
* lib/3rd/win/mingw/Makefile
! deleted SVN IDs
* rediffed where required
* config/lang.hb
+ now requires the target project to be passed on cmdline
+ now pulls configuration from .hbp files.
See .hbp changes in this very commit.
+ generalized the 'hbrun' special case in 'doc_make' mode
+ generalized doc output type (so can be other than .md now)
% doesn't require hbrun tool anymore
; it means the tool is now more or less generic and can
support else than hbmk2
* contrib/hbrun/hbrun.hbp
* utils/hbmk2/hbmk2.hbp
+ added configuration options for lang.hb
* utils/hbi18n/hbi18n.prg
+ steps to make it better translatable
* utils/hbmk2/hbmk2.prg
+ provisions to enable context in hb_i18n_*() API usage
* src/rtl/hbi18n2.prg
* __i18n_potArrayClean() will now call transformation callback
first again
* __i18n_potArrayClean() transformation callback returning non-string
will now be ignored instead of deleting the item
* utils/hbmk2/hbmk2.prg
* TOFIX added to a help text
* utils/hbmk2/hbmk2.prg
+ will now use UTF-8 when the stdout is redirected to file
(caveat: will also use UTF-8 when using Windows tools
like 'more' do not understand UTF-8)
+ will now use UTF-8 when using -viewhelp to open the help in viewer
* README.md
* minor clarification to formatting cmd templates
* .gitattributes
+ some lines for future testing
* include/harbour.hbx
* src/rtl/hbi18n2.prg
+ added __i18n_potArraySort( aTrans ) -> aTrans
to sort .pot files to a predictable order (of first
occurrence in file). It helps reducing unnecessarily
large and unusable diffs when updating .pots and their
related .po files
* utils/hbmk2/hbmk2.prg
* marked some string previously (and intentionally) marked
as non-translatable, as translatable. One exception less.
* utils/hbmk2/_po_push.hb
+ sort .pot before saving and pushing to localization service
* utils/hbmk2/hbmk2.prg
+ clarified 'target' in several help items
+ added 'to stdout' to clarifiy some help items
+ use 'platform/C compiler' except 'toolchain'
* .gitignore
* deleted .def file as they are now covered by bin/*/ and
otherwise .def files do exist in source repo
* contrib/rddads/doc/en/adsfuncs.txt
* doc/en/string.txt
* cleanups
* utils/hbmk2/hbmk2.prg
* cleaned function skeletons in help
* extras/hbdoc/hbdoc.prg
+ include unknown COMPLIANCE value as in is doc instead of an error msg
* src/compiler/compi18n.c
* uncrustified, tweak formatting manually
% optimized variable scopes
* src/rtl/hbi18n2.prg
* minor formatting
* utils/hbmk2/_md_make.hb
* utils/hbmk2/_po_pull.hb
* utils/hbmk2/_po_push.hb
+ internals almost fully generalized
+ convert Transifex newline symbol to real newline
* utils/hbmk2/hbmk2.prg
+ AllTrim() some translated text to avoid bad Markdown result
when translated text contains left/right padding.
TODO: double spaces in translated text and extend above
to all strings, and move the whole post-processing/fixing
to the po pull stage. Would be nice to have a core i18n
function to be able to apply transformations via codeblock
to translated text.
* utils/hbmk2/_md_make.hb
* utils/hbmk2/_po_pull.hb
* utils/hbmk2/_po_push.hb
% much faster .md generation
+ internals modified to ease moving the scripts to other dir
+ better feedback
* utils/hbmk2/hbmk2.prg
* formatting and minor