* contrib/hbmisc/Makefile
* contrib/hbmisc/blinker.prg
+ contrib/hbmisc/blinker.ch
! Fixed BLICPUREL().
+ Added blinker.ch header. This contains some stuff missing
from original Blinker and some runtime mockup/emulation for
following linker commands:
BLINKER EXECUTABLE SERIAL <"String"> /* Harbour needs double quotes around the string */
BLINKER DEMONSTRATION DATE <YYYYDDMM>
BLINKER DEMONSTRATION MINUTES <minute>
* src/rtl/tgetlist.prg
* Minor formatting.
* contrib/hbmisc/Makefile
+ contrib/hbmisc/blinker.prg
+ Added Blinker compatible functions.
Not tested functionally. Many of the functions are dummies, since
many of them is highly MS-DOS specific, but they should help
porting Clipper apps.
+ Added extra functions to control link-time burn in of some
values in original Blinker. In Harbour they can be set using
these function calls, f.e. called from an INIT PROC:
HB_BLIVERNUM( cString )
HB_BLIDEMDTE( dDate )
HB_BLIDEMMIN( nValue )
* include/hbmemory.ch
! Typo in comment.
* contrib/hbpgsql/postgres.c
! PQESCAPEBYTEA(): Fixed wrong size casts.
! PQESCAPEBYTEA(): Fixed to return string with correct length.
+ PQESCAPEBYTEA(), PQUNESCAPEBYTEA(): Will now RTE if parameter is not string.
(to be in sync with PQESCAPEBYTEACONN())
! PQESCAPEBYTEACONN(): Fixed to return string with correct length.
* utils/hbmk2/hbmk2.prg
* Minor cleanup to use native pathseps in hb_FileExists() call.
* bin/postinst.bat
! Fixed missing '\' when forming PGSQL .dll path.
* contrib/hbssl/ssl.c
* contrib/hbssl/x509.c
* contrib/hbssl/sslctx.c
! Attempt to fix compilation error using 0.9.8m and 1.0.0betas.
* config/detect.mk
+ Enabled OpenSSL for bcc. I'm not exactly sure what is the factor here,
it used to work once, then it didn't, now it works again. Maybe related
to OpenSSL version. Now tested with 0.9.8m.
+ Enabled OpenSSL for watcom. Same as above, maybe 1.8 fixed it, maybe
new OpenSSL version. Maybe someone will invest time to find out.
! Disabled OpenSSL for wce platform. Again, the exact circumstances
are shady, but even 0.9.8m needs errno.h, which is not present
in C compilers targeting WinCE.
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/gtwvg.h
* contrib/gtwvg/wvgcuig.c
* contrib/gtwvg/wvggui.h
! Further cleanup to OLE usage and related headers.
! Deleted some unnecessary headers.
* harbour/src/vm/hvmall.c
* harbour/include/hbstack.h
* reactivated for tests inline ASM code which can be used to access
HVM stack pointer in MT HVM builds. It can be enabled in 32bit
desktop windows Harbour builds by setting HB_ASM_TLS build time macro.
* harbour/src/vm/hvmall.c
! added missing HB_STACK_PRELOAD - the performance of MT HVM
on C compilers/platforms which do not support C thread local
variables was hardly reduce due to missing above macro, i.e.
MinGW builds
* contrib/hbide/resources/panel_8.png
+ contrib/hbide/resources/toolsutilities.ui
+ contrib/hbide/resources/toolsutilities.uic
+ Added one more dialog to interface "Tools & Utilities" implementation.
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.hbp
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/idedocwriter.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/ideharbourhelp.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideobject.prg
* contrib/hbide/idesaveload.prg
* contrib/hbide/ideskeletons.prg
* contrib/hbide/idesources.prg
* contrib/hbide/idestylesheets.prg
* contrib/hbide/idethemes.prg
* contrib/hbide/idetools.prg
+ Implemented: "Tools & Utilities" option.
It can be invoked via a new top-toolbar icon with two components,
1) Click the icon itself to define a tool,
2) Select from icon's drop-down list to execute.
The execution is also available from within its interface <Execute> button.
! Reworked: "Panels" interface. Now it is a toolbar icon with drop-down menu.
This interface is much-more elegant and effective in operations.
+ Implemented: auto-saving a source in the background.
Legend: after every minute the contents of the source are inspected,
if the source is modified, it is saved with ".tmp" extension
concating after its original name. c:\x\my.prg => c:\x\my.prg.tmp
if application exits normally, theis temp file is deleted,
the same is done with every "SAve" invocation.
if at next run, this file is detected, it is asked to replace the
original one.
+ Introduced: again, the animated controls, i.e., gradients on the menus, toolbars, etc,
but are controlled via "Toggle Animation" option in the "View" sub-menu of main menu.
This implementation is not made persistent, need to hera from you.
! Removed: "Always_On_Top" flag of Harbour Splash Screen. It was causing that in case
of startup error, or info rendering, user was unable to view the same.
. Back to the pavilion, after a tiring outing. So I could not compile
all the changes I did before leaving, so please be patient if something goes weired.
* harbour/include/hbsetup.h
+ use FORCEINLINE defined in compiler header files
* harbour/src/vm/fm.c
* do not redefine FORCEINLINE if it's already defined in compiler
header files
* harbour/include/hbsetup.h
+ added HB_FORCEINLINE macro
* harbour/include/hbatomic.h
* use HB_FORCEINLINE instead of _HB_INLINE_
* harbour/src/vm/fm.c
* define for DLMALLOC FORCEINLINE macro as HB_FORCEINLINE
* harbour/src/vm/dlmalloc.c
* removed some cleanup in FORCEINLINE declaration and _HB_INLINE_
usage reducing number of local Harbour modifications.
* include/hbapirdd.h
! Typos in comments.
* contrib/hbct/print.c
+ Rewritten PRINTREADY() to work on all platforms the core
supports.
* contrib/sddoci/sddoci.c
+ Added 'nullable' flag support. By the name it's right,
but it's foggy which flag constants belong to which
structure and rdd code suggest this flag does something
else depsite the name. Pls look at it.
* harbour/contrib/hbbz2/hbbz2.c
* use hb_xalloc()/hb_xfree() inside BZIP2 code to allocate/free memory
! added protection against 32-bit memory buffer overflow.
It also fixed warnings on platforms where HB_SIZE is 32bit value.
* harbour/include/hbatomic.h
* removed unnecessary parenthesis
* renamed HB_SPINLOCK_INIT_R macro to HB_SPINLOCK_INITVAL_R
+ added HB_SPINLOCK_INIT_R(l) macro
* harbour/src/vm/fm.c
* harbour/src/vm/dlmalloc.c
+ updated to DLMALLOC 2.8.4
* added OS2 support from our previous DLMALLOC version
+ updated to use our own recursive locks when available
* disabled hack which breaks strict aliasing
! added some fixes to new DLMALLOC code
TODO: Test it with MSVC win and wince builds and add _MSC_VER
based protection for __forceinline usage (I do not know
in which MSVC version it was added).
Test it with OS2 GCC and OpenWatcom builds.
Test it Darwin and some other *nixes.
* harbour/contrib/sddfb/sddfb.c
! fixed missing reference operator in isc_detach_database()
! fixed NULL used to clear connection handles
* keep references to connection handlers passed to isc_*() functions
* minor formatting
* contrib/sddmy/tests/hbmk.hbm
+ contrib/sddfb/tests
+ contrib/sddfb/tests/hbmk.hbm
+ contrib/sddpg/tests
+ contrib/sddpg/tests/hbmk.hbm
* contrib/sddsqlt3/tests/hbmk.hbm
* contrib/sddoci/tests/hbmk.hbm
+ Added missing tests dirs. It would be great to add some
test.prg's otherwise it's pretty hard to test these
libs.
! Sync tests dir .hbm option with rest of contribs.
* contrib/sddmy/tests/test1.prg
! Fixed warning to compile with now std strict make options.
* harbour/contrib/rddsql/hbrddsql.h
* harbour/contrib/rddsql/sqlbase.c
* harbour/contrib/rddsql/sddfb/sddfb.c
* harbour/contrib/rddsql/sddmy/sddmy.c
* harbour/contrib/rddsql/sddoci/sddoci.c
* harbour/contrib/rddsql/sddodbc/sddodbc.c
* harbour/contrib/rddsql/sddpg/sddpg.c
* harbour/contrib/rddsql/sddsqlt3/sddsqlt3.c
* moved SDD backed specific data from SQLCONNECTION and SQLAREA
to a separate SDDCONN and SDDDATA structures. This helps to
avoid fake type casting and warinings like "break
strict-aliasing rules".
* 1 -> HB_TRUE
* formatting, style
! connection array is now array of connection pointers. This
fixes GPF if many connections are created and connection
table has to be reallocated
* utils/hbmk2/hbmk2.prg
! Fixed implib internal flag handling for msvc targets.
! Fixed path format conversion in implib parameters.
+ Added support for filters, macros for implib creation parameters.
* utils/hbmk2/hbmk2.prg
+ Added -trace support to -mkimplib option.
* Variables renamed in new code.
- examples/hbdoc
- examples/hbmsql
- Deleted two obsolete components:
- hbmsql is not available freely anymore and was not tested
or update since many years. Check hbmysql and hbsqlit3 for
alternatives.
- hbdoc was superceded by hbdoc2.
* utils/hbmk2/hbmk2.prg
+ Added undocumented '-mkimplibms' option to allow for users
to make bcc implib happy for some .dlls (translated to
-a implib.exe option). Ugly solution, needed because bcc
chose not to follow standards.
* bin/postinst.bat
+ Some adjustments to hbmk2-based implib generation cmdlines.
+ Added exception to use static ocilibs with mingw.
* bin/postinst.bat
- bin/hb-mkimp.prg
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
+ Switched HB_BUILD_IMPLIB build option to use hbmk2
to create implibs instead of local solution (hb-mkimp.prg).
Note, this means that implibs will now always be
created dynamically from .dll, even when a package
offers pre-built .lib for the compiler. This will
in practice cause a change msvc and pocc compilers.
This also means that from now on it's enough to have
the .dll to create implibs.
It's also easier for users to create implibs using
hbmk2 any time, so it's possible that HB_BUILD_IMPLIB
build-time option will be deleted in the future.
; Not tested yet.
* utils/hbmk2/hbmk2.prg
+ Added experimental -mkimplib= option to "convert" .dll
files into import libraries. Syntax tentative.
; TODO: Support for idiotic -a Borland C implib option.
If anyone has an idea how to detect when to use
-a and when not, I will implement it. If not,
I will most probably drop maintaining -a option
for bcc and leave it off. This leaves implibs
working for most .dlls we currently use, but will
break some (blat, curl, cairo, pq, alleg from
contrib).
* config/win/xcc.mk
* utils/hbmk2/hbmk2.prg
! Fixed to use case-correct filenames for xcc tools.
* bin/hb-mkimp.prg
+ Added msvcia64, msvcarm, xcc support.
! Fixed few library specs for msvc*.
* FS_ERROR -> F_ERROR
! Fixed handling spaces inside dll name for msvc*.
! Fixed handling non .dll extension for msvc*.
* harbour/src/rtl/teditor.prg
! Fixing MemoEdit parameter calculation: nTextBuffRow, nWindowColumn.
Procedure Main()
Cls
// Put 5 in the 5 position and next BS to change.
? MemoEdit( "123",,, MaxRow(), MaxCol(),,,,,, 5 )
Wait
* harbour/src/macro/macro.y
+ added support for
<alias> -> &( <exp> )
in macrocompiler
* harbour/src/macro/macro.yyc
* regenerated for new grammar rules
* bin/hb-mkimp.prg
+ Finished, tested. This version also adds pocc64 support.
It also gives proper feedback.
* INSTALL
* bin/postinst.bat
- bin/hb-mkimp.bat
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
+ Switched to use hb-mkimp.prg instead of .bat.
25KB less of non-portable .bat file in Harbour SVN.
Remains only ~100 lines of .bat stuff in core parts.
+ Deleted GNU Sed requirement.
+ Lifted Windows NT requirement for implib creation.
+ Lifted NT shell requirement for implib creation.
+ bin/hb-mkimp.prg
+ Added .prg rewrite for implib generation. This highly
reduces redundancy, drops WinNT and GNU Sed tool
requirement, further lowers the amount of non-portable
batch sources in SVN. It also opens the door to add
automatic implib generation in tools like hbmk2.
Not yet tested.
* bin/postinst.bat
% Minor cleanup.
* bin/hb-mkimp.bat
* Rearrangement.
* utils/hbmk2/hbmk2.prg
! Typo on comment.
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.prg
* contrib/hbide/idefunctions.prg
* contrib/hbide/idesaveload.prg
+ Implemented: auto-loading the last "Re-tagged" functions
prototype. It may take some time but it is done at the
background, so user will never experience the difference.
You can start working on any other aspect of hbIDE.
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/idesources.prg
+ Implemented: auto-save the project's source(s) at "build" time,
if some are modified.
This is implemented by default, no options.
Regression is possible, please report.
* harbour/bin/postinst.bat
! fixed to not override hbrun if HB_BUILD_SHARED == "yes"
* harbour/ChangeLog
! fixed date
* harbour/contrib/hbsqlit3/hbsqlit3.c
! fixed usage hb_fsNameConv in SQLITE3_TEMP_DIRECTORY
* contrib/hbide/hbide.hbp
+ Added idewizard.prg
* contrib/hbide/hbide.prg
! Postponed destruction of QSplashScreen(),
always producing GPF on OS2, to take care of by Qt itself.
* contrib/hbide/idedocks.prg
! Fix to *nixs warning
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockHelp", which already has a layout
and family.
+ contrib/hbide/idewizard.prg
+ Preparations for globalization of hbIDE for Xbase world.