fix build under newer KConfig by bump cmake min version

This commit is contained in:
2024-09-04 19:01:58 +08:00
parent 727a2ec214
commit 9fb3681e3a
1022 changed files with 4414 additions and 1375 deletions

View File

@ -0,0 +1,39 @@
rem remark and comment bug
findstr /c:"rem this" "file"
findstr /c:":: this" "file"
:: SingleQuoted command string
for /f %%A in ('rem this') do echo %%A
:: DoubleQuoted string
for /f %%A in ("rem this") do echo %%A
:: BackQuote command string
for /f "usebackq" %%A in (`rem this`) do echo %%A
:: Test the handling of quotes ' and " and escape ^
:: Comment
:: With quotes
":: Text
"":: Comment
':: Text
'':: Comment
:: Mixing quotes - likely incorrect as lexer tries ' and " separately, leaving an active quote
"'":: Text
:: With escapes
^:: Text
^":: Comment
^"":: Text
^""":: Comment
^^":: Text
^^"":: Comment
^^""":: Text
:: With preceding command
mkdir archive ":: Text
mkdir archive "":: Comment
mkdir archive ^":: Comment
mkdir archive ^"":: Text

View File

@ -0,0 +1,40 @@
0 400 0 rem remark and comment bug
0 400 0
0 400 0 findstr /c:"rem this" "file"
0 400 0 findstr /c:":: this" "file"
0 400 0
0 400 0 :: SingleQuoted command string
0 400 0 for /f %%A in ('rem this') do echo %%A
0 400 0
0 400 0 :: DoubleQuoted string
0 400 0 for /f %%A in ("rem this") do echo %%A
0 400 0
0 400 0 :: BackQuote command string
0 400 0 for /f "usebackq" %%A in (`rem this`) do echo %%A
0 400 0
0 400 0 :: Test the handling of quotes ' and " and escape ^
0 400 0 :: Comment
0 400 0
0 400 0 :: With quotes
0 400 0 ":: Text
0 400 0 "":: Comment
0 400 0 ':: Text
0 400 0 '':: Comment
0 400 0 :: Mixing quotes - likely incorrect as lexer tries ' and " separately, leaving an active quote
0 400 0 "'":: Text
0 400 0
0 400 0 :: With escapes
0 400 0 ^:: Text
0 400 0 ^":: Comment
0 400 0 ^"":: Text
0 400 0 ^""":: Comment
0 400 0 ^^":: Text
0 400 0 ^^"":: Comment
0 400 0 ^^""":: Text
0 400 0
0 400 0 :: With preceding command
0 400 0 mkdir archive ":: Text
0 400 0 mkdir archive "":: Comment
0 400 0 mkdir archive ^":: Comment
0 400 0 mkdir archive ^"":: Text
0 400 0

View File

@ -0,0 +1,39 @@
{1}rem remark and comment bug
{0}
{5}findstr{0} /c:"rem this" "file"
{5}findstr{0} /c:":: this" "file"
{1}:: SingleQuoted command string
{2}for{0} /f {6}%%A{2} in{0} ('rem this'){2} do echo{0} {6}%%A{0}
{1}:: DoubleQuoted string
{2}for{0} /f {6}%%A{2} in{0} ("rem this"){2} do echo{0} {6}%%A{0}
{1}:: BackQuote command string
{2}for{0} /f "usebackq" {6}%%A{2} in{0} (`rem this`){2} do echo{0} {6}%%A{0}
{1}:: Test the handling of quotes ' and " and escape ^
:: Comment
{0}
{1}:: With quotes
{0}":: Text
""{1}:: Comment
{0}':: Text
''{1}:: Comment
:: Mixing quotes - likely incorrect as lexer tries ' and " separately, leaving an active quote
{0}"'":: Text
{1}:: With escapes
{5}^::{0} Text
{5}^{0}"{1}:: Comment
{5}^{0}"":: Text
{5}^{0}"""{1}:: Comment
{5}^^{0}":: Text
{5}^^{0}""{1}:: Comment
{5}^^{0}""":: Text
{1}:: With preceding command
{5}mkdir{0} archive ":: Text
{5}mkdir{0} archive ""{1}:: Comment
{5}mkdir{0} archive ^"{1}:: Comment
{5}mkdir{0} archive ^"":: Text

View File

@ -0,0 +1,26 @@
rem Keywords with colon
rem with spacing
call file.bat arg1
call "file.bat" arg1
call :label arg1
goto :label
goto :eof
goto label
echo: %var%
echo: text
echo text
rem no spacing
call:label arg1
goto:label
goto:eof
echo:%var%
echo:text
(call)
(echo:)
(goto)
rem call internal commands
call echo text
call set "a=b"

