2010-07-07 10:08 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

* config/postinst.hbs
    + Using hbi18n tool to generate .hbl files to utils.
      (currently hbmk2 only)
      This fixes missing .hbl after latest changes which dropped
      regenerating utils at postinst phase. At the same time it
      enables .hbl file generation for all platforms. The logic
      will automatically generate .hbl files for all .po files
      found under any utils.

  * INSTALL
  * utils/Makefile
    + Added hbi18 to the list of tools required to build Harbour
      in cross-platform situations.

  * contrib/hbqt/hbmk2_plugin_qt.hbs
    ! Fixed QT tools detection on HB_WITH_QT.
This commit is contained in:
Viktor Szakats
2010-07-07 08:09:04 +00:00
parent b659d0135d
commit 5994143e6a
5 changed files with 78 additions and 11 deletions

View File

@@ -16,6 +16,24 @@
The license applies to all entries newer than 2009-04-28.
*/
2010-07-07 10:08 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/postinst.hbs
+ Using hbi18n tool to generate .hbl files to utils.
(currently hbmk2 only)
This fixes missing .hbl after latest changes which dropped
regenerating utils at postinst phase. At the same time it
enables .hbl file generation for all platforms. The logic
will automatically generate .hbl files for all .po files
found under any utils.
* INSTALL
* utils/Makefile
+ Added hbi18 to the list of tools required to build Harbour
in cross-platform situations.
* contrib/hbqt/hbmk2_plugin_qt.hbs
! Fixed QT tools detection on HB_WITH_QT.
2010-07-06 18:29 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
+ contrib/hbide/editor.ui
+ Added: to be used a little while.
@@ -33,7 +51,7 @@
* contrib/hbide/idesaveload.prg
+ Implemented: a better control over code completion feature.
Now completion list can be presented with argument list intact,
i.e., hbide_isValidSource( cSourceFile ) can be presented
i.e., hbide_isValidSource( cSourceFile ) can be presented
either as (default) hbide_isValidSource OR
hbide_isValidSource( cSourceFile )
Similarily, code can also be completed including arguments

View File

@@ -704,8 +704,8 @@ HARBOUR
If you leave this value empty, the make system will try to autodetect it,
so in practice all you have to do is to create a native build first (no
'install' required), then create the cross-build. If you set this value
manually, it may be useful to know that only harbour, hbpp, hbmk2, hbrun
executables are required for a cross-build process to succeed.
manually, it may be useful to know that harbour, hbpp, hbmk2, hbrun,
hbi18n executables are required for a cross-build process to succeed.
7. DEBUGGING OPTIONS

View File

@@ -88,6 +88,46 @@ PROCEDURE Main()
NEXT
ENDIF
/* Creating shared version of Harbour binaries */
IF ! Empty( GetEnv( "HB_HOST_BIN_DIR" ) )
#if 0
OutStd( "! Making hbmk2 to create .hbl files..." + hb_osNewLine() )
tmp := ""
IF GetEnv( "HB_BUILD_MODE" ) == "cpp"
tmp += " -cpp=yes"
ELSEIF GetEnv( "HB_BUILD_MODE" ) == "c"
tmp += " -cpp=no"
ENDIF
IF GetEnv( "HB_BUILD_DEBUG" ) == "yes"
tmp += " -debug"
ENDIF
IF GetEnv( "HB_BUILD_SHARED" ) == "yes"
tmp += " -shared"
ENDIF
mk_hb_processRun( PathSepToSelf( GetEnv( "HB_HOST_BIN_DIR" ) ) + hb_ps() + "hbmk2" +;
" -quiet -lang=en -q0" + tmp +;
" utils/hbmk2/hbmk2.hbp" +;
" -o${HB_BIN_INSTALL}/hbmk2" )
#else
OutStd( "! Making .hbl files..." + hb_osNewLine() )
FOR EACH tmp IN Directory( "utils" + hb_ps() + hb_osFileMask(), "D" )
IF "D" $ tmp[ F_ATTR ] .AND. !( tmp[ F_NAME ] == "." ) .AND. !( tmp[ F_NAME ] == ".." )
FOR EACH cFile IN Directory( "utils" + hb_ps() + tmp[ F_NAME ] + hb_ps() + "*.po" )
mk_hb_processRun( PathSepToSelf( GetEnv( "HB_HOST_BIN_DIR" ) ) + hb_ps() + "hbi18n" +;
" -q -g -o" + PathSepToSelf( GetEnv( "HB_BIN_INSTALL" ) ) + hb_ps() + FN_ExtSet( cFile[ F_NAME ], ".hbl" ) +;
" " + PathSepToSelf( "utils" + hb_ps() + tmp[ F_NAME ] + hb_ps() + cFile[ F_NAME ] ) )
NEXT
ENDIF
NEXT
#endif
ENDIF
/* Creating install packages */
IF GetEnv( "HB_PLATFORM" ) $ "win|wce|os2|dos" .AND. ;
@@ -142,6 +182,13 @@ STATIC FUNCTION mk_hb_processRun( cCommand )
STATIC FUNCTION FN_Escape( cFN )
RETURN Chr( 34 ) + cFN + Chr( 34 )
STATIC FUNCTION FN_ExtSet( cFileName, cExt )
LOCAL cDir, cName
hb_FNameSplit( cFileName, @cDir, @cName )
RETURN hb_FNameMerge( cDir, cName, cExt )
STATIC FUNCTION PathSepToSelf( cFileName )
#if defined( __PLATFORM__WINDOWS ) .OR. ;
defined( __PLATFORM__DOS ) .OR. ;

