Viktor Szakáts wrote:
> 
> 
> I'll implement a trick to solve this for xhb users.
> 
> 
I do not know if it will make-up in hnMK2,
I understand your concerns, but the code below, 
and I am sure it has greater margins to be refined,
if included in hbMK2 will solve the problem for 
applications which mix compile time switches 
in not an organized way. It also does not break 
anything in hbMK2, simply hangs in untils 
someone uses it :

Line # 3996 ( a couple of lines up )


======================================

         /* Use external compiler */
         IF !empty( GetEnv( "HB_COMPILE_SINGLE_SOURCE" ) )
            FOR EACH cPrg IN l_aPRG_TODO
               tmp := "" ; cSwitches := ""
               IF ( nAt := at( ";", cPrg ) ) > 0
                  tmp := substr( cPrg, nAt + 1 )
                  cPrg := substr( cPrg, 1, nAt - 1 )
               ENDIF
               IF !empty( tmp )
                  tmp := hb_aTokens( alltrim( tmp ), "-" )
                  aeval( tmp, {|e| cSwitches += iif( empty( e ), "", " -" +
e ) } )
               ENDIF

               cCommand := FN_Escape( DirAddPathSep( PathSepToSelf(
l_cHB_BIN_INSTALL ) ) + cBin_CompPRG + cBinExt, nCmd_Esc ) +;
                           " " + iif( hbmk[ _HBMK_lCreateLib ] .OR. hbmk[
_HBMK_lCreateDyn ], "-n1", iif( hbmk[ _HBMK_nHBMODE ] != _HBMODE_NATIVE,
"-n", "-n2" ) ) +;
                           iif( hbmk[ _HBMK_lBLDFLGP ], " " + hb_Version(
HB_VERSION_FLAG_PRG ), "" ) +;
                           iif( ! Empty( GetEnv( "HB_USER_PRGFLAGS" ) ), " "
+ GetEnv( "HB_USER_PRGFLAGS" ), "" ) +;
                           iif( ! Empty( hbmk[ _HBMK_aOPTPRG ] ), " " +
ArrayToList( hbmk[ _HBMK_aOPTPRG ] ), "" ) +;
                           " " + cPrg + cSwitches

               cCommand := AllTrim( cCommand )

               IF hbmk[ _HBMK_lTRACE ]
                  IF ! hbmk[ _HBMK_lQuiet ]
                     hbmk_OutStd( hbmk, I_( "Harbour compiler command:" ) )
                  ENDIF
                  OutStd( cCommand + _OUT_EOL )
               ENDIF

               IF ! hbmk[ _HBMK_lDONTEXEC ] .AND. ( tmp := hb_processRun(
cCommand ) ) != 0
                  hbmk_OutErr( hbmk, hb_StrFormat( I_( "Error: Running
Harbour compiler. %1$s" ), hb_ntos( tmp ) ) )
                  IF ! hbmk[ _HBMK_lQuiet ]
                     OutErr( cCommand + _OUT_EOL )
                  ENDIF
                  IF ! hbmk[ _HBMK_lIGNOREERROR ]
                     IF hbmk[ _HBMK_lBEEP ]
                        DoBeep( .F. )
                     ENDIF
                     RETURN 6
                  ENDIF
               ENDIF
            NEXT
         ELSE

================================================

I know it is not the right way, but not to investigate in hbMK2,
I could get this large projects compiled and linked with hbIDE.




-----
     enjoy hbIDEing...
        Pritpal Bedi 
http://hbide.vouch.info/
-- 
View this message in context: 
http://harbour-devel.1590103.n2.nabble.com/hbMK2-xHarbour-Oct-2007-Unresolved-External-tp5033192p5043217.html
Sent from the harbour-devel mailing list archive at Nabble.com.
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to