View File

@ -0,0 +1,27 @@
0 400 0 rem Keywords with colon
0 400 0
0 400 0 rem with spacing
0 400 0 call file.bat arg1
0 400 0 call "file.bat" arg1
0 400 0 call :label arg1
0 400 0 goto :label
0 400 0 goto :eof
0 400 0 goto label
0 400 0 echo: %var%
0 400 0 echo: text
0 400 0 echo text
0 400 0
0 400 0 rem no spacing
0 400 0 call:label arg1
0 400 0 goto:label
0 400 0 goto:eof
0 400 0 echo:%var%
0 400 0 echo:text
0 400 0 (call)
0 400 0 (echo:)
0 400 0 (goto)
0 400 0
0 400 0 rem call internal commands
0 400 0 call echo text
0 400 0 call set "a=b"
0 400 0

View File

@ -0,0 +1,26 @@
{1}rem Keywords with colon
{0}
{1}rem with spacing
{2}call{5} file.bat{0} arg1
{2}call{0} "file.bat" arg1
{2}call{0} :label arg1
{2}goto{0} :label
{2}goto{0} :eof
{2}goto{0} label
{2}echo{0}: {6}%var%{0}
{2}echo{0}: text
{2}echo{0} text
{1}rem no spacing
{2}call{0}:label arg1
{2}goto{0}:label
{2}goto{0}:eof
{2}echo{0}:{6}%var%{0}
{2}echo{0}:text
({2}call{0})
({2}echo{0}:)
({2}goto{0})
{1}rem call internal commands
{2}call echo{0} text
{2}call set{0} "a=b"

View File

@ -0,0 +1,3 @@
lexer.*.bat=batch
keywords.*.bat=call defined do echo else errorlevel exist exit for goto if in not set

View File

@ -0,0 +1,63 @@
rem comment=1
rem 'echo' is word=2, 'a' is default=0
echo a
rem label=3
:START
rem '@' is hide=4
@echo b
rem 'gcc' is external command=5
gcc --version
rem '%PATH%' is variable=6
echo %PATH%
echo %ProgramFiles(x86)%
rem operator=7 '='
@set Q=A
::comment=1
:: Bug 1624: this construct produced inconsistent brackets in the past
if ERRORLEVEL 2 goto END
@if exist a (
echo exists
) else (
echo not
)
FOR /L %%G IN (2,1,4) DO (echo %%G)
:: Bug 1997: keywords not recognized when preceded by '('
IF NOT DEFINED var (SET var=1)
:: Bug 2065: keywords not recognized when followed by ')'
@if exist a ( exit)
:: Bug: with \r or \n, 'command' is seen as continuation
echo word ^
1
command
:: Bug argument and variable expansion
echo %~dp0123
echo %%-~012
echo %%~%%~-abcd
FOR /F %%I in ("C:\Test\temp.txt") do echo %%~dI
:: Bug ending of argument and variable expansion
echo %~dp0\123
echo "%~dp0123"
echo "%%-~012"
echo "%%~%%~-abcd"
FOR /F %%I in ("C:\Test\temp.txt") do echo "%%~dI"
:: Bug escaped %
echo %%0
echo %%%0
echo %%%%~-abcd
:TEST that after label style works
:: Bug 2304: "::" comments not recognised when second command on line
Set /A xxx=%xxx%+1 & :: Increment
Set /A xxx=%xxx%+1 & ::Increment
Set /A xxx=%xxx%+1 & rem Increment
:END

View File

