FeatureSummaryTypes.cmake 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. include(FeatureSummary)
  2. list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
  3. find_package(Foo)
  4. # Type not set => OPTIONAL
  5. feature_summary(WHAT ALL)
  6. # RUNTIME > not set => RUNTIME
  7. set_package_properties(Foo PROPERTIES TYPE RUNTIME)
  8. feature_summary(WHAT ALL)
  9. # OPTIONAL > RUNTIME => OPTIONAL
  10. set_package_properties(Foo PROPERTIES TYPE OPTIONAL)
  11. feature_summary(WHAT ALL)
  12. # RUNTIME < OPTIONAL => OPTIONAL
  13. set_package_properties(Foo PROPERTIES TYPE OPTIONAL)
  14. feature_summary(WHAT ALL)
  15. # RECOMMENDED > OPTIONAL => RECOMMENDED
  16. set_package_properties(Foo PROPERTIES TYPE RECOMMENDED)
  17. feature_summary(WHAT ALL)
  18. # OPTIONAL < RECOMMENDED => RECOMMENDED
  19. set_package_properties(Foo PROPERTIES TYPE OPTIONAL)
  20. feature_summary(WHAT ALL)
  21. # RUNTIME < RECOMMENDED => RECOMMENDED
  22. set_package_properties(Foo PROPERTIES TYPE RUNTIME)
  23. feature_summary(WHAT ALL)
  24. # REQUIRED > RECOMMENDED => REQUIRED
  25. set_package_properties(Foo PROPERTIES TYPE REQUIRED)
  26. feature_summary(WHAT ALL)
  27. # RECOMMENDED < REQUIRED => REQUIRED
  28. set_package_properties(Foo PROPERTIES TYPE RECOMMENDED)
  29. feature_summary(WHAT ALL)
  30. # OPTIONAL < REQUIRED => REQUIRED
  31. set_package_properties(Foo PROPERTIES TYPE OPTIONAL)
  32. feature_summary(WHAT ALL)
  33. # RUNTIME < REQUIRED => REQUIRED
  34. set_package_properties(Foo PROPERTIES TYPE RUNTIME)
  35. feature_summary(WHAT ALL)