2009-08-24 17:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

* config/global.mk
  * INSTALL
    + Added poccarm and pocc64 autodetection.
    + Added iccia64 autodetection.
    + Added watcom target platform detection on all host platforms.
    + Added djgpp autodetection under win hosts.
    % Simplified INSTALL examples accordingly.
      Actually it's so simple now that only 'make' should be
      issue after setting up the compiler according to compiler
      docs. It's very rare that HB_COMPILER or HB_PLATFORM should
      be specified now on non-*nix platforms.
    * Minor formatting.
    - Deleted debug $(info) line.

  * utils/hbmk2/hbmk2.hu_HU.po
  * utils/hbmk2/hbmk2.prg
    ! Fixed to not initialize HB_DYN_INSTALL location to central lib
      dir in case there was a plat/comp specific lib dir found.
      I can't remember why this was done this way, but now it doesn't
      seem to be necessary and it can just cause problems, as central
      lib may contain some overlapping lib name (leftovers from other
      'install' sessions) causing trouble for linkers. It also cleaner
      this way.
    ! Added '(internal)' text to Harbour command -trace output.
    ! Changed harbour.exe path in internal command trace/error output
      to use the same base dir as hbmk2 itself. In cross-compile
      situations this is more accurate. Since harbour.exe shouldn't
      necessarily exist, I've put harbour.exe path in paranthesis
      to suggest it's not a real path.
    ; NOTE: Actually now hbmk2 autodetection code is lagging behind
            GNU Make, so hbmk may need to get a bigger internal revision
            sooner or later to catch up. It currently cannot switch
            platforms based on detected situation, also the embedded
            and normal tool installation should be merged, plus
            autodetection added for *nix platforms.

  * include/hbwince.h
  * include/hbdef.h
    ! Added HB_EXPORT to some WinCE function, because they are needed
      to successfully link shared final executable for non-mingw
      wce compilers (poccarm and msvcarm). (in mingw we automatically
      export all 'extern' functions, so this isn't a problem)
This commit is contained in:
Viktor Szakats
2009-08-24 15:42:57 +00:00
parent d51a2936eb
commit d966aa88f1
7 changed files with 211 additions and 122 deletions

View File

@@ -17,6 +17,50 @@
past entries belonging to author(s): Viktor Szakats.
*/
2009-08-24 17:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/global.mk
* INSTALL
+ Added poccarm and pocc64 autodetection.
+ Added iccia64 autodetection.
+ Added watcom target platform detection on all host platforms.
+ Added djgpp autodetection under win hosts.
% Simplified INSTALL examples accordingly.
Actually it's so simple now that only 'make' should be
issue after setting up the compiler according to compiler
docs. It's very rare that HB_COMPILER or HB_PLATFORM should
be specified now on non-*nix platforms.
* Minor formatting.
- Deleted debug $(info) line.
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
! Fixed to not initialize HB_DYN_INSTALL location to central lib
dir in case there was a plat/comp specific lib dir found.
I can't remember why this was done this way, but now it doesn't
seem to be necessary and it can just cause problems, as central
lib may contain some overlapping lib name (leftovers from other
'install' sessions) causing trouble for linkers. It also cleaner
this way.
! Added '(internal)' text to Harbour command -trace output.
! Changed harbour.exe path in internal command trace/error output
to use the same base dir as hbmk2 itself. In cross-compile
situations this is more accurate. Since harbour.exe shouldn't
necessarily exist, I've put harbour.exe path in paranthesis
to suggest it's not a real path.
; NOTE: Actually now hbmk2 autodetection code is lagging behind
GNU Make, so hbmk may need to get a bigger internal revision
sooner or later to catch up. It currently cannot switch
platforms based on detected situation, also the embedded
and normal tool installation should be merged, plus
autodetection added for *nix platforms.
* include/hbwince.h
* include/hbdef.h
! Added HB_EXPORT to some WinCE function, because they are needed
to successfully link shared final executable for non-mingw
wce compilers (poccarm and msvcarm). (in mingw we automatically
export all 'extern' functions, so this isn't a problem)
2009-08-24 17:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-mkdyn.sh
* harbour/bin/postinst.sh
@@ -25036,6 +25080,7 @@
hbmk: Error: Running linker. 1:
polink.exe hbtest.obj rt_array.obj rt_date.obj rt_file.obj rt_hvm.obj rt_hvma.obj rt_math.obj rt_misc.obj rt_mt.obj rt_str.obj rt_stra.obj rt_trans.obj rt_class.obj rt_miscc.obj /libpath:C:\work\harbour-new\harbour\_hb_install_temp\harbour-wce-poccarm\lib /subsystem:windows /out:C:\work\harbour-new\harbour\_hb_install_temp\harbour-wce-poccarm\bin\hbtest-dll.exe /libpath:C:\work\harbour-new\harbour\_hb_install_temp\harbour-wce-poccarm\bin harbour-11-arm.lib hbmainstd.lib hbmainwin.lib hbcplr.lib hbdebug.lib wininet.lib ws2.lib commdlg.lib commctrl.lib uuid.lib ole32.lib
---
[DONE]
2009-04-08 10:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL

View File

@@ -579,14 +579,6 @@ EXAMPLES
sh -c make
---
--- Open Watcom C++
SET WATCOM=C:\watcom
SET PATH=%WATCOM%\BINNT;%WATCOM%\BINW;%PATH%
SET EDPATH=%WATCOM%\EDDAT
SET INCLUDE=%WATCOM%\H;%WATCOM%\H\NT
mingw32-make
---
--- Intel(R) C++
call "%ProgramFiles%\Intel\Compiler\C++\10.1.014\IA32\Bin\iclvars.bat"
mingw32-make
@@ -594,7 +586,7 @@ EXAMPLES
--- Intel(R) C++ for Windows IA-64 (requires preceding build for native target)
call "%ProgramFiles%\Intel\Compiler\C++\10.1.025\Itanium\Bin\iclvars.bat"
mingw32-make HB_COMPILER=iccia64
mingw32-make
---
--- Borland/CodeGear C++
@@ -613,20 +605,28 @@ EXAMPLES
set PATH=%ProgramFiles%\PellesC\Bin;%PATH%
set INCLUDE=%ProgramFiles%\PellesC\Include;%ProgramFiles%\PellesC\Include\Win;%INCLUDE%
set LIB=%ProgramFiles%\PellesC\Lib;%ProgramFiles%\PellesC\Lib\Win64;%LIB%
mingw32-make HB_COMPILER=pocc64
mingw32-make
---
--- Pelles C for Windows CE ARM (requires preceding build for native target)
set PATH=%ProgramFiles%\PellesC\Bin;%PATH%
set INCLUDE=%ProgramFiles%\PellesC\Include\WinCE;%ProgramFiles%\PellesC\Include;%INCLUDE%
set LIB=%ProgramFiles%\PellesC\Lib;%ProgramFiles%\PellesC\Lib\WinCE;%LIB%
mingw32-make HB_COMPILER=poccarm
mingw32-make
---
--- Delorie GNU C for MS-DOS (on Intel 32-bit Windows hosts only)
set DJGPP=C:\djgpp\djgpp.env
set PATH=C:\djgpp\bin;%PATH%
mingw32-make HB_PLATFORM=dos
mingw32-make
---
--- Open Watcom C++
SET WATCOM=C:\watcom
SET PATH=%WATCOM%\BINNT;%WATCOM%\BINW;%PATH%
SET EDPATH=%WATCOM%\EDDAT
SET INCLUDE=%WATCOM%\H;%WATCOM%\H\NT
mingw32-make
---
--- Open Watcom C++ for MS-DOS
@@ -634,7 +634,7 @@ EXAMPLES
SET PATH=%WATCOM%\BINNT;%PATH%
SET EDPATH=%WATCOM%\EDDAT
SET INCLUDE=%WATCOM%\H
mingw32-make HB_PLATFORM=dos
mingw32-make
---
--- Open Watcom C++ for OS/2 (requires preceding build for Windows target)
@@ -643,7 +643,7 @@ EXAMPLES
SET BEGINLIBPATH=%WATCOM%\BINP\DLL
SET EDPATH=%WATCOM%\EDDAT
SET INCLUDE=%WATCOM%\H;%WATCOM%\H\OS2
mingw32-make HB_PLATFORM=os2
mingw32-make
---
--- Open Watcom C++ for Linux (requires preceding build for Windows target)
@@ -651,7 +651,7 @@ EXAMPLES
SET PATH=%WATCOM%\BINNT;%WATCOM%\BINW;%PATH%
SET EDPATH=%WATCOM%\EDDAT
SET INCLUDE=%WATCOM%\LH
mingw32-make HB_PLATFORM=linux
mingw32-make
---
--8<--
@@ -767,7 +767,7 @@ EXAMPLES
export HB_XBUILD=yes
# ;
export HB_INSTALL_PREFIX="$(pwd)/hb-os2/watcom"
make HB_PLATFORM=os2 "$@"
make "$@"
---
for *nix hosts in general

View File

@@ -62,75 +62,89 @@ find_in_path = $(strip $(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x,
find_in_path_par = $(strip $(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(2))), $(wildcard $(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1)$(HB_HOST_BIN_EXT))))
find_in_path_raw = $(strip $(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(2))), $(wildcard $(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1))))
define check_host
ifneq ($(findstring MINGW,$(1)),)
HB_HOST_PLAT := win
else
ifneq ($(findstring MSys,$(1)),)
HB_HOST_PLAT := win
define detect_watcom_platform
ifneq ($(call find_in_path_raw,os2.h,$(INCLUDE)),)
HB_PLATFORM := os2
else
ifneq ($(findstring Windows,$(1)),)
HB_HOST_PLAT := win
ifneq ($(call find_in_path_raw,dirent.h,$(INCLUDE)),)
HB_PLATFORM := linux
else
ifneq ($(findstring CYGWIN,$(1)),)
HB_HOST_PLAT := win
else
ifneq ($(findstring Darwin,$(1)),)
HB_HOST_PLAT := darwin
else
ifneq ($(findstring darwin,$(1)),)
HB_HOST_PLAT := darwin
else
ifneq ($(findstring Linux,$(1)),)
HB_HOST_PLAT := linux
else
ifneq ($(findstring linux,$(1)),)
HB_HOST_PLAT := linux
else
ifneq ($(findstring HP-UX,$(1)),)
HB_HOST_PLAT := hpux
else
ifneq ($(findstring hp-ux,$(1)),)
HB_HOST_PLAT := hpux
else
ifneq ($(findstring SunOS,$(1)),)
HB_HOST_PLAT := sunos
else
ifneq ($(findstring sunos,$(1)),)
HB_HOST_PLAT := sunos
else
ifneq ($(findstring BSD,$(1)),)
HB_HOST_PLAT := bsd
else
ifneq ($(findstring bsd,$(1)),)
HB_HOST_PLAT := bsd
else
ifneq ($(findstring OS/2,$(1)),)
HB_HOST_PLAT := os2
else
ifneq ($(findstring MS-DOS,$(1)),)
HB_HOST_PLAT := dos
else
ifneq ($(findstring msdos,$(1)),)
HB_HOST_PLAT := dos
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
ifeq ($(call find_in_path_raw,windows.h,$(INCLUDE)),)
HB_PLATFORM := dos
endif
endif
endif
endif
endef
define check_host
ifneq ($(findstring MINGW,$(1)),)
HB_HOST_PLAT := win
else
ifneq ($(findstring MSys,$(1)),)
HB_HOST_PLAT := win
else
ifneq ($(findstring Windows,$(1)),)
HB_HOST_PLAT := win
else
ifneq ($(findstring CYGWIN,$(1)),)
HB_HOST_PLAT := win
else
ifneq ($(findstring Darwin,$(1)),)
HB_HOST_PLAT := darwin
else
ifneq ($(findstring darwin,$(1)),)
HB_HOST_PLAT := darwin
else
ifneq ($(findstring Linux,$(1)),)
HB_HOST_PLAT := linux
else
ifneq ($(findstring linux,$(1)),)
HB_HOST_PLAT := linux
else
ifneq ($(findstring HP-UX,$(1)),)
HB_HOST_PLAT := hpux
else
ifneq ($(findstring hp-ux,$(1)),)
HB_HOST_PLAT := hpux
else
ifneq ($(findstring SunOS,$(1)),)
HB_HOST_PLAT := sunos
else
ifneq ($(findstring sunos,$(1)),)
HB_HOST_PLAT := sunos
else
ifneq ($(findstring BSD,$(1)),)
HB_HOST_PLAT := bsd
else
ifneq ($(findstring bsd,$(1)),)
HB_HOST_PLAT := bsd
else
ifneq ($(findstring OS/2,$(1)),)
HB_HOST_PLAT := os2
else
ifneq ($(findstring MS-DOS,$(1)),)
HB_HOST_PLAT := dos
else
ifneq ($(findstring msdos,$(1)),)
HB_HOST_PLAT := dos
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endef
@@ -565,7 +579,6 @@ ifeq ($(HB_COMPILER),)
ifeq ($(HB_CCPATH)$(HB_CCPREFIX),)
MINGW_BASE_LIST := /usr /usr/local /usr/local/mingw32 /opt/xmingw
MINGW_PREFIX := $(firstword $(foreach d, $(MINGW_BASE_LIST), $(wildcard $(d)/bin/i?86-mingw*-gcc$(HB_HOST_BIN_EXT))))
$(info "->[$(MINGW_PREFIX)]<-[$(HB_HOST_BIN_EXT)][$(substpat)]")
ifneq ($(MINGW_PREFIX),)
HB_CCPATH := $(dir $(MINGW_PREFIX))
HB_CCPREFIX := $(notdir $(MINGW_PREFIX))
@@ -680,53 +693,77 @@ ifeq ($(HB_COMPILER),)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := cygwin
else
HB_COMP_PATH := $(call find_in_path,gcc)
HB_COMP_PATH := $(call find_in_path,djasm)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := mingw
HB_PLATFORM := dos
HB_COMPILER := djgpp
ifneq ($(HB_HOST_CPU),x86)
$(error ! Error: DJGPP cross-builds are only possible on 32-bit Windows hosts)
endif
else
HB_COMP_PATH := $(call find_in_path,wpp386)
HB_COMP_PATH := $(call find_in_path,gcc)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := watcom
HB_COMPILER := mingw
else
HB_COMP_PATH := $(call find_in_path,clarm)
HB_COMP_PATH := $(call find_in_path,wpp386)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := msvcarm
HB_PLATFORM := wce
export HB_VISUALC_VER_PRE80 := yes
HB_COMPILER := watcom
$(eval $(call detect_watcom_platform))
else
HB_COMP_PATH := $(call find_in_path,armasm)
HB_COMP_PATH := $(call find_in_path,clarm)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := msvcarm
HB_PLATFORM := wce
export HB_VISUALC_VER_PRE80 := yes
else
HB_COMP_PATH := $(call find_in_path,ml64)
HB_COMP_PATH := $(call find_in_path,armasm)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := msvc64
HB_COMPILER := msvcarm
HB_PLATFORM := wce
else
HB_COMP_PATH := $(call find_in_path,icl)
HB_COMP_PATH := $(call find_in_path,idis)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := icc
HB_COMPILER := iccia64
else
HB_COMP_PATH := $(call find_in_path,cl)
HB_COMP_PATH := $(call find_in_path,icl)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := msvc
HB_COMPILER := icc
else
HB_COMP_PATH := $(call find_in_path,bcc32)
HB_COMP_PATH := $(call find_in_path,ml64)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := bcc
HB_COMPILER := msvc64
else
HB_COMP_PATH := $(call find_in_path,pocc)
HB_COMP_PATH := $(call find_in_path,cl)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := pocc
HB_COMPILER := msvc
else
HB_COMP_PATH := $(call find_in_path,xcc)
HB_COMP_PATH := $(call find_in_path,bcc32)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := xcc
HB_COMPILER := bcc
else
HB_COMP_PATH := $(call find_in_path,x86_64-w64-mingw32-gcc)
HB_COMP_PATH := $(call find_in_path,pocc)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := mingw64
HB_CCPREFIX := x86_64-w64-mingw32-
ifneq ($(call find_in_path_raw,coredll.lib,$(LIB)),)
HB_PLATFORM := wce
HB_COMPILER := poccarm
else
ifneq ($(call find_in_path_raw,dbgeng.lib,$(LIB)),)
HB_COMPILER := pocc64
else
HB_COMPILER := pocc
endif
endif
else
HB_COMP_PATH := $(call find_in_path,xcc)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := xcc
else
HB_COMP_PATH := $(call find_in_path,x86_64-w64-mingw32-gcc)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := mingw64
HB_CCPREFIX := x86_64-w64-mingw32-
endif
endif
endif
endif
endif
@@ -747,6 +784,7 @@ ifeq ($(HB_COMPILER),)
HB_COMP_PATH := $(call find_in_path,wpp386)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := watcom
$(eval $(call detect_watcom_platform))
else
HB_COMP_PATH := $(call find_in_path,gcc)
ifneq ($(HB_COMP_PATH),)
@@ -779,6 +817,7 @@ ifeq ($(HB_COMPILER),)
HB_COMP_PATH := $(call find_in_path,wpp386)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := watcom
$(eval $(call detect_watcom_platform))
endif
endif
else
@@ -790,6 +829,7 @@ ifeq ($(HB_COMPILER),)
HB_COMP_PATH := $(call find_in_path,wpp386)
ifneq ($(HB_COMP_PATH),)
HB_COMPILER := watcom
$(eval $(call detect_watcom_platform))
endif
endif
else
@@ -802,7 +842,7 @@ ifeq ($(HB_COMPILER),)
endif
endif
ifneq ($(HB_COMPILER),)
HB_COMP_PATH := $(subst $(substpat), ,$(dir $(subst $(subst x, ,x),$(substpat),$(firstword $(HB_COMP_PATH)))))
HB_COMP_PATH := $(subst $(substpat), ,$(dir $(firstword $(subst $(subst x, ,x),$(substpat),$(HB_COMP_PATH)))))
HB_COMP_AUTO := (autodetected$(if $(HB_COMP_PATH),: $(HB_COMP_PATH),))
endif
export HB_CCPATH

