* tests/rddtest/make_c53.bat
* Minor formatting.
- tests/run.bat
- tests/run_all.bat
- Deleted. We need some portable concept here, but my guess is
that it's been a very long time since anyonw tried to run all
test program in a row.
* examples/hbextern/hbextern.prg
* Excluding all HB_ARCHITECTURE dirs explicitly.
(this resolves the recursion problem)
* Excluding fcomma.prg explicitly.
- Deleted 'example' from exclusion list.
- source/rdd/usrrdd/example
+ tests/usrrdd
* Moved examples under test dir.
* utils/hbmk2/hbmk2.prg
+ Added support for input/output filenames containing spaces.
Only for msvc and bcc so far.
! Fixed to always delete target lib in -hblib + non-incremental mode
before creating it.
+ Small miracles of life: Microsoft finally added /nologo switch to
resource compiler in MSVC 2010. Hard to believe, but true. Now
I'll have to find out what method to use to detect C compiler
version to enable it.
+ Support for HB_COMPILER_VER envvar to tell hbmk2 what C compiler
version is expected. Currently only used with MSVC targets.
Use values like:
- 710 (for MSVC .NET 2003)
- 800 (for MSVC 2005)
- 900 (for MSVC 2008)
- 1000 (for MSVC 2010)
The generic format is <99><99>[.<99>] as <major><minor>[.<revision>].
That makes BCC 5.5.1 '505.1' or shortly '505'.
Currently the only situation where such switch is necessary is when
using pre-8.0 MSVC versions, so most users don't have to bother with
this for now.
NOTE: Harbour GNU Make compatible HB_VISUALC_VER_PRE80 envvar still
supported to stay uniform.
+ Added /nologo switch to MSVC lib command.
! Protect against adding internally inherited C compiler switches,
if they are already on the switch list.
* tests/testhrb.prg
! Adapted to latest hbhrb.ch changes.
* tests/setkeys.prg
* Minor formatting.
* tests/testhrb.prg
* tests/exthrb.prg
! Fixed missing SVN props.
* ChangeLog
! Removed conflict marker from ChangeLog from a recent commit.
; NOTE: I'd encourage everyone to check doc/howtosvn.txt
before committing.
* doc/howtosvn.txt
+ Added link to svn cmdline tools.
+ Added link to svn online documentation (a complete free book)
! Fixed a few svn commands written in uppercase.
* tests/testhrb.prg
* tests/Makefile
* include/Makefile
* include/hbhrb.ch
* source/vm/runner.c
! Added new files to Makefiles.
! Fixed to use hbhrb.ch from .c rather than replicating #defines.
(also fixed comments to be ANSI)
! Added self protection to .ch.
! Made .hrb file lowercase in testhrb.prg
! Deleted double license header from .ch.
* utils/hbmk2/hbmk2.prg
+ Added logic to move embedded compilers under a common subdir.
To stay compatible with 2.0.0beta1 release I didn't yet set
this, but it will be for final release.
Probably 'comp', or maybe 'opt'. Sorry for asking for opininons,
but they're welcome anyway.
* vm/runner.c
FIXED ;
../../runner.c:413: error: '_HB_SYMB' undeclared (first use in this function)
+ include/hbhrb.ch: HB_HRBLOAD() mode #define new file
+ tests/testhrb.prg: test program fro new params
+ tests/exthrb.prg: test program to be compiled as .HRB using /gh option
* harbour/include/hbsetup.h
+ added HB_RESTRICT macro which can be used in some declarations
to reach better code optimization
* harbour/include/hbclass.ch
+ added support for xbase++ compatible method declaration by:
METHOD <methodName1> [ , <methodNameN> ]
* harbour/source/rtl/tthreadx.prg
* redirect parameters passed to ::new() method to ::init() method
as emulation for class object new method
+ added basic support for ::setInterval in xbasee++ THREAD class
* harbour/tests/speedtst.prg
! removed unused variable cDir
* contrib/xhb/Makefile
+ contrib/xhb/bkgtsks.c
+ Added background tasks functions. My only current goal
was to make it compile under Harbour, plus did some
optimizations along the way.
(borrowed from xhb, work of Francesco Saverio Giudice)
; TODO: Adapt to Harbour: MT mode, Set() replacement,
attach it to VM possibly without modifying
the VM itself.
* source/rtl/mlcfunc.c
+ Reenabled for default builds the parameter extension
in memo functions (now guarded with HB_C52_STRICT).
This breaks our effort to not introduce such extensions,
but since was no better idea I've made an exception,
but I personally still don't like it and this practice
stays forbidden.
Talking about the last parameter of these functions:
MEMOLINE(), MLCOUNT(), MLPOS(), MLCTOPOS(), MPOSTOLC()
* source/codepage/cphr437.c
* source/codepage/cphr852.c
* source/codepage/cphrwin.c
* Fixed wrongly ordered accented chars.
* Fixed missing accented chars in Windows CP.
; Submitted by Vladimir Miholic on sf.net.
* contrib/xhb/xhb.h
+ Added hb_seconds() compatibility macro.
* tests/speedtst.prg
+ Added SET DATE ANSI and SET CENTURY ON.
* tests/Makefile
+ tests/brwpos.prg
+ Added TBrowse() :rowPos test submitted by Xavi to the list.
* utils/hbmk2/hbmk2.hbp
* utils/hbrun/hbrun.hbp
% Minor opt to prev.
* tests/rto_tb.prg
+ Added hb_SToD() compatibility function to make it link
with xhb.
+ Added forced define of HB_COMPAT_C53 in xhb mode, but
commented because it makes it RTE.
* INSTALL
! Term changed to be consistent with rest of doc.
* include/hbapi.h
! Typo in comment.
* utils/hbmk2/hbmk2.prg
! Fix to prev fix reported by Vailton. Could RTE when compiling .hrbs.
+ Added -hbraw switch which will make hbmk2 work like harbour compiler.
+ .hbp extension is also recognized when embedded.
* tests/hbpptest/compare.bat
! Fixed long fn.
* tests/bnch_win.bat
! Fix in comment.
* tests/speedtst.prg
! Fixed missing hb_progname() for non-Harbour compilers.
* include/hbextern.ch
+ Added time related new functions.
* utils/hbmk2/hbmk2.prg
+ Added -runflag: option to pass flags to target executable.
+ Started -inc (incremental link) support. It's very early
stage, don't expect it to work yet and please don't report
any problems with this feature yet.
* source/vm/asort.c
! Fixed to return Clipper compatible results when non-logical
non-numeric value is returned from ASORT() codeblock.
* utils/hbtest/rt_array.prg
* Cleaned ASORT() tests when sorting block returns constant value.
Now Clipper results aren't bent anymore, instead I've added
different expected results for Harbour and Clipper. The
difference is due to different sorting algorithms used,
here the point is to get similar *pattern* for different
invalid values.
* source/rtl/philes.c
% HB_FGETDATETIME(): Removed double call to hb_stortdt().
* contrib/hbqt/tests/hbqt.hbp
* Removed extra line at EOL.
* contrib/gtqtc/tests/hbqt.hbp
! Removed environment dependent 'libspath=' line.
Please don't add such path to Harbour SVN, since these
can differ from system to system and is also non-portable.
The correct name of the directive is: 'libpaths='.
* contrib/gtqtc/Makefile
% Removed double SVN ID.
This file needs to be updated according to hbqt latest
Makefile portability changes.
* contrib/rddads/ads1.c
* Minor formatting.
* tests/bnch_win.bat
* tests/speedtst.prg
+ Added --stdout option to restore old feature to redirect output
to a file. Needed for bnch_win.bat.
+ In normal mode output will be saved in a file with the same name
of the executable with .txt extension. Makes it easier to make
side-by-side tests.
! Fixed SVN EOL.
* INSTALL
* external/Makefile
+ external/libhpdf/*
+ external/libpng/*
+ Added libharu and libpng to Harbour repository.
Now it's possible to use libhpdf as static lib on all
platforms. This is useful because this lib isn't yet part
of Linux distros.
libpng is only built for win/dos/os2 platforms.
It's possible to override libpng location by using
HB_INC_LIBPNG envvar.
* contrib/hbhpdf/Makefile
+ Look for libharu headers in /external dir.
* external/sqlite3/Makefile
- Disabled for bcc. Latest sqlite3 version breaks with this compiler:
---
Error E2293 ../../sqlite3.c 29156: ) expected in function winCurrentTime
Warning W8013 ../../sqlite3.c 29157: Possible use of 'timeW' before definition in function winCurrentTime
Error E2379 ../../sqlite3.c 29157: Statement missing ; in function winCurrentTime
Error E2379 ../../sqlite3.c 29158: Statement missing ; in function winCurrentTime
Error E2379 ../../sqlite3.c 29160: Statement missing ; in function winCurrentTime
Error E2293 ../../sqlite3.c 29161: ) expected in function winCurrentTime
Error E2379 ../../sqlite3.c 29162: Statement missing ; in function winCurrentTime
Error E2293 ../../sqlite3.c 29163: ) expected in function winCurrentTime
Warning W8057 ../../sqlite3.c 29171: Parameter 'prNow' is never used in function winCurrentTime
*** 7 errors in Compile ***
---
bcc users can report this problem here:
http://www.sqlite.org/cvstrac/tktnew
+ tests/bnch_win.bat
- tests/bnchmark
* Moved bnch_win.bat to tests.
* harbour/tests/speedtst.prg
* redirect output to file using SET ALTERNATE ... instead of stdout()
* harbour/contrib/hbole/olecore.c
* updated to compile with C and C++ OLE interface.
Please make some tests with different compilers.
* tests/testhtml.prg
* Update by Vailton Renato applied.
* INSTALL
* Minor formatting.
* bin/postinst.bat
+ Minor cleanup to creation of hbrun/hbtest dll versions.
(now it's more difficult to mislead it by already existing
foreign .dlls)
* contrib/hbqt/Makefile
* contrib/hbapollo/Makefile
- Disabled for mingw64.
* contrib/rddads/rddads.h
+ Added workaround to compile under mingw64.
* contrib/gtwvg/gtwvg.h
* contrib/gtwvg/wvggui.h
! Fixed to _not_ override _WIN32_IE. Overriding these version
numbers is generally a very bad idea. Instead the code should
adapt to whatever values are defined by system headers.
This fixes most mingw64 errors. Please test other compilers.
* contrib/xhb/hbxml.c
* contrib/hbfimage/fi_winfu.c
* contrib/hbwin/wapi_commctrl.c
! Pointer/handle to integer conversion.
* contrib/gtwvg/wvgcuig.c
* contrib/gtwvg/wvgwin.c
! Fixed NULL used instead of 0.
! Fixed ISNIL() usage. GTWVG code is full of ISNIL() macros,
which makes the code prone to GPFs and other unexpected
behaviour when wrong type is passed. The solution is to
change all these to type specific IS*() macros.
; TOFIX: (core and all contribs)
C:/DOCUME~1/vszakats/LOCALS~1/Temp/ccVcE53g.s: Assembler messages:
C:/DOCUME~1/vszakats/LOCALS~1/Temp/ccVcE53g.s:20: Error: `0x0e10(%rax,%ecx,4)' is not a valid base/index expression
In these files:
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../hvm.c -ohvm.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../arrays.c -oarrays.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../asort.c -oasort.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../classes.c -oclasses.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../cmdarg.c -ocmdarg.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../debug.c -odebug.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../dynlibhb.c -odynlibhb.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../dynsym.c -odynsym.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../codebloc.c -ocodebloc.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../estack.c -oestack.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../eval.c -oeval.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../evalhb.c -oevalhb.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../extend.c -oextend.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../fm.c -ofm.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../garbage.c -ogarbage.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../hashes.c -ohashes.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../hashfunc.c -ohashfunc.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../itemapi.c -oitemapi.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../macro.c -omacro.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../memvars.c -omemvars.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../pcount.c -opcount.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../proc.c -oproc.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../pvalue.c -opvalue.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../runner.c -orunner.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../set.c -oset.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_MT_VM -c ../../../thread.c -othread.o
x86_64-pc-mingw32-gcc -I. -I../../../../../include -Wall -W -O3 -fomit-frame-pointer -DHB_FM_STATISTICS -DHB_MT_VM -c ../../../fm.c -ofm.o
../../dbfntx1.c: In function 'hb_ntxTagHeaderCheck':
../../dbfntx1.c:1054: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfntx1.c:1054: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfntx1.c:1055: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfntx1.c:1055: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfntx1.c:1055: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfntx1.c:1055: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c: In function 'hb_nsxTagHeaderCheck':
../../dbfnsx1.c:1282: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1284: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1285: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1285: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1285: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1285: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c: In function 'hb_nsxPageFree':
../../dbfnsx1.c:1573: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1573: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1573: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1573: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c: In function 'hb_nsxPageNew':
../../dbfnsx1.c:1622: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1622: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1622: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../dbfnsx1.c:1622: warning: dereferencing type-punned pointer will break strict-aliasing rules
../../hb_btree.c: In function 'StackSkip':
../../hb_btree.c:643: warning: cast from pointer to integer of different size
../../hb_btree.c: In function 'Grow':
../../hb_btree.c:739: warning: cast from pointer to integer of different size
../../getenvrn.c: In function 'HB_FUN_FT_GETE':
../../getenvrn.c:178: warning: implicit declaration of function 'GetEnvironmentStrings'
../../getenvrn.c:178: warning: initialization makes pointer from integer without a cast
../../win_dll.c: In function 'DllExec':
../../win_dll.c:509: warning: cast from pointer to integer of different size
../../win_dll.c:603: warning: cast to pointer from integer of different size
../../win_dll.c:672: warning: cast to pointer from integer of different size
../../win_dll.c:689: warning: cast to pointer from integer of different size
../../hbserv.c: In function 's_serviceSetHBSig':
../../hbserv.c:638: warning: passing argument 1 of 'SetUnhandledExceptionFilter' from incompatible pointer type
../../firebird.c: In function 'HB_FUN_FBCREATEDB':
../../firebird.c:87: warning: initialization makes integer from pointer without a cast
../../firebird.c:88: warning: initialization makes integer from pointer without a cast
../../firebird.c: In function 'HB_FUN_FBCONNECT':
../../firebird.c:115: warning: initialization makes integer from pointer without a cast
../../firebird.c:143: warning: cast to pointer from integer of different size
../../firebird.c: In function 'HB_FUN_FBCLOSE':
../../firebird.c:149: warning: cast from pointer to integer of different size
../../firebird.c: In function 'HB_FUN_FBSTARTTRANSACTION':
../../firebird.c:172: warning: cast from pointer to integer of different size
../../firebird.c:173: warning: initialization makes integer from pointer without a cast
../../firebird.c:179: warning: cast to pointer from integer of different size
../../firebird.c: In function 'HB_FUN_FBCOMMIT':
../../firebird.c:184: warning: cast from pointer to integer of different size
../../firebird.c: In function 'HB_FUN_FBROLLBACK':
../../firebird.c:195: warning: cast from pointer to integer of different size
../../firebird.c: In function 'HB_FUN_FBEXECUTE':
../../firebird.c:206: warning: cast from pointer to integer of different size
../../firebird.c:207: warning: initialization makes integer from pointer without a cast
../../firebird.c:215: warning: cast from pointer to integer of different size
../../firebird.c: In function 'HB_FUN_FBQUERY':
../../firebird.c:249: warning: cast from pointer to integer of different size
../../firebird.c:250: warning: initialization makes integer from pointer without a cast
../../firebird.c:253: warning: initialization makes integer from pointer without a cast
../../firebird.c:270: warning: cast from pointer to integer of different size
../../firebird.c:375: warning: cast to pointer from integer of different size
../../firebird.c:379: warning: cast to pointer from integer of different size
../../firebird.c: In function 'HB_FUN_FBFETCH':
../../firebird.c:395: warning: cast from pointer to integer of different size
../../firebird.c: In function 'HB_FUN_FBFREE':
../../firebird.c:419: warning: cast from pointer to integer of different size
../../firebird.c:421: warning: cast from pointer to integer of different size
../../firebird.c: In function 'HB_FUN_FBGETBLOB':
../../firebird.c:613: warning: cast from pointer to integer of different size
../../firebird.c:614: warning: initialization makes integer from pointer without a cast
../../firebird.c:615: warning: initialization makes integer from pointer without a cast
../../firebird.c:624: warning: cast from pointer to integer of different size
../../fbirddd.c: In function 'fbConnect':
../../fbirddd.c:164: warning: initialization makes integer from pointer without a cast
../../fbirddd.c:192: warning: cast to pointer from integer of different size
../../fbirddd.c: In function 'fbOpen':
../../fbirddd.c:217: warning: initialization makes integer from pointer without a cast
../../fbirddd.c:218: warning: initialization makes integer from pointer without a cast
../../fbirddd.c:409: warning: assignment makes pointer from integer without a cast
../../fbirddd.c:410: warning: assignment makes pointer from integer without a cast
../../fbirddd.c: In function 'fbClose':
../../fbirddd.c:446: warning: passing argument 2 of 'isc_dsql_free_statement' from incompatible pointer type
c:/devl/Firebird-2.1.1/include/ibase.h:629: note: expected 'isc_stmt_handle *' but argument is of type 'void **'
../../fbirddd.c:451: warning: passing argument 2 of 'isc_rollback_transaction' from incompatible pointer type
c:/devl/Firebird-2.1.1/include/ibase.h:780: note: expected 'isc_tr_handle *' but argument is of type 'void **'
../../fbirddd.c: In function 'fbGoTo':
../../fbirddd.c:469: warning: passing argument 2 of 'isc_dsql_fetch' from incompatible pointer type
c:/devl/Firebird-2.1.1/include/ibase.h:622: note: expected 'isc_stmt_handle *' but argument is of type 'void **'
../../fbirddd.c:531: warning: passing argument 2 of 'isc_dsql_free_statement' from incompatible pointer type
c:/devl/Firebird-2.1.1/include/ibase.h:629: note: expected 'isc_stmt_handle *' but argument is of type 'void **'
../../fbirddd.c:538: warning: passing argument 2 of 'isc_commit_transaction' from incompatible pointer type
c:/devl/Firebird-2.1.1/include/ibase.h:524: note: expected 'isc_tr_handle *' but argument is of type 'void **'
* harbour/tests/speedtst.prg
* simplified xHarbour MT test - use mutexes as internal thread IDs
as workarounds for race conditions in xHarbour .prg MT API.
* harbour/include/hbclass.ch
+ added support for xBase++ method code declaration by
METHOD <clasName>:<methodName>[ ( <parameters,...> ) ]
f.e.:
METHOD TBrowse:Configure( nMode )
* harbour/source/rtl/tthreadx.prg
* harbour/source/rtl/thfuncx.prg
! fixed 0 timeout parameter in some xBase++ compatible functions
In xBase++ timeout 0 means wait forever
* harbour/tests/speedtst.prg
* update to compile with MT support using xBase++ MT .prg API.
I tested it only using Harbour by compiling this code with
-D__XPP__ macro and it works using only xBase++ MT .prg API
we are emulating.
Please make some tests with real xBase++ compiler.
* tests/bnchmark/bnch_win.bat
+ Added option to override benchmark program name, so now
it can be used with customized speedtst versions or other
benchmark apps.
+ Added HB_CMP_FLAGS envvar to define common compilation flags.
+ Now echoing all benchmark settings to output.
* config/win/icc.cf
+ Added -nologo.
* Changed -W4 to -W3, as -W3 is really verbose in this compiler.
* INSTALL
* bin/hb-mkdyn.bat
* utils/hbmk2/hbmk2.prg
+ config/win/iccia64.cf
+ Added Intel(R) C++ Compiler IA64 support.
All Harbour libs (including contribs) compiled successfully,
but I couldn't try linking any executables.
; TODO: Add processor information to appropriate places into
Harbour. Currently we have only bit width and endianness,
but no actual CPU family info. CPU instruction families
Harbour can currently be built on out of the box:
x86, amd64, IA64, PPC, PPC64, ARM.
* tests/bnchmark
+ tests/bnchmark/bnch_win.bat
+ Added speedtst comparison tool, featuring:
- CPU + physical memory info dump from WMI
- Tasklist before and after test runs
- Harbour /build info included in output
- Complete dump of commands executed, hbmk2 output
- Dir listing of tested .exes
- All tests repeated three times by default (configurable)
- 8 slots maximum to compare different speedtst scenarios
- By default it will run -st vs. -mt tests.
; Please read the comments in the file for usage instructions.
Here's an example for parameter setup:
--
set PATH=C:\devl\MinGW-432\bin;%PATH%
set HB_BENCH_RUNS=3
set HB_RUN_FLAGS=--exclude=030
set HB_CMP_FLAGS_1=-gc2
set HB_CMP_FLAGS_2=-gc3
call bnch_win.bat > results.txt 2>&1
--
* config/rules.cf
+ Restored -ko flag. Thanks Mindaugas for analysing test result.
* contrib/hbodbc/todbc.prg
* contrib/hbodbc/odbc.c
* Formatting + minor cleanups.
* harbour/tests/speedtst.prg
+ added new tests of dynamic code blocks performance
* modified to compile by __XPP__ and __CLIP__ - now for single
thread only
* tests/ac_test2.prg
* Updated.
* source/rtl/achoice.prg
! Fixed to not call user func in AC_NOITEM mode.
! Added more visual corrections for better CA-Cl*pper compatibility.
; Thanks to Vladislav Lavrecky for the above.
* source/rtl/achoice.prg
* tests/ac_test2.prg
! ACHOICE() made more Clipper compatible. Still not fully, pls
continue Clipper/Harbour tests with updated ac_test2.prg.
* config/win/bcc32.cf
! Fixed to use response files with tlib, to avoid command line
length limits on some systems.
- tests/run_prg.bat
+ tests/run.bat
- tests/run_prg_all.bat
+ tests/run_all.bat
* Renamed to short name.
* harbour/include/hbgtinfo.ch
+ added HB_GTI_FONTSEL
* harbour/source/rtl/gtxwc/gtxwc.c
+ added support for HB_GTI_FONTSEL
+ added support for HB_GTI_PALETTE
+ harbour/tests/gtxfnt.prg
+ added small demonstration/test code for HB_GTI_FONTSEL
and XWindow GTs
* harbour/source/rtl/hbproces.c
* replaced execv() with execvp() in *nix builds
- tests/hbmk_gnu.bat
- Removed.
* contrib/examples/uhttpd/hbmk.bat
* contrib/examples/dbu/hbmk.bat
* contrib/examples/rl/hbmk.bat
* Made them compatible with Win9x/NT systems again.
* source/lang/msg_tpl.c
+ Added NOTE about date format.
* source/lang/msgbe866.c
* source/lang/msgbewin.c
* source/lang/msgbg866.c
* source/lang/msgbgiso.c
* source/lang/msgbgmik.c
* source/lang/msgbgwin.c
* source/lang/msgit.c
* source/lang/msgnl.c
* source/lang/msgsl437.c
* source/lang/msgsl852.c
* source/lang/msgsliso.c
* source/lang/msgslwin.c
! Fixed date formats to only contain YYYY MM and DD.
Plus the format itself corrected in a few places.
* utils/hbmk/hbmk.prg
+ Added TODO
% Added ANNOUNCE HB_GTSYS / REQUEST HB_GT_STD_DEFAULT.
Since this tools doesn't need anything fullscreen, and
this way it's faster smaller, yet portable.
* ChangeLog
* Few old TODO/TOFIX statuses updated.
* utils/hbmk/hbmk.prg
+ Added -strip/nostrip switch and implemented for GCC/GPP.
+ Added -trace switch to see executed commands.
+ Added negative switches: -std, -st, -nodebug
+ Added detection whether Harbour is installed in default system
locations on *NIX systems. If it is, turn on shared libraries
by default for all *NIX systems.
+ Added support for GT selection with -gt??? switch.
(using .prg method, not .c as in hbmk bash script)
+ Added support for linux/gpp.
; NOTE: Some things still missing:
- details of *NIX stuff, systems libs, switches,
etc, etc.
- -fullstatic not yet supported.
- fmstat/nofmstat. It would be good to find a
more easily manageable way to influence that.
Current one is make system dependent and a bit hackish.
- handling 3rd party libs. These should be supported
by supplying proper parameter, and we can provide
example scripts for these libs. Hard-wiring them
into core Harbour is quite dangerous.
- "MAIN" function override. I'd rather leave this out,
and clear up the situation with entry procs.
- gtsln and gtcrs support.
- Watcom, OS/2, *NIX not tested.
- Built-in support for our contribs. For clear
separation of components contribs shouldn't be
referred to in this core component.
- Filtering foreign system libs passed on the command
line for platforms not needing them. The goal is to
be able to use as simple and _portable_ hbmk command
lines as possible.
- Support for POCC, DM.
; TODO:
- Switch to portable command lines in hbmk.bat files.
(Win9x will be supported again).
- Remove bin/hbmk*.bat, bin/hbmk*.cmd, util/hbmake/*.
- Cleanup on variable names in hbmk.prg.
* tests/testid.prg
* Minor cleanup.
* include/hbextern.ch
* source/rtl/seconds.c
+ implemented hb_milliseconds(). This function returns time value
from some moment in the past (not midnigth!). It does not start
to cound from zero in midnight, thus, can be safetly used to
measure time intervals.
+ tests/ticktime.c
+ Added nice test for hb_milliseconds().
Results on WinXP:
Ticks per second: 63.595
Min/avg/max interval (ms): 15.000 / 15.724 / 47.000
Loops per tick: 13035.09
Results on openSUSE on VirtualBox on WinXP:
Ticks per second: 384306.138
Min/avg/max interval (ms): 0.001 / 0.003 / 11.112
Loops per tick: 1.04
* harbour/source/common/expropt1.c
* harbour/source/common/expropt2.c
! fixed wrongly modified expression during optimization for
( <numConst> / 0.0 )
* cleaned bDec/bWidth updating in compile time optimizations
* harbour/tests/speedtst.prg
! fixed possible race condition in initialization
+ added set workarea private for xHarbour builds - thanks to Phil
* harbour/doc/cmpopt.txt
* small cleanup
* harbour/include/hbvmpub.h
* harbour/source/vm/hvm.c
% some optimizations mostly for MT mode or compilers which do
not support function autoinline optimization