diff --git a/harbour/ChangeLog.txt b/harbour/ChangeLog.txt index b70a8d6fa7..116b9d0452 100644 --- a/harbour/ChangeLog.txt +++ b/harbour/ChangeLog.txt @@ -10,6 +10,37 @@ * Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment */ +2013-02-23 18:05 UTC+0100 Viktor Szakats (harbour syenar.net) + * utils/hbmk2/hbmk2.prg + + added HBSHELL_CLIPPER() shell/script API call, which + configures the environment to be Clipper (non-Unicode) + compatible. Identical to the default environment of + compiled .prg apps. It's not recommended for new + scripts, but it may be useful to run legacy code + as script. + + added '-license'/'--license' option to display the + license of hbmk2 + * formtting made hbformat friendly, minor optimizations + + * README.txt + ! fixed minor typo in project description + + * website/index.html + + updated project description with the one on sf.net + and in README.txt + + * contrib/hbgd/tests/digits/odw.gif + * contrib/hbgd/tests/imgs_in/gdlogo.png + * contrib/hbhpdf/tests/files/*.png + * website/images/*.png + * website/samples/screenshots/*.png + % optimized + + - website/samples/screenshots/*_w32.png + + website/samples/screenshots/*_win.png + * website/samples/screenshots/*.html + * w32 -> win + 2013-02-22 11:06 UTC+0100 Viktor Szakats (harbour syenar.net) * utils/hbmk2/hbmk2.prg + support '-version', for local consistency with other diff --git a/harbour/README.txt b/harbour/README.txt index 1627f8016f..d397d76fb8 100644 --- a/harbour/README.txt +++ b/harbour/README.txt @@ -7,7 +7,7 @@ WELCOME TO HARBOUR Harbour is the Free Open Source Software implementation of a multi-platform, multi-threading, object-oriented, scriptable - programming language, backwards compatible with Clipper/xBase. + programming language, backward compatible with Clipper/xBase. Harbour consists of a compiler and runtime libraries with multiple UI and database backends, its own make system and a large collection of libraries and interfaces to many popular APIs. diff --git a/harbour/contrib/hbgd/tests/digits/odw.gif b/harbour/contrib/hbgd/tests/digits/odw.gif index e7b61bdb41..439e5e95d1 100644 Binary files a/harbour/contrib/hbgd/tests/digits/odw.gif and b/harbour/contrib/hbgd/tests/digits/odw.gif differ diff --git a/harbour/contrib/hbgd/tests/imgs_in/gdlogo.png b/harbour/contrib/hbgd/tests/imgs_in/gdlogo.png index 149323a86c..03ab500ac1 100644 Binary files a/harbour/contrib/hbgd/tests/imgs_in/gdlogo.png and b/harbour/contrib/hbgd/tests/imgs_in/gdlogo.png differ diff --git a/harbour/contrib/hbhpdf/tests/files/basn3p02.png b/harbour/contrib/hbhpdf/tests/files/basn3p02.png index b765d7e305..2d90638a54 100644 Binary files a/harbour/contrib/hbhpdf/tests/files/basn3p02.png and b/harbour/contrib/hbhpdf/tests/files/basn3p02.png differ diff --git a/harbour/contrib/hbhpdf/tests/files/basn4a16.png b/harbour/contrib/hbhpdf/tests/files/basn4a16.png index fcdf4727bd..feac469066 100644 Binary files a/harbour/contrib/hbhpdf/tests/files/basn4a16.png and b/harbour/contrib/hbhpdf/tests/files/basn4a16.png differ diff --git a/harbour/contrib/hbhpdf/tests/files/basn6a08.png b/harbour/contrib/hbhpdf/tests/files/basn6a08.png index 7bf88f926f..ad12f1ae0e 100644 Binary files a/harbour/contrib/hbhpdf/tests/files/basn6a08.png and b/harbour/contrib/hbhpdf/tests/files/basn6a08.png differ diff --git a/harbour/contrib/hbhpdf/tests/files/maskimag.png b/harbour/contrib/hbhpdf/tests/files/maskimag.png index d896abadb7..af1bd08584 100644 Binary files a/harbour/contrib/hbhpdf/tests/files/maskimag.png and b/harbour/contrib/hbhpdf/tests/files/maskimag.png differ diff --git a/harbour/utils/hbmk2/hbmk2.prg b/harbour/utils/hbmk2/hbmk2.prg index 8d1fbe8983..d7fe6c94c1 100644 --- a/harbour/utils/hbmk2/hbmk2.prg +++ b/harbour/utils/hbmk2/hbmk2.prg @@ -41,20 +41,16 @@ */ /* - * The following parts are Copyright of the individual authors. - * www - http://harbour-project.org - * * Copyright 2003-2007 Przemyslaw Czerpak - * gcc and *nix configuration elements. - * bash script with similar purpose for gcc family. - * entry point override method and detection code for gcc. - * rtlink/blinker link script parsers. - * POTMerge(), LoadPOTFilesAsHash(), GenHBL() and AutoTrans(). - * (with local modifications by main author) - * optimized header time scan algorithm - * runner core logic + * - gcc and *nix configuration elements + * - bash script with similar purpose for gcc family + * - entry point override method and detection code for gcc + * - rtlink/blinker link script parsers + * - original POTMerge(), LoadPOTFilesAsHash(), GenHBL() and AutoTrans() + * - optimized header time scan algorithm + * - shell core runner logic * - * See COPYING.txt for licensing terms. + * See above for licensing terms. * */ @@ -126,13 +122,13 @@ adding rest of variables). - Add a way to fallback to stop if required headers could not be found. This needs a way to spec what key headers to look for. + - Consider renaming the tool to simply 'hb'. + - Turn off lib grouping by default + - Avoid adding certain options and input files twice - Clean up compiler autodetection and add those few feature only found in GNU Make / global.mk, like *nix native autodetection, autodetection of watcom cross-build setups, poccarm/pocc64 setups, clang, etc. - - Consider renaming the tool to simply 'hb'. - - Turn off lib grouping by default - - Avoid adding certain options and input files twice - Next gen compiler autodetection: 1. Gather supported compilers by Harbour installation (look for lib//*[/] subdirs) @@ -185,7 +181,7 @@ EXTERNAL HB_GT_CGI_DEFAULT #endif #endif -#endif /* _HBMK_EMBEDDED_ */ +#endif /* ! _HBMK_EMBEDDED_ */ EXTERNAL hbmk_KEYW @@ -620,6 +616,7 @@ EXTERNAL hb_FSetAttr #define _HBSH_lPreserveHistory 12 #define _HBSH_lWasLoad 13 #define _HBSH_lInteractive 14 +#define _HBSH_lClipperComp 15 #define _HBSH_MAX_ 15 /* Trick to make it run if compiled without -n/-n1/-n2 @@ -630,17 +627,26 @@ EXTERNAL hb_FSetAttr hbmk_local_entry( hb_ArrayToParams( hb_AParams() ) ) #endif -#if defined( HBMK_USE_CUSTMAIN ) /* for .hbp build */ -PROCEDURE __hbmk_public_entry( ... ) /* for hbrun builds (or any builds via .hbp) */ +#if defined( HBMK_USE_CUSTMAIN ) +/* for hbrun builds (or any builds via .hbp) */ +PROCEDURE __hbmk_public_entry( ... ) + hbmk_local_entry( ... ) + RETURN #elif defined( HBMK_USE_APPMAIN ) -PROCEDURE _APPMAIN( ... ) /* for GNU Make build (we can't override default entry, so we use this alternate built-in one */ +/* for GNU Make build (we can't override default entry, so we use this alternate built-in one */ +PROCEDURE _APPMAIN( ... ) + hbmk_local_entry( ... ) + RETURN #else -PROCEDURE __hbmk_fake_entry( ... ) /* for scripts and precompiled scripts with -n/-n1/-n2 option */ +/* for scripts and precompiled scripts with -n/-n1/-n2 option */ +PROCEDURE __hbmk_fake_entry( ... ) + hbmk_local_entry( ... ) + RETURN #endif @@ -808,6 +814,12 @@ STATIC PROCEDURE hbmk_local_entry( ... ) RETURN +#else + +/* public entry for embedded flavor */ +FUNCTION hbmk( ... ) + RETURN __hbmk( ... ) + #endif /* ! _HBMK_EMBEDDED_ */ #if defined( __PLATFORM__WINDOWS ) .OR. ; @@ -1060,25 +1072,25 @@ STATIC FUNCTION hbmk_harbour_dirlayout_detect( hbmk, lIgnoreEnvVar ) hbmk[ _HBMK_cHB_INSTALL_PFX ] := hb_DirSepAdd( hb_DirBase() ) + ".." ENDIF - IF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + "include" +; + IF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + "include" + ; hb_ps() + "hbvm.h" ) /* do nothing */ /* Detect special non-installed dir layout (after simple 'make') */ - ELSEIF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + ".." + hb_ps() + ".." + hb_ps() + "include" +; + ELSEIF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + ".." + hb_ps() + ".." + hb_ps() + "include" + ; hb_ps() + "hbvm.h" ) hbmk[ _HBMK_cHB_INSTALL_PFX ] := hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + ".." + hb_ps() + ".." + hb_ps() /* Detect special multi-host dir layout */ - ELSEIF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + ".." + hb_ps() + "include" +; + ELSEIF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + ".." + hb_ps() + "include" + ; hb_ps() + "hbvm.h" ) hbmk[ _HBMK_cHB_INSTALL_PFX ] := hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + ".." + hb_ps() /* Detect non-installed dir layout with build name containing sub-dirs */ ELSEIF PathSepCount( hbmk[ _HBMK_cBUILD ] ) > 0 .AND. ; - hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + Replicate( ".." + hb_ps(), PathSepCount( hbmk[ _HBMK_cBUILD ] ) ) + ".." + hb_ps() + ".." + hb_ps() + "include" +; + hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + Replicate( ".." + hb_ps(), PathSepCount( hbmk[ _HBMK_cBUILD ] ) ) + ".." + hb_ps() + ".." + hb_ps() + "include" + ; hb_ps() + "hbvm.h" ) hbmk[ _HBMK_cHB_INSTALL_PFX ] := hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + Replicate( ".." + hb_ps(), PathSepCount( hbmk[ _HBMK_cBUILD ] ) ) + ".." + hb_ps() + ".." + hb_ps() /* Detect special *nix dir layout (/bin, /lib/harbour, /lib64/harbour, /include/harbour) */ - ELSEIF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + "include" +; - hb_ps() + iif( _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ), "xharbour", "harbour" ) +; + ELSEIF hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + "include" + ; + hb_ps() + iif( _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ), "xharbour", "harbour" ) + ; hb_ps() + "hbvm.h" ) IF Empty( hbmk[ _HBMK_cHB_INSTALL_BIN ] ) hbmk[ _HBMK_cHB_INSTALL_BIN ] := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + "bin" ) @@ -1093,7 +1105,7 @@ STATIC FUNCTION hbmk_harbour_dirlayout_detect( hbmk, lIgnoreEnvVar ) IF Empty( hbmk[ _HBMK_cHB_INSTALL_INC ] ) hbmk[ _HBMK_cHB_INSTALL_INC ] := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + "include" + hb_ps() + iif( _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ), "xharbour", "harbour" ) ) ENDIF - ELSEIF ! hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + hb_ps() + "include" +; + ELSEIF ! hb_FileExists( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + hb_ps() + "include" + ; hb_ps() + "hbvm.h" ) RETURN .F. ENDIF @@ -1108,9 +1120,9 @@ STATIC PROCEDURE hbmk_harbour_dirlayout_init( hbmk ) IF Empty( hbmk[ _HBMK_cHB_INSTALL_BIN ] ) /* Autodetect multi-compiler/platform bin structure (also .dlls are in bin dir on non-*nix platforms) */ - IF hb_DirExists( tmp := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "bin" +; - hb_ps() + hbmk[ _HBMK_cPLAT ] +; - hb_ps() + hbmk[ _HBMK_cCOMP ] +; + IF hb_DirExists( tmp := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "bin" + ; + hb_ps() + hbmk[ _HBMK_cPLAT ] + ; + hb_ps() + hbmk[ _HBMK_cCOMP ] + ; hb_DirSepToOS( hbmk[ _HBMK_cBUILD ] ) ) hbmk[ _HBMK_cHB_INSTALL_BIN ] := tmp ELSE @@ -1119,9 +1131,9 @@ STATIC PROCEDURE hbmk_harbour_dirlayout_init( hbmk ) ENDIF IF Empty( hbmk[ _HBMK_cHB_INSTALL_LIB ] ) /* Autodetect multi-compiler/platform lib structure */ - IF hb_DirExists( tmp := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "lib" +; - hb_ps() + hbmk[ _HBMK_cPLAT ] +; - hb_ps() + hbmk[ _HBMK_cCOMP ] +; + IF hb_DirExists( tmp := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "lib" + ; + hb_ps() + hbmk[ _HBMK_cPLAT ] + ; + hb_ps() + hbmk[ _HBMK_cCOMP ] + ; hb_DirSepToOS( hbmk[ _HBMK_cBUILD ] ) ) hbmk[ _HBMK_cHB_INSTALL_LIB ] := tmp ELSE @@ -1130,9 +1142,9 @@ STATIC PROCEDURE hbmk_harbour_dirlayout_init( hbmk ) ENDIF IF Empty( hbmk[ _HBMK_cHB_INSTALL_LI3 ] ) IF hbmk[ _HBMK_cPLAT ] == "win" .AND. ; - hb_DirExists( tmp := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "lib" +; - hb_ps() + "3rd" +; - hb_ps() + hbmk[ _HBMK_cPLAT ] +; + hb_DirExists( tmp := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "lib" + ; + hb_ps() + "3rd" + ; + hb_ps() + hbmk[ _HBMK_cPLAT ] + ; hb_ps() + hbmk[ _HBMK_cCOMP ] ) hbmk[ _HBMK_cHB_INSTALL_LI3 ] := tmp ENDIF @@ -1591,6 +1603,13 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit ShowHeader( hbmk ) RETURN _EXIT_OK + CASE cParamL == "-license" .OR. ; + cParamL == "--license" + + ShowHeader( hbmk ) + ShowLicense( hbmk ) + RETURN _EXIT_OK + ENDCASE NEXT @@ -1617,23 +1636,23 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit IF hbmk[ _HBMK_nHBMODE ] == _HBMODE_NATIVE cDL_Version_Alter := ; - "-" +; - hb_ntos( hb_Version( HB_VERSION_MAJOR ) ) +; + "-" + ; + hb_ntos( hb_Version( HB_VERSION_MAJOR ) ) + ; hb_ntos( hb_Version( HB_VERSION_MINOR ) ) cDL_Version := ; - "." +; - hb_ntos( hb_Version( HB_VERSION_MAJOR ) ) + "." +; - hb_ntos( hb_Version( HB_VERSION_MINOR ) ) + "." +; + "." + ; + hb_ntos( hb_Version( HB_VERSION_MAJOR ) ) + "." + ; + hb_ntos( hb_Version( HB_VERSION_MINOR ) ) + "." + ; hb_ntos( hb_Version( HB_VERSION_RELEASE ) ) ELSE cDL_Version_Alter := ; - "-" +; - hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], -16 ), 0xFF ) ) +; + "-" + ; + hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], -16 ), 0xFF ) ) + ; hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], -8 ), 0xFF ) ) cDL_Version := ; - "." +; - hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], -16 ), 0xFF ) ) + "." +; - hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], -8 ), 0xFF ) ) + "." +; + "." + ; + hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], -16 ), 0xFF ) ) + "." + ; + hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], -8 ), 0xFF ) ) + "." + ; hb_ntos( hb_bitAnd( hb_bitShift( hbmk[ _HBMK_nHBMODE ], 0 ), 0xFF ) ) ENDIF @@ -2055,9 +2074,9 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit FOR tmp := 1 TO Len( aCOMPDET ) IF ! Empty( cPath_CompC := Eval( aCOMPDET[ tmp ][ _COMPDET_bBlock ] ) ) IF ! lDoSupportDetection .OR. ; - hb_DirExists( hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "lib" +; - hb_ps() + hbmk[ _HBMK_cPLAT ] +; - hb_ps() + aCOMPDET[ tmp ][ _COMPDET_cCOMP ] +; + hb_DirExists( hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) ) + "lib" + ; + hb_ps() + hbmk[ _HBMK_cPLAT ] + ; + hb_ps() + aCOMPDET[ tmp ][ _COMPDET_cCOMP ] + ; hb_DirSepToOS( hbmk[ _HBMK_cBUILD ] ) ) hbmk[ _HBMK_cCOMP ] := aCOMPDET[ tmp ][ _COMPDET_cCOMP ] IF Len( aCOMPDET[ tmp ] ) >= _COMPDET_cCCPREFIX .AND. aCOMPDET[ tmp ][ _COMPDET_cCCPREFIX ] != NIL @@ -3583,8 +3602,9 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit hbmk_hb_compile( hbmk, "harbour", hbmk[ _HBMK_aOPTPRG ] ) ELSE /* Use external compiler */ - cCommand := FNameEscape( hb_DirSepAdd( hb_DirSepToOS( hbmk[ _HBMK_cHB_INSTALL_BIN ] ) ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) +; - iif( Empty( hbmk[ _HBMK_aOPTPRG ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTPRG ] ) ) + cCommand := ; + FNameEscape( hb_DirSepAdd( hb_DirSepToOS( hbmk[ _HBMK_cHB_INSTALL_BIN ] ) ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) + ; + iif( Empty( hbmk[ _HBMK_aOPTPRG ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTPRG ] ) ) hb_processRun( AllTrim( cCommand ) ) ENDIF RETURN _EXIT_OK @@ -5539,10 +5559,13 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit IF ! lSkipBuild .AND. ! hbmk[ _HBMK_lStopAfterInit ] .AND. ! hbmk[ _HBMK_lStopAfterHarbour ] .AND. ! hbmk[ _HBMK_lDumpInfo ] IF ! Empty( l_cVCSHEAD ) tmp1 := VCSID( hbmk, l_cVCSDIR, l_cVCSHEAD, @tmp2 ) + /* Use the same EOL for all platforms to avoid unnecessary rebuilds. */ - tmp := "/* Automatically generated by " + _SELF_NAME_ + ". Do not edit. */" + _FIL_EOL +; - "#define _HBMK_VCS_TYPE_ " + '"' + tmp2 + '"' + _FIL_EOL +; - "#define _HBMK_VCS_ID_ " + '"' + tmp1 + '"' + _FIL_EOL + tmp := ; + "/* Automatically generated by " + _SELF_NAME_ + ". Do not edit. */" + _FIL_EOL + ; + "#define _HBMK_VCS_TYPE_ " + '"' + tmp2 + '"' + _FIL_EOL + ; + "#define _HBMK_VCS_ID_ " + '"' + tmp1 + '"' + _FIL_EOL + /* Update only if something changed to trigger rebuild only if really needed. Do not update if the VCS header is already present, but currently extracted VCS information is empty (this is sign of extraction command failure). */ @@ -5556,12 +5579,15 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit ENDIF ENDIF IF ! Empty( l_cTSHEAD ) + /* Use the same EOL for all platforms to avoid unnecessary rebuilds. */ tmp1 := hb_DateTime() - tmp := "/* Automatically generated by " + _SELF_NAME_ + ". Do not edit. */" + _FIL_EOL +; - "#define _HBMK_BUILD_DATE_ " + '"' + DToS( tmp1 ) + '"' + _FIL_EOL +; - "#define _HBMK_BUILD_TIME_ " + '"' + SubStr( hb_TToS( tmp1 ), 9, 6 ) + '"' + _FIL_EOL +; - "#define _HBMK_BUILD_TIMESTAMP_ " + '"' + hb_TToS( tmp1 ) + '"' + _FIL_EOL + tmp := ; + "/* Automatically generated by " + _SELF_NAME_ + ". Do not edit. */" + _FIL_EOL + ; + "#define _HBMK_BUILD_DATE_ " + '"' + DToS( tmp1 ) + '"' + _FIL_EOL + ; + "#define _HBMK_BUILD_TIME_ " + '"' + SubStr( hb_TToS( tmp1 ), 9, 6 ) + '"' + _FIL_EOL + ; + "#define _HBMK_BUILD_TIMESTAMP_ " + '"' + hb_TToS( tmp1 ) + '"' + _FIL_EOL + IF hbmk[ _HBMK_lInfo ] _hbmk_OutStd( hbmk, hb_StrFormat( I_( "Creating timestamp header: %1$s" ), l_cTSHEAD ) ) ENDIF @@ -5786,11 +5812,13 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit aThreads := {} FOR EACH aTO_DO IN ArraySplit( l_aPRG_TO_DO, l_nJOBS ) - aCommand := ArrayAJoin( { { iif( hbmk[ _HBMK_lCreateLib ] .OR. hbmk[ _HBMK_lCreateDyn ], "-n1", "-n2" ) }, ; - aTO_DO, ; - iif( hbmk[ _HBMK_lBLDFLGP ], { hb_Version( HB_VERSION_FLAG_PRG ) }, {} ), ; - ListToArray( iif( Empty( GetEnv( "HB_USER_PRGFLAGS" ) ), "", " " + GetEnv( "HB_USER_PRGFLAGS" ) ) ), ; - hbmk[ _HBMK_aOPTPRG ] } ) + + aCommand := ArrayAJoin( { ; + { iif( hbmk[ _HBMK_lCreateLib ] .OR. hbmk[ _HBMK_lCreateDyn ], "-n1", "-n2" ) }, ; + aTO_DO, ; + iif( hbmk[ _HBMK_lBLDFLGP ], { hb_Version( HB_VERSION_FLAG_PRG ) }, {} ), ; + ListToArray( iif( Empty( GetEnv( "HB_USER_PRGFLAGS" ) ), "", " " + GetEnv( "HB_USER_PRGFLAGS" ) ) ), ; + hbmk[ _HBMK_aOPTPRG ] } ) IF hbmk[ _HBMK_lTRACE ] IF ! hbmk[ _HBMK_lQuiet ] @@ -5800,8 +5828,9 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit _hbmk_OutStd( hbmk, I_( "Harbour compiler command (embedded):" ) ) ENDIF ENDIF - OutStd( "(" + FNameEscape( hb_DirSepAdd( hb_DirBase() ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) + ")" +; - " " + ArrayToList( aCommand ) + _OUT_EOL ) + OutStd( ; + "(" + FNameEscape( hb_DirSepAdd( hb_DirBase() ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) + ")" + ; + " " + ArrayToList( aCommand ) + _OUT_EOL ) ENDIF IF ! hbmk[ _HBMK_lDONTEXEC ] @@ -5811,8 +5840,9 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit IF ( tmp := hbmk_hb_compile( hbmk, "harbour", aCommand ) ) != 0 _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Error: Running Harbour compiler (embedded). %1$d" ), tmp ) ) IF ! hbmk[ _HBMK_lQuiet ] - OutErr( "(" + FNameEscape( hb_DirSepAdd( hb_DirBase() ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) + ")" +; - " " + ArrayToList( aCommand ) + _OUT_EOL ) + OutErr( ; + "(" + FNameEscape( hb_DirSepAdd( hb_DirBase() ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) + ")" + ; + " " + ArrayToList( aCommand ) + _OUT_EOL ) ENDIF IF ! hbmk[ _HBMK_lIGNOREERROR ] IF lDeleteWorkDir @@ -5863,12 +5893,13 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit FOR EACH tmp IN tmp1 - cCommand := FNameEscape( hb_DirSepAdd( hb_DirSepToOS( hbmk[ _HBMK_cHB_INSTALL_BIN ] ) ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) +; - " " + iif( hbmk[ _HBMK_lCreateLib ] .OR. hbmk[ _HBMK_lCreateDyn ], "-n1", iif( hbmk[ _HBMK_nHBMODE ] != _HBMODE_NATIVE, "-n", "-n2" ) ) +; - " " + iif( _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ), FNameEscape( tmp, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ), tmp ) +; - 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 ] ) ) + cCommand := ; + FNameEscape( hb_DirSepAdd( hb_DirSepToOS( hbmk[ _HBMK_cHB_INSTALL_BIN ] ) ) + cBin_CompPRG + cBinExt, hbmk[ _HBMK_nCmd_Esc ] ) + ; + " " + iif( hbmk[ _HBMK_lCreateLib ] .OR. hbmk[ _HBMK_lCreateDyn ], "-n1", iif( hbmk[ _HBMK_nHBMODE ] != _HBMODE_NATIVE, "-n", "-n2" ) ) + ; + " " + iif( _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ), FNameEscape( tmp, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ), tmp ) + ; + 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 ] ) ) cCommand := AllTrim( cCommand ) @@ -5970,11 +6001,12 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit /* Build C stub */ /* Use the same EOL for all platforms to avoid unnecessary rebuilds. */ - cFile := "/* This temp source file was generated by " + _SELF_NAME_ + " tool. */" + _FIL_EOL +; - "/* You can safely delete it. */" + _FIL_EOL +; - "" + _FIL_EOL +; - '#include "hbapi.h"' + _FIL_EOL +; - "" + _FIL_EOL + cFile := ; + "/* This temp source file was generated by " + _SELF_NAME_ + " tool. */" + _FIL_EOL + ; + "/* You can safely delete it. */" + _FIL_EOL + ; + "" + _FIL_EOL + ; + '#include "hbapi.h"' + _FIL_EOL + ; + "" + _FIL_EOL IF ! Empty( array ) .OR. ( l_cCMAIN != NIL .AND. ! lHBMAINDLLP ) @@ -5986,8 +6018,8 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit IF ! Empty( array ) cFile += "" + _FIL_EOL ENDIF - cFile += "HB_EXTERN_BEGIN" + _FIL_EOL +; - "void " + l_cCMAIN + "( void );" + _FIL_EOL +; + cFile += "HB_EXTERN_BEGIN" + _FIL_EOL + ; + "void " + l_cCMAIN + "( void );" + _FIL_EOL + ; "HB_EXTERN_END" + _FIL_EOL ENDIF cFile += "" + _FIL_EOL @@ -6005,29 +6037,32 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit ENDIF IF lHBMAINDLLP .AND. .F. - cFile += "HB_EXPORT_ATTR PHB_FUNC dll_hb_vmProcAddress( const char * szFuncName )" + _FIL_EOL - cFile += "{" + _FIL_EOL - cFile += " return hb_vmProcAddress( szFuncName );" + _FIL_EOL - cFile += "}" + _FIL_EOL - cFile += "" + _FIL_EOL + cFile += ; + "HB_EXPORT_ATTR PHB_FUNC dll_hb_vmProcAddress( const char * szFuncName )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + " return hb_vmProcAddress( szFuncName );" + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL ENDIF IF hbmk[ _HBMK_cGT ] != NIL .OR. ; l_cMAIN != NIL IF hbmk[ _HBMK_nHBMODE ] == _HBMODE_HB10 .OR. ; _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ) - cFile += '#include "hbinit.h"' + _FIL_EOL +; - "" + _FIL_EOL +; - "HB_EXTERN_BEGIN" + _FIL_EOL +; - "extern " + tmp + " const char * s_defaultGT;" + _FIL_EOL +; - "extern " + tmp + " const char * s_pszLinkedMain;" + _FIL_EOL +; - "HB_EXTERN_END" + _FIL_EOL +; - "" + _FIL_EOL +; - "HB_CALL_ON_STARTUP_BEGIN( _hb_hbmk_setdef_ )" + _FIL_EOL + cFile += ; + '#include "hbinit.h"' + _FIL_EOL + ; + "" + _FIL_EOL + ; + "HB_EXTERN_BEGIN" + _FIL_EOL + ; + "extern " + tmp + " const char * s_defaultGT;" + _FIL_EOL + ; + "extern " + tmp + " const char * s_pszLinkedMain;" + _FIL_EOL + ; + "HB_EXTERN_END" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "HB_CALL_ON_STARTUP_BEGIN( _hb_hbmk_setdef_ )" + _FIL_EOL ELSE - cFile += '#include "hbinit.h"' + _FIL_EOL +; - "" + _FIL_EOL +; - "HB_CALL_ON_STARTUP_BEGIN( _hb_hbmk_setdef_ )" + _FIL_EOL + cFile += ; + '#include "hbinit.h"' + _FIL_EOL + ; + "" + _FIL_EOL + ; + "HB_CALL_ON_STARTUP_BEGIN( _hb_hbmk_setdef_ )" + _FIL_EOL ENDIF IF hbmk[ _HBMK_cGT ] != NIL IF hbmk[ _HBMK_nHBMODE ] == _HBMODE_HB10 .OR. ; @@ -6045,14 +6080,15 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit cFile += ' hb_vmSetLinkedMain( "' + Upper( l_cMAIN ) + '" );' + _FIL_EOL ENDIF ENDIF - cFile += "HB_CALL_ON_STARTUP_END( _hb_hbmk_setdef_ )" + _FIL_EOL +; - "" + _FIL_EOL +; - "#if defined( HB_PRAGMA_STARTUP )" + _FIL_EOL +; - " #pragma startup _hb_hbmk_setdef_" + _FIL_EOL +; - "#elif defined( HB_DATASEG_STARTUP )" + _FIL_EOL +; - " #define HB_DATASEG_BODY HB_DATASEG_FUNC( _hb_hbmk_setdef_ )" + _FIL_EOL +; - ' #include "hbiniseg.h"' + _FIL_EOL +; - "#endif" + _FIL_EOL + cFile += ; + "HB_CALL_ON_STARTUP_END( _hb_hbmk_setdef_ )" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "#if defined( HB_PRAGMA_STARTUP )" + _FIL_EOL + ; + " #pragma startup _hb_hbmk_setdef_" + _FIL_EOL + ; + "#elif defined( HB_DATASEG_STARTUP )" + _FIL_EOL + ; + " #define HB_DATASEG_BODY HB_DATASEG_FUNC( _hb_hbmk_setdef_ )" + _FIL_EOL + ; + ' #include "hbiniseg.h"' + _FIL_EOL + ; + "#endif" + _FIL_EOL ENDIF IF hbmk[ _HBMK_lINC ] @@ -6111,57 +6147,58 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit /* Build C++ stub */ /* Use the same EOL for all platforms to avoid unnecessary rebuilds. */ - cFile := "/* This temp source file was generated by " + _SELF_NAME_ + " tool. */" + _FIL_EOL +; - "/* You can safely delete it. */" + _FIL_EOL +; - "" + _FIL_EOL +; - '#include "hbapi.h"' + _FIL_EOL +; - "" + _FIL_EOL +; - "#if defined( __cplusplus )" + _FIL_EOL +; - "" + _FIL_EOL +; - "const char * __hbmk_hbcppmm( void )" + _FIL_EOL +; - "{" + _FIL_EOL +; - ' return "HBCPPMM";' + _FIL_EOL +; - "}" + _FIL_EOL +; - "" + _FIL_EOL +; - "void * operator new[]( size_t nSize )" + _FIL_EOL +; - "{" + _FIL_EOL +; - " if( nSize == 0 )" + _FIL_EOL +; - " nSize = 1;" + _FIL_EOL +; - " return hb_xgrab( nSize );" + _FIL_EOL +; - "}" + _FIL_EOL +; - "" + _FIL_EOL +; - "void * operator new( size_t nSize )" + _FIL_EOL +; - "{" + _FIL_EOL +; - " if( nSize == 0 )" + _FIL_EOL +; - " nSize = 1;" + _FIL_EOL +; - " return hb_xgrab( nSize );" + _FIL_EOL +; - "}" + _FIL_EOL +; - "" + _FIL_EOL +; - "void operator delete[]( void * ptr )" + _FIL_EOL +; - "{" + _FIL_EOL +; - " if( ptr )" + _FIL_EOL +; - " hb_xfree( ptr );" + _FIL_EOL +; - "}" + _FIL_EOL +; - "" + _FIL_EOL +; - "void operator delete[]( void * ptr, size_t )" + _FIL_EOL +; - "{" + _FIL_EOL +; - " if( ptr )" + _FIL_EOL +; - " hb_xfree( ptr );" + _FIL_EOL +; - "}" + _FIL_EOL +; - "" + _FIL_EOL +; - "void operator delete( void * ptr )" + _FIL_EOL +; - "{" + _FIL_EOL +; - " if( ptr )" + _FIL_EOL +; - " hb_xfree( ptr );" + _FIL_EOL +; - "}" + _FIL_EOL +; - "" + _FIL_EOL +; - "void operator delete( void * ptr, size_t )" + _FIL_EOL +; - "{" + _FIL_EOL +; - " if( ptr )" + _FIL_EOL +; - " hb_xfree( ptr );" + _FIL_EOL +; - "}" + _FIL_EOL +; - "" + _FIL_EOL +; - "#endif" + _FIL_EOL + cFile := ; + "/* This temp source file was generated by " + _SELF_NAME_ + " tool. */" + _FIL_EOL + ; + "/* You can safely delete it. */" + _FIL_EOL + ; + "" + _FIL_EOL + ; + '#include "hbapi.h"' + _FIL_EOL + ; + "" + _FIL_EOL + ; + "#if defined( __cplusplus )" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "const char * __hbmk_hbcppmm( void )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + ' return "HBCPPMM";' + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "void * operator new[]( size_t nSize )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + " if( nSize == 0 )" + _FIL_EOL + ; + " nSize = 1;" + _FIL_EOL + ; + " return hb_xgrab( nSize );" + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "void * operator new( size_t nSize )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + " if( nSize == 0 )" + _FIL_EOL + ; + " nSize = 1;" + _FIL_EOL + ; + " return hb_xgrab( nSize );" + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "void operator delete[]( void * ptr )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + " if( ptr )" + _FIL_EOL + ; + " hb_xfree( ptr );" + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "void operator delete[]( void * ptr, size_t )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + " if( ptr )" + _FIL_EOL + ; + " hb_xfree( ptr );" + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "void operator delete( void * ptr )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + " if( ptr )" + _FIL_EOL + ; + " hb_xfree( ptr );" + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "void operator delete( void * ptr, size_t )" + _FIL_EOL + ; + "{" + _FIL_EOL + ; + " if( ptr )" + _FIL_EOL + ; + " hb_xfree( ptr );" + _FIL_EOL + ; + "}" + _FIL_EOL + ; + "" + _FIL_EOL + ; + "#endif" + _FIL_EOL IF hbmk[ _HBMK_lINC ] IF hbmk[ _HBMK_lREBUILD ] .OR. !( hb_MemoRead( l_cCPPSTUB ) == cFile ) @@ -6232,14 +6269,15 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit l_aLIBHB := {} ENDIF ELSE - l_aLIBHB := ArrayAJoin( { aLIB_BASE_EXTERN, ; - aLIB_BASE_DEBUG, ; - iif( hbmk[ _HBMK_lMT ], aLIB_BASE_1_MT, aLIB_BASE_1 ), ; - hbmk[ _HBMK_aLIBCOREGT ], ; - iif( hbmk[ _HBMK_lNULRDD ], aLIB_BASE_NULRDD, iif( hbmk[ _HBMK_lMT ], aLIB_BASE_RDD_MT, aLIB_BASE_RDD ) ), ; - l_aLIBHBBASE_2, ; - iif( hbmk[ _HBMK_lMT ], aLIB_BASE_3_MT, aLIB_BASE_3 ), ; - l_aLIBSTATICPOST } ) + l_aLIBHB := ArrayAJoin( { ; + aLIB_BASE_EXTERN, ; + aLIB_BASE_DEBUG, ; + iif( hbmk[ _HBMK_lMT ], aLIB_BASE_1_MT, aLIB_BASE_1 ), ; + hbmk[ _HBMK_aLIBCOREGT ], ; + iif( hbmk[ _HBMK_lNULRDD ], aLIB_BASE_NULRDD, iif( hbmk[ _HBMK_lMT ], aLIB_BASE_RDD_MT, aLIB_BASE_RDD ) ), ; + l_aLIBHBBASE_2, ; + iif( hbmk[ _HBMK_lMT ], aLIB_BASE_3_MT, aLIB_BASE_3 ), ; + l_aLIBSTATICPOST } ) ENDIF ELSE lHBMAINDLLP := .F. @@ -6380,18 +6418,20 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit IF ! hbmk[ _HBMK_lCLEAN ] /* Build .rc stub */ /* Use the same EOL for all platforms to avoid unnecessary rebuilds. */ - cFile := "/* This temp source file was generated by " + _SELF_NAME_ + " tool. */" + _FIL_EOL +; - "/* You can safely delete it. */" + _FIL_EOL +; - "" + _FIL_EOL + cFile := ; + "/* This temp source file was generated by " + _SELF_NAME_ + " tool. */" + _FIL_EOL + ; + "/* You can safely delete it. */" + _FIL_EOL + ; + "" + _FIL_EOL IF ! Empty( hbmk[ _HBMK_cMANIFEST ] ) - cFile += "#include " + _FIL_EOL - cFile += "#ifndef RT_MANIFEST" + _FIL_EOL - cFile += "#define RT_MANIFEST 24" + _FIL_EOL - cFile += "#endif" + _FIL_EOL - cFile += "#ifndef CREATEPROCESS_MANIFEST_RESOURCE_ID" + _FIL_EOL - cFile += "#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1" + _FIL_EOL - cFile += "#endif" + _FIL_EOL - cFile += 'CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "' + PathSepToForward( hbmk[ _HBMK_cMANIFEST ] ) + '"' + _FIL_EOL + cFile += ; + "#include " + _FIL_EOL + ; + "#ifndef RT_MANIFEST" + _FIL_EOL + ; + "#define RT_MANIFEST 24" + _FIL_EOL + ; + "#endif" + _FIL_EOL + ; + "#ifndef CREATEPROCESS_MANIFEST_RESOURCE_ID" + _FIL_EOL + ; + "#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1" + _FIL_EOL + ; + "#endif" + _FIL_EOL + ; + 'CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "' + PathSepToForward( hbmk[ _HBMK_cMANIFEST ] ) + '"' + _FIL_EOL ENDIF IF ! Empty( hbmk[ _HBMK_aICON ] ) .AND. ! HBMK_ISCOMP( "bcc|bcc64" ) /* BCC cannot handle certain new .ico files */ IF hbmk[ _HBMK_cPLAT ] == "os2" @@ -6594,11 +6634,12 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit cOpt_CompCPass := cOpt_CompC /* TODO: eliminate recursive macros from hbmk[ _HBMK_aOPTC ] */ - cOpt_CompCPass := StrTran( cOpt_CompCPass, "{FC}", iif( hbmk[ _HBMK_lBLDFLGC ], hb_Version( HB_VERSION_FLAG_C ) + " ", "" ) +; - GetEnv( "HB_USER_CFLAGS" ) +; - iif( Empty( hbmk[ _HBMK_aOPTC ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTC ] ) ) +; - iif( Empty( tmp4 ), "", " " + ArrayToList( tmp4 ) ) +; - iif( Empty( hbmk[ _HBMK_aOPTCUSER ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTCUSER ] ) ) ) + cOpt_CompCPass := StrTran( cOpt_CompCPass, "{FC}", ; + iif( hbmk[ _HBMK_lBLDFLGC ], hb_Version( HB_VERSION_FLAG_C ) + " ", "" ) + ; + GetEnv( "HB_USER_CFLAGS" ) + ; + iif( Empty( hbmk[ _HBMK_aOPTC ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTC ] ) ) + ; + iif( Empty( tmp4 ), "", " " + ArrayToList( tmp4 ) ) + ; + iif( Empty( hbmk[ _HBMK_aOPTCUSER ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTCUSER ] ) ) ) hReplace := { ; "{OD}" => FNameEscape( hb_FNameDir( hbmk[ _HBMK_cPROGNAME ] ), nOpt_Esc, nOpt_FNF ), ; @@ -6837,9 +6878,10 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit nOpt_FNF := iif( "{SCRIPT}" $ cOpt_Link, hbmk[ _HBMK_nScr_FNF ], hbmk[ _HBMK_nCmd_FNF ] ) /* TODO: eliminate recursive macros from hbmk[ _HBMK_aOPTL ] */ - cOpt_Link := StrTran( cOpt_Link, "{FL}", iif( hbmk[ _HBMK_lBLDFLGL ], hb_Version( HB_VERSION_FLAG_LINKER ) + " ", "" ) +; - GetEnv( "HB_USER_LDFLAGS" ) +; - iif( Empty( hbmk[ _HBMK_aOPTL ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTL ] ) ) ) + cOpt_Link := StrTran( cOpt_Link, "{FL}", ; + iif( hbmk[ _HBMK_lBLDFLGL ], hb_Version( HB_VERSION_FLAG_LINKER ) + " ", "" ) + ; + GetEnv( "HB_USER_LDFLAGS" ) + ; + iif( Empty( hbmk[ _HBMK_aOPTL ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTL ] ) ) ) cOpt_Link := AllTrim( hb_StrReplace( cOpt_Link, { ; "{LO}" => ArrayToList( ArrayJoin( l_aOBJ, hbmk[ _HBMK_aOBJUSER ] ),, nOpt_Esc, nOpt_FNF, cObjPrefix ), ; @@ -6959,7 +7001,8 @@ STATIC FUNCTION __hbmk( aArgs, nArgTarget, nLevel, /* @ */ lPause, /* @ */ lExit ENDIF /* TODO: eliminate recursive macros from hbmk[ _HBMK_aOPTD ] */ - cOpt_Dyn := StrTran( cOpt_Dyn, "{FD}", GetEnv( "HB_USER_DFLAGS" ) + " " + ArrayToList( hbmk[ _HBMK_aOPTD ] ) ) + cOpt_Dyn := StrTran( cOpt_Dyn, "{FD}", ; + GetEnv( "HB_USER_DFLAGS" ) + " " + ArrayToList( hbmk[ _HBMK_aOPTD ] ) ) cOpt_Dyn := AllTrim( hb_StrReplace( cOpt_Dyn, { ; "{LO}" => tmp, ; @@ -8173,11 +8216,11 @@ STATIC FUNCTION FindNewerHeaders( hbmk, cFileName, tTimeParent, lCMode, cBin_Com tmp := "" hb_processRun( ; - cBin_CompC + " -MM" +; - " " + iif( hbmk[ _HBMK_lBLDFLGC ], hb_Version( HB_VERSION_FLAG_C ) + " ", "" ) +; - GetEnv( "HB_USER_CFLAGS" ) +; - " " + ArrayToList( hbmk[ _HBMK_aOPTC ] ) +; - " " + ArrayToList( hbmk[ _HBMK_aOPTCUSER ] ) +; + cBin_CompC + " -MM" + ; + " " + iif( hbmk[ _HBMK_lBLDFLGC ], hb_Version( HB_VERSION_FLAG_C ) + " ", "" ) + ; + GetEnv( "HB_USER_CFLAGS" ) + ; + " " + ArrayToList( hbmk[ _HBMK_aOPTC ] ) + ; + " " + ArrayToList( hbmk[ _HBMK_aOPTCUSER ] ) + ; " " + cFileName,, @tmp ) tmp := StrTran( tmp, Chr( 13 ) ) @@ -9479,6 +9522,7 @@ STATIC FUNCTION hbmk_SecToken() /* NOTE: Security token to protect against plugins accessing our internal structures referenced from context variable */ + STATIC s_cToken := NIL STATIC s_mutexToken := hb_mutexCreate() @@ -9694,6 +9738,7 @@ STATIC FUNCTION FindInPath( cFileName, xPath, aExtDef ) #if 0 STATIC FUNCTION ArrayJoinNoClone( arraySrc1, arraySrc2 ) + LOCAL nLen1 := Len( arraySrc1 ) ASize( arraySrc1, nLen1 + Len( arraySrc2 ) ) @@ -9808,6 +9853,7 @@ STATIC FUNCTION AAddNotEmpty( array, xItem ) #if 0 STATIC FUNCTION DepTreeToList( aTree ) + LOCAL aList := {} DepTreeWorker( aList, aTree ) @@ -11365,8 +11411,8 @@ STATIC FUNCTION MacroGet( hbmk, cMacro, cFileName ) hb_Version( HB_VERSION_STATUS ) ELSE cMacro := ; - hb_ntos( hb_bitAnd( hb_bitShift( Abs( hbmk[ _HBMK_nHBMODE ] ), -16 ), 0xFF ) ) + "." +; - hb_ntos( hb_bitAnd( hb_bitShift( Abs( hbmk[ _HBMK_nHBMODE ] ), -8 ), 0xFF ) ) + "." +; + hb_ntos( hb_bitAnd( hb_bitShift( Abs( hbmk[ _HBMK_nHBMODE ] ), -16 ), 0xFF ) ) + "." + ; + hb_ntos( hb_bitAnd( hb_bitShift( Abs( hbmk[ _HBMK_nHBMODE ] ), -8 ), 0xFF ) ) + "." + ; hb_ntos( hb_bitAnd( hb_bitShift( Abs( hbmk[ _HBMK_nHBMODE ] ), 0 ), 0xFF ) ) ENDIF EXIT @@ -11492,7 +11538,7 @@ STATIC FUNCTION getFirstFunc( hbmk, cFile ) /* do nothing */ ELSEIF ! Empty( cExecNM := FindInPath( hbmk[ _HBMK_cCCPREFIX ] + "nm" ) ) cFuncList := "" - hb_processRun( cExecNM + " " + FNameEscape( cFile, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ) +; + hb_processRun( cExecNM + " " + FNameEscape( cFile, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ) + ; " -g -n" + iif( hbmk[ _HBMK_cCOMP ] == "darwin", "", " --defined-only -C" ),, @cFuncList ) IF ( n := At( " T HB_FUN_", cFuncList ) ) != 0 n += 10 @@ -11701,6 +11747,7 @@ STATIC PROCEDURE PlatformPRGFlags( hbmk, aOPTPRG ) #if 0 STATIC PROCEDURE rtlnk_libtrans( aLibList ) + STATIC s_hTrans := { ; "CT" => "hbct" , ; "CTP" => "hbct" , ; @@ -11744,6 +11791,7 @@ STATIC PROCEDURE rtlnk_libtrans( aLibList ) RETURN STATIC PROCEDURE rtlnk_filetrans( aFileList ) + STATIC s_hTrans := { ; "CTUS" => NIL , ; "CTUSP" => NIL , ; @@ -12406,8 +12454,9 @@ STATIC FUNCTION win_implib_command_msvc( hbmk, cCommand, cSourceDLL, cTargetLib, IF hb_processRun( cCommandDump,, @cExports ) == 0 - cFuncList := "LIBRARY " + '"' + hb_FNameNameExt( cSourceDLL ) + '"' + hb_eol() +; - "EXPORTS" + hb_eol() + cFuncList := ; + "LIBRARY " + '"' + hb_FNameNameExt( cSourceDLL ) + '"' + hb_eol() + ; + "EXPORTS" + hb_eol() cExports := StrTran( cExports, Chr( 13 ) + Chr( 10 ), Chr( 10 ) ) @@ -12722,15 +12771,16 @@ FUNCTION hbmk_KEYW( hbmk, cFileName, cKeyword, cValue, cOperator ) RETURN .T. ENDIF - IF ! HBMK_IS_IN( cKeyword, "|win|wce|dos|os2" +; - "|bsd|hpux|sunos|beos|qnx|android|vxworks|symbian|linux|darwin|cygwin|minix|aix" +; - "|msvc|msvc64|msvcia64|msvcarm" +; - "|pocc|pocc64|poccarm|xcc" +; - "|mingw|mingw64|mingwarm|bcc|bcc64|watcom" +; - "|gcc|gccomf|djgpp" +; - "|hblib|hbdyn|hbdynvm|hbimplib|hbexe" +; - "|icc|iccia64|clang|open64|sunpro|diab|pcc" +; - "|x86|x86_64|ia64|arm|mips|sh" ) + IF ! HBMK_IS_IN( cKeyword, ; + "|win|wce|dos|os2" + ; + "|bsd|hpux|sunos|beos|qnx|android|vxworks|symbian|linux|darwin|cygwin|minix|aix" + ; + "|msvc|msvc64|msvcia64|msvcarm" + ; + "|pocc|pocc64|poccarm|xcc" + ; + "|mingw|mingw64|mingwarm|bcc|bcc64|watcom" + ; + "|gcc|gccomf|djgpp" + ; + "|hblib|hbdyn|hbdynvm|hbimplib|hbexe" + ; + "|icc|iccia64|clang|open64|sunpro|diab|pcc" + ; + "|x86|x86_64|ia64|arm|mips|sh" ) /* handle pseudo-functions */ IF cOperator == "=" .AND. cValue != NIL @@ -12851,6 +12901,7 @@ STATIC FUNCTION Apple_App_Template_Info_plist() #pragma __endtext STATIC FUNCTION hbmk_hb_processRunCatch( cCommand, /* @ */ cStdOutErr ) + LOCAL hProc LOCAL hOutErr @@ -13199,8 +13250,8 @@ STATIC FUNCTION __hb_extern_gen( hbmk, aFuncList, cOutputName ) LOCAL cLine := "/* " + Replicate( "-", 68 ) + hb_eol() LOCAL cHelp := ; - " * Syntax: // HB_FUNC_INCLUDE " + hb_eol() +; - " * // HB_FUNC_EXCLUDE " + hb_eol() +; + " * Syntax: // HB_FUNC_INCLUDE " + hb_eol() + ; + " * // HB_FUNC_EXCLUDE " + hb_eol() + ; " */" + hb_eol() __hb_extern_get_exception_list( cOutputName, @aInclude, @aExclude, @hDynamic ) @@ -13424,6 +13475,7 @@ STATIC FUNCTION hbsh() t_hbsh[ _HBSH_lPreserveHistory ] := .T. t_hbsh[ _HBSH_lWasLoad ] := .F. t_hbsh[ _HBSH_lInteractive ] := .T. + t_hbsh[ _HBSH_lClipperComp ] := .F. ENDIF RETURN t_hbsh @@ -13906,6 +13958,7 @@ STATIC FUNCTION __hbshell_plugins() #define _PLUGIN_MAX_ 4 STATIC FUNCTION __hbshell_plugins_load( hPlugins, aParams ) + LOCAL hConIO := { ; "displine" => {| c | __hbshell_ToConsole( c ) } , ; "gethidden" => {|| __hbshell_GetHidden() } } @@ -14225,21 +14278,19 @@ STATIC PROCEDURE __hbshell_Info( cCommand ) hb_DispOutAt( 0, 4, PadR( cCommand, MaxCol() - 3 ), "N/R" ) ENDIF IF Used() - hb_DispOutAt( 1, 0, ; - PadR( "RDD: " + PadR( rddName(), 6 ) +; - " | Area:" + Str( Select(), 3 ) +; - " | Dbf: " + PadR( Alias(), 10 ) +; - " | Index: " + PadR( ordName( IndexOrd() ), 8 ) +; - " | # " + Str( RecNo(), 7 ) + "/" + Str( RecCount(), 7 ), ; - MaxCol() + 1 ), "N/BG" ) + hb_DispOutAt( 1, 0, PadR( ; + "RDD: " + PadR( rddName(), 6 ) +; + " | Area:" + Str( Select(), 3 ) +; + " | Dbf: " + PadR( Alias(), 10 ) +; + " | Index: " + PadR( ordName( IndexOrd() ), 8 ) +; + " | # " + Str( RecNo(), 7 ) + "/" + Str( RecCount(), 7 ), MaxCol() + 1 ), "N/BG" ) ELSE - hb_DispOutAt( 1, 0, ; - PadR( "RDD: " + Space( 6 ) +; - " | Area:" + Space( 3 ) +; - " | Dbf: " + Space( 10 ) +; - " | Index: " + Space( 8 ) +; - " | # " + Space( 7 ) + "/" + Space( 7 ), ; - MaxCol() + 1 ), "N/BG" ) + hb_DispOutAt( 1, 0, PadR( ; + "RDD: " + Space( 6 ) +; + " | Area:" + Space( 3 ) +; + " | Dbf: " + Space( 10 ) +; + " | Index: " + Space( 8 ) +; + " | # " + Space( 7 ) + "/" + Space( 7 ), MaxCol() + 1 ), "N/BG" ) ENDIF IF hbsh[ _HBSH_lPreserveHistory ] hb_DispOutAt( 1, MaxCol(), "o", "R/BG" ) @@ -14300,10 +14351,10 @@ STATIC PROCEDURE __hbshell_Exec( cCommand ) } ) cFunc := ; - "STATIC FUNCTION __HBDOT()" + hb_eol() +; - "RETURN {||" + hb_eol() +; - " " + cCommand + hb_eol() +; - " RETURN __mvSetBase()" + hb_eol() +; + "STATIC FUNCTION __HBDOT()" + hb_eol() + ; + "RETURN {||" + hb_eol() + ; + " " + cCommand + hb_eol() + ; + " RETURN __mvSetBase()" + hb_eol() + ; "}" + hb_eol() DevPos( hbsh[ _HBSH_nRow ], hbsh[ _HBSH_nCol ] ) @@ -14612,15 +14663,32 @@ FUNCTION hbshell_ProgName() RETURN hb_UTF8ToStr( hbsh[ _HBSH_cProgName ] ) +FUNCTION hbshell_Clipper() + + LOCAL hbsh := hbsh() + + hbsh[ _HBSH_lClipperComp ] := .T. + + hb_cdpSelect( "EN" ) + hb_gtInfo( HB_GTI_COMPATBUFFER, .T. ) + hb_gtInfo( HB_GTI_BOXCP, "EN" ) + hb_langSelect( "en" ) + + RETURN NIL + FUNCTION hbshell_gtSelect( cGT ) + LOCAL hbsh := hbsh() + hb_default( @cGT, __hbshell_gtDefault() ) IF !( "GT" + hb_gtVersion( 0 ) == cGT ) hb_gtSelect( hb_gtCreate( cGT ) ) hb_SetTermCP( hb_cdpTerm() ) - hb_gtInfo( HB_GTI_COMPATBUFFER, .F. ) - hb_gtInfo( HB_GTI_BOXCP, hb_cdpSelect() ) + IF ! hbsh[ _HBSH_lClipperComp ] + hb_gtInfo( HB_GTI_COMPATBUFFER, .F. ) + hb_gtInfo( HB_GTI_BOXCP, hb_cdpSelect() ) + ENDIF ENDIF RETURN NIL @@ -14640,12 +14708,6 @@ STATIC FUNCTION __hbshell_gtDefault() RETURN _HBMK_GT_DEF_ #endif -#else - -/* public entry for embedded flavor */ -FUNCTION hbmk( ... ) - RETURN __hbmk( ... ) - #endif /* ! _HBMK_EMBEDDED_ */ /* ------------------------------------------------------------- */ @@ -15185,7 +15247,7 @@ STATIC PROCEDURE ShowHeader( hbmk ) LOCAL cTrsTextI cText := ; - "Harbour Make (" + _SELF_NAME_ + ") " + HBRawVersion() + e"\n" +; + "Harbour Make (" + _SELF_NAME_ + ") " + HBRawVersion() + e"\n" + ; "Copyright (c) 1999-2013, Viktor Szakáts" + e"\n" IF hbmk[ _HBMK_lMarkdown ] @@ -15445,8 +15507,9 @@ STATIC PROCEDURE ShowHelp( hbmk, lFull, lLong ) { "-longhelp" , I_( "long help" ) }, ; { "-longhelpmd" , I_( "long help in Markdown format" ) }, ; { "-harbourhelp" , hb_StrFormat( I_( "Harbour compiler help (all Harbour compiler options are accepted as is by %1$s)" ), _SELF_NAME_ ) }, ; - { "-credits" , I_( "display credits (via Harbour compiler)" ) }, ; + { "-credits" , I_( "display Harbour compiler credits" ) }, ; { "-build" , I_( "display detailed build information (via Harbour compiler)" ) }, ; + { "-license|--license" , I_( "display the license" ) }, ; { "-version|--version" , I_( "display version header only" ) } } LOCAL aHdr_Exit := { ; @@ -15703,6 +15766,7 @@ STATIC PROCEDURE ShowHelp( hbmk, lFull, lLong ) LOCAL aLst_APIShell := { ; NIL, ; { "hbshell_gtSelect( [] ) -> NIL" , hb_StrFormat( I_( "Switch GT. Default [*]: '%1$s'" ), Lower( __hbshell_gtDefault() ) ) }, ; + { "hbshell_Clipper() -> NIL" , I_( "Enable Clipper compatibility (non-Unicode) mode." ) }, ; { "hbshell_include( ) -> " , I_( "Load Harbour header." ) }, ; { "hbshell_uninclude( ) -> " , I_( "Unload Harbour header." ) }, ; { "hbshell_include_list() -> NIL" , I_( "Display list of loaded Harbour header." ) }, ; @@ -15958,3 +16022,38 @@ STATIC PROCEDURE _hbmk_OutErr( hbmk, cText ) NEXT RETURN + +STATIC PROCEDURE ShowLicense() + +#pragma __cstream | OutStd( %s ) +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit +their web site at http://www.gnu.org/). + +License extensions: + - This source code must be kept and distributed as part + of the Harbour package and/or the placement of the tool sources + and files must reflect that it is part of Harbour Project. + - Copyright information must always be presented by + projects including this tool or help text. + - Modified versions of the tool must clearly state this + fact on the copyright screen. + - Source code modifications shall always be made available + along with binaries. + - Help text and documentation is licensed under + Creative Commons Attribution-ShareAlike 3.0: + http://creativecommons.org/licenses/by-sa/3.0/ +#pragma __endtext + + RETURN diff --git a/harbour/website/images/cca_nominate-2.png b/harbour/website/images/cca_nominate-2.png index 8fd958c051..00c04661dc 100644 Binary files a/harbour/website/images/cca_nominate-2.png and b/harbour/website/images/cca_nominate-2.png differ diff --git a/harbour/website/images/cca_nominate.png b/harbour/website/images/cca_nominate.png index 4a858209c8..24ad9f9146 100644 Binary files a/harbour/website/images/cca_nominate.png and b/harbour/website/images/cca_nominate.png differ diff --git a/harbour/website/images/development.png b/harbour/website/images/development.png index 765a61878a..e7000f2434 100644 Binary files a/harbour/website/images/development.png and b/harbour/website/images/development.png differ diff --git a/harbour/website/images/header_05.png b/harbour/website/images/header_05.png index 88036257b5..744b6d19e6 100644 Binary files a/harbour/website/images/header_05.png and b/harbour/website/images/header_05.png differ diff --git a/harbour/website/images/header_12.png b/harbour/website/images/header_12.png index ee787d065a..2fe100baeb 100644 Binary files a/harbour/website/images/header_12.png and b/harbour/website/images/header_12.png differ diff --git a/harbour/website/images/helmet.png b/harbour/website/images/helmet.png index ad9eee2801..f999532ba3 100644 Binary files a/harbour/website/images/helmet.png and b/harbour/website/images/helmet.png differ diff --git a/harbour/website/images/mobile2.png b/harbour/website/images/mobile2.png index 94a6a17ef9..be9b61d940 100644 Binary files a/harbour/website/images/mobile2.png and b/harbour/website/images/mobile2.png differ diff --git a/harbour/website/images/more-samples.png b/harbour/website/images/more-samples.png index c39ed4a095..02763cc819 100644 Binary files a/harbour/website/images/more-samples.png and b/harbour/website/images/more-samples.png differ diff --git a/harbour/website/images/uses.png b/harbour/website/images/uses.png index ab71ca98b9..75e1cec195 100644 Binary files a/harbour/website/images/uses.png and b/harbour/website/images/uses.png differ diff --git a/harbour/website/images/xml2.png b/harbour/website/images/xml2.png index e2267d3a7d..e6c40c6cab 100644 Binary files a/harbour/website/images/xml2.png and b/harbour/website/images/xml2.png differ diff --git a/harbour/website/index.html b/harbour/website/index.html index 1ecc4be0e4..0250652cb9 100644 --- a/harbour/website/index.html +++ b/harbour/website/index.html @@ -47,9 +47,9 @@   - The Harbour Project is a Free Open Source Software effort to build a multiplatform Clipper language compiler. Harbour consists of the xBase language compiler and the runtime libraries with different terminal plugins and different databases (not just DBF).
+ Harbour is the Free Open Source Software implementation of a multi-platform, multi-threading, object-oriented, scriptable programming language, backward compatible with Clipper/xBase. Harbour consists of a compiler and runtime libraries with multiple UI and database backends, its own make system and a large collection of libraries and interfaces to many popular APIs.