View File

@@ -185,10 +185,6 @@
#endif
#if defined( HB_OS_WIN )
#include "hbwince.h"
#endif
#if ! defined( HB_DONT_DEFINE_BASIC_TYPES )
#if ! defined( HB_DONT_DEFINE_BOOL )
@@ -1594,6 +1590,10 @@ typedef PHB_FUNC HB_FUNC_PTR;
#endif
#if defined( HB_OS_WIN )
#include "hbwince.h"
#endif
/* Function declaration macros */
/* NOTE: The prefix is "HB_FUN_" currently, this is needed to

View File

@@ -181,13 +181,13 @@ extern char *strerror( int errnum );
#endif /* HB_OS_WIN_CE */
extern wchar_t * hb_mbtowc( const char *srcA );
extern char * hb_wctomb( const wchar_t *srcW );
extern wchar_t * hb_mbntowc( const char *srcA, unsigned long ulLen );
extern char * hb_wcntomb( const wchar_t *srcW, unsigned long ulLen );
extern void hb_mbtowccpy( wchar_t *dstW, const char *srcA, unsigned long ulLen );
extern void hb_mbtowcset( wchar_t *dstW, const char *srcA, unsigned long ulLen );
extern void hb_wctombget( char *dstA, const wchar_t *srcW, unsigned long ulLen );
extern HB_EXPORT wchar_t * hb_mbtowc( const char *srcA );
extern HB_EXPORT char * hb_wctomb( const wchar_t *srcW );
extern HB_EXPORT wchar_t * hb_mbntowc( const char *srcA, unsigned long ulLen );
extern HB_EXPORT char * hb_wcntomb( const wchar_t *srcW, unsigned long ulLen );
extern HB_EXPORT void hb_mbtowccpy( wchar_t *dstW, const char *srcA, unsigned long ulLen );
extern HB_EXPORT void hb_mbtowcset( wchar_t *dstW, const char *srcA, unsigned long ulLen );
extern HB_EXPORT void hb_wctombget( char *dstA, const wchar_t *srcW, unsigned long ulLen );
#if defined( UNICODE )

