diff --git a/harbour/ChangeLog b/harbour/ChangeLog index f9e5a7dbea..83d26da36d 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,22 @@ The license applies to all entries newer than 2009-04-28. */ +2010-08-03 16:46 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + + contrib/hbct/hbct.hbx + + Added automatically generated extern puller code. + + * contrib/hbct/ctextern.prg + * contrib/hbct/ctextern.ch + * Changed to simply include hbct.hbx for backward compatibility. + + * contrib/make.hbs + ! Fixed to exclude HB_GT_*_DEFAULT symbols. + ! Fixed RTE for projects which have no output name, f.e. + because they are unsupported on given platform/compiler. + + ; NOTE: libname.hbx is not good as if compiled the object name + will collide with often used libname.prg. + 2010-08-03 16:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * contrib/make.hbs + Will now automatically generate EXTERN lists for libs if diff --git a/harbour/contrib/hbct/ctextern.ch b/harbour/contrib/hbct/ctextern.ch index 99c2a517f7..e4f2d9966a 100644 --- a/harbour/contrib/hbct/ctextern.ch +++ b/harbour/contrib/hbct/ctextern.ch @@ -51,381 +51,4 @@ * */ -#ifndef HB_CTEXTERN_CH_ -#define HB_CTEXTERN_CH_ - -EXTERNAL _HB_CTDSPTIME -EXTERNAL ACOS -EXTERNAL ADDASCII -EXTERNAL ADDMONTH -EXTERNAL AFTERATNUM -EXTERNAL ALLOFREE -EXTERNAL ASCIISUM -EXTERNAL ASCPOS -EXTERNAL ASIN -EXTERNAL ATADJUST -EXTERNAL ATAN -EXTERNAL ATN2 -EXTERNAL ATNUM -EXTERNAL ATREPL -EXTERNAL ATTOKEN -EXTERNAL BEFORATNUM -EXTERNAL BITTOC -EXTERNAL BLANK -EXTERNAL BOM -EXTERNAL BOQ -EXTERNAL BOY -EXTERNAL CEILING -EXTERNAL CELSIUS -EXTERNAL CENTER -EXTERNAL CHARADD -EXTERNAL CHARAND -EXTERNAL CHAREVEN -EXTERNAL CHARHIST -EXTERNAL CHARLIST -EXTERNAL CHARMIRR -EXTERNAL CHARMIX -EXTERNAL CHARNOLIST -EXTERNAL CHARNOT -EXTERNAL CHARODD -EXTERNAL CHARONE -EXTERNAL CHARONLY -EXTERNAL CHAROR -EXTERNAL CHARPACK -EXTERNAL CHARPIX -EXTERNAL CHARRELA -EXTERNAL CHARRELREP -EXTERNAL CHARREM -EXTERNAL CHARREPL -EXTERNAL CHARRLL -EXTERNAL CHARRLR -EXTERNAL CHARSHL -EXTERNAL CHARSHR -EXTERNAL CHARSLIST -EXTERNAL CHARSORT -EXTERNAL CHARSPREAD -EXTERNAL CHARSUB -EXTERNAL CHARSWAP -EXTERNAL CHARUNPACK -EXTERNAL CHARWIN -EXTERNAL CHARXOR -EXTERNAL CHECKSUM -EXTERNAL CLEARBIT -EXTERNAL CLEAREOL -EXTERNAL CLEARSLOW -EXTERNAL CLEARWIN -EXTERNAL CLEOL -EXTERNAL CLWIN -EXTERNAL COLORREPL -EXTERNAL COLORTON -EXTERNAL COLORWIN -EXTERNAL COM_BREAK -EXTERNAL COM_CLOSE -EXTERNAL COM_COUNT -EXTERNAL COM_CRC -EXTERNAL COM_CTS -EXTERNAL COM_DCD -EXTERNAL COM_DEVNAME -EXTERNAL COM_DOSCON -EXTERNAL COM_DSR -EXTERNAL COM_DTR -EXTERNAL COM_ERRCHR -EXTERNAL COM_EVENT -EXTERNAL COM_FLUSH -EXTERNAL COM_GETIO -EXTERNAL COM_GETIRQ -EXTERNAL COM_HARD -EXTERNAL COM_INIT -EXTERNAL COM_KEY -EXTERNAL COM_LSR -EXTERNAL COM_MCR -EXTERNAL COM_MSR -EXTERNAL COM_NUM -EXTERNAL COM_OPEN -EXTERNAL COM_READ -EXTERNAL COM_REMOTE -EXTERNAL COM_RING -EXTERNAL COM_RTS -EXTERNAL COM_SCOUNT -EXTERNAL COM_SEND -EXTERNAL COM_SETIO -EXTERNAL COM_SETIRQ -EXTERNAL COM_SFLUSH -EXTERNAL COM_SKEY -EXTERNAL COM_SMODE -EXTERNAL COM_SOFT -EXTERNAL COM_SOFT_R -EXTERNAL COM_SOFT_S -EXTERNAL COMPLEMENT -EXTERNAL COS -EXTERNAL COSH -EXTERNAL COT -EXTERNAL COUNTGETS -EXTERNAL COUNTLEFT -EXTERNAL COUNTRIGHT -EXTERNAL CRYPT -EXTERNAL CTCEXIT -EXTERNAL CTCINIT -EXTERNAL CTEXIT -EXTERNAL CTINIT -EXTERNAL CTOBIT -EXTERNAL CTODOW -EXTERNAL CTOF -EXTERNAL CTOMONTH -EXTERNAL CTON -EXTERNAL CTWINIT -EXTERNAL CTWLASTKEY -EXTERNAL CURRENTGET -EXTERNAL CSETARGERR -EXTERNAL CSETATMUPA -EXTERNAL CSETCENT -EXTERNAL CSETCURS -EXTERNAL CSETKEY -EXTERNAL CSETREF -EXTERNAL CSETSAFETY -EXTERNAL DAYSINMONTH -EXTERNAL DAYSTOMONTH -EXTERNAL DBFSIZE -EXTERNAL DELETEFILE -EXTERNAL DIRMAKE -EXTERNAL DIRNAME -EXTERNAL DMY -EXTERNAL DOSPARAM -EXTERNAL DOY -EXTERNAL DRIVETYPE -EXTERNAL DSETKBIOS -EXTERNAL DTOR -EXTERNAL ENHANCED -EXTERNAL EOM -EXTERNAL EOQ -EXTERNAL EOY -EXTERNAL EXENAME -EXTERNAL EXPAND -EXTERNAL EXPONENT -EXTERNAL FACT -EXTERNAL FAHRENHEIT -EXTERNAL FIELDDECI -EXTERNAL FIELDNUM -EXTERNAL FIELDSIZE -EXTERNAL FILEAPPEND -EXTERNAL FILEATTR -EXTERNAL FILECCLOSE -EXTERNAL FILECCONT -EXTERNAL FILECDATI -EXTERNAL FILECOPEN -EXTERNAL FILECOPY -EXTERNAL FILEDATE -EXTERNAL FILEDELETE -EXTERNAL FILEMOVE -EXTERNAL FILESCREEN -EXTERNAL FILESEEK -EXTERNAL FILESIZE -EXTERNAL FILESMAX -EXTERNAL FILESTR -EXTERNAL FILETIME -EXTERNAL FLOOR -EXTERNAL FTOC -EXTERNAL FV -EXTERNAL GETCLEARA -EXTERNAL GETCLEARB -EXTERNAL GETFLDCOL -EXTERNAL GETFLDROW -EXTERNAL GETFLDVAR -EXTERNAL GETINPUT -EXTERNAL GETKXLAT -EXTERNAL GETPREC -EXTERNAL GETSECRET -EXTERNAL HBCT_MAXCOL -EXTERNAL HBCT_MAXROW -EXTERNAL INFINITY -EXTERNAL INTNEG -EXTERNAL INTPOS -EXTERNAL INVERTATTR -EXTERNAL INVERTWIN -EXTERNAL ISBIT -EXTERNAL ISLEAP -EXTERNAL JUSTLEFT -EXTERNAL JUSTRIGHT -EXTERNAL KBDSTAT -EXTERNAL KEYSEC -EXTERNAL KEYTIME -EXTERNAL KSETCAPS -EXTERNAL KSETINS -EXTERNAL KSETNUM -EXTERNAL KSETSCROLL -EXTERNAL LASTDAYOM -EXTERNAL LIKE -EXTERNAL LOG10 -EXTERNAL LTOC -EXTERNAL LTON -EXTERNAL MANTISSA -EXTERNAL MAXLINE -EXTERNAL MDY -EXTERNAL MILLISEC -EXTERNAL NETCANCEL -EXTERNAL NETDISK -EXTERNAL NETPRINTER -EXTERNAL NETREDIR -EXTERNAL NETRMTNAME -EXTERNAL NETWORK -EXTERNAL NNETWORK -EXTERNAL NTOC -EXTERNAL NTOCDOW -EXTERNAL NTOCMONTH -EXTERNAL NTOCOLOR -EXTERNAL NUL -EXTERNAL NUMAND -EXTERNAL NUMAT -EXTERNAL NUMCOUNT -EXTERNAL NUMDISKL -EXTERNAL NUMHIGH -EXTERNAL NUMLINE -EXTERNAL NUMLOW -EXTERNAL NUMMIRR -EXTERNAL NUMNOT -EXTERNAL NUMOR -EXTERNAL NUMROL -EXTERNAL NUMTOKEN -EXTERNAL NUMXOR -EXTERNAL PADLEFT -EXTERNAL PADRIGHT -EXTERNAL PAYMENT -EXTERNAL PERIODS -EXTERNAL PI -EXTERNAL POSALPHA -EXTERNAL POSCHAR -EXTERNAL POSDEL -EXTERNAL POSDIFF -EXTERNAL POSEQUAL -EXTERNAL POSINS -EXTERNAL POSLOWER -EXTERNAL POSRANGE -EXTERNAL POSREPL -EXTERNAL POSUPPER -EXTERNAL PRINTREADY -EXTERNAL PRINTSEND -EXTERNAL PRINTSTAT -EXTERNAL PV -EXTERNAL QUARTER -EXTERNAL RAND -EXTERNAL RANDOM -EXTERNAL RANGEREM -EXTERNAL RANGEREPL -EXTERNAL RATE -EXTERNAL REMALL -EXTERNAL REMLEFT -EXTERNAL REMRIGHT -EXTERNAL RENAMEFILE -EXTERNAL REPLALL -EXTERNAL REPLLEFT -EXTERNAL REPLRIGHT -EXTERNAL RESTCURSOR -EXTERNAL RESTGETS -EXTERNAL RESTSETKEY -EXTERNAL RESTTOKEN -EXTERNAL RTOD -EXTERNAL SAVECURSOR -EXTERNAL SAVEGETS -EXTERNAL SAVESETKEY -EXTERNAL SAVETOKEN -EXTERNAL SAYDOWN -EXTERNAL SAYMOVEIN -EXTERNAL SAYSCREEN -EXTERNAL SAYSPREAD -EXTERNAL SCREENATTR -EXTERNAL SCREENFILE -EXTERNAL SCREENMARK -EXTERNAL SCREENMIX -EXTERNAL SCREENSTR -EXTERNAL SCREENTEXT -EXTERNAL SECTOTIME -EXTERNAL SETATLIKE -EXTERNAL SETBIT -EXTERNAL SETCLEARA -EXTERNAL SETCLEARB -EXTERNAL SETDATE -EXTERNAL SETFATTR -EXTERNAL SETFCREATE -EXTERNAL SETFDATI -EXTERNAL SETFONT -EXTERNAL SETKXLAT -EXTERNAL SETLASTKEY -EXTERNAL SETPREC -EXTERNAL SETRC -EXTERNAL SETTIME -EXTERNAL SHOWTIME -EXTERNAL SIGN -EXTERNAL SIN -EXTERNAL SINH -EXTERNAL STANDARD -EXTERNAL STRDIFF -EXTERNAL STRFILE -EXTERNAL STRSCREEN -EXTERNAL STRSWAP -EXTERNAL TABEXPAND -EXTERNAL TABPACK -EXTERNAL TAN -EXTERNAL TANH -EXTERNAL TEMPFILE -EXTERNAL TIMETOSEC -EXTERNAL TIMEVALID -EXTERNAL TOKEN -EXTERNAL TOKENAT -EXTERNAL TOKENEND -EXTERNAL TOKENEXIT -EXTERNAL TOKENINIT -EXTERNAL TOKENLOWER -EXTERNAL TOKENNEXT -EXTERNAL TOKENNUM -EXTERNAL TOKENSEP -EXTERNAL TOKENUPPER -EXTERNAL TRUENAME -EXTERNAL UNSELECTED -EXTERNAL UNTEXTWIN -EXTERNAL VALPOS -EXTERNAL VGAPALETTE -EXTERNAL VIDEOTYPE -EXTERNAL VOLSERIAL -EXTERNAL VOLUME -EXTERNAL WACLOSE -EXTERNAL WAITPERIOD -EXTERNAL WBOARD -EXTERNAL WBOX -EXTERNAL WCENTER -EXTERNAL WCLOSE -EXTERNAL WCOL -EXTERNAL WEEK -EXTERNAL WFCOL -EXTERNAL WFLASTCOL -EXTERNAL WFLASTROW -EXTERNAL WFORMAT -EXTERNAL WFROW -EXTERNAL WHIDE -EXTERNAL WLASTCOL -EXTERNAL WLASTROW -EXTERNAL WLEVEL -EXTERNAL WMODE -EXTERNAL WMOVE -EXTERNAL WNUM -EXTERNAL WOM -EXTERNAL WOPEN -EXTERNAL WORDONE -EXTERNAL WORDONLY -EXTERNAL WORDREM -EXTERNAL WORDREPL -EXTERNAL WORDSWAP -EXTERNAL WORDTOCHAR -EXTERNAL WROW -EXTERNAL WSELECT -EXTERNAL WSETMOVE -EXTERNAL WSETSHADOW -EXTERNAL WSHADOW -EXTERNAL WSHOW -EXTERNAL WSTEP -EXTERNAL XMOBLOCK -EXTERNAL XMOCHECK -EXTERNAL XTOC -EXTERNAL ZEROINSERT -EXTERNAL ZEROREMOVE - -#endif /* HB_CTEXTERN_CH_ */ +#include "hbct.hbx" diff --git a/harbour/contrib/hbct/ctextern.prg b/harbour/contrib/hbct/ctextern.prg index 83c631aded..291112f15e 100644 --- a/harbour/contrib/hbct/ctextern.prg +++ b/harbour/contrib/hbct/ctextern.prg @@ -50,5 +50,4 @@ * */ -ANNOUNCE __HBCT_EXTERN__ -#include "ctextern.ch" +#include "hbct.hbx" diff --git a/harbour/contrib/hbct/hbct.hbx b/harbour/contrib/hbct/hbct.hbx new file mode 100644 index 0000000000..f75c9244ac --- /dev/null +++ b/harbour/contrib/hbct/hbct.hbx @@ -0,0 +1,392 @@ +/* + * $Id$ + */ + +/* -------------------------------------------------------------------- */ +/* WARNING: Automatically generated code. DO NOT EDIT! */ +/* Regenerate with HB_REBUILD_EXTERN=yes while using GCC */ +/* compiler family. */ +/* -------------------------------------------------------------------- */ + +#ifndef __HBEXTERN__HBCT__ +#define __HBEXTERN__HBCT__ + +ANNOUNCE __HBCT_EXTERN__ + +EXTERNAL ACOS +EXTERNAL ADDASCII +EXTERNAL ADDMONTH +EXTERNAL AFTERATNUM +EXTERNAL ALLOFREE +EXTERNAL ASCIISUM +EXTERNAL ASCPOS +EXTERNAL ASIN +EXTERNAL ATADJUST +EXTERNAL ATAN +EXTERNAL ATN2 +EXTERNAL ATNUM +EXTERNAL ATREPL +EXTERNAL ATTOKEN +EXTERNAL BEFORATNUM +EXTERNAL BITTOC +EXTERNAL BLANK +EXTERNAL BOM +EXTERNAL BOQ +EXTERNAL BOY +EXTERNAL CEILING +EXTERNAL CELSIUS +EXTERNAL CENTER +EXTERNAL CHARADD +EXTERNAL CHARAND +EXTERNAL CHAREVEN +EXTERNAL CHARHIST +EXTERNAL CHARLIST +EXTERNAL CHARMIRR +EXTERNAL CHARMIX +EXTERNAL CHARNOLIST +EXTERNAL CHARNOT +EXTERNAL CHARODD +EXTERNAL CHARONE +EXTERNAL CHARONLY +EXTERNAL CHAROR +EXTERNAL CHARPACK +EXTERNAL CHARPIX +EXTERNAL CHARRELA +EXTERNAL CHARRELREP +EXTERNAL CHARREM +EXTERNAL CHARREPL +EXTERNAL CHARRLL +EXTERNAL CHARRLR +EXTERNAL CHARSHL +EXTERNAL CHARSHR +EXTERNAL CHARSLIST +EXTERNAL CHARSORT +EXTERNAL CHARSPREAD +EXTERNAL CHARSUB +EXTERNAL CHARSWAP +EXTERNAL CHARUNPACK +EXTERNAL CHARWIN +EXTERNAL CHARXOR +EXTERNAL CHECKSUM +EXTERNAL CLEARBIT +EXTERNAL CLEAREOL +EXTERNAL CLEARSLOW +EXTERNAL CLEARWIN +EXTERNAL CLEOL +EXTERNAL CLWIN +EXTERNAL COLORREPL +EXTERNAL COLORTON +EXTERNAL COLORWIN +EXTERNAL COMPLEMENT +EXTERNAL COM_BREAK +EXTERNAL COM_CLOSE +EXTERNAL COM_COUNT +EXTERNAL COM_CRC +EXTERNAL COM_CTS +EXTERNAL COM_DCD +EXTERNAL COM_DEVNAME +EXTERNAL COM_DOSCON +EXTERNAL COM_DSR +EXTERNAL COM_DTR +EXTERNAL COM_ERRCHR +EXTERNAL COM_EVENT +EXTERNAL COM_FLUSH +EXTERNAL COM_GETIO +EXTERNAL COM_GETIRQ +EXTERNAL COM_HARD +EXTERNAL COM_INIT +EXTERNAL COM_KEY +EXTERNAL COM_LSR +EXTERNAL COM_MCR +EXTERNAL COM_MSR +EXTERNAL COM_NUM +EXTERNAL COM_OPEN +EXTERNAL COM_READ +EXTERNAL COM_REMOTE +EXTERNAL COM_RING +EXTERNAL COM_RTS +EXTERNAL COM_SCOUNT +EXTERNAL COM_SEND +EXTERNAL COM_SETIO +EXTERNAL COM_SETIRQ +EXTERNAL COM_SFLUSH +EXTERNAL COM_SKEY +EXTERNAL COM_SMODE +EXTERNAL COM_SOFT +EXTERNAL COM_SOFT_R +EXTERNAL COM_SOFT_S +EXTERNAL COS +EXTERNAL COSH +EXTERNAL COT +EXTERNAL COUNTGETS +EXTERNAL COUNTLEFT +EXTERNAL COUNTRIGHT +EXTERNAL CRYPT +EXTERNAL CSETARGERR +EXTERNAL CSETATMUPA +EXTERNAL CSETCENT +EXTERNAL CSETCURS +EXTERNAL CSETKEY +EXTERNAL CSETREF +EXTERNAL CSETSAFETY +EXTERNAL CTCEXIT +EXTERNAL CTCINIT +EXTERNAL CTEXIT +EXTERNAL CTINIT +EXTERNAL CTOBIT +EXTERNAL CTODOW +EXTERNAL CTOF +EXTERNAL CTOMONTH +EXTERNAL CTON +EXTERNAL CTWINIT +EXTERNAL CTWLASTKEY +EXTERNAL CURRENTGET +EXTERNAL DAYSINMONTH +EXTERNAL DAYSTOMONTH +EXTERNAL DBFSIZE +EXTERNAL DELETEFILE +EXTERNAL DIRMAKE +EXTERNAL DIRNAME +EXTERNAL DMY +EXTERNAL DOSPARAM +EXTERNAL DOY +EXTERNAL DRIVETYPE +EXTERNAL DSETKBIOS +EXTERNAL DTOR +EXTERNAL ENHANCED +EXTERNAL EOM +EXTERNAL EOQ +EXTERNAL EOY +EXTERNAL EXENAME +EXTERNAL EXPAND +EXTERNAL EXPONENT +EXTERNAL FACT +EXTERNAL FAHRENHEIT +EXTERNAL FIELDDECI +EXTERNAL FIELDNUM +EXTERNAL FIELDSIZE +EXTERNAL FILEAPPEND +EXTERNAL FILEATTR +EXTERNAL FILECCLOSE +EXTERNAL FILECCONT +EXTERNAL FILECDATI +EXTERNAL FILECOPEN +EXTERNAL FILECOPY +EXTERNAL FILEDATE +EXTERNAL FILEDELETE +EXTERNAL FILEMOVE +EXTERNAL FILESCREEN +EXTERNAL FILESEEK +EXTERNAL FILESIZE +EXTERNAL FILESMAX +EXTERNAL FILESTR +EXTERNAL FILETIME +EXTERNAL FLOOR +EXTERNAL FTOC +EXTERNAL FV +EXTERNAL GETCLEARA +EXTERNAL GETCLEARB +EXTERNAL GETFLDCOL +EXTERNAL GETFLDROW +EXTERNAL GETFLDVAR +EXTERNAL GETINPUT +EXTERNAL GETKXLAT +EXTERNAL GETPREC +EXTERNAL GETSECRET +EXTERNAL HBCT_MAXCOL +EXTERNAL HBCT_MAXROW +EXTERNAL HB_GT_CTW +EXTERNAL INFINITY +EXTERNAL INTNEG +EXTERNAL INTPOS +EXTERNAL INVERTATTR +EXTERNAL INVERTWIN +EXTERNAL ISBIT +EXTERNAL ISLEAP +EXTERNAL JUSTLEFT +EXTERNAL JUSTRIGHT +EXTERNAL KBDSTAT +EXTERNAL KEYSEC +EXTERNAL KEYTIME +EXTERNAL KSETCAPS +EXTERNAL KSETINS +EXTERNAL KSETNUM +EXTERNAL KSETSCROLL +EXTERNAL LASTDAYOM +EXTERNAL LIKE +EXTERNAL LOG10 +EXTERNAL LTOC +EXTERNAL LTON +EXTERNAL MANTISSA +EXTERNAL MAXLINE +EXTERNAL MDY +EXTERNAL MILLISEC +EXTERNAL NETCANCEL +EXTERNAL NETDISK +EXTERNAL NETPRINTER +EXTERNAL NETREDIR +EXTERNAL NETRMTNAME +EXTERNAL NETWORK +EXTERNAL NNETWORK +EXTERNAL NTOC +EXTERNAL NTOCDOW +EXTERNAL NTOCMONTH +EXTERNAL NTOCOLOR +EXTERNAL NUL +EXTERNAL NUMAND +EXTERNAL NUMAT +EXTERNAL NUMCOUNT +EXTERNAL NUMDISKL +EXTERNAL NUMHIGH +EXTERNAL NUMLINE +EXTERNAL NUMLOW +EXTERNAL NUMMIRR +EXTERNAL NUMNOT +EXTERNAL NUMOR +EXTERNAL NUMROL +EXTERNAL NUMTOKEN +EXTERNAL NUMXOR +EXTERNAL PADLEFT +EXTERNAL PADRIGHT +EXTERNAL PAYMENT +EXTERNAL PERIODS +EXTERNAL PI +EXTERNAL POSALPHA +EXTERNAL POSCHAR +EXTERNAL POSDEL +EXTERNAL POSDIFF +EXTERNAL POSEQUAL +EXTERNAL POSINS +EXTERNAL POSLOWER +EXTERNAL POSRANGE +EXTERNAL POSREPL +EXTERNAL POSUPPER +EXTERNAL PRINTREADY +EXTERNAL PRINTSEND +EXTERNAL PRINTSTAT +EXTERNAL PV +EXTERNAL QUARTER +EXTERNAL RAND +EXTERNAL RANDOM +EXTERNAL RANGEREM +EXTERNAL RANGEREPL +EXTERNAL RATE +EXTERNAL REMALL +EXTERNAL REMLEFT +EXTERNAL REMRIGHT +EXTERNAL RENAMEFILE +EXTERNAL REPLALL +EXTERNAL REPLLEFT +EXTERNAL REPLRIGHT +EXTERNAL RESTCURSOR +EXTERNAL RESTGETS +EXTERNAL RESTSETKEY +EXTERNAL RESTTOKEN +EXTERNAL RTOD +EXTERNAL SAVECURSOR +EXTERNAL SAVEGETS +EXTERNAL SAVESETKEY +EXTERNAL SAVETOKEN +EXTERNAL SAYDOWN +EXTERNAL SAYMOVEIN +EXTERNAL SAYSCREEN +EXTERNAL SAYSPREAD +EXTERNAL SCREENATTR +EXTERNAL SCREENFILE +EXTERNAL SCREENMARK +EXTERNAL SCREENMIX +EXTERNAL SCREENSTR +EXTERNAL SCREENTEXT +EXTERNAL SECTOTIME +EXTERNAL SETATLIKE +EXTERNAL SETBIT +EXTERNAL SETCLEARA +EXTERNAL SETCLEARB +EXTERNAL SETDATE +EXTERNAL SETFATTR +EXTERNAL SETFCREATE +EXTERNAL SETFDATI +EXTERNAL SETFONT +EXTERNAL SETKXLAT +EXTERNAL SETLASTKEY +EXTERNAL SETPREC +EXTERNAL SETRC +EXTERNAL SETTIME +EXTERNAL SHOWTIME +EXTERNAL SIGN +EXTERNAL SIN +EXTERNAL SINH +EXTERNAL STANDARD +EXTERNAL STRDIFF +EXTERNAL STRFILE +EXTERNAL STRSCREEN +EXTERNAL STRSWAP +EXTERNAL TABEXPAND +EXTERNAL TABPACK +EXTERNAL TAN +EXTERNAL TANH +EXTERNAL TEMPFILE +EXTERNAL TIMETOSEC +EXTERNAL TIMEVALID +EXTERNAL TOKEN +EXTERNAL TOKENAT +EXTERNAL TOKENEND +EXTERNAL TOKENEXIT +EXTERNAL TOKENINIT +EXTERNAL TOKENLOWER +EXTERNAL TOKENNEXT +EXTERNAL TOKENNUM +EXTERNAL TOKENSEP +EXTERNAL TOKENUPPER +EXTERNAL TRUENAME +EXTERNAL UNSELECTED +EXTERNAL UNTEXTWIN +EXTERNAL VALPOS +EXTERNAL VGAPALETTE +EXTERNAL VIDEOTYPE +EXTERNAL VOLSERIAL +EXTERNAL VOLUME +EXTERNAL WACLOSE +EXTERNAL WAITPERIOD +EXTERNAL WBOARD +EXTERNAL WBOX +EXTERNAL WCENTER +EXTERNAL WCLOSE +EXTERNAL WCOL +EXTERNAL WEEK +EXTERNAL WFCOL +EXTERNAL WFLASTCOL +EXTERNAL WFLASTROW +EXTERNAL WFORMAT +EXTERNAL WFROW +EXTERNAL WHIDE +EXTERNAL WLASTCOL +EXTERNAL WLASTROW +EXTERNAL WLEVEL +EXTERNAL WMODE +EXTERNAL WMOVE +EXTERNAL WNUM +EXTERNAL WOM +EXTERNAL WOPEN +EXTERNAL WORDONE +EXTERNAL WORDONLY +EXTERNAL WORDREM +EXTERNAL WORDREPL +EXTERNAL WORDSWAP +EXTERNAL WORDTOCHAR +EXTERNAL WROW +EXTERNAL WSELECT +EXTERNAL WSETMOVE +EXTERNAL WSETSHADOW +EXTERNAL WSHADOW +EXTERNAL WSHOW +EXTERNAL WSTEP +EXTERNAL XMOBLOCK +EXTERNAL XMOCHECK +EXTERNAL XTOC +EXTERNAL ZEROINSERT +EXTERNAL ZEROREMOVE +EXTERNAL _HB_CTDSPTIME +EXTERNAL __HBCT_EXTERN__ + +#endif diff --git a/harbour/contrib/make.hbs b/harbour/contrib/make.hbs index a366a3381c..e515cb5896 100755 --- a/harbour/contrib/make.hbs +++ b/harbour/contrib/make.hbs @@ -437,7 +437,7 @@ STATIC PROCEDURE build_projects( nAction, hProjectList, hProjectReqList, cOption ENDIF /* Create EXTERN list */ - IF lPrimary + IF lPrimary .AND. "cOutputName" $ hProjectList[ cProject ] mk_extern( hProjectList[ cProject ][ "cOutputName" ], FNameExtSet( cProjectPath, ".hbx" ) ) ENDIF ENDIF @@ -571,11 +571,18 @@ STATIC FUNCTION mk_extern( cLibName, cOutputName ) cExtern += "/* compiler family. */" + hb_eol() cExtern += "/* -------------------------------------------------------------------- */" + hb_eol() cExtern += hb_eol() + cExtern += "#ifndef " + "__HBEXTERN__" + Upper( FNameNameGet( cOutputName ) ) + "__" + hb_eol() + cExtern += "#define " + "__HBEXTERN__" + Upper( FNameNameGet( cOutputName ) ) + "__" + hb_eol() + cExtern += hb_eol() cExtern += "ANNOUNCE " + "__" + Upper( FNameNameGet( cOutputName ) ) + "_EXTERN__" + hb_eol() cExtern += hb_eol() FOR EACH tmp IN aResult - cExtern += "EXTERNAL " + tmp[ 2 ] + hb_eol() + IF ! hb_WildMatch( "HB_GT_*_DEFAULT", tmp[ 2 ] ) + cExtern += "EXTERNAL " + tmp[ 2 ] + hb_eol() + ENDIF NEXT + cExtern += hb_eol() + cExtern += "#endif" + hb_eol() RETURN hb_MemoWrit( cOutputName, cExtern ) ENDIF ENDIF