RunCMakeTest.cmake 4.2 KB

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