Initialization.cmake 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. include(${CMAKE_CURRENT_LIST_DIR}/test_utils.cmake)
  2. # unparsed arguments
  3. cmake_parse_arguments(pref "" "" "")
  4. TEST(pref_UNPARSED_ARGUMENTS UNDEFINED)
  5. cmake_parse_arguments(pref "" "" "" FOO)
  6. TEST(pref_UNPARSED_ARGUMENTS "FOO")
  7. cmake_parse_arguments(pref "" "" "" FOO BAR)
  8. TEST(pref_UNPARSED_ARGUMENTS "FOO;BAR")
  9. cmake_parse_arguments(pref "" "" "")
  10. TEST(pref_UNPARSED_ARGUMENTS UNDEFINED)
  11. # options
  12. cmake_parse_arguments(pref "OPT1" "" "")
  13. TEST(pref_OPT1 FALSE)
  14. cmake_parse_arguments(pref "OPT1;OPT2" "" "")
  15. TEST(pref_OPT1 FALSE)
  16. TEST(pref_OPT2 FALSE)
  17. cmake_parse_arguments(pref "OPT1" "" "" OPT1)
  18. TEST(pref_OPT1 TRUE)
  19. cmake_parse_arguments(pref "OPT1;OPT2" "" "" OPT1 OPT2)
  20. TEST(pref_OPT1 TRUE)
  21. TEST(pref_OPT2 TRUE)
  22. cmake_parse_arguments(pref "OPT1;OPT2" "" "" "OPT1;OPT2")
  23. TEST(pref_OPT1 TRUE)
  24. TEST(pref_OPT2 TRUE)
  25. cmake_parse_arguments(pref "OPT1;OPT2" "" "")
  26. TEST(pref_OPT1 FALSE)
  27. TEST(pref_OPT2 FALSE)
  28. # single arguments
  29. cmake_parse_arguments(pref "" "SINGLE1" "")
  30. TEST(pref_SINGLE1 UNDEFINED)
  31. cmake_parse_arguments(pref "" "SINGLE1;SINGLE2" "")
  32. TEST(pref_SINGLE1 UNDEFINED)
  33. TEST(pref_SINGLE2 UNDEFINED)
  34. cmake_parse_arguments(pref "" "SINGLE1" "" SINGLE1 foo)
  35. TEST(pref_SINGLE1 foo)
  36. cmake_parse_arguments(pref "" "SINGLE1;SINGLE2" "" SINGLE1 foo SINGLE2 bar)
  37. TEST(pref_SINGLE1 foo)
  38. TEST(pref_SINGLE2 bar)
  39. cmake_parse_arguments(pref "" "SINGLE1;SINGLE2" "" "SINGLE1;foo;SINGLE2;bar")
  40. TEST(pref_SINGLE1 foo)
  41. TEST(pref_SINGLE2 bar)
  42. cmake_parse_arguments(pref "" "SINGLE1;SINGLE2" "")
  43. TEST(pref_SINGLE1 UNDEFINED)
  44. TEST(pref_SINGLE2 UNDEFINED)
  45. # multi arguments
  46. cmake_parse_arguments(pref "" "" "MULTI1")
  47. TEST(pref_MULTI1 UNDEFINED)
  48. cmake_parse_arguments(pref "" "" "MULTI1;MULTI2")
  49. TEST(pref_MULTI1 UNDEFINED)
  50. TEST(pref_MULTI2 UNDEFINED)
  51. cmake_parse_arguments(pref "" "" "MULTI1" MULTI1 foo)
  52. TEST(pref_MULTI1 foo)
  53. cmake_parse_arguments(pref "" "" "MULTI1;MULTI2" MULTI1 foo bar MULTI2 bar foo)
  54. TEST(pref_MULTI1 foo bar)
  55. TEST(pref_MULTI2 bar foo)
  56. cmake_parse_arguments(pref "" "" "MULTI1;MULTI2" "MULTI1;foo;bar;MULTI2;bar;foo")
  57. TEST(pref_MULTI1 foo bar)
  58. TEST(pref_MULTI2 bar foo)
  59. cmake_parse_arguments(pref "" "" "MULTI1;MULTI2")
  60. TEST(pref_MULTI1 UNDEFINED)
  61. TEST(pref_MULTI2 UNDEFINED)