From 64eec33e40e985e981c890114133fea06a2d3342 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Thu, 10 Feb 2011 18:21:32 +0000 Subject: [PATCH] 2011-02-10 19:18 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) - src/dynlib/mt * src/dynlib/Makefile * src/vm/maindllp/dllpcode.c * package/winuni/mpkg_win_uni.bat * package/winuni/mpkg_win_uni.nsi * utils/hbmk2/hbmk2.prg * config/postinst.hbs * config/global.mk * config/bin.mk * Changed to have only one harbour dll, and this one with MT support. This means the old MT mode dll named harbourmt/harbourm is no more and the old ST mode dll vanished also. This will result in much cleaner layout of Harbour binary tree, smaller distribution size, and unambigous dll tree when linking an app with dll multiple components (f.e. contribs). If someone wants to build an ST mode harbour dll, she can use the internal build-time option: _HB_BUILD_DYN_ST=yes ; Please test. ; TODO: Do a final cleanup on internal variable names to not have "ST" in them. --- harbour/ChangeLog | 22 ++++++++++ harbour/config/bin.mk | 4 +- harbour/config/global.mk | 12 +----- harbour/config/postinst.hbs | 7 ---- harbour/package/winuni/mpkg_win_uni.bat | 5 --- harbour/package/winuni/mpkg_win_uni.nsi | 6 --- harbour/src/dynlib/Makefile | 9 +++-- harbour/src/dynlib/mt/Makefile | 31 -------------- harbour/src/vm/maindllp/dllpcode.c | 15 ------- harbour/utils/hbmk2/hbmk2.prg | 54 ++++++++++++------------- 10 files changed, 55 insertions(+), 110 deletions(-) delete mode 100644 harbour/src/dynlib/mt/Makefile diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 71bf80007f..fb6b9eede7 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,28 @@ The license applies to all entries newer than 2009-04-28. */ +2011-02-10 19:18 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + - src/dynlib/mt + * src/dynlib/Makefile + * src/vm/maindllp/dllpcode.c + * package/winuni/mpkg_win_uni.bat + * package/winuni/mpkg_win_uni.nsi + * utils/hbmk2/hbmk2.prg + * config/postinst.hbs + * config/global.mk + * config/bin.mk + * Changed to have only one harbour dll, and this one with MT support. + This means the old MT mode dll named harbourmt/harbourm is no more + and the old ST mode dll vanished also. This will result in much + cleaner layout of Harbour binary tree, smaller distribution size, + and unambigous dll tree when linking an app with dll multiple + components (f.e. contribs). + If someone wants to build an ST mode harbour dll, she can use the + internal build-time option: _HB_BUILD_DYN_ST=yes + ; Please test. + + ; TODO: Do a final cleanup on internal variable names to not have "ST" in them. + 2011-02-10 13:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/make.hbs * contrib/hbide/idemisc.prg diff --git a/harbour/config/bin.mk b/harbour/config/bin.mk index 9eed82944a..4d067f36c5 100644 --- a/harbour/config/bin.mk +++ b/harbour/config/bin.mk @@ -46,9 +46,9 @@ ifeq ($(BUILD_SHARED),yes) endif HB_LIBS_ST_RDD := $(HB_LIBS_TPL) $(HB_DYNLIB_ST) - HB_LIBS_MT_RDD := $(HB_LIBS_TPL) $(HB_DYNLIB_MT) + HB_LIBS_MT_RDD := $(HB_LIBS_TPL) $(HB_DYNLIB_ST) HB_LIBS_ST_NORDD := $(HB_LIBS_ST_RDD) - HB_LIBS_MT_NORDD := $(HB_LIBS_MT_RDD) + HB_LIBS_MT_NORDD := $(HB_LIBS_ST_RDD) HB_LIBS_TPL := else diff --git a/harbour/config/global.mk b/harbour/config/global.mk index 9e361cdbbd..3bb82cb19f 100644 --- a/harbour/config/global.mk +++ b/harbour/config/global.mk @@ -1792,29 +1792,19 @@ ifeq ($(HB_INIT_DONE),) endif endif + HB_DYNLIB_BASE_ST := harbour ifeq ($(HB_PLATFORM),dos) - HB_DYNLIB_BASE_ST := harbour - HB_DYNLIB_BASE_MT := harbourm HB_DYNLIB_ST := $(HB_DYNLIB_BASE_ST) - HB_DYNLIB_MT := $(HB_DYNLIB_BASE_MT) else ifeq ($(HB_PLATFORM),os2) - HB_DYNLIB_BASE_ST := harbour - HB_DYNLIB_BASE_MT := harbourm HB_DYNLIB_ST := $(HB_DYNLIB_BASE_ST) - HB_DYNLIB_MT := $(HB_DYNLIB_BASE_MT) else - HB_DYNLIB_BASE_ST := harbour - HB_DYNLIB_BASE_MT := harbourmt HB_DYNLIB_ST := $(HB_DYNLIB_BASE_ST)$(DYNNAME_POST) - HB_DYNLIB_MT := $(HB_DYNLIB_BASE_MT)$(DYNNAME_POST) endif endif export HB_DYNLIB_BASE_ST - export HB_DYNLIB_BASE_MT export HB_DYNLIB_ST - export HB_DYNLIB_MT endif endif diff --git a/harbour/config/postinst.hbs b/harbour/config/postinst.hbs index a6cbd5b1c3..0b62c3afe9 100644 --- a/harbour/config/postinst.hbs +++ b/harbour/config/postinst.hbs @@ -37,8 +37,6 @@ PROCEDURE Main( ... ) LOCAL cST_Versioned LOCAL cST_Versionless - LOCAL cMT_Versioned - LOCAL cMT_Versionless IF Empty( GetEnvC( "HB_PLATFORM" ) ) .OR. ; Empty( GetEnvC( "HB_COMPILER" ) ) .OR. ; @@ -140,11 +138,8 @@ PROCEDURE Main( ... ) cST_Versioned := GetEnvC( "HB_DYNLIB_PREF" ) + GetEnvC( "HB_DYNLIB_ST" ) + GetEnvC( "HB_DYNLIB_EXT" ) cST_Versionless := GetEnvC( "HB_DYNLIB_PREF" ) + GetEnvC( "HB_DYNLIB_BASE_ST" ) + GetEnvC( "HB_DYNLIB_EXT" ) - cMT_Versioned := GetEnvC( "HB_DYNLIB_PREF" ) + GetEnvC( "HB_DYNLIB_MT" ) + GetEnvC( "HB_DYNLIB_EXT" ) - cMT_Versionless := GetEnvC( "HB_DYNLIB_PREF" ) + GetEnvC( "HB_DYNLIB_BASE_MT" ) + GetEnvC( "HB_DYNLIB_EXT" ) mk_hb_FLinkSym( cST_Versioned, PathSepToSelf( GetEnvC( "HB_INSTALL_DYN" ) ) + hb_ps() + cST_Versionless ) - mk_hb_FLinkSym( cMT_Versioned, PathSepToSelf( GetEnvC( "HB_INSTALL_DYN" ) ) + hb_ps() + cMT_Versionless ) DO CASE CASE EndsWith( GetEnvC( "HB_INSTALL_DYN" ), "/usr/lib/harbour" ) .OR. ; @@ -154,8 +149,6 @@ PROCEDURE Main( ... ) mk_hb_FLinkSym( "harbour" + hb_ps() + cST_Versioned, PathSepToSelf( GetEnvC( "HB_INSTALL_DYN" ) ) + hb_ps() + ".." + hb_ps() + cST_Versionless ) mk_hb_FLinkSym( "harbour" + hb_ps() + cST_Versioned, PathSepToSelf( GetEnvC( "HB_INSTALL_DYN" ) ) + hb_ps() + ".." + hb_ps() + cST_Versioned ) - mk_hb_FLinkSym( "harbour" + hb_ps() + cMT_Versioned, PathSepToSelf( GetEnvC( "HB_INSTALL_DYN" ) ) + hb_ps() + ".." + hb_ps() + cMT_Versionless ) - mk_hb_FLinkSym( "harbour" + hb_ps() + cMT_Versioned, PathSepToSelf( GetEnvC( "HB_INSTALL_DYN" ) ) + hb_ps() + ".." + hb_ps() + cMT_Versioned ) CASE GetEnvC( "HB_INSTALL_DYN" ) == "/usr/local/harbour/lib" /* TOFIX: Rewrite this in .prg */ diff --git a/harbour/package/winuni/mpkg_win_uni.bat b/harbour/package/winuni/mpkg_win_uni.bat index 6be6ce536a..2be0711254 100644 --- a/harbour/package/winuni/mpkg_win_uni.bat +++ b/harbour/package/winuni/mpkg_win_uni.bat @@ -124,7 +124,6 @@ echo "%HB_DR%NEWS" >> _hbfiles echo "%HB_DR%TODO" >> _hbfiles echo "%HB_DR%ChangeLog*" >> _hbfiles echo "%HB_DR%bin\harbour-%HB_VS%.dll" >> _hbfiles -echo "%HB_DR%bin\harbourmt-%HB_VS%.dll" >> _hbfiles echo "%HB_DR%bin\harbour.exe" >> _hbfiles echo "%HB_DR%bin\hbi18n.exe" >> _hbfiles echo "%HB_DR%bin\hbmk2.exe" >> _hbfiles @@ -173,18 +172,14 @@ echo "%HB_DR%lib\os2\watcom\*.*" >> _hbfiles echo "%HB_DR%lib\win\msvc\*.*" >> _hbfiles echo "%HB_DR%lib\win\msvc64\*.*" >> _hbfiles rem echo "%HB_DR%bin\harbour-20-bcc.dll" >> _hbfiles -rem echo "%HB_DR%bin\harbourmt-20-bcc.dll" >> _hbfiles echo "%HB_DR%lib\win\bcc\*.*" >> _hbfiles echo "%HB_DR%lib\win\watcom\*.*" >> _hbfiles rem echo "%HB_DR%lib\win\pocc\*.*" >> _hbfiles rem echo "%HB_DR%lib\win\pocc64\*.*" >> _hbfiles rem echo "%HB_DR%lib\wce\poccarm\*.*" >> _hbfiles echo "%HB_DR%bin\harbour-%HB_VS%-x64.dll" >> _hbfiles -echo "%HB_DR%bin\harbourmt-%HB_VS%-x64.dll" >> _hbfiles echo "%HB_DR%bin\harbour-%HB_VS%-wce-arm.dll" >> _hbfiles -echo "%HB_DR%bin\harbourmt-%HB_VS%-wce-arm.dll" >> _hbfiles rem echo "%HB_DR%bin\harbour-%HB_VS%-os2.dll" >> _hbfiles -rem echo "%HB_DR%bin\harbourmt-%HB_VS%-os2.dll" >> _hbfiles echo "%HB_DR%tests\*.*" >> _hbfiles echo "%HB_DR%doc\*.*" >> _hbfiles echo "%HB_DR%comp\mingw\*" >> _hbfiles diff --git a/harbour/package/winuni/mpkg_win_uni.nsi b/harbour/package/winuni/mpkg_win_uni.nsi index 86de77e5aa..67c98fe9b7 100644 --- a/harbour/package/winuni/mpkg_win_uni.nsi +++ b/harbour/package/winuni/mpkg_win_uni.nsi @@ -91,7 +91,6 @@ Section "Main components" hb_main SetOutPath $INSTDIR\bin File "$%HB_ABSROOT%bin\harbour-$%HB_VS%.dll" - File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%.dll" File "$%HB_ABSROOT%bin\harbour.exe" File "$%HB_ABSROOT%bin\hbi18n.exe" File "$%HB_ABSROOT%bin\hbmk2.exe" @@ -225,7 +224,6 @@ SectionEnd Section "Libs for Borland C" hb_lib_bcc SetOutPath $INSTDIR\bin ; File "$%HB_ABSROOT%bin\harbour-$%HB_VS%-bcc.dll" - ; File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%-bcc.dll" SetOutPath $INSTDIR\lib\win\bcc File "$%HB_ABSROOT%lib\win\bcc\*.*" SectionEnd @@ -303,7 +301,6 @@ SectionEnd Section /o "Dlls for x64" hb_dlls_x64 SetOutPath $INSTDIR\bin File "$%HB_ABSROOT%bin\harbour-$%HB_VS%-x64.dll" - File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%-x64.dll" SectionEnd !endif @@ -311,7 +308,6 @@ SectionEnd Section /o "Dlls for WinCE/ARM" hb_dlls_arm SetOutPath $INSTDIR\bin File "$%HB_ABSROOT%bin\harbour-$%HB_VS%-wce-arm.dll" - File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%-wce-arm.dll" SectionEnd !endif @@ -321,7 +317,6 @@ Section /o "Dlls for OS/2" hb_dlls_os2 SetOutPath $INSTDIR\bin ; TOFIX: .dll name collision with MS-DOS File "$%HB_ABSROOT%bin\harbour.dll" - File "$%HB_ABSROOT%bin\harbourm.dll" SectionEnd !endif @@ -330,7 +325,6 @@ Section /o "Dlls for MS-DOS" hb_dlls_dos SetOutPath $INSTDIR\bin ; TOFIX: .dll name collision with OS/2 File "$%HB_ABSROOT%bin\harbour.dll" - File "$%HB_ABSROOT%bin\harbourm.dll" SectionEnd !endif !endif diff --git a/harbour/src/dynlib/Makefile b/harbour/src/dynlib/Makefile index 9a3f4df9b9..d4772e4fa3 100644 --- a/harbour/src/dynlib/Makefile +++ b/harbour/src/dynlib/Makefile @@ -8,14 +8,15 @@ include $(TOP)$(ROOT)config/global.mk ifneq ($(DYNDIRLIST_BASE),) - DYNDIRLIST := $(DYNDIRLIST_BASE) src/vm + ifeq ($(_HB_BUILD_DYN_ST),yes) + DYNDIRLIST := $(DYNDIRLIST_BASE) src/vm + else + DYNDIRLIST := $(DYNDIRLIST_BASE) src/vm/vmmt + endif DYNNAME := $(HB_DYNLIB_ST) DYNNAME2 := $(HB_DYNLIB_BASE_ST) - DIRS := mt - include $(TOP)$(ROOT)config/dyn.mk - include $(TOP)$(ROOT)config/dir.mk ifneq ($(INSTALL_RULE_DYN),) ifneq ($(HB_INSTALL_LIB),) diff --git a/harbour/src/dynlib/mt/Makefile b/harbour/src/dynlib/mt/Makefile deleted file mode 100644 index 041b51ee12..0000000000 --- a/harbour/src/dynlib/mt/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -# -# $Id$ -# - -ROOT := ../../../ - -include $(TOP)$(ROOT)config/global.mk - -ifneq ($(DYNDIRLIST_BASE),) - - DYNDIRLIST := $(DYNDIRLIST_BASE) src/vm/vmmt - DYNNAME := $(HB_DYNLIB_MT) - DYNNAME2 := $(HB_DYNLIB_BASE_MT) - - include $(TOP)$(ROOT)config/dyn.mk - - ifneq ($(INSTALL_RULE_DYN),) - ifneq ($(HB_INSTALL_LIB),) - ifneq ($(IMP_FILE),) - INSTALL_FILES := $(IMP_FILE) - INSTALL_DIR := $(HB_INSTALL_LIB) - include $(TOP)$(ROOT)config/install.mk - endif - endif - else - include $(TOP)$(ROOT)config/none.mk - endif -else - $(warning ! Warning: Please run make from one level up) - include $(TOP)$(ROOT)config/none.mk -endif diff --git a/harbour/src/vm/maindllp/dllpcode.c b/harbour/src/vm/maindllp/dllpcode.c index 114d4209f0..8921ac0e20 100644 --- a/harbour/src/vm/maindllp/dllpcode.c +++ b/harbour/src/vm/maindllp/dllpcode.c @@ -64,40 +64,29 @@ #endif #define HB_DLL_PREF TEXT( "harbour" ) -#define HB_DLL_PREF_MT TEXT( "harbourmt" ) #define HB_DLL_VER TEXT( "-" ) TEXT( HB_MACRO2STRING( HB_VER_MAJOR ) ) TEXT( HB_MACRO2STRING( HB_VER_MINOR ) ) #define HB_DLL_EXT TEXT( ".dll" ) #define HB_DLL_NAME HB_DLL_PREF HB_DLL_EXT -#define HB_DLL_NAMEMT HB_DLL_PREF_MT HB_DLL_EXT #if defined( HB_OS_WIN_CE ) && defined( HB_CPU_ARM ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-wce-arm" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-wce-arm" ) HB_DLL_EXT #elif defined( HB_OS_WIN_CE ) && defined( HB_CPU_MIPS ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-wce-mips" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-wce-mips" ) HB_DLL_EXT #elif defined( HB_OS_WIN_CE ) && defined( HB_CPU_SH ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-wce-sh" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-wce-sh" ) HB_DLL_EXT #elif defined( HB_OS_WIN_CE ) && defined( HB_CPU_X86 ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-wce-x86" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-wce-x86" ) HB_DLL_EXT #elif defined( HB_OS_WIN_CE ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-wce" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-wce" ) HB_DLL_EXT #elif defined( __BORLANDC__ ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-bcc" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-bcc" ) HB_DLL_EXT #elif defined( HB_OS_WIN_64 ) && defined( HB_CPU_X86_64 ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-x64" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-x64" ) HB_DLL_EXT #elif defined( HB_OS_WIN_64 ) && defined( HB_CPU_IA_64 ) #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER TEXT( "-ia64" ) HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER TEXT( "-ia64" ) HB_DLL_EXT #else #define HB_DLL_NAME2 HB_DLL_PREF HB_DLL_VER HB_DLL_EXT - #define HB_DLL_NAMEMT2 HB_DLL_PREF_MT HB_DLL_VER HB_DLL_EXT #endif #if defined( HB_OS_WIN ) @@ -138,12 +127,8 @@ PHB_FUNC hb_dllGetProcAddress( const char * szProcName ) if( s_hModule == NULL ) { s_hModule = GetModuleHandle( HB_DLL_NAME ); - if( s_hModule == NULL ) - s_hModule = GetModuleHandle( HB_DLL_NAMEMT ); if( s_hModule == NULL ) s_hModule = GetModuleHandle( HB_DLL_NAME2 ); - if( s_hModule == NULL ) - s_hModule = GetModuleHandle( HB_DLL_NAMEMT2 ); if( s_hModule == NULL ) s_hModule = GetModuleHandle( NULL ); diff --git a/harbour/utils/hbmk2/hbmk2.prg b/harbour/utils/hbmk2/hbmk2.prg index 7ca064ff9e..4e7b31589f 100644 --- a/harbour/utils/hbmk2/hbmk2.prg +++ b/harbour/utils/hbmk2/hbmk2.prg @@ -198,14 +198,14 @@ REQUEST hbmk_KEYW #define _COMPDETE_cCCPATH 5 #define _COMPDETE_bSetup 6 -#define _HBMODE_NATIVE 0 +#define _HBMODE_NATIVE 0xFFFFFF #define _HBMODE_HB10 0x010000 #define _HBMODE_HB20 0x020000 #define _HBMODE_XHB -0x010200 #define _HBMODE_RAW_C -1 -#define _HBMODE_IS_HB( n ) ( n == 0 .OR. n >= _HBMODE_HB10 ) -#define _HBMODE_IS_OLDHB( n ) ( n >= _HBMODE_HB10 ) +#define _HBMODE_IS_HB( n ) ( n >= _HBMODE_HB10 ) +#define _HBMODE_IS_OLDHB( n ) ( n >= _HBMODE_HB10 .AND. n < _HBMODE_NATIVE ) #define _HBMODE_IS_XHB( n ) ( n <= _HBMODE_XHB ) /* Not implemented yet */ @@ -885,6 +885,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) LOCAL lSysLoc LOCAL cPostfix LOCAL aOBJLIST + LOCAL cHarbourDyn LOCAL lSkipBuild := .F. LOCAL lStopAfterCComp := .F. @@ -3075,18 +3076,23 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) cPostfix := cDL_Version #endif + IF hbmk[ _HBMK_lMT ] .AND. hbmk[ _HBMK_nHBMODE ] <= _HBMODE_HB20 + cHarbourDyn := iif( HBMK_ISPLAT( "win|os2" ), "harbourm", "harbourmt" ) + ELSE + /* ST mode or newer than Harbour 2.0, where there is only one harbour lib, + built in MT mode by default. */ + cHarbourDyn := "harbour" + ENDIF + DO CASE CASE HBMK_ISPLAT( "darwin|bsd|linux|hpux|beos|qnx|vxworks|sunos|minix" ) IF Empty( l_cDynLibDir ) - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourmt" + cPostfix,; - "harbour" + cPostfix ) } + l_aLIBSHARED := { cHarbourDyn + cPostfix } ELSE - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], l_cDynLibDir + hbmk[ _HBMK_cDynLibPrefix ] + "harbourmt" + cPostfix + hbmk[ _HBMK_cDynLibExt ],; - l_cDynLibDir + hbmk[ _HBMK_cDynLibPrefix ] + "harbour" + cPostfix + hbmk[ _HBMK_cDynLibExt ] ) } + l_aLIBSHARED := { l_cDynLibDir + hbmk[ _HBMK_cDynLibPrefix ] + cHarbourDyn + cPostfix + hbmk[ _HBMK_cDynLibExt ] } ENDIF CASE HBMK_ISPLAT( "os2|win|wce" ) - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], hbmk[ _HBMK_cDynLibPrefix ] + "harbourmt",; - hbmk[ _HBMK_cDynLibPrefix ] + "harbour" ) } + l_aLIBSHARED := { hbmk[ _HBMK_cDynLibPrefix ] + cHarbourDyn } OTHERWISE l_aLIBSHARED := NIL ENDCASE @@ -3480,8 +3486,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) IF hbmk[ _HBMK_cPLAT ] == "cygwin" l_aLIBSHAREDPOST := { "hbmainstd" } - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourmt" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ),; - "harbour" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) ) } + l_aLIBSHARED := { cHarbourDyn + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) } ENDIF CASE ( hbmk[ _HBMK_cPLAT ] == "win" .AND. hbmk[ _HBMK_cCOMP ] == "gcc" ) .OR. ; @@ -3610,8 +3615,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "xharbourmt",; "xharbour" ) } OTHERWISE - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourmt" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ),; - "harbour" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) ) } + l_aLIBSHARED := { cHarbourDyn + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) } ENDCASE IF _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ) @@ -3727,8 +3731,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) ENDIF l_aLIBSHAREDPOST := { "hbmainstd" } - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourm",; - "harbour" ) } + l_aLIBSHARED := { cHarbourDyn } #if 0 /* Disabled because windres seems to be broken in all gcc builds as of 2010-05-05. [vszakats] */ cBin_Res := hbmk[ _HBMK_cCCPREFIX ] + "windres" + hbmk[ _HBMK_cCCEXT ] @@ -3829,8 +3832,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) AAdd( l_aLIBSYS, "pdcurses" ) ENDIF - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourm" + cLibExt,; - "harbour" + cLibExt ) } + l_aLIBSHARED := { cHarbourDyn + cLibExt } IF ! Empty( hbmk[ _HBMK_cCCPATH ] ) cBin_Lib := FNameEscape( hbmk[ _HBMK_cCCPATH ] + hb_ps() + cBin_Lib, hbmk[ _HBMK_nCmd_Esc ] ) @@ -3995,16 +3997,14 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) AAdd( l_aLIBSYS, "clib3s" ) ENDIF l_aLIBSYS := ArrayAJoin( { l_aLIBSYS, l_aLIBSYSCORE, l_aLIBSYSMISC } ) - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourmt" + cDL_Version_Alter + cLibExt,; - "harbour" + cDL_Version_Alter + cLibExt ) } + l_aLIBSHARED := { cHarbourDyn + cDL_Version_Alter + cLibExt } IF hbmk[ _HBMK_lSHARED ] AAdd( hbmk[ _HBMK_aOPTL ], "FILE " + FNameExtSet( l_cHB_INSTALL_LIB + hb_ps() + iif( hbmk[ _HBMK_lGUI ], "hbmainwin", "hbmainstd" ), cLibExt ) ) ENDIF CASE hbmk[ _HBMK_cPLAT ] == "os2" l_aLIBSYS := ArrayAJoin( { l_aLIBSYS, l_aLIBSYSCORE, l_aLIBSYSMISC } ) - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourm" + cLibExt,; - "harbour" + cLibExt ) } + l_aLIBSHARED := { cHarbourDyn + cLibExt } IF hbmk[ _HBMK_lSHARED ] /* TOFIX: This line is plain guessing. */ @@ -4012,8 +4012,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) ENDIF CASE hbmk[ _HBMK_cPLAT ] == "linux" l_aLIBSYS := ArrayAJoin( { l_aLIBSYS, l_aLIBSYSCORE, l_aLIBSYSMISC } ) - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], hbmk[ _HBMK_cDynLibPrefix ] + "harbourmt" + cDL_Version + hbmk[ _HBMK_cDynLibExt ],; - hbmk[ _HBMK_cDynLibPrefix ] + "harbour" + cDL_Version + hbmk[ _HBMK_cDynLibExt ] ) } + l_aLIBSHARED := { hbmk[ _HBMK_cDynLibPrefix ] + cHarbourDyn + cDL_Version + hbmk[ _HBMK_cDynLibExt ] } ENDCASE IF HBMK_ISPLAT( "win|os2" ) cBin_Res := "wrc" + hbmk[ _HBMK_cCCEXT ] @@ -4124,8 +4123,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) ENDIF ENDIF ENDIF - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourmt" + cDL_Version_Alter + "-bcc" + cLibExt,; - "harbour" + cDL_Version_Alter + "-bcc" + cLibExt ) } + l_aLIBSHARED := { cHarbourDyn + cDL_Version_Alter + "-bcc" + cLibExt } l_aLIBSHAREDPOST := { "hbmainstd", "hbmainwin" } l_aLIBSYS := ArrayAJoin( { l_aLIBSYS, l_aLIBSYSCORE, l_aLIBSYSMISC } ) @@ -4295,8 +4293,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) ENDIF ENDIF l_aLIBSYS := ArrayAJoin( { l_aLIBSYS, l_aLIBSYSCORE, l_aLIBSYSMISC } ) - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourmt" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) + cLibExt,; - "harbour" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) + cLibExt ) } + l_aLIBSHARED := { cHarbourDyn + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) + cLibExt } l_aLIBSHAREDPOST := { "hbmainstd", "hbmainwin" } IF ! HBMK_ISCOMP( "icc|iccia64" ) @@ -4410,8 +4407,7 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel ) AAdd( hbmk[ _HBMK_aOPTL ], "-debug" ) ENDIF l_aLIBSYS := ArrayAJoin( { l_aLIBSYS, l_aLIBSYSCORE, l_aLIBSYSMISC } ) - l_aLIBSHARED := { iif( hbmk[ _HBMK_lMT ], "harbourmt" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) + cLibExt,; - "harbour" + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) + cLibExt ) } + l_aLIBSHARED := { cHarbourDyn + cDL_Version_Alter + hbmk_DYNSUFFIX( hbmk ) + cLibExt } l_aLIBSHAREDPOST := { "hbmainstd", "hbmainwin" } CASE ( hbmk[ _HBMK_cPLAT ] == "sunos" .AND. hbmk[ _HBMK_cCOMP ] == "sunpro" ) .OR. ;