View File

@@ -132,6 +132,11 @@ msgstr "Hiba: Ismeretlen platform: %1$s"
msgid "Error: Running Harbour compiler. %1$s"
msgstr "Hiba: Harbour fordító futtatásakor. %1$s"
#: hbmk2.prg:2775 hbmk2.prg:2793 hbmk2.prg:2824 hbmk2.prg:3146 hbmk2.prg:3167 hbmk2.prg:3199
#, c-format
msgid "Error: Running Harbour compiler (internal). %1$s"
msgstr "Hiba: Harbour fordító futtatásakor (belsõ). %1$s"
#: hbmk2.prg:1595 hbmk2.prg:1881
#, c-format
msgid "Error: No source files were specified."
@@ -205,7 +210,7 @@ msgstr "Kimenet nem ig
#: hbmk2.prg:2761 hbmk2.prg:3132
#, c-format
msgid "Harbour compiler command (internal) job #%1$s:"
msgstr "Harbour fordító parancs (belsõ) %1$s. szál:"
msgstr "Harbour (beágyazott) fordító parancs %1$s. szál:"
#: hbmk2.prg:959 hbmk2.prg:1188
#, c-format

View File

@@ -1178,7 +1178,6 @@ FUNCTION hbmk( aArgs, /* @ */ lPause, /* @ */ lUTF8 )
hb_osPathSeparator() + hbmk[ _HBMK_cPLAT ] +;
hb_osPathSeparator() + hbmk[ _HBMK_cCOMP ] +;
iif( Empty( hbmk[ _HBMK_cBUILD ] ), "", PathSepToTarget( hbmk, hbmk[ _HBMK_cBUILD ] ) ) )
l_cHB_DYN_INSTALL := PathNormalize( DirAddPathSep( l_cHB_INSTALL_PREFIX ) + "lib" )
l_cHB_LIB_INSTALL := tmp
ELSE
l_cHB_LIB_INSTALL := PathNormalize( DirAddPathSep( l_cHB_INSTALL_PREFIX ) + "lib" )
@@ -3036,7 +3035,7 @@ FUNCTION hbmk( aArgs, /* @ */ lPause, /* @ */ lUTF8 )
hbmk_OutStd( hbmk, I_( "Harbour compiler command (internal):" ) )
ENDIF
ENDIF
OutStd( FN_Escape( DirAddPathSep( PathSepToSelf( l_cHB_BIN_INSTALL ) ) + cBin_CompPRG + cBinExt, nCmd_Esc ) +;
OutStd( "(" + FN_Escape( DirAddPathSep( hb_DirBase() ) + cBin_CompPRG + cBinExt + ")", nCmd_Esc ) +;
" " + ArrayToList( aCommand ) + hb_osNewLine() )
ENDIF
@@ -3045,9 +3044,9 @@ FUNCTION hbmk( aArgs, /* @ */ lPause, /* @ */ lUTF8 )
AAdd( aThreads, { hb_threadStart( @hb_compile(), "harbour", aCommand ), aCommand } )
ELSE
IF ( tmp := hb_compile( "harbour", aCommand ) ) != 0
hbmk_OutErr( hbmk, hb_StrFormat( I_( "Error: Running Harbour compiler. %1$s" ), hb_ntos( tmp ) ) )
hbmk_OutErr( hbmk, hb_StrFormat( I_( "Error: Running Harbour compiler (internal). %1$s" ), hb_ntos( tmp ) ) )
IF ! hbmk[ _HBMK_lQuiet ]
OutErr( FN_Escape( DirAddPathSep( PathSepToSelf( l_cHB_BIN_INSTALL ) ) + cBin_CompPRG + cBinExt, nCmd_Esc ) +;
OutErr( "(" + FN_Escape( DirAddPathSep( hb_DirBase() ) + cBin_CompPRG + cBinExt + ")", nCmd_Esc ) +;
" " + ArrayToList( aCommand ) + hb_osNewLine() )
ENDIF
IF ! hbmk[ _HBMK_lIGNOREERROR ]