2025-10-21 13:20 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* contrib/hbssl/hbssl.hbc
! actually target VS 2017 for libcrypto, libssl
* utils/hbmk2/hbmk2.prg
! slight rework of MSVC version detection, so it actually operates
with empty cPath_CompC variable
* also try to discover version number of future MSVC releases
* with Zig building GUI applications on Windows, hbmk2 will
now pass -Wl,/subsystem:windows to the linker
This commit is contained in:
@@ -7,6 +7,19 @@
|
|||||||
Entries may not always be in chronological/commit order.
|
Entries may not always be in chronological/commit order.
|
||||||
See license at the end of file. */
|
See license at the end of file. */
|
||||||
|
|
||||||
|
2025-10-21 13:20 UTC+0200 Aleksander Czajczynski (hb fki.pl)
|
||||||
|
* contrib/hbssl/hbssl.hbc
|
||||||
|
! actually target VS 2017 for libcrypto, libssl
|
||||||
|
|
||||||
|
* utils/hbmk2/hbmk2.prg
|
||||||
|
! slight rework of MSVC version detection, so it actually operates
|
||||||
|
with empty cPath_CompC variable
|
||||||
|
|
||||||
|
* also try to discover version number of future MSVC releases
|
||||||
|
|
||||||
|
* with Zig building GUI applications on Windows, hbmk2 will
|
||||||
|
now pass -Wl,/subsystem:windows to the linker
|
||||||
|
|
||||||
2025-10-20 17:42 UTC+0200 Aleksander Czajczynski (hb fki.pl)
|
2025-10-20 17:42 UTC+0200 Aleksander Czajczynski (hb fki.pl)
|
||||||
* contrib/hbssl/hbssl.hbc
|
* contrib/hbssl/hbssl.hbc
|
||||||
! actually lib* prefix should stay on win/msvc platform
|
! actually lib* prefix should stay on win/msvc platform
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ skip={dos}
|
|||||||
{!HB_DYNBIND_OPENSSL&unix}libs=ssl crypto
|
{!HB_DYNBIND_OPENSSL&unix}libs=ssl crypto
|
||||||
{!HB_DYNBIND_OPENSSL&os2}libs=libssl_s libcrypto_s
|
{!HB_DYNBIND_OPENSSL&os2}libs=libssl_s libcrypto_s
|
||||||
{!HB_DYNBIND_OPENSSL&win&!allmingw&!allmsvc&!clang&!zig}libs=ssleay32 libeay32
|
{!HB_DYNBIND_OPENSSL&win&!allmingw&!allmsvc&!clang&!zig}libs=ssleay32 libeay32
|
||||||
{!HB_DYNBIND_OPENSSL&allmsvc&HB_COMP_VER<'1401'}libs=ssleay32 libeay32
|
{!HB_DYNBIND_OPENSSL&allmsvc&HB_COMP_VER<'1910'}libs=ssleay32 libeay32
|
||||||
{!HB_DYNBIND_OPENSSL&win&(allmingw|clang|zig)}libs=ssl crypto
|
{!HB_DYNBIND_OPENSSL&win&(allmingw|clang|zig)}libs=ssl crypto
|
||||||
{!HB_DYNBIND_OPENSSL&allmsvc&HB_COMP_VER>'1400'}libs=libssl libcrypto
|
{!HB_DYNBIND_OPENSSL&allmsvc&HB_COMP_VER>'1909'}libs=libssl libcrypto
|
||||||
{!HB_DYNBIND_OPENSSL&allwin}libs=crypt32
|
{!HB_DYNBIND_OPENSSL&allwin}libs=crypt32
|
||||||
|
|||||||
@@ -2283,6 +2283,16 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit
|
|||||||
ENDIF
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
IF hb_LeftEq( hbmk[ _HBMK_cCOMP ], "msvc" ) .AND. Empty( cPath_CompC )
|
||||||
|
cPath_CompC := FindInPath( "cl.exe" )
|
||||||
|
IF Empty( cPath_CompC )
|
||||||
|
cPath_CompC := FindInPath( "link.exe" )
|
||||||
|
IF ! Empty( cPath_CompC )
|
||||||
|
cPath_CompC := hb_FNameDir( cPath_CompC ) + SubStr( hbmk[ _HBMK_cCOMP ], 5 ) + ".exe"
|
||||||
|
ENDIF
|
||||||
|
ENDIF
|
||||||
|
ENDIF
|
||||||
|
|
||||||
DO CASE
|
DO CASE
|
||||||
CASE hbmk[ _HBMK_cPLAT ] == "vxworks"
|
CASE hbmk[ _HBMK_cPLAT ] == "vxworks"
|
||||||
AAdd( hbmk[ _HBMK_aINCPATH ], hb_DirSepToOS( GetEnv( "WIND_BASE" ) + "/target/usr/h" ) )
|
AAdd( hbmk[ _HBMK_aINCPATH ], hb_DirSepToOS( GetEnv( "WIND_BASE" ) + "/target/usr/h" ) )
|
||||||
@@ -2311,7 +2321,6 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit
|
|||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
/* Detect compiler version (where applicable) */
|
/* Detect compiler version (where applicable) */
|
||||||
|
|
||||||
IF hbmk[ _HBMK_nCOMPVer ] == 0 .AND. ! Empty( cPath_CompC )
|
IF hbmk[ _HBMK_nCOMPVer ] == 0 .AND. ! Empty( cPath_CompC )
|
||||||
|
|
||||||
DO CASE
|
DO CASE
|
||||||
@@ -2386,8 +2395,23 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit
|
|||||||
hbmk[ _HBMK_nCOMPVer ] := 1920
|
hbmk[ _HBMK_nCOMPVer ] := 1920
|
||||||
CASE "14.3" $ cPath_CompC /* Visual Studio 2022 */
|
CASE "14.3" $ cPath_CompC /* Visual Studio 2022 */
|
||||||
hbmk[ _HBMK_nCOMPVer ] := 1930
|
hbmk[ _HBMK_nCOMPVer ] := 1930
|
||||||
|
CASE "14.4" $ cPath_CompC /* Visual Studio 2022 */
|
||||||
|
hbmk[ _HBMK_nCOMPVer ] := 1940
|
||||||
OTHERWISE
|
OTHERWISE
|
||||||
hbmk[ _HBMK_nCOMPVer ] := 1400
|
/* trying to discover future versions of VS */
|
||||||
|
IF Empty( tmp := GetEnv( "VCTOOLSVERSION" ) )
|
||||||
|
IF ! Empty( tmp := GetEnv( "VSINSTALLDIR" ) )
|
||||||
|
tmp := hb_MemoRead( tmp + "Auxiliary\Build\Microsoft.VCToolsVersion.default.txt" )
|
||||||
|
ENDIF
|
||||||
|
ENDIF
|
||||||
|
tmp := Int( Val( Left( tmp, At( ".", tmp ) ) + StrTran( SubStr( tmp, At( ".", tmp ) ), "." ) ) * 100 )
|
||||||
|
IF tmp >= 800 .AND. tmp < 1300
|
||||||
|
hbmk[ _HBMK_nCOMPVer ] := tmp + 600
|
||||||
|
ELSEIF tmp >= 1400
|
||||||
|
hbmk[ _HBMK_nCOMPVer ] := tmp + 500
|
||||||
|
ELSE
|
||||||
|
hbmk[ _HBMK_nCOMPVer ] := 1400
|
||||||
|
ENDIF
|
||||||
ENDCASE
|
ENDCASE
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDCASE
|
ENDCASE
|
||||||
@@ -4447,6 +4471,9 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit
|
|||||||
CASE hbmk[ _HBMK_cCOMP ] == "zig"
|
CASE hbmk[ _HBMK_cCOMP ] == "zig"
|
||||||
cBin_CompCPP := "zig" + hbmk[ _HBMK_cCCEXT ] + " c++"
|
cBin_CompCPP := "zig" + hbmk[ _HBMK_cCCEXT ] + " c++"
|
||||||
cBin_CompC := iif( hbmk[ _HBMK_lCPP ] != NIL .AND. hbmk[ _HBMK_lCPP ], cBin_CompCPP, "zig" + hbmk[ _HBMK_cCCEXT ] + " cc" )
|
cBin_CompC := iif( hbmk[ _HBMK_lCPP ] != NIL .AND. hbmk[ _HBMK_lCPP ], cBin_CompCPP, "zig" + hbmk[ _HBMK_cCCEXT ] + " cc" )
|
||||||
|
IF hbmk[ _HBMK_lGUI ]
|
||||||
|
AAdd( hbmk[ _HBMK_aOPTL ], "-Wl,/subsystem:windows" )
|
||||||
|
ENDIF
|
||||||
CASE hbmk[ _HBMK_cCOMP ] == "tcc"
|
CASE hbmk[ _HBMK_cCOMP ] == "tcc"
|
||||||
cBin_CompCPP := "tcc.exe"
|
cBin_CompCPP := "tcc.exe"
|
||||||
cBin_CompC := cBin_CompCPP
|
cBin_CompC := cBin_CompCPP
|
||||||
|
|||||||
Reference in New Issue
Block a user