RunCMakeTest.cmake 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. include(RunCMake)
  2. run_cmake(BOM-UTF-8)
  3. run_cmake(BOM-UTF-16-LE)
  4. run_cmake(BOM-UTF-16-BE)
  5. run_cmake(BOM-UTF-32-LE)
  6. run_cmake(BOM-UTF-32-BE)
  7. run_cmake(Broken-BOM-UTF-32-LE)
  8. run_cmake(Broken-BOM-UTF-32-BE)
  9. run_cmake(OneCharacter)
  10. run_cmake(CommandSpaces)
  11. run_cmake(CommandTabs)
  12. run_cmake(CommandNewlines)
  13. run_cmake(CommandComments)
  14. run_cmake(CommandEOF)
  15. run_cmake(CommandError0)
  16. run_cmake(CommandError1)
  17. run_cmake(CommandError2)
  18. run_cmake(ForEachBracket1)
  19. run_cmake(FunctionBracket1)
  20. run_cmake(MacroBracket1)
  21. run_cmake(String0)
  22. run_cmake(String1)
  23. run_cmake(StringBackslash)
  24. run_cmake(StringCRLF)
  25. run_cmake(StringContinuation1)
  26. run_cmake(StringContinuation2)
  27. run_cmake(StringNoSpace)
  28. run_cmake(OneLetter)
  29. run_cmake(Unquoted0)
  30. run_cmake(Unquoted1)
  31. run_cmake(Unquoted2)
  32. run_cmake(Bracket0)
  33. run_cmake(Bracket1)
  34. run_cmake(Bracket2)
  35. run_cmake(BracketBackslash)
  36. run_cmake(BracketCRLF)
  37. run_cmake(BracketComment0)
  38. run_cmake(BracketComment1)
  39. run_cmake(BracketComment2)
  40. run_cmake(BracketComment3)
  41. run_cmake(BracketComment4)
  42. run_cmake(BracketComment5)
  43. run_cmake(BracketNoSpace0)
  44. run_cmake(BracketNoSpace1)
  45. run_cmake(BracketNoSpace2)
  46. run_cmake(BracketNoSpace3)
  47. run_cmake(BracketNoSpace4)
  48. run_cmake(BracketNoSpace5)
  49. run_cmake(Escape1)
  50. run_cmake(Escape2)
  51. run_cmake(EscapeCharsAllowed)
  52. run_cmake(NullAfterBackslash)
  53. run_cmake(NullTerminatedArgument)
  54. if(NOT RunCMake_TEST_E2K_BROKEN_LIBC)
  55. include("${RunCMake_SOURCE_DIR}/EscapeCharsDisallowed.cmake")
  56. endif()
  57. run_cmake(ParenNoSpace0)
  58. run_cmake(ParenNoSpace1)
  59. run_cmake(ParenNoSpace2)
  60. run_cmake(ParenInVarName0)
  61. run_cmake(UnterminatedCall1)
  62. run_cmake(UnterminatedCall2)
  63. run_cmake(UnterminatedString)
  64. run_cmake(UnterminatedBrace1)
  65. run_cmake(UnterminatedBracket0)
  66. run_cmake(UnterminatedBracket1)
  67. run_cmake(UnterminatedBracketComment)
  68. run_cmake(ImproperNesting)
  69. # Variable expansion tests
  70. run_cmake(ExpandInAt)
  71. run_cmake(EscapedAt)
  72. run_cmake(EscapeQuotes)
  73. run_cmake(At)
  74. run_cmake(AtWithVariable)
  75. run_cmake(AtWithVariableEmptyExpansion)
  76. run_cmake(AtWithVariableAtOnly)
  77. run_cmake(AtWithVariableEmptyExpansionAtOnly)
  78. run_cmake(AtWithVariableFile)
  79. run_cmake(AtWithVariableAtOnlyFile)
  80. run_cmake(ParenInENV1)
  81. run_cmake(ParenInENV2)
  82. run_cmake(ParenInQuotedENV1)
  83. run_cmake(ParenInQuotedENV2)
  84. # Variable name tests
  85. run_cmake(NameWithSpaces)
  86. run_cmake(NameWithTabs)
  87. run_cmake(NameWithNewline)
  88. run_cmake(NameWithCarriageReturn)
  89. run_cmake(NameWithEscapedSpaces)
  90. run_cmake(NameWithEscapedTabs)
  91. run_cmake(NameWithSpacesQuoted)
  92. run_cmake(NameWithTabsQuoted)
  93. run_cmake(NameWithNewlineQuoted)
  94. run_cmake(NameWithCarriageReturnQuoted)
  95. run_cmake(NameWithEscapedSpacesQuoted)
  96. run_cmake(NameWithEscapedTabsQuoted)
  97. run_cmake(Dollar)
  98. # Variable special types
  99. run_cmake(QueryCache)
  100. # Function and macro tests.
  101. run_cmake(FunctionUnmatched)
  102. run_cmake(FunctionUnmatchedForeach)
  103. run_cmake(MacroUnmatched)
  104. run_cmake(MacroUnmatchedForeach)
  105. function(run_override name)
  106. string(TOLOWER "${name}" lname)
  107. set(RunCMake_DEFAULT_stderr "^CMake Error at [^
  108. ]*/Tests/RunCMake/Syntax/Override\\.cmake:[0-9]+ \\(function\\):
  109. Built-in flow control command \"${lname}\" cannot be overridden\\.
  110. Call Stack \\(most recent call first\\):
  111. [^
  112. ]*/Tests/RunCMake/Syntax/Override\\.cmake:[0-9]+ \\(override\\)$")
  113. run_cmake_command(Override${name} "${CMAKE_COMMAND}" -DFUNCTION_NAME=${name} -P "${RunCMake_SOURCE_DIR}/Override.cmake")
  114. endfunction()
  115. run_override(Break)
  116. run_override(Continue)
  117. run_override(Else)
  118. run_override(ElseIf)
  119. run_override(EndForeach)
  120. run_override(EndFunction)
  121. run_override(EndIf)
  122. run_override(EndMacro)
  123. run_override(EndWhile)
  124. run_override(Foreach)
  125. run_override(Function)
  126. run_override(If)
  127. run_override(Macro)
  128. run_override(Return)
  129. run_override(While)
  130. run_override(Project)