RunCMakeTest.cmake 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. include(RunCMake)
  2. run_cmake(no_parameters)
  3. run_cmake(unknown_meta_operation)
  4. foreach(command IN ITEMS
  5. "function" "ENDFUNCTION"
  6. "macro" "endMACRO"
  7. "if" "elseif" "else" "endif"
  8. "while" "endwhile"
  9. "foreach" "endforeach"
  10. "block" "endblock"
  11. )
  12. message(STATUS "Running call_invalid_command for ${command}...")
  13. run_cmake_with_options(call_invalid_command -Dcommand=${command})
  14. endforeach()
  15. run_cmake(call_valid_command)
  16. run_cmake(call_double_evaluation)
  17. run_cmake(call_expanded_command)
  18. run_cmake(call_expanded_command_and_arguments)
  19. run_cmake(call_expanded_command_with_explicit_argument)
  20. run_cmake(call_expand_command_name)
  21. run_cmake(call_expand_function_name)
  22. run_cmake(call_message)
  23. run_cmake(call_message_fatal_error)
  24. run_cmake(call_no_parameters)
  25. run_cmake(call_preserve_arguments)
  26. run_cmake(call_unknown_function)
  27. run_cmake(eval_expand_command_name)
  28. run_cmake(eval_expanded_command_and_arguments)
  29. run_cmake(eval_extra_parameters_between_eval_and_code)
  30. run_cmake(eval_message)
  31. run_cmake(eval_message_fatal_error)
  32. run_cmake(eval_no_code)
  33. run_cmake(eval_no_parameters)
  34. run_cmake(eval_variable_outside_message)
  35. run_cmake(defer_call)
  36. run_cmake(defer_call_add_subdirectory)
  37. run_cmake(defer_call_enable_language)
  38. run_cmake(defer_call_ids)
  39. foreach(command IN ITEMS
  40. "function" "endfunction"
  41. "macro" "endmacro"
  42. "if" "elseif" "else" "endif"
  43. "while" "endwhile"
  44. "foreach" "endforeach"
  45. "block" "endblock"
  46. "return"
  47. )
  48. message(STATUS "Running defer_call_invalid_command for ${command}...")
  49. run_cmake_with_options(defer_call_invalid_command -Dcommand=${command})
  50. endforeach()
  51. run_cmake(defer_call_invalid_directory)
  52. run_cmake(defer_call_error)
  53. run_cmake(defer_call_missing_directory)
  54. run_cmake(defer_call_policy_PUSH)
  55. run_cmake(defer_call_syntax_error)
  56. run_cmake_with_options(defer_call_trace --trace-expand)
  57. run_cmake_with_options(defer_call_trace_json --trace --trace-format=json-v1)
  58. run_cmake(defer_cancel_call_unknown_argument)
  59. run_cmake(defer_cancel_call_invalid_directory)
  60. run_cmake(defer_cancel_call_id)
  61. run_cmake(defer_cancel_call_id_var)
  62. run_cmake(defer_directory_empty)
  63. run_cmake(defer_directory_missing)
  64. run_cmake(defer_directory_multiple)
  65. run_cmake(defer_id_empty)
  66. run_cmake(defer_id_missing)
  67. run_cmake(defer_id_multiple)
  68. run_cmake(defer_id_var_empty)
  69. run_cmake(defer_id_var_missing)
  70. run_cmake(defer_id_var_multiple)
  71. run_cmake(defer_get_call_ids_missing_var)
  72. run_cmake(defer_get_call_ids_too_many_args)
  73. run_cmake(defer_get_call_ids_invalid_directory)
  74. run_cmake(defer_get_call_ids_id)
  75. run_cmake(defer_get_call_ids_id_var)
  76. run_cmake(defer_get_call_missing_id)
  77. run_cmake(defer_get_call_missing_var)
  78. run_cmake(defer_get_call_too_many_args)
  79. run_cmake(defer_get_call_id_empty)
  80. run_cmake(defer_get_call_unknown_argument)
  81. run_cmake(defer_get_call_id)
  82. run_cmake(defer_get_call_id_var)
  83. run_cmake(defer_missing_arg)
  84. run_cmake(defer_missing_call)
  85. run_cmake(defer_unknown_option)
  86. run_cmake(exit_0)
  87. run_cmake(exit_5)
  88. run_cmake_script(exit_0_script)
  89. run_cmake_script(exit_5_script)
  90. run_cmake_script(exit_0_script_with_command)
  91. run_cmake_script(exit_7_script_in_include)
  92. run_cmake_script(exit_8_script_in_recursive_cmake_language)
  93. run_cmake_script(exit_9_script_block)
  94. run_cmake_script(exit_9_script_control)
  95. run_cmake_script(exit_9_script_if)
  96. run_cmake_script(exit_9_script_foreach)
  97. run_cmake_script(exit_9_script_function)
  98. run_cmake_script(exit_9_script_macro)
  99. run_cmake_script(exit_9_script_while)
  100. # Default log level
  101. run_cmake_command(
  102. get_message_log_level_none
  103. ${CMAKE_COMMAND}
  104. -P ${RunCMake_SOURCE_DIR}/get_message_log_level.cmake
  105. )
  106. # Log level from cache
  107. run_cmake_command(
  108. get_message_log_level_cache
  109. ${CMAKE_COMMAND}
  110. -DCMAKE_MESSAGE_LOG_LEVEL=TRACE
  111. -P ${RunCMake_SOURCE_DIR}/get_message_log_level.cmake
  112. )
  113. # Log level from regular variable
  114. run_cmake_command(
  115. get_message_log_level_var
  116. ${CMAKE_COMMAND}
  117. -DNEW_LOG_LEVEL=TRACE
  118. -P ${RunCMake_SOURCE_DIR}/get_message_log_level.cmake
  119. )
  120. # Log level from command line
  121. run_cmake_command(
  122. get_message_log_level_cli
  123. ${CMAKE_COMMAND}
  124. --log-level=DEBUG
  125. -P ${RunCMake_SOURCE_DIR}/get_message_log_level.cmake
  126. )
  127. # Log level from command line, it has higher priority over a cache variable
  128. run_cmake_command(
  129. get_message_log_level_cli_and_cache
  130. ${CMAKE_COMMAND}
  131. --log-level=DEBUG
  132. -DCMAKE_MESSAGE_LOG_LEVEL=TRACE
  133. -P ${RunCMake_SOURCE_DIR}/get_message_log_level.cmake
  134. )
  135. # Log level from command line, it has higher priority over a regular variable
  136. run_cmake_command(
  137. get_message_log_level_cli_and_var
  138. ${CMAKE_COMMAND}
  139. --log-level=DEBUG
  140. -DNEW_LOG_LEVEL=TRACE
  141. -P ${RunCMake_SOURCE_DIR}/get_message_log_level.cmake
  142. )
  143. # Log level from variable, it has higher priority over a cache variable
  144. run_cmake_command(
  145. get_message_log_level_var_and_cache
  146. ${CMAKE_COMMAND}
  147. -DNEW_LOG_LEVEL=DEBUG
  148. -DCMAKE_MESSAGE_LOG_LEVEL=TRACE
  149. -P ${RunCMake_SOURCE_DIR}/get_message_log_level.cmake
  150. )
  151. run_cmake(Experimental/CxxImportStd-set)
  152. run_cmake(Experimental/CxxImportStd-unset)
  153. run_cmake(Experimental/ExportPackageDependencies-set)
  154. run_cmake(Experimental/ExportPackageDependencies-unset)
  155. run_cmake(Experimental/WindowsKernelModeDriver-set)
  156. run_cmake(Experimental/WindowsKernelModeDriver-unset)
  157. run_cmake(Experimental/Unknown)