-Harbour is a cross-platform compiler and is known to compile and run on MS-DOS, Windows (32 & 64), Windows CE, Pocket PC, OS/2, GNU/Linux and Mac OS X. +Harbour is a cross-platform compiler and is known to compile and run on Windows (32 & 64), GNU/Linux, Mac OS X, Windows CE, OS/2 and MS-DOS. More features »   diff --git a/harbour/website/samples/array16.html b/harbour/website/samples/array16.html index 298308a6fc..14b1fab786 100644 --- a/harbour/website/samples/array16.html +++ b/harbour/website/samples/array16.html @@ -81,7 +81,7 @@   -

+

array16 sample running on Windows Vista

 
  diff --git a/harbour/website/samples/arreval.html b/harbour/website/samples/arreval.html index fb8ef3a5f4..8481eea640 100644 --- a/harbour/website/samples/arreval.html +++ b/harbour/website/samples/arreval.html @@ -81,7 +81,7 @@   -

+

arreval sample running on Windows

 
  diff --git a/harbour/website/samples/byref.html b/harbour/website/samples/byref.html index 04499c6684..7b3c842758 100644 --- a/harbour/website/samples/byref.html +++ b/harbour/website/samples/byref.html @@ -81,7 +81,7 @@   -

+

initexit sample running on Windows
  diff --git a/harbour/website/samples/dates3.html b/harbour/website/samples/dates3.html index 70712a91b0..36d0eae2a9 100644 --- a/harbour/website/samples/dates3.html +++ b/harbour/website/samples/dates3.html @@ -76,7 +76,7 @@   -