@ -0,0 +1,64 @@
0 400 0 rem comment=1
0 400 0 rem 'echo' is word=2, 'a' is default=0
0 400 0 echo a
0 400 0 rem label=3
0 400 0 :START
0 400 0 rem '@' is hide=4
0 400 0 @echo b
0 400 0 rem 'gcc' is external command=5
0 400 0 gcc --version
0 400 0 rem '%PATH%' is variable=6
0 400 0 echo %PATH%
0 400 0 echo %ProgramFiles(x86)%
0 400 0 rem operator=7 '='
0 400 0 @set Q=A
0 400 0
0 400 0 ::comment=1
0 400 0
0 400 0 :: Bug 1624: this construct produced inconsistent brackets in the past
0 400 0 if ERRORLEVEL 2 goto END
0 400 0 @if exist a (
0 400 0 echo exists
0 400 0 ) else (
0 400 0 echo not
0 400 0 )
0 400 0
0 400 0 FOR /L %%G IN (2,1,4) DO (echo %%G)
0 400 0
0 400 0 :: Bug 1997: keywords not recognized when preceded by '('
0 400 0 IF NOT DEFINED var (SET var=1)
0 400 0
0 400 0 :: Bug 2065: keywords not recognized when followed by ')'
0 400 0 @if exist a ( exit)
0 400 0
0 400 0 :: Bug: with \r or \n, 'command' is seen as continuation
0 400 0 echo word ^
0 400 0 1
0 400 0 command
0 400 0
0 400 0 :: Bug argument and variable expansion
0 400 0 echo %~dp0123
0 400 0 echo %%-~012
0 400 0 echo %%~%%~-abcd
0 400 0 FOR /F %%I in ("C:\Test\temp.txt") do echo %%~dI
0 400 0
0 400 0 :: Bug ending of argument and variable expansion
0 400 0 echo %~dp0\123
0 400 0 echo "%~dp0123"
0 400 0 echo "%%-~012"
0 400 0 echo "%%~%%~-abcd"
0 400 0 FOR /F %%I in ("C:\Test\temp.txt") do echo "%%~dI"
0 400 0
0 400 0 :: Bug escaped %
0 400 0 echo %%0
0 400 0 echo %%%0
0 400 0 echo %%%%~-abcd
0 400 0
0 400 0 :TEST that after label style works
0 400 0 :: Bug 2304: "::" comments not recognised when second command on line
0 400 0 Set /A xxx=%xxx%+1 & :: Increment
0 400 0 Set /A xxx=%xxx%+1 & ::Increment
0 400 0 Set /A xxx=%xxx%+1 & rem Increment
0 400 0
0 400 0 :END
0 400 0

View File

@ -0,0 +1,63 @@
{1}rem comment=1
rem 'echo' is word=2, 'a' is default=0
{2}echo{0} a
{1}rem label=3
{3}:START
{1}rem '@' is hide=4
{4}@{2}echo{0} b
{1}rem 'gcc' is external command=5
{5}gcc{0} --version
{1}rem '%PATH%' is variable=6
{2}echo{0} {6}%PATH%{0}
{2}echo{0} {6}%ProgramFiles(x86)%{0}
{1}rem operator=7 '='
{4}@{2}set{0} Q{7}={0}A
{1}::comment=1
{0}
{1}:: Bug 1624: this construct produced inconsistent brackets in the past
{2}if ERRORLEVEL{0} 2{2} goto{0} END
{4}@{2}if exist{0} a (
{2}echo{0} exists
){2} else{0} (
{2}echo{0} not
)
{2}FOR{0} /L {6}%%G{2} IN{0} (2,1,4){2} DO{0} ({2}echo{0} {6}%%G{0})
{1}:: Bug 1997: keywords not recognized when preceded by '('
{2}IF NOT DEFINED{0} var ({2}SET{0} var{7}={0}1)
{1}:: Bug 2065: keywords not recognized when followed by ')'
{4}@{2}if exist{0} a ({2} exit{0})
{1}:: Bug: with \r or \n, 'command' is seen as continuation
{2}echo{0} word ^
1
{5}command{0}
{1}:: Bug argument and variable expansion
{2}echo{0} {6}%~dp0{0}123
{2}echo{0} {6}%%-{0}~012
{2}echo{0} %%~{6}%%~-abcd{0}
{2}FOR{0} /F {6}%%I{2} in{0} ("C:\Test\temp.txt"){2} do echo{0} {6}%%~dI{0}
{1}:: Bug ending of argument and variable expansion
{2}echo{0} {6}%~dp0{0}\123
{2}echo{0} "{6}%~dp0{0}123"
{2}echo{0} "{6}%%-{0}~012"
{2}echo{0} "%%~{6}%%~-abcd{0}"
{2}FOR{0} /F {6}%%I{2} in{0} ("C:\Test\temp.txt"){2} do echo{0} "{6}%%~dI{0}"
{1}:: Bug escaped %
{2}echo{0} {6}%%0{0}
{2}echo{0} %%{6}%0{0}
{2}echo{0} %%{6}%%~-abcd{0}
{3}:TEST{8} that after label style works
{1}:: Bug 2304: "::" comments not recognised when second command on line
{2}Set{0} /A xxx{7}={6}%xxx%{7}+{0}1 {7}&{0} {1}:: Increment
{2}Set{0} /A xxx{7}={6}%xxx%{7}+{0}1 {7}&{0} {1}::Increment
{2}Set{0} /A xxx{7}={6}%xxx%{7}+{0}1 {7}&{0} {1}rem Increment
{0}
{3}:END