diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 978d0f563c..e2e639acf1 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,7 @@ +2000-07-31 20:25 UTC+0800 Ron Pinkas + * source/compiler/cmdcheck.c + + Added support for multiple switches, without seperator, like: -n-w + 2000-07-31 18:20 UTC+0800 Ron Pinkas * source/compiler/harbour.slx - Removed few redundant rules. diff --git a/harbour/source/compiler/cmdcheck.c b/harbour/source/compiler/cmdcheck.c index 23d7122a7b..0a06bf8204 100644 --- a/harbour/source/compiler/cmdcheck.c +++ b/harbour/source/compiler/cmdcheck.c @@ -55,7 +55,7 @@ #include "hbcomp.h" /* TODO: Add support for this compiler switches - -m -r -t || getenv( "TMP" ) -u + -r -t || getenv( "TMP" ) */ /* @@ -140,8 +140,31 @@ void hb_compChkCompilerSwitch( int iArg, char * Args[] ) */ for( i = 0; i < iArg; i++ ) { - if( HB_ISOPTSEP( * Args[ i ] ) ) - hb_compChkEnvironVar( Args[ i ] ); + if( ! HB_ISOPTSEP( * Args[ i ] ) ) + continue; + + CheckSwitch : + { + int j = 1; + while( Args[ i ][j] && ! HB_ISOPTSEP( Args[ i ][j] ) ) j++; + + if( Args[ i ][j] && HB_ISOPTSEP( Args[ i ][j] ) ) + { + char cSep = Args[ i ][j]; + Args[ i ][j] = 0; + + hb_compChkEnvironVar( Args[ i ] ); + + Args[ i ] += j; + Args[i][0] = cSep; + + goto CheckSwitch; + } + else + { + hb_compChkEnvironVar( Args[ i ] ); + } + } } } else