diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 55f4436350..aa0dee229f 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,22 @@ 2009-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-03-29 15:46 UTC+0200 Viktor Szakats (harbour.01 syenar hu) + * bin/hb-mkdyn.sh + * bin/hb-func.sh + + Added support for .dll creation and hbmk for mingw64. + * Synced Windows system liblist for dll creation. + * wsock32 -> ws2_32 + + * bin/hb-mkdyn.bat + ! wsock32 -> ws2_32 + + * contrib/gtwvg/gtwvg.c + ! Fixed embedded ANSI C comments. + * contrib/gtwvg/wvgsink.c + ! Fixed a few non-ANSI C comments. + * There is more, see: 'grep // *.c' + 2009-03-29 11:02 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * INSTALL * external/Makefile diff --git a/harbour/bin/hb-func.sh b/harbour/bin/hb-func.sh index d4d2796e33..e53518a053 100755 --- a/harbour/bin/hb-func.sh +++ b/harbour/bin/hb-func.sh @@ -187,8 +187,8 @@ mk_hbtools() HB_SYS_LIBS="-lz ${HB_SYS_LIBS}" hb_libs="${hb_libs//hbzlib/}" fi - if [ "${HB_COMPILER}" = "mingw" ]; then - HB_SYS_LIBS="${HB_SYS_LIBS} -luser32 -lwinspool -lgdi32 -lcomctl32 -lcomdlg32 -lole32 -loleaut32 -luuid -lwsock32 -lws2_32" + if [ "${HB_COMPILER}" = "mingw" ] || [ "${HB_COMPILER}" = "mingw64" ]; then + HB_SYS_LIBS="${HB_SYS_LIBS} -luser32 -lwinspool -lgdi32 -lcomctl32 -lcomdlg32 -lole32 -loleaut32 -luuid -lws2_32" HB_WITHOUT_X11="yes" elif [ "${HB_COMPILER}" = "mingwce" ]; then HB_SYS_LIBS="${HB_SYS_LIBS} -lwininet -lws2 -lcommdlg -lcommctrl -luuid -lole32" @@ -330,7 +330,7 @@ elif [ "\$*" = "mk-links" ]; then if [ "\${HB_ARCHITECTURE}" = "dos" ]; then cp -f "\${NAME}" "\${n}" else - ln -sf "\${NAME}" "\${n}" + ln -sf "\${NAME}" "\${n}" fi done ) @@ -566,7 +566,7 @@ else fi l="" -if [ "\${HB_COMPILER}" = "mingw" ]; then +if [ "\${HB_COMPILER}" = "mingw" ] || [ "\${HB_COMPILER}" = "mingw64" ]; then if [ -z "\${HB_MODE}" ]; then LN_OPT="\${LN_OPT} -mwindows" l="hbmainwin" @@ -752,8 +752,8 @@ mk_hblibso() linker_options="-lz ${linker_options}" hb_libs="${hb_libs//hbzlib/}" fi - if [ "${HB_COMPILER}" = "mingw" ]; then - linker_options="${linker_options} -luser32 -lwinspool -lgdi32 -lcomctl32 -lcomdlg32 -lole32 -loleaut32 -luuid -lwsock32 -lws2_32" + if [ "${HB_COMPILER}" = "mingw" ] || [ "${HB_COMPILER}" = "mingw64" ]; then + linker_options="${linker_options} -luser32 -lwinspool -lgdi32 -lcomctl32 -lcomdlg32 -lole32 -loleaut32 -luuid -lws2_32" elif [ "${HB_COMPILER}" = "mingwce" ]; then linker_options="${linker_options} -lwininet -lws2 -lcommdlg -lcommctrl -luuid -lole32" elif [ "${HB_COMPILER}" = "djgpp" ]; then @@ -826,8 +826,13 @@ mk_hblibso() full_lib_name_mt="lib${name}mt.${hb_ver}${lib_ext}" elif [ "${HB_ARCHITECTURE}" = "win" ]; then lib_ext=".dll" - full_lib_name="${name}-${hb_ver}${lib_ext}" - full_lib_name_mt="${name}mt-${hb_ver}${lib_ext}" + if [ "${HB_COMPILER}" = "mingw64" ]; then + full_lib_name="${name}-${hb_ver}-x64${lib_ext}" + full_lib_name_mt="${name}mt-${hb_ver}-x64${lib_ext}" + else + full_lib_name="${name}-${hb_ver}${lib_ext}" + full_lib_name_mt="${name}mt-${hb_ver}${lib_ext}" + fi elif [ "${HB_ARCHITECTURE}" = "hpux" ]; then lib_ext=".sl" full_lib_name="lib${name}-${hb_ver}${lib_ext}" diff --git a/harbour/bin/hb-mkdyn.bat b/harbour/bin/hb-mkdyn.bat index 0ef6440f52..8c3e23cdd0 100644 --- a/harbour/bin/hb-mkdyn.bat +++ b/harbour/bin/hb-mkdyn.bat @@ -115,8 +115,8 @@ if "%HB_COMPILER%" == "msvc64" set _DST_NAME_MT=harbourmt-%HB_DLL_VERSION%-x64 if "%HB_COMPILER%" == "msvcia64" set _DST_NAME_ST=harbour-%HB_DLL_VERSION%-ia64 if "%HB_COMPILER%" == "msvcia64" set _DST_NAME_MT=harbourmt-%HB_DLL_VERSION%-ia64 -echo Making %_DST_NAME_ST%.dll... && %_BIN_LINK% /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_ST%.dll" @_hboneut.txt @_hbost.txt user32.lib wsock32.lib advapi32.lib gdi32.lib -echo Making %_DST_NAME_MT%.dll... && %_BIN_LINK% /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_MT%.dll" @_hboneut.txt @_hbomt.txt user32.lib wsock32.lib advapi32.lib gdi32.lib +echo Making %_DST_NAME_ST%.dll... && %_BIN_LINK% /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_ST%.dll" @_hboneut.txt @_hbost.txt user32.lib ws2_32.lib advapi32.lib gdi32.lib +echo Making %_DST_NAME_MT%.dll... && %_BIN_LINK% /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_MT%.dll" @_hboneut.txt @_hbomt.txt user32.lib ws2_32.lib advapi32.lib gdi32.lib if exist "%HB_BIN_INSTALL%\%_DST_NAME_ST%.lib" move "%HB_BIN_INSTALL%\%_DST_NAME_ST%.lib" "%HB_LIB_INSTALL%\%_DST_NAME_ST%.lib" if exist "%HB_BIN_INSTALL%\%_DST_NAME_MT%.lib" move "%HB_BIN_INSTALL%\%_DST_NAME_MT%.lib" "%HB_LIB_INSTALL%\%_DST_NAME_MT%.lib" @@ -284,8 +284,8 @@ echo FILE '%HB_DLL_LIBS_MT%.lib'>> _hbsmt.txt set _DST_NAME_ST=harbour-%HB_DLL_VERSION% set _DST_NAME_MT=harbourmt-%HB_DLL_VERSION% -echo Making %_DST_NAME_ST%.dll... && wlink OP QUIET SYS NT_DLL OP IMPLIB NAME '%HB_BIN_INSTALL%\%_DST_NAME_ST%.dll' @_hbsst.txt LIB user32.lib, wsock32.lib, advapi32.lib, gdi32.lib -echo Making %_DST_NAME_MT%.dll... && wlink OP QUIET SYS NT_DLL OP IMPLIB NAME '%HB_BIN_INSTALL%\%_DST_NAME_MT%.dll' @_hbsmt.txt LIB user32.lib, wsock32.lib, advapi32.lib, gdi32.lib +echo Making %_DST_NAME_ST%.dll... && wlink OP QUIET SYS NT_DLL OP IMPLIB NAME '%HB_BIN_INSTALL%\%_DST_NAME_ST%.dll' @_hbsst.txt LIB user32.lib, ws2_32.lib, advapi32.lib, gdi32.lib +echo Making %_DST_NAME_MT%.dll... && wlink OP QUIET SYS NT_DLL OP IMPLIB NAME '%HB_BIN_INSTALL%\%_DST_NAME_MT%.dll' @_hbsmt.txt LIB user32.lib, ws2_32.lib, advapi32.lib, gdi32.lib if exist "%HB_BIN_INSTALL%\%_DST_NAME_ST%.lib" move "%HB_BIN_INSTALL%\%_DST_NAME_ST%.lib" "%HB_LIB_INSTALL%\%_DST_NAME_ST%.lib" if exist "%HB_BIN_INSTALL%\%_DST_NAME_MT%.lib" move "%HB_BIN_INSTALL%\%_DST_NAME_MT%.lib" "%HB_LIB_INSTALL%\%_DST_NAME_MT%.lib" @@ -359,8 +359,8 @@ cd .. set _DST_NAME_ST=harbour-%HB_DLL_VERSION% set _DST_NAME_MT=harbourmt-%HB_DLL_VERSION% -echo Making %_DST_NAME_ST%.dll... && polink /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_ST%.dll" @_hboneut.txt @_hbost.txt user32.lib wsock32.lib advapi32.lib gdi32.lib -echo Making %_DST_NAME_MT%.dll... && polink /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_MT%.dll" @_hboneut.txt @_hbomt.txt user32.lib wsock32.lib advapi32.lib gdi32.lib +echo Making %_DST_NAME_ST%.dll... && polink /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_ST%.dll" @_hboneut.txt @_hbost.txt user32.lib ws2_32.lib advapi32.lib gdi32.lib +echo Making %_DST_NAME_MT%.dll... && polink /nologo /dll /out:"%HB_BIN_INSTALL%\%_DST_NAME_MT%.dll" @_hboneut.txt @_hbomt.txt user32.lib ws2_32.lib advapi32.lib gdi32.lib polib "%HB_BIN_INSTALL%\%_DST_NAME_ST%.dll" /out:"%HB_LIB_INSTALL%\%_DST_NAME_ST%.lib" polib "%HB_BIN_INSTALL%\%_DST_NAME_MT%.dll" /out:"%HB_LIB_INSTALL%\%_DST_NAME_MT%.lib" diff --git a/harbour/bin/hb-mkdyn.sh b/harbour/bin/hb-mkdyn.sh index de5d1fc8c7..1a6d3b8ded 100755 --- a/harbour/bin/hb-mkdyn.sh +++ b/harbour/bin/hb-mkdyn.sh @@ -135,8 +135,7 @@ elif [ "${SLIB_EXT}" = ".dll" ]; then if [ "$HB_COMPILER" = "mingwce" ]; then SYSLIBS=" -lwininet -lws2" else - SYSLIBS="-luser32 -lwinspool -lgdi32 -lcomctl32 -lcomdlg32 -lole32" - SYSLIBS="${SYSLIBS} -loleaut32 -luuid -lmpr -lwsock32 -lws2_32 -lmapi32" + SYSLIBS="-luser32 -lws2_32 -ladvapi32 -lgdi32" fi ${HB_CCPREFIX}gcc -shared -o "${FULLNAME}" $OBJLST ${linker_options} ${HB_USER_LDFLAGS} ${SYSLIBS} ${HB_DLLIBS} && \ cd "${dir}" && \ diff --git a/harbour/bin/postinst.sh b/harbour/bin/postinst.sh index 45f0d1bd12..a16a9ae78c 100755 --- a/harbour/bin/postinst.sh +++ b/harbour/bin/postinst.sh @@ -40,10 +40,14 @@ fi . ${hb_root}/bin/hb-func.sh -if [ "$HB_COMPILER" = "gcc" ] || [ "$HB_COMPILER" = "gpp" ] || \ - [ "$HB_COMPILER" = "mingw" ] || [ "$HB_COMPILER" = "mingwce" ] || \ +if [ "$HB_COMPILER" = "gcc" ] || \ + [ "$HB_COMPILER" = "gpp" ] || \ + [ "$HB_COMPILER" = "mingw" ] || \ + [ "$HB_COMPILER" = "mingw64" ] || \ + [ "$HB_COMPILER" = "mingwce" ] || \ [ "$HB_COMPILER" = "cygwin" ] || \ - [ "$HB_COMPILER" = "djgpp" ] || [ "$HB_COMPILER" = "icc" ] + [ "$HB_COMPILER" = "djgpp" ] || \ + [ "$HB_COMPILER" = "icc" ] then RANLIB="" MAKE=make @@ -93,8 +97,11 @@ then fi mk_hbtools "${HB_BIN_INSTALL}" "$@" - if [ "$HB_COMPILER" = "gcc" ] || [ "$HB_COMPILER" = "gpp" ] || \ - [ "$HB_COMPILER" = "mingw" ] || [ "$HB_COMPILER" = "mingwce" ] || \ + if [ "$HB_COMPILER" = "gcc" ] || \ + [ "$HB_COMPILER" = "gpp" ] || \ + [ "$HB_COMPILER" = "mingw" ] || \ + [ "$HB_COMPILER" = "mingw64" ] || \ + [ "$HB_COMPILER" = "mingwce" ] || \ [ "$HB_COMPILER" = "icc" ]; then mk_hblibso "${hb_root}" fi diff --git a/harbour/contrib/gtwvg/gtwvg.c b/harbour/contrib/gtwvg/gtwvg.c index b648e2c726..9d7cfaf254 100644 --- a/harbour/contrib/gtwvg/gtwvg.c +++ b/harbour/contrib/gtwvg/gtwvg.c @@ -4094,11 +4094,11 @@ HB_CALL_ON_STARTUP_END( _hb_startup_gt_Init_ ) /*----------------------------------------------------------------------*/ /*----------------------------------------------------------------------*/ -/*----------------------------------------------------------------------// +/*----------------------------------------------------------------------*/ /* * WVT specific functions */ -//----------------------------------------------------------------------*/ +/*----------------------------------------------------------------------*/ /*----------------------------------------------------------------------*/ /*----------------------------------------------------------------------*/ diff --git a/harbour/contrib/gtwvg/wvgsink.c b/harbour/contrib/gtwvg/wvgsink.c index 6f9f0c0775..9d27dff51d 100644 --- a/harbour/contrib/gtwvg/wvgsink.c +++ b/harbour/contrib/gtwvg/wvgsink.c @@ -428,7 +428,7 @@ static HRESULT STDMETHODCALLTYPE GetIDsOfNames( IEventHandler *self, REFIID riid return ( HRESULT ) E_NOTIMPL; } -//------------------------------------------------------------------------------ +/*-----------------------------------------------------------------------------*/ static HRESULT STDMETHODCALLTYPE Invoke( IEventHandler *self, DISPID dispid, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *params, @@ -687,7 +687,7 @@ HB_FUNC( HB_AX_RELEASEOBJECT ) IDispatch * pDisp = ( IDispatch * ) ( HB_PTRDIFF ) hb_parnint( 1 ); s_nOleError = pDisp->lpVtbl->Release( pDisp ); } -//---------------------------------------------------------------------------// +/*----------------------------------------------------------------------*/ HB_FUNC( HB_AX_SETUPCONNECTIONPOINT ) { HRESULT hr; @@ -791,7 +791,7 @@ HB_FUNC( HB_AX_ATLAXWININIT ) hb_retl( bRet ); } -//---------------------------------------------------------------------------// +/*----------------------------------------------------------------------*/ /* ATLAPI AtlAxCreateControlEx( LPCOLESTR lpszName, @@ -918,7 +918,7 @@ HB_FUNC( HB_AX_ATLAXCREATECONTROL ) * ::hObj := HB_AX_AtlAxGetControl( "ATLAXWin", ::hContainer, ::CLSID, ::nID, ; * ::aPos[ 1 ], ::aPos[ 2 ], ::aSize[ 1 ], ::aSize[ 2 ], ::style, ::exStyle, @hx ) */ -HB_FUNC( HB_AX_ATLAXGETCONTROL ) // HWND hWnd = handle of control container window +HB_FUNC( HB_AX_ATLAXGETCONTROL ) /* HWND hWnd = handle of control container window */ { IUnknown *pUnk = NULL; IDispatch *obj; @@ -1009,7 +1009,7 @@ HB_FUNC( HB_AX_ATLAXGETCONTROL ) // HWND hWnd = handle of control container wind } } -//---------------------------------------------------------------------------// +/*----------------------------------------------------------------------*/ HB_FUNC( HB_AX_ATLSETVERB ) { @@ -1073,15 +1073,15 @@ HB_FUNC( HB_AX_ATLAXWINTERM ) /*----------------------------------------------------------------------*/ typedef struct { - DISPID m_dispID; // dispatch id - BSTR m_bstrName; // method or property name - WORD m_wFlag; // invoke flag - short m_oVft; // offset of virtual function - CALLCONV m_callconv; // calling convention - VARTYPE m_vtOutputType; // output type - VARIANT* m_pOutput; // output data - int m_nParamCount; // number of parameters - WORD* m_pParamTypes; // parameter type array + DISPID m_dispID; /* dispatch id */ + BSTR m_bstrName; /* method or property name */ + WORD m_wFlag; /* invoke flag */ + short m_oVft; /* offset of virtual function */ + CALLCONV m_callconv; /* calling convention */ + VARTYPE m_vtOutputType; /* output type */ + VARIANT* m_pOutput; /* output data */ + int m_nParamCount; /* number of parameters */ + WORD* m_pParamTypes; /* parameter type array */ } DispInfo; /*----------------------------------------------------------------------*/ @@ -1090,11 +1090,11 @@ typedef struct { #if 0 -//================================================= -// BUGGY experimental, untested and unfinished code -//================================================= +/*================================================= + BUGGY experimental, untested and unfinished code + =================================================*/ -int LoadTypeInformation( IDispatch* pDisp ) // pass dispatch interface +int LoadTypeInformation( IDispatch* pDisp ) /* pass dispatch interface */ { //UINT nTypeInfoCount; //m_hRet = m_pDisp->GetTypeInfoCount(&nTypeInfoCount); @@ -1441,7 +1441,3 @@ hb_ToOutDebug( "<<<<<<<<<<<<<<< 6 >>>>>>>>>>>>"); } #endif /*----------------------------------------------------------------------*/ - - - -