【力扣 018】cmake_dependent_option

155. 最小栈

cmake_dependent_option(<option> "<help_text>" <value> <depends> <force>)

说明:

  • 如果<depends>中以分号分割的条件列表全部为true,则使<option>对用户可用。否则,名为<option>的局部变量将设置为<force>。
  • 当<option>可用时,使用给定的<help_text>和初始<value>;否则,用户设置的任何值都会被保留,以备将来满足<depends>时使用。

 

CMAKE_DEPENDENT_OPTION(WITH_LIBURING "Enable io_uring bluestore backend" ON "WITH_BLUESTORE;HAVE_LIBAIO" OFF)
  • WITH_LIBURING:

    • 这是被定义的选项名称。
    • 用于控制是否启用 io_uring(Linux 的高性能异步 I/O API)作为 Bluestore 的后端支持。
  • "Enable io_uring bluestore backend":

    • 此选项的描述文本,用于在 CMake 工具中展示给用户。
    • 描述了 WITH_LIBURING 的功能,即启用基于 io_uring 的 Bluestore 后端。
  • ONvalue_if_cond_true):

    • 如果条件 WITH_BLUESTORE;HAVE_LIBAIOTRUE,则 WITH_LIBURING 的默认值为 ON
    • 表示满足条件时,默认启用 WITH_LIBURING
  • "WITH_BLUESTORE;HAVE_LIBAIO"<condition>):

    • 控制 WITH_LIBURING 启用的条件。
    • 是一个逻辑 "与" 的组合,表示只有当 WITH_BLUESTORE=TRUEHAVE_LIBAIO=TRUE 时,WITH_LIBURING 才会显示为可配置。
    • 这是一个依赖链,确保 WITH_LIBURING 仅在满足前置条件时才有意义。
  • OFFvalue_if_cond_false):

    • 如果条件 WITH_BLUESTORE;HAVE_LIBAIOFALSE,则 WITH_LIBURING 的默认值为 OFF 并且被禁用。

 

posted @ 2022-02-24 20:51  苏格拉底的落泪  阅读(21)  评论(0编辑  收藏  举报