* include/Makefile
+ include/hbzlib.h
* include/hbzlib.ch
* src/rtl/Makefile
* src/rtl/hbzlib.c
+ added new C functions weakly bound with ZLIB library:
HB_SIZE hb_zlibCompressBound( HB_SIZE nLen );
HB_SIZE hb_zlibUncompressedSize( const char * pSrc, HB_SIZE nLen,
int * piResult );
int hb_zlibCompress( char * pDst, HB_SIZE * pnDst,
const char * pSrc, HB_SIZE nLen, int iLevel );
int hb_zlibUncompress( char * pDst, HB_SIZE * pnDst,
const char * pSrc, HB_SIZE nLen );
these functions can be used by any C code without forcing ZLIB liking.
If user usese in his code HB_ZCOMPRESS() function or has
REQUEST HB_ZCOMPRESS
then above funcitons are automatically bound with linked ZLIB library.
Otherwise they return 0 or HB_ZLIB_RES_UNSUPPORTED error.
* src/rdd/dbf1.c
* small code simplification
; added note about alternative numeric value rounding when
pure binary integer fields (without decimal places) are
assigned.
* src/common/hbdate.c
! added missing header for WinCE builds
* include/hbexpra.c
* minor simplification
* src/vm/macro.c
+ added new implementation for MemVarBlock() function. It's much faster
and does not force dynamic symbol table scanning on each call
* src/rtl/Makefile
- src/rtl/memvarbl.prg
- removed previous implementation of MemVarBlock()
* src/rtl/tgetint.prg
! fixed __Get() and __GetA() to return NIL when cVarName parameter
is not string (CA-Cl*pper compatible)
! fixed __GetA() to return NIL when given aIndex parameter or value
returned by variable block is not array (CA-Cl*pper compatible)
! fixed __Get() and __GetA() to use FieldWBlock() instead of manually
created macro block which didn't respect workarea
(CA-Cl*pper compatible)
! fixed __GetA() to create SET/GET block instead of access block
(CA-Cl*pper compatible)
! fixed __Get() and __GetA() to not create simple SET/GET macro
blocks but always force memvar usage (CA-Cl*pper compatible).
Please remember that
&( "DATA" )
gives code which tries to access field then memvar but
&( "DATA := .T." )
gives code which always tries to assign memvar and does not even
check if "DATA" field exists in current WA. It means that macro
compiled code like:
&( "{|_1| iif( _1 == NIL, DATA, DATA := _1 ) }" )
should not be used because gives higher priority for fields in
access operation and always assigns memvars, if necessary creating
them.
! allow to dynamically create memvars for get objects in error handler
(CA-Cl*pper compatible)
% use much faster MemVarBlock() instead of manually created codeblock
which activates dynamic symbol table scanning on each call
151 lines
2.2 KiB
Makefile
151 lines
2.2 KiB
Makefile
|
|
ROOT := ../
|
|
|
|
C_HEADERS := \
|
|
error.api \
|
|
extend.api \
|
|
filesys.api \
|
|
fm.api \
|
|
gt.api \
|
|
hbundoc.api \
|
|
item.api \
|
|
rdd.api \
|
|
vm.api \
|
|
\
|
|
clipdefs.h \
|
|
extend.h \
|
|
hbapi.h \
|
|
hbapicdp.h \
|
|
hbapicls.h \
|
|
hbapicom.h \
|
|
hbapidbg.h \
|
|
hbapierr.h \
|
|
hbapifs.h \
|
|
hbapigt.h \
|
|
hbapiitm.h \
|
|
hbapilng.h \
|
|
hbapirdd.h \
|
|
hbapistr.h \
|
|
hbassert.h \
|
|
hbatomic.h \
|
|
hbbfish.h \
|
|
hbfloat.h \
|
|
hbcdpreg.h \
|
|
hbchksum.h \
|
|
hbcomp.h \
|
|
hbcompdf.h \
|
|
hbdate.h \
|
|
hbdbf.h \
|
|
hbdbferr.h \
|
|
hbdbsort.h \
|
|
hbdefs.h \
|
|
hberrors.h \
|
|
hbexprop.h \
|
|
hbgtcore.h \
|
|
hbgtreg.h \
|
|
hbhash.h \
|
|
hbiniseg.h \
|
|
hbinit.h \
|
|
hbjson.h \
|
|
hbmacro.h \
|
|
hbmath.h \
|
|
hbmather.h \
|
|
hbmsgreg.h \
|
|
hbpcode.h \
|
|
hbpp.h \
|
|
hbrddcdx.h \
|
|
hbrdddbf.h \
|
|
hbrddfpt.h \
|
|
hbrdddel.h \
|
|
hbrddntx.h \
|
|
hbrddsdf.h \
|
|
hbrddnsx.h \
|
|
hbregex.h \
|
|
hbset.h \
|
|
hbsetup.h \
|
|
hbsocket.h \
|
|
hbstack.h \
|
|
hbsxfunc.h \
|
|
hbtask.h \
|
|
hbthread.h \
|
|
hbtrace.h \
|
|
hbtypes.h \
|
|
hbver.h \
|
|
hbvm.h \
|
|
hbvmint.h \
|
|
hbvmopt.h \
|
|
hbvmpub.h \
|
|
hbxvm.h \
|
|
hbwince.h \
|
|
hbwinuni.h \
|
|
hbzlib.h \
|
|
hbznet.h \
|
|
hb_io.h \
|
|
|
|
PRG_HEADERS := \
|
|
harbour.hbx \
|
|
hbcpage.hbx \
|
|
hblang.hbx \
|
|
hbscalar.hbx \
|
|
hbusrrdd.hbx \
|
|
\
|
|
achoice.ch \
|
|
assert.ch \
|
|
blob.ch \
|
|
box.ch \
|
|
button.ch \
|
|
color.ch \
|
|
common.ch \
|
|
dbedit.ch \
|
|
dbinfo.ch \
|
|
dbstruct.ch \
|
|
directry.ch \
|
|
error.ch \
|
|
fileio.ch \
|
|
getexit.ch \
|
|
hb.ch \
|
|
hbclass.ch \
|
|
hbcom.ch \
|
|
hbdebug.ch \
|
|
hbdyn.ch \
|
|
hbextcdp.ch \
|
|
hbextern.ch \
|
|
hbextlng.ch \
|
|
hbgfx.ch \
|
|
hbgfxdef.ch \
|
|
hbgtinfo.ch \
|
|
hbhash.ch \
|
|
hbhrb.ch \
|
|
hbinkey.ch \
|
|
hblang.ch \
|
|
hblpp.ch \
|
|
hbmacro.ch \
|
|
hbmath.ch \
|
|
hbmemory.ch \
|
|
hbmemvar.ch \
|
|
hboo.ch \
|
|
hbpers.ch \
|
|
hbsetup.ch \
|
|
hbsix.ch \
|
|
hbsocket.ch \
|
|
hbstdgen.ch \
|
|
hbstrict.ch \
|
|
hbsxdef.ch \
|
|
hbthread.ch \
|
|
hbtrace.ch \
|
|
hbusrrdd.ch \
|
|
hbver.ch \
|
|
hbzlib.ch \
|
|
inkey.ch \
|
|
memoedit.ch \
|
|
ord.ch \
|
|
rddsys.ch \
|
|
reserved.ch \
|
|
set.ch \
|
|
setcurs.ch \
|
|
simpleio.ch \
|
|
std.ch \
|
|
tbrowse.ch \
|
|
|
|
include $(TOP)$(ROOT)config/header.mk
|