* utils/hbmk2/hbmk2.prg
+ Added support for linux/clang. (untested)
(what package has to be installed? I installed llvm yesterday,
but couldn't find clang on Ubuntu)
* config/linux/clang.mk
! Added SVN props.
* contrib/hbwin/win_prn2.c
+ PRINTFILERAW(): Changed to use Harbour File I/O API instead
of Windows one to read from a disk file.
* More variable name / macro usage cleanup.
! TOFIX: PRINTFILERAW() has suspicious code aiming to delete
Chr( 26 ) from input files. In current implementation it can
strip Chr( 26 ) even from inside the file if the file is
larger than read buffer, which means it will corrupt input
and may cause wrong output to be printed (f.e. if that Chr( 26 )
is part of a printer control char sequence).
* INSTALL
+ Added linux/clang to the target mix.
+ harbour/config/linux/clang.mk
+ added support for CLANG in LINUX builds
* harbour/include/hbatomic.h
+ added assembler code for SPINLOCKs in WATCOM x86 builds
* harbour/src/vm/fm.c
* enabled HB_FM_DLMT_ALLOC by default in MT HVM if HB_FM_DL_ALLOC is
also enabled
* harbour/src/vm/dlmalloc.c
* modifications for non MS-Windows WATCOM builds
TOFIX: now it compiles in Linux and OS2 builds but it still does not
work
* contrib/hbwin/win_prn2.c
* Variables renamed to reflect their types.
* Further cleanups.
+ Added TOFIX to use Harbour IO instead of win to read a disk file.
* Changed to use HB_SIZE instead of ULONG for string lengths/sizes.
+ Added HB_SIZE casts to silence 64-bit warnings (to two places).
* contrib/hbwin/win_prn2.c
% GETPRINTERS(): Changed to use printer list retrieving on NT
systems to the one used on Win9x systems. This greatly simplifies
the code.
% GETPRINTERS(): Optimized out one PHB_ITEM variable.
% GETPRINTERS(): Moved variables closer to their user blocks.
* GETPRINTERS(): Using empty strings instead of inconsistent
"Error"/"ERROR" texts on error.
(INCOMPATIBLE).
; Pls test.
* src/common/hbver.c
+ Some changes to the way LLVM/CLang are detected. One
remaining combination was now added also.
Pls review me.
* contrib/hbwin/win_prn2.c
* Further type cleanup.
% Using macro instead of storing static number in variable.
! Fixed GETPRINTER() after recent change on Win9x systems.
* contrib/hbwin/win_prn2.c
! Fixed PRINTEREXISTS() in UNICODE mode (hidden by wrong cast).
% Type cleanup (f.e. not using Windows type where not necessary).
% Cleaned away unnecessary casts.
* contrib/hbwin/win_prn2.c
! Fixed few type mis-uses (BOOL instead of DWORD and vice versa)
% Optimized hb_isLegacyDevice().
% Marked some static strings as static.
% Marked locally used C worker functions as static.
This may cause incompatibility if someone used these via
undocumented ways. They were never officially published
through .h headers.
* contrib/hbwin/win_tprn.prg
* contrib/hbwin/win_prn1.c
+ Added ::GetDocumentProperties() method.
+ Calling ::GetDocumentProperties() from ::New() to setup defaults.
; Patch submitted by Xavi. Thank you.
* contrib/hbwin/win_prn2.c
% Modified GETPRINTERS() code to use optimal array creation code,
use less redundancy and synced functionally similar code
parts with each other, deleted unnecessary code parts.
* Greatly cleaned GETPRINTERS() code (names, layout).
! Fixed GETPRINTERS() code. It had fatal flaw in non-NT
branch, so I seriously wonder how could it work for anyone
in the past. It seems it wasn't even tested by submitter
before commited to xhb repository in year 2005.
Someone pls test it on Win9x, I don't have any printers
installed there.
* contrib/hbwin/win_prn1.c
* contrib/hbwin/legacy.prg
* Moved WIN_GETEXEFILENAME() to legacy function collection,
at the same time rewritten to simply call HB_ARGV( 0 ).
* contrib/hbwin/win_prn1.c
% WIN_FILLRECT(), WIN_ARC(), WIN_ELLIPSE() optimized.
* config/darwin/gcc.mk
* config/darwin/icc.mk
* config/darwin/clang.mk
! Attempt to fix darwin dylib generation, added lib prefix
to install name parameter.
; TOFIX: Adding path to lib reference still doesn't work,
so shared binaries will still not work unless
Harbour is installed to system location.
* contrib/hbtip/smtpcli.prg
! Fixed long time SMTP protocol implementation bug reported
(with patch) by Francesco Perillo. Thank you.
The problem manifested itself only with strictly
standard compliant SMTP server (setups?) like recent
Exim versions.
+ Upped timeout from 5000 to 50000.
* utils/hbmk2/hbmk2.prg
! Fixed to make clang behave like gcc when decorating lib references.
! Fixed to include clang in 'allgcc' filter.
+ Added native header detection when using clang.
! Internal change to use detected c compiler name instead of
hard-wired 'gcc' when doing native header detection for .c files
(using -MM option).
* contrib/hbxbp/xbplistbox.prg
* contrib/hbide/hbide.prg
+ Implemented prototype of <Project Tree Structure>.
Also play with various icons. Docks at the right and at the bottom can be collapsed.
Please forward suggesstions.
* contrib/hbqt/hbqt.ch
+ Added some more constants.
* contrib/hbqt/hbqt_slots.cpp
* contrib/hbqt/hbqt_slots.h
! Further cleanup of QWebKit elimination.
* include/hbdefs.h
* Removed reliance on old type when defining some new types.
* contrib/hbcurl/hbcurl.c
* contrib/hbssl/ssl.c
* contrib/hbssl/evpmd.c
* Changed ULONG to HB_SIZE.
(HB_SIZE currently is the same as ULONG)
* contrib/hbssl/evp.c
* Changed ULONG to size_t in one place.
* harbour/src/vm/dlmalloc.c
! removed hack with overlapped structures with small chunks to not
confuse C compilers which can make strict-aliasing optimizations
* harbour/src/vm/set.c
! removed old casting left by mistake in hb_conSetCursor() calls
* contrib/rddsql/rddsql.hbc
+ Added incpaths=. so now .ch file will be automatically found.
* contrib/rddsql/sddmy/tests/test1.prg
* contrib/rddsql/sddodbc/tests/test1.prg
* contrib/rddsql/sddodbc/tests/test2.prg
- Deleted explicit paths from #include directives.
(after above .hbc change this isn't necessary)
* contrib/rddsql/Makefile
+ Added to install .ch file.
* contrib/rddsql/hbrddsql.ch
+ Added NOTE, that file is used also by C code.
! Added EOL at EOF.
+ harbour/contrib/rddsql/hbrddsql.ch
* harbour/contrib/rddsql/hbrddsql.h
* DBI_ and RDDI_ defines moved to .ch file
* harbour/contrib/rddsql/sddmy/tests/test1.prg
* harbour/contrib/rddsql/sddodbc/tests/test1.prg
* harbour/contrib/rddsql/sddodbc/tests/test2.prg
* hbrddsql.ch include used
* harbour/contrib/rddsql/sddodbc/tests/test2.prg
! fixed small error in DSN
* harbour/contrib/rddsql/sddodbc/odbcdd.c
* implemented error processing
* harbour/contrib/rddsql/sddfb/fbirddd.c
* harbour/contrib/rddsql/sddmy/mysqldd.c
* harbour/contrib/rddsql/sddodbc/odbcdd.c
* harbour/contrib/rddsql/sddpg/pgsqldd.c
* harbour/contrib/rddsql/sqlbase.c
* harbour/contrib/rddsql/sqlmix.c
* source formatting
* changed error variables type to HB_ERRCODE
* harbour/contrib/rddsql/sddfb/fbirddd.c
* harbour/contrib/rddsql/sddmy/mysqldd.c
* moved unsupported (by some compiler) compile time condition
check to RDD initialisation run-time condition check
* harbour/contrib/rddsql/hbrddsql.h
* harbour/contrib/rddsql/sqlbase.c
* implemented connection area counter. Now connection can be
closed only after all its workareas are closed.
* harbour/contrib/rddsql/hbrddsql.h
* harbour/contrib/rddsql/sqlbase.c
* SQL error text, error number, last query, etc. Moved from
connection to static variables, because I'm unable to return
errors for a failed connect otherwise.
; TODO: MT support. Error text and code are stored in static
variable, it should be moved to thread static in the future.
But there is more problems in MT support. F.e., can we use
use the same connection for a few threads?
* src/rtl/errapi.c
* Renamed error variables to use new prefix.
* ChangeLog
! Typo.
* contrib/hbwin/win_osc.c
+ Added OS_WIN7. Borrowed from xhb / Patrick Mast.
* contrib/hbqt/hbqt.hbc
* contrib/hbqt/hbqt_slots.cpp
* contrib/hbqt/hbqt_slots.h
* contrib/hbxbp/xbphtmlviewer.prg
- Removed QtWebKit support. Code still resides in the files.
I plan to separate it next week. Please post if still any error is
reported related with QWebKit involved cross builds.
* harbour/src/rtl/gtcrs/gtcrs.c
* pacified warning caused by wrong tigetnum() declarations in some
curses versions
* harbour/src/rtl/gtsln/gtsln.c
! fixed non ANSI-C variable declarations
* harbour/include/hbsetup.h
+ added macros for PURE and CONST function attributes
* harbour/contrib/hbct/ctc.c
* modified variable names
* contrib/hbqt/detect.mk
+ Added more sophisticated autodetection of moc
executable. Please test on you system.
Envvar HB_QT_MOC_BIN can always be used to specify the
name of QT 'moc' executable, so if autodetection fails,
please use it and report the value that worked for you.
* src/rtl/errapi.c
* contrib/hbct/ctc.c
! Fixed printf() format strings after recent HB_ERRCODE change.
* contrib/hbqt/tests/demoqt.prg
% Deleted hb_idleSleep( 1 ) after main window creation.
Please advise if it was put there with some reason.
* contrib/hbqt/hbqt_slots.cpp
! Fixed to use hb_releaseCPU() instead of hb_idleSleep( 0.2 ).
I'm not sure whether this code part was active, but looked like
a very bad workaround if the 0.2 sec sleep was really needed there.
* harbour/src/rdd/dbfcdx/dbfcdx1.c
! minor typo in comment
* harbour/contrib/rddsql/sddmy/mysqldd.c
* harbour/contrib/rddsql/sddpg/pgsqldd.c
* harbour/contrib/rddsql/sddfb/fbirddd.c
* harbour/contrib/rddsql/sddodbc/odbcdd.c
! small fix for include dirs in XCC builds
* contrib/gtqtc/Makefile
* contrib/gtqtc/gtqtcs/Makefile
- contrib/gtqtc/moc_gtqtc.cpp
! Fixed to generate moc file dynamically.
% Changed to use detect.mk in hbqt for QT detection.
* contrib/hbqt/hbqts/Makefile
! Fixed for HB_QT_STATIC=yes mode after latest change.
* contrib/hbqt/Makefile
* contrib/hbqt/detect.mk
* Moved MOC_BIN detection to detect.mk.
* contrib/hbqt/Makefile
- contrib/hbqt/moc_slots.cpp
+ Added dynamic generation of moc_slots.cpp by calling moc
tool.
; TODO: If this is ok, do the same in gtqtc.
* contrib/gtwvg/Makefile
+ Enabled for xcc.
* contrib/gtwvg/wvgwing.c
! Fixed warning with xcc.
* config/win/xcc.mk
! Added minor hack to make xcc work on Windows.
(can't handle header dir with ending pathsep)
* contrib/hbqt/hbqt_misc.prg
* contrib/hbxbp/xbpgeneric.prg
* Synced two similar debug functions after latest change.
% Deleted commented line. gtwvg/hbqt/hbxbp components are
literally full of commented lines, #if 0 parts
and such things. IMO these should be deleted from
final code otherwise it gives the (possibly wrong)
impression that the code is not-mature and in a
temporary development state. Remember that SVN keeps
a copy of every older version of source so in case
it's needed it can always be retreived, so there is no
need to keep old code commented "just in case".
Everyone please keep that in mind.
* contrib/gtwvg/tests/demowvg.prg
! Fixed all warnings which prevented it from being
built.
* contrib/hbxbp/xbpgeneric.prg
! Change the way HBXBP_DEBUG() shows up the values. In my scheme of things
the whole HBQT's debug system is revolving around this way.
* contrib/hbide/hbide.prg
+ More basic visual components to host different project elements.
Keep on playing with it. I am gathering all pitfalls.
* utils/hbmk2/hbmk2.prg
+ Added dependency tree to flat dependency list converter.
(no cyclic reference check here)
* contrib/gtwvg/wvgwing.c
! Fixed for Windows x64 platform.
* contrib/gtwvg/Makefile
+ Enabled for Cygwin, IA64 and mingw64 compilers.
Latest mingw64 experimental builds build it fine.
This means all win compilers are supported except xcc.
; NOTE: Now it's disabled only for xcc.
Can someone with xcc installed try gtwvg? Maybe it can
be made work so we can drop this exception.
* config/global.mk
* utils/hbmk2/hbmk2.prg
+ Added autodetection of x86_64 build of mingw64.
(in hbmk2 it's recognized even if host platform isn't x64)
* INSTALL
+ Added darwin -> win/mingw64 cross-platform scenario.
Such binaries are now provided by the mingw64 project.
* harbour/src/vm/strapi.c
! fixed return value in hb_itemCopyStr()
* harbour/contrib/hbct/files.c
* harbour/contrib/hbct/disk.c
! fixed to work with HB_ERRCODE declared as unsigned int
* harbour/include/hbthread.h
* minor cleanup in comment
* harbour/src/vm/dlmalloc.c
* use harbour spinlocks in windows builds to eliminate calling
InterlockedCompareExchange[Pointer]() function
* harbour/include/hbstack.h
! disabled TLS ASM inline code which seems to not work with Win9x.
* include/hbapi.h
* Changed HB_ERRCODE to be 'insigned int' (was USHORT).
; You'll need to rebuild all sources.
* utils/hbmk2/hbmk2.prg
% Turned off line numbers (for hbmk2 itself).
* INSTALL
* Minor formatting.