View File

@@ -344,6 +344,7 @@ STATIC FUNCTION qt_tool_detect( hbmk2, cName, cEnvQT, cEnvHB )
IF Empty( GetEnv( "HB_QTPATH" ) ) .OR. ;
! hb_FileExists( cBIN := GetEnv( "HB_QTPATH" ) + cName )
cBIN := ""
IF hbmk2[ "cPLAT" ] == "win"
hb_AIns( aEnvList, 1, "HB_WITH_QT", .T. )
@@ -351,18 +352,19 @@ STATIC FUNCTION qt_tool_detect( hbmk2, cName, cEnvQT, cEnvHB )
IF ! Empty( GetEnv( "HB_WITH_QT" ) ) .AND. ;
!( GetEnv( "HB_WITH_QT" ) == "no" )
cBIN := GetEnv( "HB_WITH_QT" ) + "\..\bin\" + cName + ".exe"
IF ! hb_FileExists( cBIN )
hbmk2_OutErr( hbmk2, hb_StrFormat( "HB_WITH_QT points to incomplete QT installation. '%1$s' executable not found.", cName ) )
RETURN NIL
IF ! hb_FileExists( cBIN := hbmk2_PathNormalize( GetEnv( "HB_WITH_QT" ) + "\..\bin\" + cName + ".exe" ) )
hbmk2_OutErr( hbmk2, hb_StrFormat( "Warning: HB_WITH_QT points to incomplete QT installation. '%1$s' executable not found.", cName ) )
cBIN := ""
ENDIF
ENDIF
ENDIF
cBIN := hbmk2_FindInPath( cName, GetEnv( "PATH" ) + hb_osPathListSeparator() + "/opt/qtsdk/qt/bin" )
IF Empty( cBIN )
hbmk2_OutErr( hbmk2, hb_StrFormat( "%1$s not set, could not autodetect '%2$s' executable", hbmk2_ArrayToList( aEnvList, ", " ), cName ) )
RETURN NIL
cBIN := hbmk2_FindInPath( cName, GetEnv( "PATH" ) + hb_osPathListSeparator() + "/opt/qtsdk/qt/bin" )
IF Empty( cBIN )
hbmk2_OutErr( hbmk2, hb_StrFormat( "%1$s not set, could not autodetect '%2$s' executable", hbmk2_ArrayToList( aEnvList, ", " ), cName ) )
RETURN NIL
ENDIF
ENDIF
ENDIF
IF hbmk2[ "lINFO" ]

View File

@@ -7,11 +7,11 @@ ROOT := ../
DIRS := \
hbrun \
hbmk2 \
hbi18n \
ifneq ($(HB_BUILD_PARTS),compiler)
DIRS += \
hbi18n \
hbtest \
hbformat \