2009-04-07 16:33 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.bat
! Fixed shared executable creation for cross-builds.
* utils/hbmk2/hbmk2.hbm
* utils/hbi18n/hbi18n.hbm
% Added -nulrdd. This will remove the hbmk2 build size overhead
compared to GNU Make built executables.
* utils/hbmk2/hbmk2.prg
! Don't add the same libdir twice in some cases.
+ Added support for wce arch in remaining places.
! Added hbmainwin and hbmainstd for mingw targets.
This should fix some failing shared lib scenarios I've
experienced with minwgce. I hope it doesn't break
everything else (tested mingw64 and mingw scenarios worked).
* Internal change to handle shared libname separately
so that special extensions and handling can be added
for it, if needed.
This commit is contained in:
@@ -8,6 +8,26 @@
|
||||
2009-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org)
|
||||
*/
|
||||
|
||||
2009-04-07 16:33 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
|
||||
* bin/postinst.bat
|
||||
! Fixed shared executable creation for cross-builds.
|
||||
|
||||
* utils/hbmk2/hbmk2.hbm
|
||||
* utils/hbi18n/hbi18n.hbm
|
||||
% Added -nulrdd. This will remove the hbmk2 build size overhead
|
||||
compared to GNU Make built executables.
|
||||
|
||||
* utils/hbmk2/hbmk2.prg
|
||||
! Don't add the same libdir twice in some cases.
|
||||
+ Added support for wce arch in remaining places.
|
||||
! Added hbmainwin and hbmainstd for mingw targets.
|
||||
This should fix some failing shared lib scenarios I've
|
||||
experienced with minwgce. I hope it doesn't break
|
||||
everything else (tested mingw64 and mingw scenarios worked).
|
||||
* Internal change to handle shared libname separately
|
||||
so that special extensions and handling can be added
|
||||
for it, if needed.
|
||||
|
||||
2009-04-07 12:58 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
|
||||
* external/libhpdf/Makefile
|
||||
! Disabled for wce arch and mingwce comp.
|
||||
@@ -850,7 +870,7 @@
|
||||
with -DHB_DYNLIB. IMO this macro should be ignored in MinGW
|
||||
builds as there is no separate DLL build and non-DLL.
|
||||
[ I cannot fix this. ]
|
||||
Until then I had to a hack to starter batch files.
|
||||
Until then I had to add a hack to starter batch files.
|
||||
|
||||
* mpkg_win.bat
|
||||
* Switched to use make_gnu.bat instead of make_gnu.sh to build
|
||||
|
||||
@@ -39,13 +39,12 @@ if not "%HB_DYNLIB%" == "yes" goto _SKIP_DLL_BIN
|
||||
call %~dp0hb-mkdyn.bat
|
||||
|
||||
setlocal
|
||||
set _HB_BIN_INSTALL=%HB_BIN_INSTALL%
|
||||
if not "%HB_BIN_COMPILE%" == "" set HB_BIN_INSTALL=%HB_BIN_COMPILE%
|
||||
if exist "%_HB_BIN_INSTALL%\*.dll" (
|
||||
%HB_BIN_INSTALL%\hbmk2 -q0 -shared -o%_HB_BIN_INSTALL%\hbrun-dll %~dp0..\utils\hbrun\hbrun.hbm -lhbcplr -lhbpp -lhbcommon
|
||||
%HB_BIN_INSTALL%\hbmk2 -q0 -shared -o%_HB_BIN_INSTALL%\hbmk2-dll %~dp0..\utils\hbmk2\hbmk2.hbm -lhbcplr -lhbpp -lhbcommon
|
||||
%HB_BIN_INSTALL%\hbmk2 -q0 -shared -o%_HB_BIN_INSTALL%\hbtest-dll %~dp0..\utils\hbtest\hbtest.hbm
|
||||
%HB_BIN_INSTALL%\hbmk2 -q0 -shared -o%_HB_BIN_INSTALL%\hbi18n-dll %~dp0..\utils\hbi18n\hbi18n.hbm
|
||||
if "%HB_BIN_COMPILE%" == "" set HB_BIN_COMPILE=%HB_BIN_INSTALL%
|
||||
if exist "%HB_BIN_INSTALL%\*.dll" (
|
||||
%HB_BIN_COMPILE%\hbmk2 -q0 -shared -o%HB_BIN_INSTALL%\hbrun-dll %~dp0..\utils\hbrun\hbrun.hbm -lhbcplr -lhbpp -lhbcommon
|
||||
%HB_BIN_COMPILE%\hbmk2 -q0 -shared -o%HB_BIN_INSTALL%\hbmk2-dll %~dp0..\utils\hbmk2\hbmk2.hbm -lhbcplr -lhbpp -lhbcommon
|
||||
%HB_BIN_COMPILE%\hbmk2 -q0 -shared -o%HB_BIN_INSTALL%\hbtest-dll %~dp0..\utils\hbtest\hbtest.hbm
|
||||
%HB_BIN_COMPILE%\hbmk2 -q0 -shared -o%HB_BIN_INSTALL%\hbi18n-dll %~dp0..\utils\hbi18n\hbi18n.hbm
|
||||
)
|
||||
endlocal
|
||||
|
||||
|
||||
@@ -2,4 +2,5 @@
|
||||
# $Id$
|
||||
#
|
||||
|
||||
-nulrdd
|
||||
hbi18n.prg
|
||||
|
||||
@@ -2,4 +2,5 @@
|
||||
# $Id$
|
||||
#
|
||||
|
||||
-nulrdd
|
||||
hbmk2.prg
|
||||
|
||||
@@ -213,6 +213,7 @@ PROCEDURE Main( ... )
|
||||
LOCAL s_aRESSRC
|
||||
LOCAL s_aRESCMP
|
||||
LOCAL s_aLIBSHARED
|
||||
LOCAL s_aLIBSHAREDPOST
|
||||
LOCAL s_aLIB
|
||||
LOCAL s_aLIBVM
|
||||
LOCAL s_aLIBUSER
|
||||
@@ -758,7 +759,7 @@ PROCEDURE Main( ... )
|
||||
|
||||
/* Add main Harbour library dir to lib path list */
|
||||
AAddNotEmpty( s_aLIBPATH, s_cHB_LIB_INSTALL )
|
||||
IF ! Empty( s_cHB_DYN_INSTALL )
|
||||
IF ! Empty( s_cHB_DYN_INSTALL ) .AND. !( s_cHB_DYN_INSTALL == s_cHB_LIB_INSTALL )
|
||||
AAddNotEmpty( s_aLIBPATH, s_cHB_DYN_INSTALL )
|
||||
ENDIF
|
||||
|
||||
@@ -1234,7 +1235,7 @@ PROCEDURE Main( ... )
|
||||
CASE t_cARCH $ "bsd|linux|hpux|sunos" .OR. t_cARCH == "darwin" /* Separated to avoid match with 'win' */
|
||||
s_aLIBSHARED := { iif( s_lMT, cPrefix + cDynLibNamePrefix + "harbourmt" + cPostfix + cDynLibExt,;
|
||||
cPrefix + cDynLibNamePrefix + "harbour" + cPostfix + cDynLibExt ) }
|
||||
CASE t_cARCH $ "os2|win"
|
||||
CASE t_cARCH $ "os2|win|wce"
|
||||
s_aLIBSHARED := { iif( s_lMT, cDynLibNamePrefix + "harbourmt",;
|
||||
cDynLibNamePrefix + "harbour" ) }
|
||||
OTHERWISE
|
||||
@@ -1496,6 +1497,8 @@ PROCEDURE Main( ... )
|
||||
"harbour-" + cDL_Version_Alter ) }
|
||||
ENDCASE
|
||||
|
||||
s_aLIBSHAREDPOST := { "hbmainstd", "hbmainwin" }
|
||||
|
||||
IF s_lFMSTAT != NIL .AND. s_lFMSTAT
|
||||
AAdd( s_aLIBFM, iif( s_lMT, "hbfmmt", "hbfm" ) )
|
||||
ENDIF
|
||||
@@ -1640,8 +1643,8 @@ PROCEDURE Main( ... )
|
||||
AAdd( s_aOPTL, "OP MAP" )
|
||||
ENDIF
|
||||
s_aLIBSYS := ArrayAJoin( { s_aLIBSYS, s_aLIBSYSCORE, s_aLIBSYSMISC } )
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter,;
|
||||
"harbour-" + cDL_Version_Alter ) }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + cLibExt ) }
|
||||
|
||||
AAdd( s_aOPTL, "FILE " + FN_ExtSet( s_cHB_LIB_INSTALL + hb_osPathSeparator() + iif( s_lGUI, "hbmainwin", "hbmainstd" ), cLibExt ) )
|
||||
|
||||
@@ -1766,10 +1769,9 @@ PROCEDURE Main( ... )
|
||||
IF s_lSHARED
|
||||
AAdd( s_aLIBPATH, "{DB}" )
|
||||
ENDIF
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-bcc",;
|
||||
"harbour-" + cDL_Version_Alter + "-bcc" ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-bcc" + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + "-bcc" + cLibExt ) }
|
||||
s_aLIBSHAREDPOST := { "hbmainstd", "hbmainwin" }
|
||||
|
||||
IF s_lFMSTAT != NIL .AND. s_lFMSTAT
|
||||
AAdd( s_aLIBFM, iif( s_lMT, "hbfmmt", "hbfm" ) )
|
||||
@@ -1860,27 +1862,21 @@ PROCEDURE Main( ... )
|
||||
ENDIF
|
||||
DO CASE
|
||||
CASE t_cCOMP $ "msvc|icc"
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter,;
|
||||
"harbour-" + cDL_Version_Alter ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + cLibExt ) }
|
||||
CASE t_cCOMP == "msvc64"
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-x64",;
|
||||
"harbour-" + cDL_Version_Alter + "-x64" ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-x64" + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + "-x64" + cLibExt ) }
|
||||
CASE t_cCOMP $ "msvcia64|iccia64"
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-ia64",;
|
||||
"harbour-" + cDL_Version_Alter + "-ia64" ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-ia64" + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + "-ia64" + cLibExt ) }
|
||||
CASE t_cCOMP == "msvcce" .OR. t_cCOMP == "msvcarm"
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-arm",;
|
||||
"harbour-" + cDL_Version_Alter + "-arm" ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-arm" + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + "-arm" + cLibExt ) }
|
||||
ENDCASE
|
||||
|
||||
s_aLIBSHAREDPOST := { "hbmainstd", "hbmainwin" }
|
||||
|
||||
IF !( t_cCOMP $ "icc|iccia64" )
|
||||
cBin_Res := "rc.exe"
|
||||
cOpt_Res := "/r {LR}"
|
||||
@@ -1962,22 +1958,18 @@ PROCEDURE Main( ... )
|
||||
ENDIF
|
||||
DO CASE
|
||||
CASE t_cCOMP == "pocc64"
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-x64",;
|
||||
"harbour-" + cDL_Version_Alter + "-x64" ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-x64" + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + "-x64" + cLibExt ) }
|
||||
CASE t_cCOMP $ "poccce|poccarm"
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-arm",;
|
||||
"harbour-" + cDL_Version_Alter + "-arm" ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + "-arm" + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + "-arm" + cLibExt ) }
|
||||
OTHERWISE
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter,;
|
||||
"harbour-" + cDL_Version_Alter ),;
|
||||
"hbmainstd",;
|
||||
"hbmainwin" }
|
||||
s_aLIBSHARED := { iif( s_lMT, "harbourmt-" + cDL_Version_Alter + cLibExt,;
|
||||
"harbour-" + cDL_Version_Alter + cLibExt ) }
|
||||
ENDCASE
|
||||
|
||||
s_aLIBSHAREDPOST := { "hbmainstd", "hbmainwin" }
|
||||
|
||||
IF s_lFMSTAT != NIL .AND. s_lFMSTAT
|
||||
AAdd( s_aLIBFM, iif( s_lMT, "hbfmmt", "hbfm" ) )
|
||||
ENDIF
|
||||
@@ -1991,7 +1983,7 @@ PROCEDURE Main( ... )
|
||||
ENDIF
|
||||
ENDCASE
|
||||
|
||||
IF lCreateDyn .AND. t_cARCH == "win"
|
||||
IF lCreateDyn .AND. t_cARCH $ "win|wce"
|
||||
AAdd( s_aOPTC, "-DHB_DYNLIB" )
|
||||
ENDIF
|
||||
|
||||
@@ -2017,7 +2009,7 @@ PROCEDURE Main( ... )
|
||||
/* NOTE: This has to be kept synced with Harbour HB_IMPORT values. */
|
||||
DO CASE
|
||||
CASE ! s_lSHARED .OR. ;
|
||||
!( t_cARCH == "win" ) .OR. ;
|
||||
!( t_cARCH $ "win|wce" ) .OR. ;
|
||||
t_cCOMP $ "msvc|msvc64|msvcia64|icc|iccia64"
|
||||
|
||||
/* NOTE: MSVC gives the warning:
|
||||
@@ -2105,7 +2097,7 @@ PROCEDURE Main( ... )
|
||||
|
||||
/* Library list assembly */
|
||||
IF s_lSHARED .AND. ! Empty( s_aLIBSHARED )
|
||||
s_aLIBHB := ArrayAJoin( { s_aLIBSHARED,;
|
||||
s_aLIBHB := ArrayAJoin( { s_aLIBSHAREDPOST,;
|
||||
s_aLIBFM,;
|
||||
aLIB_BASE_CPLR,;
|
||||
aLIB_BASE_DEBUG } )
|
||||
@@ -2125,6 +2117,9 @@ PROCEDURE Main( ... )
|
||||
s_aLIB := ArrayAJoin( { s_aLIBHB, s_aLIBUSER, s_aLIB3RD, s_aLIBSYS } )
|
||||
/* Dress lib names. */
|
||||
s_aLIB := ListCookLib( s_aLIB, cLibPrefix, cLibExt )
|
||||
IF s_lSHARED .AND. ! Empty( s_aLIBSHARED )
|
||||
s_aLIB := ArrayJoin( ListCookLib( s_aLIBSHARED, cLibPrefix ), s_aLIB )
|
||||
ENDIF
|
||||
/* Dress obj names. */
|
||||
s_aOBJ := ListDirExt( ArrayJoin( s_aPRG, s_aC ), "", cObjExt )
|
||||
s_aOBJUSER := ListCook( s_aOBJUSER, NIL, cObjExt )
|
||||
@@ -2751,7 +2746,7 @@ STATIC FUNCTION PathSepToTarget( cFileName, nStart )
|
||||
|
||||
DEFAULT nStart TO 1
|
||||
|
||||
IF t_cARCH $ "win|dos|os2" .AND. !( t_cCOMP $ "mingw|mingw64|mingwce|mingwarm|cygwin" )
|
||||
IF t_cARCH $ "win|wce|dos|os2" .AND. !( t_cCOMP $ "mingw|mingw64|mingwce|mingwarm|cygwin" )
|
||||
RETURN Left( cFileName, nStart - 1 ) + StrTran( SubStr( cFileName, nStart ), "/", "\" )
|
||||
ENDIF
|
||||
|
||||
|
||||
Reference in New Issue
Block a user