diff --git a/harbour/ChangeLog.txt b/harbour/ChangeLog.txt index d6899765cf..16f7c88558 100644 --- a/harbour/ChangeLog.txt +++ b/harbour/ChangeLog.txt @@ -10,6 +10,29 @@ * Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment */ +2013-02-17 12:43 UTC+0100 Viktor Szakats (harbour syenar.net) + * src/codepage/*.c + - src/codepage/l_*.c + + src/codepage/l_*.h + * src/lang/Makefile + - src/lang/*.c + + src/lang/l_*.c + + renamed collation modules and language modules, so they + now can be merged into a single directory (and sorted + by extension to overview country coverage). + + * src/common/hbstr.c + + added missing some C escaped chars: \a, \f, \v + INCOMPATIBLE: thus far they had been converted to + char 'a', 'f', 'v' respectively. + e"" string literals, HB_STRCDECODE(), HB_STRDECODESCAPE() + are affected. + + * utils/hbmk2/hbmk2.prg + ! avoided one ASCII code dependent comparison + ! added missing value value validation for -incpath= option + * minor internal cleanups + 2013-02-16 15:09 UTC+0100 Viktor Szakats (harbour syenar.net) * utils/hbmk2/hbmk2.prg ! RTE regression in one last change diff --git a/harbour/src/codepage/cpbg866.c b/harbour/src/codepage/cpbg866.c index b3640aa110..bb896821dc 100644 --- a/harbour/src/codepage/cpbg866.c +++ b/harbour/src/codepage/cpbg866.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Bulgarian CP-866" #define HB_CP_UNITB HB_UNITB_866 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_bg.c" +#include "l_bg.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpbgiso.c b/harbour/src/codepage/cpbgiso.c index 0b3a703901..0627558a04 100644 --- a/harbour/src/codepage/cpbgiso.c +++ b/harbour/src/codepage/cpbgiso.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Bulgarian ISO-8859-5" #define HB_CP_UNITB HB_UNITB_8859_5 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_bg.c" +#include "l_bg.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpbgmik.c b/harbour/src/codepage/cpbgmik.c index f96e94f896..7345ec9755 100644 --- a/harbour/src/codepage/cpbgmik.c +++ b/harbour/src/codepage/cpbgmik.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Bulgarian MIK" #define HB_CP_UNITB HB_UNITB_MIK #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_bg.c" +#include "l_bg.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpbgwin.c b/harbour/src/codepage/cpbgwin.c index 2317644dae..ebf27777f9 100644 --- a/harbour/src/codepage/cpbgwin.c +++ b/harbour/src/codepage/cpbgwin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Bulgarian Windows-1251" #define HB_CP_UNITB HB_UNITB_1251 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_bg.c" +#include "l_bg.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpcs852.c b/harbour/src/codepage/cpcs852.c index ad3406238e..d944d26aaa 100644 --- a/harbour/src/codepage/cpcs852.c +++ b/harbour/src/codepage/cpcs852.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Czech CP-852" #define HB_CP_UNITB HB_UNITB_852 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_cs.c" +#include "l_cs.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpcsiso.c b/harbour/src/codepage/cpcsiso.c index ac38453ca3..b15bebc5a5 100644 --- a/harbour/src/codepage/cpcsiso.c +++ b/harbour/src/codepage/cpcsiso.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Czech ISO-8859-2" #define HB_CP_UNITB HB_UNITB_8859_2 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_cs.c" +#include "l_cs.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpcswin.c b/harbour/src/codepage/cpcswin.c index 728371917a..86c95f1130 100644 --- a/harbour/src/codepage/cpcswin.c +++ b/harbour/src/codepage/cpcswin.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Czech Windows-1250" #define HB_CP_UNITB HB_UNITB_1250 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_cs.c" +#include "l_cs.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpde850.c b/harbour/src/codepage/cpde850.c index d7ddb2b3ce..cf7ceba7e1 100644 --- a/harbour/src/codepage/cpde850.c +++ b/harbour/src/codepage/cpde850.c @@ -16,7 +16,7 @@ #define HB_CP_INFO "German CP-850 (ntxger.obj compatible)" #define HB_CP_UNITB HB_UNITB_850 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_de.c" +#include "l_de.h" #define HB_CP_UTF8 #if 0 /* VERIFIED: 20091116 */ diff --git a/harbour/src/codepage/cpdeiso.c b/harbour/src/codepage/cpdeiso.c index 00fc935095..33b85f473a 100644 --- a/harbour/src/codepage/cpdeiso.c +++ b/harbour/src/codepage/cpdeiso.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "German ISO-8859-1" #define HB_CP_UNITB HB_UNITB_8859_1 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_de.c" +#include "l_de.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpdewin.c b/harbour/src/codepage/cpdewin.c index ed55b17ec2..cf1f7e596a 100644 --- a/harbour/src/codepage/cpdewin.c +++ b/harbour/src/codepage/cpdewin.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "German Windows-1252" #define HB_CP_UNITB HB_UNITB_1252 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_de.c" +#include "l_de.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpel737.c b/harbour/src/codepage/cpel737.c index 4e225982e6..6dbd8806b1 100644 --- a/harbour/src/codepage/cpel737.c +++ b/harbour/src/codepage/cpel737.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Greek CP-737" #define HB_CP_UNITB HB_UNITB_737 #define HB_CP_ACSORT HB_CDP_ACSORT_EQUAL -#include "l_el.c" +#include "l_el.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpeliso.c b/harbour/src/codepage/cpeliso.c index 2de77b67d8..fc84f44c1a 100644 --- a/harbour/src/codepage/cpeliso.c +++ b/harbour/src/codepage/cpeliso.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Greek ISO-8859-7" #define HB_CP_UNITB HB_UNITB_8859_7 #define HB_CP_ACSORT HB_CDP_ACSORT_EQUAL -#include "l_el.c" +#include "l_el.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpelwin.c b/harbour/src/codepage/cpelwin.c index efbbfe315e..80c3a8c32b 100644 --- a/harbour/src/codepage/cpelwin.c +++ b/harbour/src/codepage/cpelwin.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Greek ANSI CP-1253" #define HB_CP_UNITB HB_UNITB_1253 #define HB_CP_ACSORT HB_CDP_ACSORT_EQUAL -#include "l_el.c" +#include "l_el.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpes850.c b/harbour/src/codepage/cpes850.c index 5217462985..afc41fc7dc 100644 --- a/harbour/src/codepage/cpes850.c +++ b/harbour/src/codepage/cpes850.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Spanish (Modern) CP-850" #define HB_CP_UNITB HB_UNITB_850 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_es.c" +#include "l_es.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpesiso.c b/harbour/src/codepage/cpesiso.c index 0f08088a50..936e4d6636 100644 --- a/harbour/src/codepage/cpesiso.c +++ b/harbour/src/codepage/cpesiso.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Spanish (Modern) ISO-8859-1" #define HB_CP_UNITB HB_UNITB_8859_1 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_es.c" +#include "l_es.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpesmwin.c b/harbour/src/codepage/cpesmwin.c index a444b74ead..b887eba9ad 100644 --- a/harbour/src/codepage/cpesmwin.c +++ b/harbour/src/codepage/cpesmwin.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Spanish (Modern) ISO-8859-1" #define HB_CP_UNITB HB_UNITB_8859_1 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_es.c" +#include "l_es.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpeswin.c b/harbour/src/codepage/cpeswin.c index 7803347f34..d40413db57 100644 --- a/harbour/src/codepage/cpeswin.c +++ b/harbour/src/codepage/cpeswin.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Spanish (Modern) Windows-1252" #define HB_CP_UNITB HB_UNITB_1252 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_es.c" +#include "l_es.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpfriso.c b/harbour/src/codepage/cpfriso.c index 535aec7f94..57e0d96593 100644 --- a/harbour/src/codepage/cpfriso.c +++ b/harbour/src/codepage/cpfriso.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "French ISO-8859-1" #define HB_CP_UNITB HB_UNITB_8859_1 #define HB_CP_ACSORT HB_CDP_ACSORT_EQUAL -#include "l_fr.c" +#include "l_fr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpfrwin.c b/harbour/src/codepage/cpfrwin.c index bd57599a6f..5cba45b3b4 100644 --- a/harbour/src/codepage/cpfrwin.c +++ b/harbour/src/codepage/cpfrwin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "French Windows-1252" #define HB_CP_UNITB HB_UNITB_1252 #define HB_CP_ACSORT HB_CDP_ACSORT_EQUAL -#include "l_fr.c" +#include "l_fr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphe862.c b/harbour/src/codepage/cphe862.c index e295dd5ade..3354376b46 100644 --- a/harbour/src/codepage/cphe862.c +++ b/harbour/src/codepage/cphe862.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Hebrew CP-862" #define HB_CP_UNITB HB_UNITB_862 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_he.c" +#include "l_he.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphewin.c b/harbour/src/codepage/cphewin.c index 7fa4ba9919..b274c27b5d 100644 --- a/harbour/src/codepage/cphewin.c +++ b/harbour/src/codepage/cphewin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Hebrew Windows-1255" #define HB_CP_UNITB HB_UNITB_1255 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_he.c" +#include "l_he.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphr646.c b/harbour/src/codepage/cphr646.c index 11d5934f5c..bdc0e56f5d 100644 --- a/harbour/src/codepage/cphr646.c +++ b/harbour/src/codepage/cphr646.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Croatian ISO-646 (CROSCII)" #define HB_CP_UNITB HB_UNITB_646YU #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_hr.c" +#include "l_hr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphr852.c b/harbour/src/codepage/cphr852.c index 149ef2da36..f5cbd58395 100644 --- a/harbour/src/codepage/cphr852.c +++ b/harbour/src/codepage/cphr852.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Croatian CP-852" #define HB_CP_UNITB HB_UNITB_852 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_hr.c" +#include "l_hr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphriso.c b/harbour/src/codepage/cphriso.c index b64f543033..7d524dafae 100644 --- a/harbour/src/codepage/cphriso.c +++ b/harbour/src/codepage/cphriso.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Croatian ISO-8859-2" #define HB_CP_UNITB HB_UNITB_8859_2 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_hr.c" +#include "l_hr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphrwin.c b/harbour/src/codepage/cphrwin.c index 55d7bbdf37..08d9c127f5 100644 --- a/harbour/src/codepage/cphrwin.c +++ b/harbour/src/codepage/cphrwin.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Croatian Windows-1250" #define HB_CP_UNITB HB_UNITB_1250 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_hr.c" +#include "l_hr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphu852.c b/harbour/src/codepage/cphu852.c index ae3c2f631b..7b4ef8fa62 100644 --- a/harbour/src/codepage/cphu852.c +++ b/harbour/src/codepage/cphu852.c @@ -16,7 +16,7 @@ #define HB_CP_INFO "Hungarian CP-852 (sixhu852.obj compatible)" #define HB_CP_UNITB HB_UNITB_852 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_hu.c" +#include "l_hu.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphuiso.c b/harbour/src/codepage/cphuiso.c index b53a5a14d4..cf7f0b1a85 100644 --- a/harbour/src/codepage/cphuiso.c +++ b/harbour/src/codepage/cphuiso.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Hungarian ISO-8859-2" #define HB_CP_UNITB HB_UNITB_8859_2 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_hu.c" +#include "l_hu.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cphuwin.c b/harbour/src/codepage/cphuwin.c index d8b722d084..17f0a7f59c 100644 --- a/harbour/src/codepage/cphuwin.c +++ b/harbour/src/codepage/cphuwin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Hungarian Windows-1250" #define HB_CP_UNITB HB_UNITB_1250 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_hu.c" +#include "l_hu.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpis850.c b/harbour/src/codepage/cpis850.c index 8abeb25bdf..dfa09088b7 100644 --- a/harbour/src/codepage/cpis850.c +++ b/harbour/src/codepage/cpis850.c @@ -16,7 +16,7 @@ #define HB_CP_INFO "Icelandic CP-850 (ntxic850.obj compatible)" #define HB_CP_UNITB HB_UNITB_850 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_is.c" +#include "l_is.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpis861.c b/harbour/src/codepage/cpis861.c index 21624b84bb..955099b95e 100644 --- a/harbour/src/codepage/cpis861.c +++ b/harbour/src/codepage/cpis861.c @@ -16,7 +16,7 @@ #define HB_CP_INFO "Icelandic CP-861 (ntxic861.obj compatible)" #define HB_CP_UNITB HB_UNITB_861 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_is.c" +#include "l_is.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpitiso.c b/harbour/src/codepage/cpitiso.c index 5054dbc626..4f16fd08a9 100644 --- a/harbour/src/codepage/cpitiso.c +++ b/harbour/src/codepage/cpitiso.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Italian ISO-8859-1" #define HB_CP_UNITB HB_UNITB_8859_1 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_it.c" +#include "l_it.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpitwin.c b/harbour/src/codepage/cpitwin.c index c67a0ccdbe..45b8b1b353 100644 --- a/harbour/src/codepage/cpitwin.c +++ b/harbour/src/codepage/cpitwin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Italian Windows-1252" #define HB_CP_UNITB HB_UNITB_1252 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_it.c" +#include "l_it.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cplt775.c b/harbour/src/codepage/cplt775.c index 2fb10e3e8e..2deeed25c4 100644 --- a/harbour/src/codepage/cplt775.c +++ b/harbour/src/codepage/cplt775.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Lithuanian CP-775" #define HB_CP_UNITB HB_UNITB_775 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_lt.c" +#include "l_lt.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpltwin.c b/harbour/src/codepage/cpltwin.c index eb44b72ffa..21758ce259 100644 --- a/harbour/src/codepage/cpltwin.c +++ b/harbour/src/codepage/cpltwin.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Lithuanian Windows-1257" #define HB_CP_UNITB HB_UNITB_1257 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_lt.c" +#include "l_lt.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cppl852.c b/harbour/src/codepage/cppl852.c index 35e677726b..b658514ca5 100644 --- a/harbour/src/codepage/cppl852.c +++ b/harbour/src/codepage/cppl852.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Polish CP-852" #define HB_CP_UNITB HB_UNITB_852 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_pl.c" +#include "l_pl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cppliso.c b/harbour/src/codepage/cppliso.c index 4b8bcc280b..7a82f72d47 100644 --- a/harbour/src/codepage/cppliso.c +++ b/harbour/src/codepage/cppliso.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Polish ISO-8859-2" #define HB_CP_UNITB HB_UNITB_8859_2 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_pl.c" +#include "l_pl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpplmaz.c b/harbour/src/codepage/cpplmaz.c index cee9995f65..4db4c5c85d 100644 --- a/harbour/src/codepage/cpplmaz.c +++ b/harbour/src/codepage/cpplmaz.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Polish Mazovia" #define HB_CP_UNITB HB_UNITB_MAZ #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_pl.c" +#include "l_pl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpplwin.c b/harbour/src/codepage/cpplwin.c index bfbfc37586..40e8a6fbec 100644 --- a/harbour/src/codepage/cpplwin.c +++ b/harbour/src/codepage/cpplwin.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Polish Windows-1250" #define HB_CP_UNITB HB_UNITB_1250 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_pl.c" +#include "l_pl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cppt850.c b/harbour/src/codepage/cppt850.c index 561b6fc598..c5d7c4b5f5 100644 --- a/harbour/src/codepage/cppt850.c +++ b/harbour/src/codepage/cppt850.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Portuguese CP-850" #define HB_CP_UNITB HB_UNITB_850 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_pt.c" +#include "l_pt.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpptiso.c b/harbour/src/codepage/cpptiso.c index 37af92e595..25c4f62481 100644 --- a/harbour/src/codepage/cpptiso.c +++ b/harbour/src/codepage/cpptiso.c @@ -56,7 +56,7 @@ #define HB_CP_INFO "Portuguese ISO-8859-1" #define HB_CP_UNITB HB_UNITB_8859_1 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_pt.c" +#include "l_pt.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpro852.c b/harbour/src/codepage/cpro852.c index 067853620c..c993693e7c 100644 --- a/harbour/src/codepage/cpro852.c +++ b/harbour/src/codepage/cpro852.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Romanian CP-852" #define HB_CP_UNITB HB_UNITB_852 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_ro.c" +#include "l_ro.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cproiso.c b/harbour/src/codepage/cproiso.c index f005969be9..4768071add 100644 --- a/harbour/src/codepage/cproiso.c +++ b/harbour/src/codepage/cproiso.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Romanian ISO-8859-2" #define HB_CP_UNITB HB_UNITB_8859_2 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_ro.c" +#include "l_ro.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cprowin.c b/harbour/src/codepage/cprowin.c index 9303176fac..07275c8704 100644 --- a/harbour/src/codepage/cprowin.c +++ b/harbour/src/codepage/cprowin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Romanian Windows-1250" #define HB_CP_UNITB HB_UNITB_1250 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_ro.c" +#include "l_ro.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpru1251.c b/harbour/src/codepage/cpru1251.c index 7e6e6c65a8..a7e3263f2b 100644 --- a/harbour/src/codepage/cpru1251.c +++ b/harbour/src/codepage/cpru1251.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Russian Windows-1251" #define HB_CP_UNITB HB_UNITB_1251 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_ru.c" +#include "l_ru.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpru866.c b/harbour/src/codepage/cpru866.c index 13c8220371..b83d85a3ca 100644 --- a/harbour/src/codepage/cpru866.c +++ b/harbour/src/codepage/cpru866.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Russian CP-866" #define HB_CP_UNITB HB_UNITB_866 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_ru.c" +#include "l_ru.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cprukoi8.c b/harbour/src/codepage/cprukoi8.c index 83f34f34c9..a89acaa4f6 100644 --- a/harbour/src/codepage/cprukoi8.c +++ b/harbour/src/codepage/cprukoi8.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Russian KOI-8" #define HB_CP_UNITB HB_UNITB_KOI_8 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_ru.c" +#include "l_ru.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsk852.c b/harbour/src/codepage/cpsk852.c index e5620b10ad..b182ef04fa 100644 --- a/harbour/src/codepage/cpsk852.c +++ b/harbour/src/codepage/cpsk852.c @@ -16,7 +16,7 @@ #define HB_CP_INFO "Slovak CP-852" #define HB_CP_UNITB HB_UNITB_852 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sk.c" +#include "l_sk.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpskiso.c b/harbour/src/codepage/cpskiso.c index 6587b47f08..83c7b3ae99 100644 --- a/harbour/src/codepage/cpskiso.c +++ b/harbour/src/codepage/cpskiso.c @@ -16,7 +16,7 @@ #define HB_CP_INFO "Slovak ISO-8859-2" #define HB_CP_UNITB HB_UNITB_8859_2 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sk.c" +#include "l_sk.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpskwin.c b/harbour/src/codepage/cpskwin.c index 6e65eaeaaf..c7caa399e3 100644 --- a/harbour/src/codepage/cpskwin.c +++ b/harbour/src/codepage/cpskwin.c @@ -16,7 +16,7 @@ #define HB_CP_INFO "Slovak Windows-1250" #define HB_CP_UNITB HB_UNITB_1250 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sk.c" +#include "l_sk.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsl646.c b/harbour/src/codepage/cpsl646.c index 0f24b3e323..9dd45eb39d 100644 --- a/harbour/src/codepage/cpsl646.c +++ b/harbour/src/codepage/cpsl646.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Slovenian ISO-646 (SLOSCII)" #define HB_CP_UNITB HB_UNITB_646YU #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sl.c" +#include "l_sl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsl852.c b/harbour/src/codepage/cpsl852.c index 9fd281c33f..978c0494d6 100644 --- a/harbour/src/codepage/cpsl852.c +++ b/harbour/src/codepage/cpsl852.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Slovenian CP-852" #define HB_CP_UNITB HB_UNITB_852 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sl.c" +#include "l_sl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsliso.c b/harbour/src/codepage/cpsliso.c index 2accf36906..210d1fc336 100644 --- a/harbour/src/codepage/cpsliso.c +++ b/harbour/src/codepage/cpsliso.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Slovenian ISO-8859-2" #define HB_CP_UNITB HB_UNITB_8859_2 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sl.c" +#include "l_sl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpslwin.c b/harbour/src/codepage/cpslwin.c index 41872f8467..cf4eabef7a 100644 --- a/harbour/src/codepage/cpslwin.c +++ b/harbour/src/codepage/cpslwin.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Slovenian CP-1250" #define HB_CP_UNITB HB_UNITB_1250 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sl.c" +#include "l_sl.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsr646.c b/harbour/src/codepage/cpsr646.c index 977a097ca7..9d21520278 100644 --- a/harbour/src/codepage/cpsr646.c +++ b/harbour/src/codepage/cpsr646.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Serbian ISO-646 (YUSCII)" #define HB_CP_UNITB HB_UNITB_646YU #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sr_lat.c" +#include "l_sr_lat.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsr646c.c b/harbour/src/codepage/cpsr646c.c index 3126a6816e..b7a64cc34d 100644 --- a/harbour/src/codepage/cpsr646c.c +++ b/harbour/src/codepage/cpsr646c.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Serbian ISO-646C (Cyrillic YUSCII)" #define HB_CP_UNITB HB_UNITB_646YUC #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sr_cyr.c" +#include "l_sr_cyr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsrwin.c b/harbour/src/codepage/cpsrwin.c index 8dc07594d7..a39f88ad5e 100644 --- a/harbour/src/codepage/cpsrwin.c +++ b/harbour/src/codepage/cpsrwin.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Serbian Windows-1251" #define HB_CP_UNITB HB_UNITB_1251 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_sr_cyr.c" +#include "l_sr_cyr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsviso.c b/harbour/src/codepage/cpsviso.c index 88cfe37cd7..ee94e95187 100644 --- a/harbour/src/codepage/cpsviso.c +++ b/harbour/src/codepage/cpsviso.c @@ -55,7 +55,7 @@ #define HB_CP_INFO "Swedish ISO-8859-15" #define HB_CP_UNITB HB_UNITB_8859_15 #define HB_CP_ACSORT HB_CDP_ACSORT_INTERLEAVED -#include "l_sv.c" +#include "l_sv.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpsvwin.c b/harbour/src/codepage/cpsvwin.c index fbfa899eee..968befeef1 100644 --- a/harbour/src/codepage/cpsvwin.c +++ b/harbour/src/codepage/cpsvwin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Swedish Windows-1252" #define HB_CP_UNITB HB_UNITB_1252 #define HB_CP_ACSORT HB_CDP_ACSORT_INTERLEAVED -#include "l_sv.c" +#include "l_sv.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cptr857.c b/harbour/src/codepage/cptr857.c index e2e621cf43..c7ad460b05 100644 --- a/harbour/src/codepage/cptr857.c +++ b/harbour/src/codepage/cptr857.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Turkish CP-857" #define HB_CP_UNITB HB_UNITB_857 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_tr.c" +#include "l_tr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cptriso.c b/harbour/src/codepage/cptriso.c index 6264b5aafd..11f6590a19 100644 --- a/harbour/src/codepage/cptriso.c +++ b/harbour/src/codepage/cptriso.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Turkish ISO-8859-9" #define HB_CP_UNITB HB_UNITB_8859_9 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_tr.c" +#include "l_tr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cptrwin.c b/harbour/src/codepage/cptrwin.c index 00836def5d..64e62fd7f5 100644 --- a/harbour/src/codepage/cptrwin.c +++ b/harbour/src/codepage/cptrwin.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Turkish Windows-1254" #define HB_CP_UNITB HB_UNITB_1254 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_tr.c" +#include "l_tr.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpua1125.c b/harbour/src/codepage/cpua1125.c index de5be7a81d..5d6c554f34 100644 --- a/harbour/src/codepage/cpua1125.c +++ b/harbour/src/codepage/cpua1125.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Ukrainian CP-1125" #define HB_CP_UNITB HB_UNITB_1125 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_uk.c" +#include "l_uk.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpua1251.c b/harbour/src/codepage/cpua1251.c index 8dc817cc86..18314da4f0 100644 --- a/harbour/src/codepage/cpua1251.c +++ b/harbour/src/codepage/cpua1251.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Ukrainian Windows-1251" #define HB_CP_UNITB HB_UNITB_1251 #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_uk.c" +#include "l_uk.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/cpuakoi8.c b/harbour/src/codepage/cpuakoi8.c index 89c85f3139..877cc667c0 100644 --- a/harbour/src/codepage/cpuakoi8.c +++ b/harbour/src/codepage/cpuakoi8.c @@ -54,7 +54,7 @@ #define HB_CP_INFO "Ukrainian KOI8-U" #define HB_CP_UNITB HB_UNITB_KOI_8U #define HB_CP_ACSORT HB_CDP_ACSORT_NONE -#include "l_uk.c" +#include "l_uk.h" #define HB_CP_UTF8 /* include CP registration code */ diff --git a/harbour/src/codepage/l_bg.c b/harbour/src/codepage/l_bg.h similarity index 100% rename from harbour/src/codepage/l_bg.c rename to harbour/src/codepage/l_bg.h diff --git a/harbour/src/codepage/l_cs.c b/harbour/src/codepage/l_cs.h similarity index 100% rename from harbour/src/codepage/l_cs.c rename to harbour/src/codepage/l_cs.h diff --git a/harbour/src/codepage/l_de.c b/harbour/src/codepage/l_de.h similarity index 100% rename from harbour/src/codepage/l_de.c rename to harbour/src/codepage/l_de.h diff --git a/harbour/src/codepage/l_el.c b/harbour/src/codepage/l_el.h similarity index 100% rename from harbour/src/codepage/l_el.c rename to harbour/src/codepage/l_el.h diff --git a/harbour/src/codepage/l_es.c b/harbour/src/codepage/l_es.h similarity index 100% rename from harbour/src/codepage/l_es.c rename to harbour/src/codepage/l_es.h diff --git a/harbour/src/codepage/l_fr.c b/harbour/src/codepage/l_fr.h similarity index 100% rename from harbour/src/codepage/l_fr.c rename to harbour/src/codepage/l_fr.h diff --git a/harbour/src/codepage/l_he.c b/harbour/src/codepage/l_he.h similarity index 100% rename from harbour/src/codepage/l_he.c rename to harbour/src/codepage/l_he.h diff --git a/harbour/src/codepage/l_hr.c b/harbour/src/codepage/l_hr.h similarity index 100% rename from harbour/src/codepage/l_hr.c rename to harbour/src/codepage/l_hr.h diff --git a/harbour/src/codepage/l_hu.c b/harbour/src/codepage/l_hu.h similarity index 100% rename from harbour/src/codepage/l_hu.c rename to harbour/src/codepage/l_hu.h diff --git a/harbour/src/codepage/l_is.c b/harbour/src/codepage/l_is.h similarity index 100% rename from harbour/src/codepage/l_is.c rename to harbour/src/codepage/l_is.h diff --git a/harbour/src/codepage/l_it.c b/harbour/src/codepage/l_it.h similarity index 100% rename from harbour/src/codepage/l_it.c rename to harbour/src/codepage/l_it.h diff --git a/harbour/src/codepage/l_lt.c b/harbour/src/codepage/l_lt.h similarity index 100% rename from harbour/src/codepage/l_lt.c rename to harbour/src/codepage/l_lt.h diff --git a/harbour/src/codepage/l_pl.c b/harbour/src/codepage/l_pl.h similarity index 100% rename from harbour/src/codepage/l_pl.c rename to harbour/src/codepage/l_pl.h diff --git a/harbour/src/codepage/l_pt.c b/harbour/src/codepage/l_pt.h similarity index 100% rename from harbour/src/codepage/l_pt.c rename to harbour/src/codepage/l_pt.h diff --git a/harbour/src/codepage/l_ro.c b/harbour/src/codepage/l_ro.h similarity index 100% rename from harbour/src/codepage/l_ro.c rename to harbour/src/codepage/l_ro.h diff --git a/harbour/src/codepage/l_ru.c b/harbour/src/codepage/l_ru.h similarity index 100% rename from harbour/src/codepage/l_ru.c rename to harbour/src/codepage/l_ru.h diff --git a/harbour/src/codepage/l_sk.c b/harbour/src/codepage/l_sk.h similarity index 100% rename from harbour/src/codepage/l_sk.c rename to harbour/src/codepage/l_sk.h diff --git a/harbour/src/codepage/l_sl.c b/harbour/src/codepage/l_sl.h similarity index 100% rename from harbour/src/codepage/l_sl.c rename to harbour/src/codepage/l_sl.h diff --git a/harbour/src/codepage/l_sr_cyr.c b/harbour/src/codepage/l_sr_cyr.h similarity index 100% rename from harbour/src/codepage/l_sr_cyr.c rename to harbour/src/codepage/l_sr_cyr.h diff --git a/harbour/src/codepage/l_sr_lat.c b/harbour/src/codepage/l_sr_lat.h similarity index 100% rename from harbour/src/codepage/l_sr_lat.c rename to harbour/src/codepage/l_sr_lat.h diff --git a/harbour/src/codepage/l_sv.c b/harbour/src/codepage/l_sv.h similarity index 100% rename from harbour/src/codepage/l_sv.c rename to harbour/src/codepage/l_sv.h diff --git a/harbour/src/codepage/l_tr.c b/harbour/src/codepage/l_tr.h similarity index 100% rename from harbour/src/codepage/l_tr.c rename to harbour/src/codepage/l_tr.h diff --git a/harbour/src/codepage/l_uk.c b/harbour/src/codepage/l_uk.h similarity index 100% rename from harbour/src/codepage/l_uk.c rename to harbour/src/codepage/l_uk.h diff --git a/harbour/src/common/hbstr.c b/harbour/src/common/hbstr.c index 7156ac3848..3ac858d292 100644 --- a/harbour/src/common/hbstr.c +++ b/harbour/src/common/hbstr.c @@ -993,6 +993,15 @@ char * hb_strRemEscSeq( char * str, HB_SIZE * pnLen ) case 'b': ch = '\b'; break; + case 'f': + ch = '\f'; + break; + case 'v': + ch = '\v'; + break; + case 'a': + ch = '\a'; + break; case '0': case '1': case '2': diff --git a/harbour/src/lang/Makefile b/harbour/src/lang/Makefile index b63eff71f6..767322cce5 100644 --- a/harbour/src/lang/Makefile +++ b/harbour/src/lang/Makefile @@ -5,39 +5,39 @@ ROOT := ../../ C_SOURCES := \ - be.c \ - bg.c \ - ca.c \ - cs.c \ - de.c \ - el.c \ - eo.c \ - es.c \ - eu.c \ - fr.c \ - gl.c \ - he.c \ - hr.c \ - hu.c \ - id.c \ - is.c \ - it.c \ - ko.c \ - lt.c \ - nl.c \ - pl.c \ - pt.c \ - ro.c \ - ru.c \ - sk.c \ - sl.c \ - sr_cyr.c \ - sr_lat.c \ - sv.c \ - tr.c \ - uk.c \ - zh_sim.c \ - zh_tra.c \ + l_be.c \ + l_bg.c \ + l_ca.c \ + l_cs.c \ + l_de.c \ + l_el.c \ + l_eo.c \ + l_es.c \ + l_eu.c \ + l_fr.c \ + l_gl.c \ + l_he.c \ + l_hr.c \ + l_hu.c \ + l_id.c \ + l_is.c \ + l_it.c \ + l_ko.c \ + l_lt.c \ + l_nl.c \ + l_pl.c \ + l_pt.c \ + l_ro.c \ + l_ru.c \ + l_sk.c \ + l_sl.c \ + l_sr_cyr.c \ + l_sr_lat.c \ + l_sv.c \ + l_tr.c \ + l_uk.c \ + l_zh_sim.c \ + l_zh_tra.c \ LIBNAME := hblang diff --git a/harbour/src/lang/be.c b/harbour/src/lang/l_be.c similarity index 100% rename from harbour/src/lang/be.c rename to harbour/src/lang/l_be.c diff --git a/harbour/src/lang/bg.c b/harbour/src/lang/l_bg.c similarity index 100% rename from harbour/src/lang/bg.c rename to harbour/src/lang/l_bg.c diff --git a/harbour/src/lang/ca.c b/harbour/src/lang/l_ca.c similarity index 100% rename from harbour/src/lang/ca.c rename to harbour/src/lang/l_ca.c diff --git a/harbour/src/lang/cs.c b/harbour/src/lang/l_cs.c similarity index 100% rename from harbour/src/lang/cs.c rename to harbour/src/lang/l_cs.c diff --git a/harbour/src/lang/de.c b/harbour/src/lang/l_de.c similarity index 100% rename from harbour/src/lang/de.c rename to harbour/src/lang/l_de.c diff --git a/harbour/src/lang/el.c b/harbour/src/lang/l_el.c similarity index 100% rename from harbour/src/lang/el.c rename to harbour/src/lang/l_el.c diff --git a/harbour/src/lang/en_tpl.c b/harbour/src/lang/l_en_tpl.c similarity index 100% rename from harbour/src/lang/en_tpl.c rename to harbour/src/lang/l_en_tpl.c diff --git a/harbour/src/lang/eo.c b/harbour/src/lang/l_eo.c similarity index 100% rename from harbour/src/lang/eo.c rename to harbour/src/lang/l_eo.c diff --git a/harbour/src/lang/es.c b/harbour/src/lang/l_es.c similarity index 100% rename from harbour/src/lang/es.c rename to harbour/src/lang/l_es.c diff --git a/harbour/src/lang/eu.c b/harbour/src/lang/l_eu.c similarity index 100% rename from harbour/src/lang/eu.c rename to harbour/src/lang/l_eu.c diff --git a/harbour/src/lang/fr.c b/harbour/src/lang/l_fr.c similarity index 100% rename from harbour/src/lang/fr.c rename to harbour/src/lang/l_fr.c diff --git a/harbour/src/lang/gl.c b/harbour/src/lang/l_gl.c similarity index 100% rename from harbour/src/lang/gl.c rename to harbour/src/lang/l_gl.c diff --git a/harbour/src/lang/he.c b/harbour/src/lang/l_he.c similarity index 100% rename from harbour/src/lang/he.c rename to harbour/src/lang/l_he.c diff --git a/harbour/src/lang/hr.c b/harbour/src/lang/l_hr.c similarity index 100% rename from harbour/src/lang/hr.c rename to harbour/src/lang/l_hr.c diff --git a/harbour/src/lang/hu.c b/harbour/src/lang/l_hu.c similarity index 100% rename from harbour/src/lang/hu.c rename to harbour/src/lang/l_hu.c diff --git a/harbour/src/lang/id.c b/harbour/src/lang/l_id.c similarity index 100% rename from harbour/src/lang/id.c rename to harbour/src/lang/l_id.c diff --git a/harbour/src/lang/is.c b/harbour/src/lang/l_is.c similarity index 100% rename from harbour/src/lang/is.c rename to harbour/src/lang/l_is.c diff --git a/harbour/src/lang/it.c b/harbour/src/lang/l_it.c similarity index 100% rename from harbour/src/lang/it.c rename to harbour/src/lang/l_it.c diff --git a/harbour/src/lang/ko.c b/harbour/src/lang/l_ko.c similarity index 100% rename from harbour/src/lang/ko.c rename to harbour/src/lang/l_ko.c diff --git a/harbour/src/lang/lt.c b/harbour/src/lang/l_lt.c similarity index 100% rename from harbour/src/lang/lt.c rename to harbour/src/lang/l_lt.c diff --git a/harbour/src/lang/nl.c b/harbour/src/lang/l_nl.c similarity index 100% rename from harbour/src/lang/nl.c rename to harbour/src/lang/l_nl.c diff --git a/harbour/src/lang/pl.c b/harbour/src/lang/l_pl.c similarity index 100% rename from harbour/src/lang/pl.c rename to harbour/src/lang/l_pl.c diff --git a/harbour/src/lang/pt.c b/harbour/src/lang/l_pt.c similarity index 100% rename from harbour/src/lang/pt.c rename to harbour/src/lang/l_pt.c diff --git a/harbour/src/lang/ro.c b/harbour/src/lang/l_ro.c similarity index 100% rename from harbour/src/lang/ro.c rename to harbour/src/lang/l_ro.c diff --git a/harbour/src/lang/ru.c b/harbour/src/lang/l_ru.c similarity index 100% rename from harbour/src/lang/ru.c rename to harbour/src/lang/l_ru.c diff --git a/harbour/src/lang/sk.c b/harbour/src/lang/l_sk.c similarity index 100% rename from harbour/src/lang/sk.c rename to harbour/src/lang/l_sk.c diff --git a/harbour/src/lang/sl.c b/harbour/src/lang/l_sl.c similarity index 100% rename from harbour/src/lang/sl.c rename to harbour/src/lang/l_sl.c diff --git a/harbour/src/lang/sr_cyr.c b/harbour/src/lang/l_sr_cyr.c similarity index 100% rename from harbour/src/lang/sr_cyr.c rename to harbour/src/lang/l_sr_cyr.c diff --git a/harbour/src/lang/sr_lat.c b/harbour/src/lang/l_sr_lat.c similarity index 100% rename from harbour/src/lang/sr_lat.c rename to harbour/src/lang/l_sr_lat.c diff --git a/harbour/src/lang/sv.c b/harbour/src/lang/l_sv.c similarity index 100% rename from harbour/src/lang/sv.c rename to harbour/src/lang/l_sv.c diff --git a/harbour/src/lang/tr.c b/harbour/src/lang/l_tr.c similarity index 100% rename from harbour/src/lang/tr.c rename to harbour/src/lang/l_tr.c diff --git a/harbour/src/lang/uk.c b/harbour/src/lang/l_uk.c similarity index 100% rename from harbour/src/lang/uk.c rename to harbour/src/lang/l_uk.c diff --git a/harbour/src/lang/zh_sim.c b/harbour/src/lang/l_zh_sim.c similarity index 100% rename from harbour/src/lang/zh_sim.c rename to harbour/src/lang/l_zh_sim.c diff --git a/harbour/src/lang/zh_tra.c b/harbour/src/lang/l_zh_tra.c similarity index 100% rename from harbour/src/lang/zh_tra.c rename to harbour/src/lang/l_zh_tra.c diff --git a/harbour/utils/hbmk2/hbmk2.prg b/harbour/utils/hbmk2/hbmk2.prg index 071119955c..ecf8acd88e 100644 --- a/harbour/utils/hbmk2/hbmk2.prg +++ b/harbour/utils/hbmk2/hbmk2.prg @@ -274,6 +274,7 @@ EXTERNAL hbmk_KEYW #define _HBMK_AUTOHBC_NAME "hbmk.hbc" #define _HBMK_AUTOHBM_NAME "hbmk.hbm" +#define _HBMK_SPECDIR_COMP "comp" #define _HBMK_SPECDIR_CONTRIB "contrib" #define _HBMK_SPECDIR_ADDONS "addons" @@ -302,8 +303,6 @@ EXTERNAL hbmk_KEYW #define _VAR_MODE_INSERT 3 #define _VAR_MODE_DELETE 4 -#define _COMPEMBED_BASE_ "comp" - #if defined( __PLATFORM__DOS ) #define _WORKDIR_BASE_ "~hbmk" #else @@ -313,7 +312,7 @@ EXTERNAL hbmk_KEYW #define _BCC_BIN_DETECT() FindInPath( "bcc32.exe" ) -#define HB_ISALPHA( c ) ( hb_asciiUpper( c ) >= "A" .AND. hb_asciiUpper( c ) <= "Z" ) +#define HB_ISALPHA( c ) hb_asciiIsAlpha( c ) #define HB_ISFIRSTIDCHAR( c ) ( HB_ISALPHA( c ) .OR. ( c ) == "_" ) #define HB_ISNEXTIDCHAR( c ) ( HB_ISFIRSTIDCHAR(c) .OR. hb_asciiIsDigit( c ) ) @@ -325,8 +324,9 @@ EXTERNAL hbmk_KEYW system libs. [vszakats] */ #define _IS_AUTOLIBSYSPRE( c ) ( hbmk[ _HBMK_cPLAT ] == "win" .AND. Lower( hb_FNameName( c ) ) == "unicows" ) -#define _CHR_EOL Chr( 10 ) -#define _OUT_EOL Chr( 10 ) +#define _OUT_EOL e"\n" /* used when displaying text */ +#define _CHR_EOL Chr( 10 ) /* used when consuming text files */ +#define _FIL_EOL Chr( 10 ) /* used when creating source files */ #define _HBMK_IMPLIB_NOTFOUND -1 #define _HBMK_IMPLIB_OK 0 @@ -1318,7 +1318,7 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) LOCAL cSuffix LOCAL aOBJLIST LOCAL cHarbourDyn - LOCAL hStrXChg + LOCAL hReplace LOCAL lSkipBuild := .F. LOCAL lStopAfterCComp := .F. @@ -1900,39 +1900,39 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) tmp3 := NIL; HB_SYMBOL_UNUSED( tmp3 ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "mingw" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "win" , "mingw" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "mingw64" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "win" , "mingw64" , "i686-w64-mingw32-" , NIL, NIL } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "mingw64" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "win" , "mingw64" , "x86_64-w64-mingw32-" , NIL, NIL } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "mingwarm" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "wce" , "mingwarm", "arm-mingw32ce-" , NIL, NIL } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "mingwarm" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "wce" , "mingwarm", "arm-wince-mingw32ce-", NIL, NIL } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "mingwarm" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "wce" , "mingw" , "i386-mingw32ce-" , NIL, NIL } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "djgpp" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc.exe" ), tmp1, NIL ) }, "dos" , "djgpp" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "win" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "dos" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "os2" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "linux", "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "pocc" + hb_ps() + "Bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "pocc.exe" ), tmp1, NIL ) }, "win" , "pocc" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "pocc" + hb_ps() + "Bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "pocc.exe" ), tmp1, NIL ) }, "win" , "pocc64" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "pocc" + hb_ps() + "Bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "pocc.exe" ), tmp1, NIL ) }, "wce" , "poccarm" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "mingw" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "win" , "mingw" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "mingw64" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "win" , "mingw64" , "i686-w64-mingw32-" , NIL, NIL } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "mingw64" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "win" , "mingw64" , "x86_64-w64-mingw32-" , NIL, NIL } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "mingwarm" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "wce" , "mingwarm", "arm-mingw32ce-" , NIL, NIL } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "mingwarm" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "wce" , "mingwarm", "arm-wince-mingw32ce-", NIL, NIL } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "mingwarm" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc" + hbmk[ _HBMK_cCCEXT ] ), tmp1, NIL ) }, "wce" , "mingw" , "i386-mingw32ce-" , NIL, NIL } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "djgpp" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc.exe" ), tmp1, NIL ) }, "dos" , "djgpp" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "win" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "dos" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "os2" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binnt" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "linux", "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "pocc" + hb_ps() + "Bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "pocc.exe" ), tmp1, NIL ) }, "win" , "pocc" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "pocc" + hb_ps() + "Bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "pocc.exe" ), tmp1, NIL ) }, "win" , "pocc64" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "pocc" + hb_ps() + "Bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "pocc.exe" ), tmp1, NIL ) }, "wce" , "poccarm" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) #elif defined( __PLATFORM__DOS ) tmp3 := NIL; HB_SYMBOL_UNUSED( tmp3 ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "djgpp" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc.exe" ), tmp1, NIL ) }, "dos" , "djgpp" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "dos" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "win" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "os2" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "linux", "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "djgpp" + hb_ps() + "bin" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "gcc.exe" ), tmp1, NIL ) }, "dos" , "djgpp" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "dos" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "win" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "os2" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binw" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "linux", "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) #elif defined( __PLATFORM__OS2 ) tmp3 := NIL; HB_SYMBOL_UNUSED( tmp3 ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "os2" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "win" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "dos" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) - AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "linux", "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "os2" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "win" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "dos" , "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) + AAdd( aCOMPDET_EMBED, { {| cPrefix | tmp1 := hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP + hb_ps() + "watcom" + hb_ps() + "binp" ), iif( hb_FileExists( tmp1 + hb_ps() + cPrefix + "wcc386.exe" ), tmp1, NIL ) }, "linux", "watcom" , "" , NIL, {| cARCH, cCOMP, cPathBin | hbmk_COMP_Setup( cARCH, cCOMP, cPathBin + hb_ps() + ".." ) } } ) #elif defined( __PLATFORM__UNIX ) @@ -2922,12 +2922,12 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) FOR EACH tmp IN hb_ATokens( cParam, ";" ) /* intentionally not using hb_osPathListSeparator() to keep value portable */ IF ! Empty( tmp ) tmp := hb_DirSepDel( PathMakeAbsolute( PathSepToSelf( tmp ), aParam[ _PAR_cFileName ] ) ) - IF ! CheckLibPathParam( hbmk, tmp ) - _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core library directory: %1$s (in option %2$s)" ), tmp, ParamToString( aParam ) ) ) - ELSE + IF CheckParamLibPath( hbmk, tmp ) IF ( _MACRO_LATE_PREFIX + _MACRO_OPEN ) $ tmp .OR. hb_DirExists( tmp ) AAdd( hbmk[ _HBMK_aLIBPATH ], tmp ) ENDIF + ELSE + _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core library directory: %1$s (in option %2$s)" ), tmp, ParamToString( aParam ) ) ) ENDIF ENDIF NEXT @@ -2962,7 +2962,29 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) cParam := MacroProc( hbmk, SubStr( cParam, Len( "-incpath=" ) + 1 ), aParam[ _PAR_cFileName ] ) IF ! Empty( cParam ) - AAddNew( hbmk[ _HBMK_aINCPATH ], hb_DirSepDel( hb_PathNormalize( PathMakeAbsolute( PathSepToSelf( cParam ), aParam[ _PAR_cFileName ] ) ) ) ) + tmp := hb_DirSepDel( hb_PathNormalize( PathMakeAbsolute( PathSepToSelf( cParam ), aParam[ _PAR_cFileName ] ) ) ) + IF CheckParamInc( hbmk, tmp ) + AAddNew( hbmk[ _HBMK_aINCPATH ], tmp ) + ELSE + _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core header directory: %1$s (in option %2$s)" ), tmp, ParamToString( aParam ) ) ) + ENDIF + ENDIF + + CASE Left( cParamL, 2 ) == "-i" .AND. ; + Len( cParamL ) > 2 .AND. !( cParamL == "-i-" ) + + cParam := MacroProc( hbmk, SubStr( cParam, 3 ), aParam[ _PAR_cFileName ] ) + IF ! Empty( cParam ) + FOR EACH tmp IN hb_ATokens( cParam, ";" ) /* intentionally not using hb_osPathListSeparator() to keep value portable */ + IF ! Empty( tmp ) + tmp := hb_DirSepDel( hb_PathNormalize( PathMakeAbsolute( PathSepToSelf( tmp ), aParam[ _PAR_cFileName ] ) ) ) + IF CheckParamInc( hbmk, tmp ) + AAddNew( hbmk[ _HBMK_aINCPATH ], tmp ) + ELSE + _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core header directory: %1$s (in option %2$s)" ), tmp, ParamToString( aParam ) ) ) + ENDIF + ENDIF + NEXT ENDIF CASE Left( cParamL, Len( "-icon=" ) ) == "-icon=" @@ -2986,23 +3008,6 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) AAdd( hbmk[ _HBMK_aOPTI ], PathSepToSelf( cParam, 2 ) ) ENDIF - CASE Left( cParamL, 2 ) == "-i" .AND. ; - Len( cParamL ) > 2 .AND. !( cParamL == "-i-" ) - - cParam := MacroProc( hbmk, SubStr( cParam, 3 ), aParam[ _PAR_cFileName ] ) - IF ! Empty( cParam ) - FOR EACH tmp IN hb_ATokens( cParam, ";" ) /* intentionally not using hb_osPathListSeparator() to keep value portable */ - IF ! Empty( tmp ) - tmp := hb_DirSepDel( hb_PathNormalize( PathMakeAbsolute( PathSepToSelf( tmp ), aParam[ _PAR_cFileName ] ) ) ) - IF ! CheckIncParam( hbmk, tmp ) - _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core header directory: %1$s (in option %2$s)" ), tmp, ParamToString( aParam ) ) ) - ELSE - AAddNew( hbmk[ _HBMK_aINCPATH ], tmp ) - ENDIF - ENDIF - NEXT - ENDIF - CASE Left( cParamL, Len( "-stop" ) ) == "-stop" hbmk[ _HBMK_lStopAfterInit ] := .T. @@ -3158,11 +3163,11 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) IF ! Empty( cParam ) cParam := PathSepToSelf( cParam ) IF Left( cParam, 1 ) == "-" - IF CheckLibParam( hbmk, SubStr( cParam, 2 ), .F., aParam ) + IF CheckParamLib( hbmk, SubStr( cParam, 2 ), .F., aParam ) AAdd( hbmk[ _HBMK_aLIBFILTEROUT ], SubStr( cParam, 2 ) ) ENDIF ELSE - IF CheckLibParam( hbmk, cParam, .F., aParam ) + IF CheckParamLib( hbmk, cParam, .F., aParam ) IF _IS_AUTOLIBSYSPRE( cParam ) AAdd( hbmk[ _HBMK_aLIBUSERSYSPRE ], cParam ) ELSE @@ -3336,7 +3341,7 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) ( ! Empty( hbmk[ _HBMK_cDynLibExt ] ) .AND. hb_FNameExt( cParamL ) == hbmk[ _HBMK_cDynLibExt ] ) cParam := PathSepToSelf( cParam ) - IF CheckLibParam( hbmk, cParam, .F., aParam ) + IF CheckParamLib( hbmk, cParam, .F., aParam ) IF _IS_AUTOLIBSYSPRE( cParam ) AAdd( hbmk[ _HBMK_aLIBUSERSYSPRE ], cParam ) ELSE @@ -5463,9 +5468,9 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) 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. */" + Chr( 10 ) +; - "#define _HBMK_VCS_TYPE_ " + '"' + tmp2 + '"' + Chr( 10 ) +; - "#define _HBMK_VCS_ID_ " + '"' + tmp1 + '"' + Chr( 10 ) + 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). */ @@ -5481,10 +5486,10 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) 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. */" + Chr( 10 ) +; - "#define _HBMK_BUILD_DATE_ " + '"' + DToS( tmp1 ) + '"' + Chr( 10 ) +; - "#define _HBMK_BUILD_TIME_ " + '"' + SubStr( hb_TToS( tmp1 ), 9, 6 ) + '"' + Chr( 10 ) +; - "#define _HBMK_BUILD_TIMESTAMP_ " + '"' + hb_TToS( tmp1 ) + '"' + Chr( 10 ) + 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 @@ -5893,89 +5898,89 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) /* 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. */" + Chr( 10 ) +; - "/* You can safely delete it. */" + Chr( 10 ) +; - "" + Chr( 10 ) +; - '#include "hbapi.h"' + Chr( 10 ) +; - "" + Chr( 10 ) + 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 ) AEval( array, {| tmp, i | array[ i ] := FuncNameEncode( tmp ) } ) - AEval( array, {| tmp | cFile += "HB_FUNC_EXTERN( " + tmp + " );" + Chr( 10 ) } ) + AEval( array, {| tmp | cFile += "HB_FUNC_EXTERN( " + tmp + " );" + _FIL_EOL } ) IF l_cCMAIN != NIL .AND. ! lHBMAINDLLP IF ! Empty( array ) - cFile += "" + Chr( 10 ) + cFile += "" + _FIL_EOL ENDIF - cFile += "HB_EXTERN_BEGIN" + Chr( 10 ) +; - "void " + l_cCMAIN + "( void );" + Chr( 10 ) +; - "HB_EXTERN_END" + Chr( 10 ) + cFile += "HB_EXTERN_BEGIN" + _FIL_EOL +; + "void " + l_cCMAIN + "( void );" + _FIL_EOL +; + "HB_EXTERN_END" + _FIL_EOL ENDIF - cFile += "" + Chr( 10 ) - cFile += "void _hb_lnk_ForceLink_hbmk( void )" + Chr( 10 ) - cFile += "{" + Chr( 10 ) - AEval( array, {| tmp | cFile += " HB_FUNC_EXEC( " + tmp + " );" + Chr( 10 ) } ) + cFile += "" + _FIL_EOL + cFile += "void _hb_lnk_ForceLink_hbmk( void )" + _FIL_EOL + cFile += "{" + _FIL_EOL + AEval( array, {| tmp | cFile += " HB_FUNC_EXEC( " + tmp + " );" + _FIL_EOL } ) IF l_cCMAIN != NIL .AND. ! lHBMAINDLLP IF ! Empty( array ) - cFile += "" + Chr( 10 ) + cFile += "" + _FIL_EOL ENDIF - cFile += " " + l_cCMAIN + "();" + Chr( 10 ) + cFile += " " + l_cCMAIN + "();" + _FIL_EOL ENDIF - cFile += "}" + Chr( 10 ) - cFile += "" + Chr( 10 ) + cFile += "}" + _FIL_EOL + cFile += "" + _FIL_EOL ENDIF IF lHBMAINDLLP .AND. .F. - cFile += "HB_EXPORT_ATTR PHB_FUNC dll_hb_vmProcAddress( const char * szFuncName )" + Chr( 10 ) - cFile += "{" + Chr( 10 ) - cFile += " return hb_vmProcAddress( szFuncName );" + Chr( 10 ) - cFile += "}" + Chr( 10 ) - cFile += "" + Chr( 10 ) + 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 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"' + Chr( 10 ) +; - "" + Chr( 10 ) +; - "HB_EXTERN_BEGIN" + Chr( 10 ) +; - "extern " + tmp + " const char * s_defaultGT;" + Chr( 10 ) +; - "extern " + tmp + " const char * s_pszLinkedMain;" + Chr( 10 ) +; - "HB_EXTERN_END" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "HB_CALL_ON_STARTUP_BEGIN( _hb_hbmk_setdef_ )" + Chr( 10 ) + 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"' + Chr( 10 ) +; - "" + Chr( 10 ) +; - "HB_CALL_ON_STARTUP_BEGIN( _hb_hbmk_setdef_ )" + Chr( 10 ) + 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. ; _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ) - cFile += ' s_defaultGT = "' + Upper( SubStr( hbmk[ _HBMK_cGT ], 3 ) ) + '";' + Chr( 10 ) + cFile += ' s_defaultGT = "' + Upper( SubStr( hbmk[ _HBMK_cGT ], 3 ) ) + '";' + _FIL_EOL ELSE - cFile += ' hb_vmSetDefaultGT( "' + Upper( SubStr( hbmk[ _HBMK_cGT ], 3 ) ) + '" );' + Chr( 10 ) + cFile += ' hb_vmSetDefaultGT( "' + Upper( SubStr( hbmk[ _HBMK_cGT ], 3 ) ) + '" );' + _FIL_EOL ENDIF ENDIF IF l_cMAIN != NIL IF hbmk[ _HBMK_nHBMODE ] == _HBMODE_HB10 .OR. ; _HBMODE_IS_XHB( hbmk[ _HBMK_nHBMODE ] ) - cFile += ' s_pszLinkedMain = "' + Upper( l_cMAIN ) + '";' + Chr( 10 ) + cFile += ' s_pszLinkedMain = "' + Upper( l_cMAIN ) + '";' + _FIL_EOL ELSE - cFile += ' hb_vmSetLinkedMain( "' + Upper( l_cMAIN ) + '" );' + Chr( 10 ) + cFile += ' hb_vmSetLinkedMain( "' + Upper( l_cMAIN ) + '" );' + _FIL_EOL ENDIF ENDIF - cFile += "HB_CALL_ON_STARTUP_END( _hb_hbmk_setdef_ )" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "#if defined( HB_PRAGMA_STARTUP )" + Chr( 10 ) +; - " #pragma startup _hb_hbmk_setdef_" + Chr( 10 ) +; - "#elif defined( HB_DATASEG_STARTUP )" + Chr( 10 ) +; - " #define HB_DATASEG_BODY HB_DATASEG_FUNC( _hb_hbmk_setdef_ )" + Chr( 10 ) +; - ' #include "hbiniseg.h"' + Chr( 10 ) +; - "#endif" + Chr( 10 ) + 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 ] @@ -6034,57 +6039,57 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) /* 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. */" + Chr( 10 ) +; - "/* You can safely delete it. */" + Chr( 10 ) +; - "" + Chr( 10 ) +; - '#include "hbapi.h"' + Chr( 10 ) +; - "" + Chr( 10 ) +; - "#if defined( __cplusplus )" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "const char * __hbmk_hbcppmm( void )" + Chr( 10 ) +; - "{" + Chr( 10 ) +; - ' return "HBCPPMM";' + Chr( 10 ) +; - "}" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "void * operator new[]( size_t nSize )" + Chr( 10 ) +; - "{" + Chr( 10 ) +; - " if( nSize == 0 )" + Chr( 10 ) +; - " nSize = 1;" + Chr( 10 ) +; - " return hb_xgrab( nSize );" + Chr( 10 ) +; - "}" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "void * operator new( size_t nSize )" + Chr( 10 ) +; - "{" + Chr( 10 ) +; - " if( nSize == 0 )" + Chr( 10 ) +; - " nSize = 1;" + Chr( 10 ) +; - " return hb_xgrab( nSize );" + Chr( 10 ) +; - "}" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "void operator delete[]( void * ptr )" + Chr( 10 ) +; - "{" + Chr( 10 ) +; - " if( ptr )" + Chr( 10 ) +; - " hb_xfree( ptr );" + Chr( 10 ) +; - "}" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "void operator delete[]( void * ptr, size_t )" + Chr( 10 ) +; - "{" + Chr( 10 ) +; - " if( ptr )" + Chr( 10 ) +; - " hb_xfree( ptr );" + Chr( 10 ) +; - "}" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "void operator delete( void * ptr )" + Chr( 10 ) +; - "{" + Chr( 10 ) +; - " if( ptr )" + Chr( 10 ) +; - " hb_xfree( ptr );" + Chr( 10 ) +; - "}" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "void operator delete( void * ptr, size_t )" + Chr( 10 ) +; - "{" + Chr( 10 ) +; - " if( ptr )" + Chr( 10 ) +; - " hb_xfree( ptr );" + Chr( 10 ) +; - "}" + Chr( 10 ) +; - "" + Chr( 10 ) +; - "#endif" + Chr( 10 ) + 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 ) @@ -6303,24 +6308,24 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) 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. */" + Chr( 10 ) +; - "/* You can safely delete it. */" + Chr( 10 ) +; - "" + Chr( 10 ) + 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 " + Chr( 10 ) - cFile += "#ifndef RT_MANIFEST" + Chr( 10 ) - cFile += "#define RT_MANIFEST 24" + Chr( 10 ) - cFile += "#endif" + Chr( 10 ) - cFile += "#ifndef CREATEPROCESS_MANIFEST_RESOURCE_ID" + Chr( 10 ) - cFile += "#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1" + Chr( 10 ) - cFile += "#endif" + Chr( 10 ) - cFile += 'CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "' + PathSepToForward( hbmk[ _HBMK_cMANIFEST ] ) + '"' + Chr( 10 ) + 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 ENDIF IF ! Empty( hbmk[ _HBMK_aICON ] ) .AND. ! HBMK_ISCOMP( "bcc|bcc64" ) /* BCC cannot handle certain new .ico files */ IF hbmk[ _HBMK_cPLAT ] == "os2" - AEval( hbmk[ _HBMK_aICON ], {| tmp, tmp1 | cFile += "ICON " + hb_ntos( tmp1 ) + ' DISCARDABLE "' + PathSepToForward( tmp ) + '"' + Chr( 10 ) } ) + AEval( hbmk[ _HBMK_aICON ], {| tmp, tmp1 | cFile += "ICON " + hb_ntos( tmp1 ) + ' DISCARDABLE "' + PathSepToForward( tmp ) + '"' + _FIL_EOL } ) ELSE - AEval( hbmk[ _HBMK_aICON ], {| tmp, tmp1 | cFile += hb_ntos( tmp1 ) + ' ICON DISCARDABLE "' + PathSepToForward( tmp ) + '"' + Chr( 10 ) } ) + AEval( hbmk[ _HBMK_aICON ], {| tmp, tmp1 | cFile += hb_ntos( tmp1 ) + ' ICON DISCARDABLE "' + PathSepToForward( tmp ) + '"' + _FIL_EOL } ) ENDIF ENDIF @@ -6374,7 +6379,7 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) nOpt_Esc := iif( "{SCRIPT}" $ cOpt_Res, hbmk[ _HBMK_nScr_Esc ], hbmk[ _HBMK_nCmd_Esc ] ) nOpt_FNF := iif( "{SCRIPT}" $ cOpt_Res, hbmk[ _HBMK_nScr_FNF ], hbmk[ _HBMK_nCmd_FNF ] ) - hStrXChg := { ; + hReplace := { ; "{FR}" => GetEnv( "HB_USER_RESFLAGS" ) + " " + ArrayToList( hbmk[ _HBMK_aOPTRES ] ), ; "{DI}" => FNameEscape( hbmk[ _HBMK_cHB_INSTALL_INC ], nOpt_Esc, nOpt_FNF ) } @@ -6382,10 +6387,10 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) FOR EACH tmp IN l_aRESSRC_TO_DO - hStrXChg[ "{IR}" ] := FNameEscape( tmp, nOpt_Esc, nOpt_FNF ) - hStrXChg[ "{OS}" ] := FNameEscape( FNameDirExtSet( tmp, hbmk[ _HBMK_cWorkDir ], cResExt ), nOpt_Esc, nOpt_FNF ) + hReplace[ "{IR}" ] := FNameEscape( tmp, nOpt_Esc, nOpt_FNF ) + hReplace[ "{OS}" ] := FNameEscape( FNameDirExtSet( tmp, hbmk[ _HBMK_cWorkDir ], cResExt ), nOpt_Esc, nOpt_FNF ) - cCommand := cBin_Res + " " + AllTrim( hb_StrXChg( cOpt_Res, hStrXChg ) ) + cCommand := cBin_Res + " " + AllTrim( hb_StrXChg( cOpt_Res, hReplace ) ) IF hbmk[ _HBMK_lTRACE ] IF ! hbmk[ _HBMK_lQuiet ] @@ -6406,9 +6411,9 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) ENDIF NEXT ELSE - hStrXChg[ "{LR}" ] := ArrayToList( l_aRESSRC_TO_DO,, nOpt_Esc, nOpt_FNF ) + hReplace[ "{LR}" ] := ArrayToList( l_aRESSRC_TO_DO,, nOpt_Esc, nOpt_FNF ) - cOpt_Res := AllTrim( hb_StrXChg( cOpt_Res, hStrXChg ) ) + cOpt_Res := AllTrim( hb_StrXChg( cOpt_Res, hReplace ) ) /* Handle moving the whole command line to a script, if requested. */ cScriptFile := NIL @@ -6523,7 +6528,7 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) iif( Empty( tmp4 ), "", " " + ArrayToList( tmp4 ) ) +; iif( Empty( hbmk[ _HBMK_aOPTCUSER ] ), "", " " + ArrayToList( hbmk[ _HBMK_aOPTCUSER ] ) ) ) - hStrXChg := { ; + hReplace := { ; "{OD}" => FNameEscape( hb_FNameDir( hbmk[ _HBMK_cPROGNAME ] ), nOpt_Esc, nOpt_FNF ), ; "{DI}" => FNameEscape( hbmk[ _HBMK_cHB_INSTALL_INC ], nOpt_Esc, nOpt_FNF ) } @@ -6532,9 +6537,9 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) aThreads := {} FOR EACH aTO_DO IN ArraySplit( l_aCGEN_TO_DO, l_nJOBS ) IF hb_mtvm() .AND. Len( aTO_DO:__enumBase() ) > 1 - AAdd( aThreads, hb_threadStart( @CompileCLoop(), hbmk, aTO_DO, cBin_CompCGEN, cOpt_CompCPass, hStrXChg, cObjExt, nOpt_Esc, nOpt_FNF, aTO_DO:__enumIndex(), Len( aTO_DO:__enumBase() ) ) ) + AAdd( aThreads, hb_threadStart( @CompileCLoop(), hbmk, aTO_DO, cBin_CompCGEN, cOpt_CompCPass, hReplace, cObjExt, nOpt_Esc, nOpt_FNF, aTO_DO:__enumIndex(), Len( aTO_DO:__enumBase() ) ) ) ELSE - IF ! CompileCLoop( hbmk, aTO_DO, cBin_CompCGEN, cOpt_CompCPass, hStrXChg, cObjExt, nOpt_Esc, nOpt_FNF, 0, 0 ) + IF ! CompileCLoop( hbmk, aTO_DO, cBin_CompCGEN, cOpt_CompCPass, hReplace, cObjExt, nOpt_Esc, nOpt_FNF, 0, 0 ) IF ! hbmk[ _HBMK_lIGNOREERROR ] hbmk[ _HBMK_nErrorLevel ] := _ERRLEV_COMPC EXIT @@ -6554,8 +6559,8 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) NEXT ENDIF ELSE - hStrXChg[ "{OO}" ] := FNameEscape( hb_FNameExtSet( hbmk[ _HBMK_cPROGNAME ], cObjExt ), nOpt_Esc, nOpt_FNF ) - hStrXChg[ "{OW}" ] := FNameEscape( hbmk[ _HBMK_cWorkDir ], nOpt_Esc, nOpt_FNF ) + hReplace[ "{OO}" ] := FNameEscape( hb_FNameExtSet( hbmk[ _HBMK_cPROGNAME ], cObjExt ), nOpt_Esc, nOpt_FNF ) + hReplace[ "{OW}" ] := FNameEscape( hbmk[ _HBMK_cWorkDir ], nOpt_Esc, nOpt_FNF ) IF lCHD_Comp tmp2 := hb_DirSepAdd( hb_PathRelativize( hb_PathNormalize( PathMakeAbsolute( hbmk[ _HBMK_cWorkDir ], hb_cwd() ) ), hb_cwd(), .T. ) ) @@ -6578,12 +6583,12 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) FOR EACH tmp1 IN tmp tmp1 := hb_PathNormalize( PathMakeAbsolute( tmp1, tmp2 ) ) NEXT - hStrXChg[ "{LC}" ] := ArrayToList( tmp,, nOpt_Esc, nOpt_FNF ) + hReplace[ "{LC}" ] := ArrayToList( tmp,, nOpt_Esc, nOpt_FNF ) ELSE - hStrXChg[ "{LC}" ] := ArrayToList( aTO_DO,, nOpt_Esc, nOpt_FNF ) + hReplace[ "{LC}" ] := ArrayToList( aTO_DO,, nOpt_Esc, nOpt_FNF ) ENDIF - cOpt_CompCLoop := AllTrim( hb_StrXChg( cOpt_CompCPass, hStrXChg ) ) + cOpt_CompCLoop := AllTrim( hb_StrXChg( cOpt_CompCPass, hReplace ) ) /* Handle moving the whole command line to a script, if requested. */ cScriptFile := NIL @@ -7230,14 +7235,14 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel ) /* Code signing */ - hStrXChg := { ; + hReplace := { ; "{ID}" => cOpt_SignID, ; "{OB}" => FNameEscape( hbmk[ _HBMK_cPROGNAME ], nOpt_Esc, nOpt_FNF ), ; "{PW}" => cOpt_SignPass } - cCommand := cBin_Sign + " " + AllTrim( hb_StrXChg( cOpt_Sign, hStrXChg ) ) - hStrXChg[ "{PW}" ] := iif( Empty( cOpt_SignPass ), "", "***" ) - tmp1 := cBin_Sign + " " + AllTrim( hb_StrXChg( cOpt_Sign, hStrXChg ) ) + cCommand := cBin_Sign + " " + AllTrim( hb_StrXChg( cOpt_Sign, hReplace ) ) + hReplace[ "{PW}" ] := iif( Empty( cOpt_SignPass ), "", "***" ) + tmp1 := cBin_Sign + " " + AllTrim( hb_StrXChg( cOpt_Sign, hReplace ) ) IF hbmk[ _HBMK_lTRACE ] IF ! hbmk[ _HBMK_lQuiet ] @@ -7372,7 +7377,7 @@ STATIC PROCEDURE AAddWithWarning( hbmk, aArray, cOption, aParam, lNew ) RETURN -STATIC FUNCTION CheckIncParam( hbmk, cPath ) +STATIC FUNCTION CheckParamInc( hbmk, cPath ) #if ! defined( __PLATFORM__UNIX ) LOCAL cComp @@ -7386,8 +7391,8 @@ STATIC FUNCTION CheckIncParam( hbmk, cPath ) ENDIF #if ! defined( __PLATFORM__UNIX ) - /* check against any directory under 'comp' */ - cComp := hb_DirSepDel( hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ ) ) + /* check against any directory under embedded compiler directory */ + cComp := hb_DirSepDel( hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP ) ) IF hb_FileMatch( Left( cPath, Len( cComp ) ), cComp ) RETURN .F. ENDIF @@ -7395,7 +7400,7 @@ STATIC FUNCTION CheckIncParam( hbmk, cPath ) RETURN .T. -STATIC FUNCTION CheckLibPathParam( hbmk, cPath ) +STATIC FUNCTION CheckParamLibPath( hbmk, cPath ) #if ! defined( __PLATFORM__UNIX ) LOCAL cComp @@ -7417,8 +7422,8 @@ STATIC FUNCTION CheckLibPathParam( hbmk, cPath ) ENDIF #if ! defined( __PLATFORM__UNIX ) - /* check against any directory under 'comp' */ - cComp := hb_DirSepDel( hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _COMPEMBED_BASE_ ) ) + /* check against any directory under embedded compiler directory */ + cComp := hb_DirSepDel( hb_PathNormalize( hb_DirSepAdd( hbmk[ _HBMK_cHB_INSTALL_PFX ] ) + _HBMK_SPECDIR_COMP ) ) IF hb_FileMatch( Left( cPath, Len( cComp ) ), cComp ) RETURN .F. ENDIF @@ -7426,7 +7431,7 @@ STATIC FUNCTION CheckLibPathParam( hbmk, cPath ) RETURN .T. -STATIC FUNCTION CheckLibParam( hbmk, cLibName, lHBC, aParam ) +STATIC FUNCTION CheckParamLib( hbmk, cLibName, lHBC, aParam ) LOCAL cExtL := Lower( hb_FNameExt( cLibName ) ) @@ -7436,7 +7441,7 @@ STATIC FUNCTION CheckLibParam( hbmk, cLibName, lHBC, aParam ) /* detect path in libname (non-portable) */ IF ! Empty( hb_FNameDir( cLibName ) ) cOpt := hb_DirSepDel( hb_FNameDir( cLibName ) ) - IF CheckLibPathParam( hbmk, cOpt ) + IF CheckParamLibPath( hbmk, cOpt ) cSuggestion += iif( lHBC, "'" + "libpaths=", "-L" ) + cOpt + iif( lHBC, "'", "" ) ENDIF ENDIF @@ -7855,7 +7860,7 @@ STATIC PROCEDURE DoBeep( lSuccess ) Tone( 800, 3.5 ) NEXT ELSE - OutStd( Replicate( Chr( 7 ), nRepeat ) ) + OutStd( Replicate( e"\a", nRepeat ) ) ENDIF RETURN @@ -7908,7 +7913,7 @@ STATIC FUNCTION hbmk_hb_compileBuf( hbmk, ... ) RETURN xRetVal -STATIC FUNCTION CompileCLoop( hbmk, aTO_DO, cBin_CompC, cOpt_CompC, hStrXChg, cObjExt, nOpt_Esc, nOpt_FNF, nJob, nJobs ) +STATIC FUNCTION CompileCLoop( hbmk, aTO_DO, cBin_CompC, cOpt_CompC, hReplace, cObjExt, nOpt_Esc, nOpt_FNF, nJob, nJobs ) LOCAL lResult := .T. LOCAL cCommand @@ -7922,10 +7927,10 @@ STATIC FUNCTION CompileCLoop( hbmk, aTO_DO, cBin_CompC, cOpt_CompC, hStrXChg, cO lOutputSpecified := "{OO}" $ cOpt_CompC cOutputFile := FNameDirExtSet( tmp, hbmk[ _HBMK_cWorkDir ], cObjExt ) - hStrXChg[ "{IC}" ] := FNameEscape( tmp, nOpt_Esc, nOpt_FNF ) - hStrXChg[ "{OO}" ] := FNameEscape( cOutputFile, nOpt_Esc, nOpt_FNF ) + hReplace[ "{IC}" ] := FNameEscape( tmp, nOpt_Esc, nOpt_FNF ) + hReplace[ "{OO}" ] := FNameEscape( cOutputFile, nOpt_Esc, nOpt_FNF ) - cCommand := cBin_CompC + " " + AllTrim( hb_StrXChg( cOpt_CompC, hStrXChg ) ) + cCommand := cBin_CompC + " " + AllTrim( hb_StrXChg( cOpt_CompC, hReplace ) ) IF hbmk[ _HBMK_lTRACE ] IF ! hbmk[ _HBMK_lQuiet ] @@ -8095,12 +8100,13 @@ STATIC FUNCTION FindNewerHeaders( hbmk, cFileName, tTimeParent, lCMode, cBin_Com ENDIF 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 ] ) +; - " " + cFileName,, @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 ] ) +; + " " + cFileName,, @tmp ) tmp := StrTran( tmp, Chr( 13 ) ) tmp := StrTran( tmp, " \" + Chr( 10 ) ) @@ -8362,11 +8368,12 @@ STATIC PROCEDURE s_getFilesDep( hbmk, cFile, hFiles, cParentDir, lSystemHeader, hFiles[ cFile ] := aFile FOR EACH aDep IN aDeps - s_getFilesDep( hbmk, aDep[ _HBMK_HEADER_cHeader ], ; - hFiles, ; - cParentDir, ; - aDep[ _HBMK_HEADER_lSystemHeader ], ; - lCMode ) + s_getFilesDep( hbmk, ; + aDep[ _HBMK_HEADER_cHeader ], ; + hFiles, ; + cParentDir, ; + aDep[ _HBMK_HEADER_lSystemHeader ], ; + lCMode ) NEXT ENDIF @@ -10055,8 +10062,9 @@ STATIC FUNCTION FN_Expand( cFileName, lCommandLine ) RETURN aFileList STATIC FUNCTION FNameHasWildcard( cFileName ) - RETURN "?" $ cFileName .OR. ; - "*" $ cFileName + RETURN ; + "?" $ cFileName .OR. ; + "*" $ cFileName STATIC FUNCTION HBC_Find( hbmk, cFile, nNesting ) @@ -10112,13 +10120,15 @@ STATIC FUNCTION HBC_Find( hbmk, cFile, nNesting ) STATIC FUNCTION AutoConfPathList() #if defined( __PLATFORM__UNIX ) - RETURN { hb_DirSepAdd( GetEnv( "HOME" ) ) + ".harbour", ; - "/etc/harbour", ; - hb_DirSepAdd( hb_DirBase() ) + "../etc/harbour", ; - hb_DirSepAdd( hb_DirBase() ) + "../etc", ; - hb_DirBase() } + RETURN { ; + hb_DirSepAdd( GetEnv( "HOME" ) ) + ".harbour", ; + "/etc/harbour", ; + hb_DirSepAdd( hb_DirBase() ) + "../etc/harbour", ; + hb_DirSepAdd( hb_DirBase() ) + "../etc", ; + hb_DirBase() } #else - RETURN { hb_DirBase() } + RETURN { ; + hb_DirBase() } #endif STATIC PROCEDURE HBC_ProcessAuto( hbmk ) @@ -10291,11 +10301,11 @@ STATIC FUNCTION HBC_ProcessOne( hbmk, cFileName, nNestingLevel ) ELSE cItem := PathSepToSelf( cItem ) IF Left( cItem, 1 ) == "-" - IF CheckLibParam( hbmk, SubStr( cItem, 2 ), .T., _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) + IF CheckParamLib( hbmk, SubStr( cItem, 2 ), .T., _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) AAddNewNotEmpty( hbmk[ _HBMK_aLIBFILTEROUT ], SubStr( cItem, 2 ) ) ENDIF ELSE - IF CheckLibParam( hbmk, cItem, .T., _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) + IF CheckParamLib( hbmk, cItem, .T., _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) IF _IS_AUTOLIBSYSPRE( cItem ) AAddNewNotEmpty( hbmk[ _HBMK_aLIBUSERSYSPRE ], cItem ) ELSE @@ -10384,12 +10394,12 @@ STATIC FUNCTION HBC_ProcessOne( hbmk, cFileName, nNestingLevel ) cItem := MacroProc( hbmk, StrStripQuote( cItem ), cFileName ) IF ! Empty( cItem ) cItem := hb_DirSepDel( hb_PathNormalize( PathMakeAbsolute( PathSepToSelf( cItem ), hb_FNameDir( cFileName ) ) ) ) - IF ! CheckLibPathParam( hbmk, cItem ) - _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core library directory: %1$s (in directive %2$s)" ), cItem, ParamToString( _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) ) ) - ELSE + IF CheckParamLibPath( hbmk, cItem ) IF ( _MACRO_LATE_PREFIX + _MACRO_OPEN ) $ cItem .OR. hb_DirExists( cItem ) AAddNew( hbmk[ _HBMK_aLIBPATH ], cItem ) ENDIF + ELSE + _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core library directory: %1$s (in directive %2$s)" ), cItem, ParamToString( _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) ) ) ENDIF ENDIF NEXT @@ -10398,10 +10408,10 @@ STATIC FUNCTION HBC_ProcessOne( hbmk, cFileName, nNestingLevel ) FOR EACH cItem IN hb_ATokens( cLine,, .T. ) cItem := MacroProc( hbmk, StrStripQuote( cItem ), cFileName ) IF ! Empty( cItem ) - IF ! CheckIncParam( hbmk, cItem ) - _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core header directory: %1$s (in directive %2$s)" ), cItem, ParamToString( _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) ) ) - ELSE + IF CheckParamInc( hbmk, cItem ) AAddNew( hbmk[ _HBMK_aINCPATH ], hb_DirSepDel( hb_PathNormalize( PathMakeAbsolute( PathSepToSelf( cItem ), hb_FNameDir( cFileName ) ) ) ) ) + ELSE + _hbmk_OutErr( hbmk, hb_StrFormat( I_( "Warning: Ignoring explicitly specified core header directory: %1$s (in directive %2$s)" ), cItem, ParamToString( _PAR_NEW( cLineOri, cFileName, cLine:__enumIndex() ) ) ) ) ENDIF ENDIF NEXT @@ -10798,8 +10808,9 @@ STATIC FUNCTION HBC_ProcessOne( hbmk, cFileName, nNestingLevel ) STATIC FUNCTION IsGTRequested( hbmk, cWhichGT ) /* Check if it is a core/user GT. */ - RETURN AScan( hbmk[ _HBMK_aLIBCOREGT ], {| tmp | Lower( tmp ) == Lower( cWhichGT ) } ) > 0 .OR. ; - AScan( hbmk[ _HBMK_aLIBUSERGT ], {| tmp | Lower( tmp ) == Lower( cWhichGT ) } ) > 0 + RETURN ; + AScan( hbmk[ _HBMK_aLIBCOREGT ], {| tmp | Lower( tmp ) == Lower( cWhichGT ) } ) > 0 .OR. ; + AScan( hbmk[ _HBMK_aLIBUSERGT ], {| tmp | Lower( tmp ) == Lower( cWhichGT ) } ) > 0 STATIC FUNCTION StrStripQuote( cString ) RETURN iif( Left( cString, 1 ) == '"' .AND. Right( cString, 1 ) == '"', ; @@ -10810,7 +10821,7 @@ STATIC FUNCTION ValueIsT( cString ) cString := Lower( cString ) -#ifdef HB_LEGACY_LEVEL4 +#ifdef HB_LEGACY_LEVEL4 /* cleanup surrounding code after removing this */ IF cString == "1" /* Compatibility */ RETURN .T. ENDIF @@ -10822,7 +10833,7 @@ STATIC FUNCTION ValueIsF( cString ) cString := Lower( cString ) -#ifdef HB_LEGACY_LEVEL4 +#ifdef HB_LEGACY_LEVEL4 /* cleanup surrounding code after removing this */ IF cString == "0" /* Compatibility */ RETURN .T. ENDIF @@ -12231,7 +12242,8 @@ STATIC FUNCTION win_implib_command_msvc( hbmk, cCommand, cSourceDLL, cTargetLib, ENDIF cCommandDump := "dumpbin.exe -exports {ID}" - cCommandDump := StrTran( cCommandDump, "{ID}", FNameEscape( cSourceDLL, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ) ) + cCommandDump := hb_StrXChg( cCommandDump, { ; + "{ID}" => FNameEscape( cSourceDLL, hbmk[ _HBMK_nCmd_Esc ], hbmk[ _HBMK_nCmd_FNF ] ) } ) IF hbmk[ _HBMK_lTRACE ] IF ! hbmk[ _HBMK_lQuiet ] @@ -14687,7 +14699,7 @@ STATIC PROCEDURE convert_xhp_to_hbp( hbmk, cSrcName, cDstName ) IF !( "%HB_INSTALL%\" $ cFile ) tmp := StrTran( cFile, "%HOME%\" ) IF " " $ tmp - tmp := Chr( 34 ) + tmp + Chr( 34 ) + tmp := '"' + tmp + '"' ENDIF AAdd( aDst, tmp ) ENDIF @@ -14706,7 +14718,7 @@ STATIC PROCEDURE convert_xhp_to_hbp( hbmk, cSrcName, cDstName ) ENDIF tmp := "-l" + tmp IF " " $ tmp - tmp := Chr( 34 ) + tmp + Chr( 34 ) + tmp := '"' + tmp + '"' ENDIF AAdd( aDst, tmp ) ENDIF @@ -14717,7 +14729,7 @@ STATIC PROCEDURE convert_xhp_to_hbp( hbmk, cSrcName, cDstName ) !( "%HB_LIB_INSTALL%\" $ cFile ) tmp := StrTran( cFile, "%HOME%\" ) IF " " $ tmp - tmp := Chr( 34 ) + tmp + Chr( 34 ) + tmp := '"' + tmp + '"' ENDIF AAdd( aDst, tmp ) ENDIF @@ -15403,7 +15415,7 @@ STATIC PROCEDURE ShowHelp( hbmk, lFull, lLong ) AEval( aLst_HBC, {| tmp | OutOpt( hbmk, tmp ) } ) /* TODO: Move to separate section from notes: - filter and macro syntax, %{}, subprojects - - entry function, plugin variables, API calls, callbacks/statuses + - build plugins: entry function, variables, API calls, callbacks/statuses "init" "pre_all", "pre_prg", "pre_res", "pre_c", "pre_link", "pre_lib", "pre_cleanup" "post_build", "post_all"