+
  diff --git a/harbour/website/samples/foreach.html b/harbour/website/samples/foreach.html index 739982b061..e57ea6c700 100644 --- a/harbour/website/samples/foreach.html +++ b/harbour/website/samples/foreach.html @@ -81,7 +81,7 @@   -

+

foreach sample running on Windows

 
  diff --git a/harbour/website/samples/hello.html b/harbour/website/samples/hello.html index 07c1186e3b..8b1f163bef 100644 --- a/harbour/website/samples/hello.html +++ b/harbour/website/samples/hello.html @@ -72,7 +72,7 @@   -

+

Hello application running on Windows
  diff --git a/harbour/website/samples/initexit.html b/harbour/website/samples/initexit.html index 3234ffa2df..25b5dd15f6 100644 --- a/harbour/website/samples/initexit.html +++ b/harbour/website/samples/initexit.html @@ -81,7 +81,7 @@   -

+

initexit sample running on Windows
  diff --git a/harbour/website/samples/mousetst.html b/harbour/website/samples/mousetst.html index c335543a89..baae4fda66 100644 --- a/harbour/website/samples/mousetst.html +++ b/harbour/website/samples/mousetst.html @@ -81,7 +81,7 @@   -

+

mousetst sample running on Windows Vista


diff --git a/harbour/website/samples/onidle.html b/harbour/website/samples/onidle.html index 4595d885d6..ae5ad9d92f 100644 --- a/harbour/website/samples/onidle.html +++ b/harbour/website/samples/onidle.html @@ -81,7 +81,7 @@   -

