diff --git a/harbour/ChangeLog b/harbour/ChangeLog index d4c2cc4b74..cfed1279d1 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,20 @@ The license applies to all entries newer than 2009-04-28. */ +2010-07-30 16:09 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + * utils/hbmk2/hbmk2.prg + ! Fixed RTE when using post-process command on systems without + implib functionality. Recent regression. + % Fixed bad performance in default -head=partial mode, which made + it slower than -head=full. Now they are on par, so maybe -head=full + should be made the default and partial mode deleted. + ; Thanks to Przemek for bug reports. + + * include/hbset.h + * include/hbgtcore.h + * include/hbapi.h + + Added some HB_EXPORT flags. + 2010-07-30 14:26 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * src/rdd/usrrdd/usrrdd.c ! Fixed to prev since new warnings appeared after the change. diff --git a/harbour/include/hbapi.h b/harbour/include/hbapi.h index d700e5f0cf..776eec1e4f 100644 --- a/harbour/include/hbapi.h +++ b/harbour/include/hbapi.h @@ -1081,8 +1081,8 @@ extern char * hb_compEncodeString( int iMethod, const char * szText, HB_SI extern char * hb_compDecodeString( int iMethod, const char * szText, HB_SIZE * pnLen ); /* misc */ -extern char * hb_procname( int iLevel, char * szName, HB_BOOL bskipBlock ); /* retrieve a procedure name into a buffer */ -extern HB_BOOL hb_procinfo( int iLevel, char * szName, HB_USHORT * puiLine, char * szFile ); +extern HB_EXPORT char * hb_procname( int iLevel, char * szName, HB_BOOL bskipBlock ); /* retrieve a procedure name into a buffer */ +extern HB_EXPORT HB_BOOL hb_procinfo( int iLevel, char * szName, HB_USHORT * puiLine, char * szFile ); /* macro compiler */ #if defined( HB_MACRO_SUPPORT ) @@ -1166,12 +1166,12 @@ extern HB_EXPORT const char * hb_osEncodeCP( const char * szName, char ** pszFre extern HB_EXPORT const char * hb_osDecodeCP( const char * szName, char ** pszFree, HB_SIZE * pnSize ); /* Convert a string received from a system call, to Harbour codepage. */ /* environment variables access */ -extern HB_BOOL hb_getenv_buffer( const char * szName, char * szBuffer, int nSize ); +extern HB_EXPORT HB_BOOL hb_getenv_buffer( const char * szName, char * szBuffer, int nSize ); /* WARNING: This returned pointer must be freed if not NULL using hb_xfree( ptr ); */ -extern char * hb_getenv( const char * name ); -extern HB_BOOL hb_setenv( const char * szName, const char * szValue ); /* set or delete (szValue==NULL) environment variable */ -extern char * hb_netname( void ); -extern char * hb_username( void ); +extern HB_EXPORT char * hb_getenv( const char * name ); +extern HB_EXPORT HB_BOOL hb_setenv( const char * szName, const char * szValue ); /* set or delete (szValue==NULL) environment variable */ +extern HB_EXPORT char * hb_netname( void ); +extern HB_EXPORT char * hb_username( void ); /* Translation related things */ diff --git a/harbour/include/hbgtcore.h b/harbour/include/hbgtcore.h index ea5d9ce83b..de3a2ce985 100644 --- a/harbour/include/hbgtcore.h +++ b/harbour/include/hbgtcore.h @@ -341,8 +341,8 @@ typedef struct _HB_GT_BASE } HB_GT_BASE, * PHB_GT_BASE, * PHB_GT; -extern PHB_GT hb_gt_Base( void ); -extern void hb_gt_BaseFree( PHB_GT pGT ); +extern HB_EXPORT PHB_GT hb_gt_Base( void ); +extern HB_EXPORT void hb_gt_BaseFree( PHB_GT pGT ); extern PHB_GT hb_gt_ItemBase( PHB_ITEM pItemGT ); extern void hb_gt_gcMark( void ); diff --git a/harbour/include/hbset.h b/harbour/include/hbset.h index 49738a1293..0fb3f19484 100644 --- a/harbour/include/hbset.h +++ b/harbour/include/hbset.h @@ -251,9 +251,9 @@ typedef enum } HB_set_listener_enum; typedef void HB_SET_LISTENER_CALLBACK( HB_set_enum, HB_set_listener_enum ); -extern int hb_setListenerAdd( HB_SET_LISTENER_CALLBACK * ); -extern void hb_setListenerNotify( HB_set_enum, HB_set_listener_enum ); -extern int hb_setListenerRemove( int ); +extern HB_EXPORT int hb_setListenerAdd( HB_SET_LISTENER_CALLBACK * ); +extern HB_EXPORT void hb_setListenerNotify( HB_set_enum, HB_set_listener_enum ); +extern HB_EXPORT int hb_setListenerRemove( int ); extern HB_EXPORT HB_BOOL hb_setGetL( HB_set_enum set_specifier ); extern HB_EXPORT const char * hb_setGetCPtr( HB_set_enum set_specifier ); diff --git a/harbour/utils/hbmk2/hbmk2.prg b/harbour/utils/hbmk2/hbmk2.prg index f48a89503d..86f4f72680 100644 --- a/harbour/utils/hbmk2/hbmk2.prg +++ b/harbour/utils/hbmk2/hbmk2.prg @@ -5829,7 +5829,9 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) IF ! Empty( cBin_Post ) cOpt_Post := StrTran( cOpt_Post, "{OB}", FNameEscape( hbmk[ _HBMK_cPROGNAME ], hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ) ) - cOpt_Post := StrTran( cOpt_Post, "{OI}", FNameEscape( l_cIMPLIBNAME, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ) ) + IF l_cIMPLIBNAME != NIL + cOpt_Post := StrTran( cOpt_Post, "{OI}", FNameEscape( l_cIMPLIBNAME, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ) ) + ENDIF cOpt_Post := AllTrim( cOpt_Post ) cCommand := cBin_Post + " " + cOpt_Post @@ -6557,7 +6559,8 @@ STATIC FUNCTION FindNewerHeaders( hbmk, cFileName, cParentDir, lSystemHeader, tT IF ( fhnd := FOpen( cFileName, FO_READ + FO_SHARED ) ) == F_ERROR RETURN .F. ENDIF - cFile := Space( 16384 ) + cFile := Space( Min( 16384, FSeek( fhnd, 0, FS_END ) ) ) + FSeek( fhnd, 0, FS_SET ) FRead( fhnd, @cFile, Len( cFile ) ) FClose( fhnd ) ENDIF