我希望在用户在
cmake-gui
中选择了${DO_HTML}开关后,有条件地将目标docs_html
包含到ALL
中。如何做到不重复编写这个丑陋的代码?cmake_minimum_required(VERSION 3.3 FATAL_ERROR)
project(docs)
set(DO_HTML 1 CACHE BOOL "Whether generate documentation in static HTML")
if (${DO_HTML})
#This command doesn't work:
# add_dependencies(ALL docs_html)
add_custom_target(docs_html ALL #Code repeat 1
DEPENDS ${HTML_DIR}/index.html
)
else()
add_custom_target(docs_html #Code repeat 2
DEPENDS ${HTML_DIR}/index.html
)
endif()