+

onidle sample running on Windows

 
  diff --git a/harbour/website/samples/osshell.html b/harbour/website/samples/osshell.html index 0fc86ac02d..53462f35aa 100644 --- a/harbour/website/samples/osshell.html +++ b/harbour/website/samples/osshell.html @@ -81,7 +81,7 @@   -

+

osshell sample running on Windows Vista


diff --git a/harbour/website/samples/parseini.html b/harbour/website/samples/parseini.html index a8b373f5d7..607305b506 100644 --- a/harbour/website/samples/parseini.html +++ b/harbour/website/samples/parseini.html @@ -82,7 +82,7 @@   -

+

parseini sample running on Windows Vista


diff --git a/harbour/website/samples/screenshots/array16_w32.png b/harbour/website/samples/screenshots/array16_w32.png deleted file mode 100644 index 1e753a7366..0000000000 Binary files a/harbour/website/samples/screenshots/array16_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/array16_win.png b/harbour/website/samples/screenshots/array16_win.png new file mode 100644 index 0000000000..3d689d7636 Binary files /dev/null and b/harbour/website/samples/screenshots/array16_win.png differ diff --git a/harbour/website/samples/screenshots/arreval_w32.png b/harbour/website/samples/screenshots/arreval_w32.png deleted file mode 100644 index bbe765e381..0000000000 Binary files a/harbour/website/samples/screenshots/arreval_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/arreval_win.png b/harbour/website/samples/screenshots/arreval_win.png new file mode 100644 index 0000000000..0929290ddf Binary files /dev/null and b/harbour/website/samples/screenshots/arreval_win.png differ diff --git a/harbour/website/samples/screenshots/begin.png b/harbour/website/samples/screenshots/begin.png index e622dc403a..4571933565 100644 Binary files a/harbour/website/samples/screenshots/begin.png and b/harbour/website/samples/screenshots/begin.png differ diff --git a/harbour/website/samples/screenshots/byref_w32.png b/harbour/website/samples/screenshots/byref_w32.png deleted file mode 100644 index 34373bfb0e..0000000000 Binary files a/harbour/website/samples/screenshots/byref_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/byref_win.png b/harbour/website/samples/screenshots/byref_win.png new file mode 100644 index 0000000000..0e8ed47cef Binary files /dev/null and b/harbour/website/samples/screenshots/byref_win.png differ diff --git a/harbour/website/samples/screenshots/codebl.png b/harbour/website/samples/screenshots/codebl.png index 265163e578..57fed07a0c 100644 Binary files a/harbour/website/samples/screenshots/codebl.png and b/harbour/website/samples/screenshots/codebl.png differ diff --git a/harbour/website/samples/screenshots/codebloc.png b/harbour/website/samples/screenshots/codebloc.png index db9ce5aeb0..c5763c5050 100644 Binary files a/harbour/website/samples/screenshots/codebloc.png and b/harbour/website/samples/screenshots/codebloc.png differ diff --git a/harbour/website/samples/screenshots/dates3_w32.png b/harbour/website/samples/screenshots/dates3_w32.png deleted file mode 100644 index cc86cf0dd1..0000000000 Binary files a/harbour/website/samples/screenshots/dates3_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/dates3_win.png b/harbour/website/samples/screenshots/dates3_win.png new file mode 100644 index 0000000000..1fccc712ea Binary files /dev/null and b/harbour/website/samples/screenshots/dates3_win.png differ diff --git a/harbour/website/samples/screenshots/foreach_w32.png b/harbour/website/samples/screenshots/foreach_w32.png deleted file mode 100644 index 2624128305..0000000000 Binary files a/harbour/website/samples/screenshots/foreach_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/foreach_win.png b/harbour/website/samples/screenshots/foreach_win.png new file mode 100644 index 0000000000..386247f06c Binary files /dev/null and b/harbour/website/samples/screenshots/foreach_win.png differ diff --git a/harbour/website/samples/screenshots/hello_linux.png b/harbour/website/samples/screenshots/hello_linux.png index 07dc27e238..9a8b86cced 100644 Binary files a/harbour/website/samples/screenshots/hello_linux.png and b/harbour/website/samples/screenshots/hello_linux.png differ diff --git a/harbour/website/samples/screenshots/hello_w32.png b/harbour/website/samples/screenshots/hello_w32.png deleted file mode 100644 index 02c61ccc95..0000000000 Binary files a/harbour/website/samples/screenshots/hello_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/hello_win.png b/harbour/website/samples/screenshots/hello_win.png new file mode 100644 index 0000000000..da3933a525 Binary files /dev/null and b/harbour/website/samples/screenshots/hello_win.png differ diff --git a/harbour/website/samples/screenshots/initexit_w32.png b/harbour/website/samples/screenshots/initexit_w32.png deleted file mode 100644 index a184f38fbc..0000000000 Binary files a/harbour/website/samples/screenshots/initexit_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/initexit_win.png b/harbour/website/samples/screenshots/initexit_win.png new file mode 100644 index 0000000000..531728ad72 Binary files /dev/null and b/harbour/website/samples/screenshots/initexit_win.png differ diff --git a/harbour/website/samples/screenshots/longdev_linux.png b/harbour/website/samples/screenshots/longdev_linux.png index adfe8f2c8f..22bf398e62 100644 Binary files a/harbour/website/samples/screenshots/longdev_linux.png and b/harbour/website/samples/screenshots/longdev_linux.png differ diff --git a/harbour/website/samples/screenshots/mousetst_linux.png b/harbour/website/samples/screenshots/mousetst_linux.png index 36ef33fba9..01993d5c56 100644 Binary files a/harbour/website/samples/screenshots/mousetst_linux.png and b/harbour/website/samples/screenshots/mousetst_linux.png differ diff --git a/harbour/website/samples/screenshots/mousetst_w32.png b/harbour/website/samples/screenshots/mousetst_w32.png deleted file mode 100644 index 5967747417..0000000000 Binary files a/harbour/website/samples/screenshots/mousetst_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/mousetst_win.png b/harbour/website/samples/screenshots/mousetst_win.png new file mode 100644 index 0000000000..f4d962da68 Binary files /dev/null and b/harbour/website/samples/screenshots/mousetst_win.png differ diff --git a/harbour/website/samples/screenshots/onidle_w32.png b/harbour/website/samples/screenshots/onidle_w32.png deleted file mode 100644 index 5d66745a46..0000000000 Binary files a/harbour/website/samples/screenshots/onidle_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/onidle_win.png b/harbour/website/samples/screenshots/onidle_win.png new file mode 100644 index 0000000000..c447b949cc Binary files /dev/null and b/harbour/website/samples/screenshots/onidle_win.png differ diff --git a/harbour/website/samples/screenshots/osshell_linux.png b/harbour/website/samples/screenshots/osshell_linux.png index 4df79a9c2a..61f71e7cbe 100644 Binary files a/harbour/website/samples/screenshots/osshell_linux.png and b/harbour/website/samples/screenshots/osshell_linux.png differ diff --git a/harbour/website/samples/screenshots/osshell_w32.png b/harbour/website/samples/screenshots/osshell_w32.png deleted file mode 100644 index 8ed2e2e983..0000000000 Binary files a/harbour/website/samples/screenshots/osshell_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/osshell_win.png b/harbour/website/samples/screenshots/osshell_win.png new file mode 100644 index 0000000000..be217e6b70 Binary files /dev/null and b/harbour/website/samples/screenshots/osshell_win.png differ diff --git a/harbour/website/samples/screenshots/parseini_linux.png b/harbour/website/samples/screenshots/parseini_linux.png index e22618cb27..17e7960ac4 100644 Binary files a/harbour/website/samples/screenshots/parseini_linux.png and b/harbour/website/samples/screenshots/parseini_linux.png differ diff --git a/harbour/website/samples/screenshots/parseini_w32.png b/harbour/website/samples/screenshots/parseini_w32.png deleted file mode 100644 index 6b4e7158a6..0000000000 Binary files a/harbour/website/samples/screenshots/parseini_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/parseini_win.png b/harbour/website/samples/screenshots/parseini_win.png new file mode 100644 index 0000000000..1d62434864 Binary files /dev/null and b/harbour/website/samples/screenshots/parseini_win.png differ diff --git a/harbour/website/samples/screenshots/switch_w32.png b/harbour/website/samples/screenshots/switch_w32.png deleted file mode 100644 index 3514654c97..0000000000 Binary files a/harbour/website/samples/screenshots/switch_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/switch_win.png b/harbour/website/samples/screenshots/switch_win.png new file mode 100644 index 0000000000..430b4d22b7 Binary files /dev/null and b/harbour/website/samples/screenshots/switch_win.png differ diff --git a/harbour/website/samples/screenshots/testbrdb_linux.png b/harbour/website/samples/screenshots/testbrdb_linux.png index 5619df72e3..999c1f56ff 100644 Binary files a/harbour/website/samples/screenshots/testbrdb_linux.png and b/harbour/website/samples/screenshots/testbrdb_linux.png differ diff --git a/harbour/website/samples/screenshots/testbrdb_w32.png b/harbour/website/samples/screenshots/testbrdb_w32.png deleted file mode 100644 index edca5f25a1..0000000000 Binary files a/harbour/website/samples/screenshots/testbrdb_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/testbrdb_win.png b/harbour/website/samples/screenshots/testbrdb_win.png new file mode 100644 index 0000000000..b4a65cd9a1 Binary files /dev/null and b/harbour/website/samples/screenshots/testbrdb_win.png differ diff --git a/harbour/website/samples/screenshots/testbrw_linux.png b/harbour/website/samples/screenshots/testbrw_linux.png index 68c193b759..529f2b730c 100644 Binary files a/harbour/website/samples/screenshots/testbrw_linux.png and b/harbour/website/samples/screenshots/testbrw_linux.png differ diff --git a/harbour/website/samples/screenshots/testbrw_w32.png b/harbour/website/samples/screenshots/testbrw_w32.png deleted file mode 100644 index ee6cfbdb07..0000000000 Binary files a/harbour/website/samples/screenshots/testbrw_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/testbrw_win.png b/harbour/website/samples/screenshots/testbrw_win.png new file mode 100644 index 0000000000..f4940778c7 Binary files /dev/null and b/harbour/website/samples/screenshots/testbrw_win.png differ diff --git a/harbour/website/samples/screenshots/testhtml.png b/harbour/website/samples/screenshots/testhtml.png index 52a8805d68..3c384bd8e9 100644 Binary files a/harbour/website/samples/screenshots/testhtml.png and b/harbour/website/samples/screenshots/testhtml.png differ diff --git a/harbour/website/samples/screenshots/testidle_w32.png b/harbour/website/samples/screenshots/testidle_w32.png deleted file mode 100644 index b446dc8486..0000000000 Binary files a/harbour/website/samples/screenshots/testidle_w32.png and /dev/null differ diff --git a/harbour/website/samples/screenshots/testidle_win.png b/harbour/website/samples/screenshots/testidle_win.png new file mode 100644 index 0000000000..64626f2c35 Binary files /dev/null and b/harbour/website/samples/screenshots/testidle_win.png differ diff --git a/harbour/website/samples/screenshots/tstmacro.png b/harbour/website/samples/screenshots/tstmacro.png index e4e6082d93..3b9d57a54e 100644 Binary files a/harbour/website/samples/screenshots/tstmacro.png and b/harbour/website/samples/screenshots/tstmacro.png differ diff --git a/harbour/website/samples/switch.html b/harbour/website/samples/switch.html index 9f4b6a7122..4f01b9b0cd 100644 --- a/harbour/website/samples/switch.html +++ b/harbour/website/samples/switch.html @@ -81,7 +81,7 @@   -

+

switch sample running on Windows

 
  diff --git a/harbour/website/samples/testbrdb.html b/harbour/website/samples/testbrdb.html index 192d4868fb..09146908e4 100644 --- a/harbour/website/samples/testbrdb.html +++ b/harbour/website/samples/testbrdb.html @@ -71,7 +71,7 @@   -

+

testbrdb sample running on Windows Vista


diff --git a/harbour/website/samples/testbrw.html b/harbour/website/samples/testbrw.html index 57af553d8e..567fe1375d 100644 --- a/harbour/website/samples/testbrw.html +++ b/harbour/website/samples/testbrw.html @@ -71,7 +71,7 @@   -

+

testbrw sample running on Windows Vista


diff --git a/harbour/website/samples/testidle.html b/harbour/website/samples/testidle.html index 23893e5b85..e14949e304 100644 --- a/harbour/website/samples/testidle.html +++ b/harbour/website/samples/testidle.html @@ -81,7 +81,7 @@   -

+

testidle sample running on Windows