* *
* partial sync with the 3.4 fork codebase. These are the things
synces for the most part:
- copyright headers
- grammar/typos in comments and some readmes
- comment/whitespace/decorations
- variable scoping in C files
- DO CASE/SWITCH and some other alternate syntax usage
- minimal amount of human readable text in strings
- minor code updates
- HB_TRACE() void * casts for pointers and few other changes to
avoid C compiler warnings
- various other, minor code cleanups
- only Harbour/C code/headers were touched in src, utils, contrib,
include. No 3rd party code, no make files, and with just a few
exceptions, no 'tests' code was touched.
- certain components were not touched were 3.4 diverged too much
already, like f.e. hbmk2, hbssl, hbcurl, hbexpat
- the goal was that no actual program logic should be altered by
these changes. Except some possible minor exceptions, any such
change is probably a bug in this patch.
It's a massive patch, if you find anything broken after it, please
open an Issue with the details. Build test was done on macOS.
The goal is make it easier to see what actual code/logic was changed
in 3.4 compared to 3.2 and to make patches easier to apply in both
ways.
* *
% 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
* contrib/hbtcpio/tcpio.c
* use default timeout defined in initial hostname string in read/write
operations
* include/hbapicom.h
* src/rtl/hbcom.c
+ added new C function:
int hb_comFindPort( const char * pszDevName, HB_BOOL fCreate );
It check if given port name is already defined and if not and second
parameter fCreate is TRUE then it allocates such port in one of last
free slots. On success port number is returned. If port cannot be
found or created 0 is returned.
* include/harbour.hbx
* src/rtl/hbcomhb.c
+ added new PRG function:
hb_comFindPort( <cDeviceName> [, <lCreate> = .F. ] ) -> <nPort>
* contrib/hbplist.txt
+ contrib/hbcomio/comio.c
+ contrib/hbcomio/hbcomio.hbc
+ contrib/hbcomio/hbcomio.hbp
+ added new Harbour FILE IO redirector.
It recognizes and process names with "COM<n>:" prefix, in form like:
COM<n>:[<com_params>]
<n> is port number or port name prefixed with "$" character.
<com_params> may contain serial port parameters like baud rate, stop
and data bits, parity and flow control (XON,XOFF,CTS, RTS,DST,DTR).
As delimiter comma "," is accepted.
This redirector can be used in different subsystems using Harbour
FILE IO and stream read/write operations, i.e.
REQUEST HB_COMIO
SET PRINTER TO COM2:38400,N81,XONXOFF
can be used to connect to serial printers.
Please remember that redirectors like NETIO can be used as wrapper
to other redirectors so code like:
pFile := hb_vfOpen( "NET:192.168.0.1:::COM1:9600,8N1" )
opens 1-st serial port on the server and
pFile := hb_vfOpen( "NET:192.168.0.1:::COM$/dev/ttyUSB0:9600,8N1" )
opens "/dev/ttyUSB0" serial device on the server.
* (all files)
* stripped svn header
* minor cleanups
; use following command to find out the history of files:
git log
git log --follow
git blame
git annotate