mirror of
https://github.com/Kitware/CMake.git
synced 2025-12-30 18:29:37 -06:00
FindDoxygen: Create DOXYGEN_OUTPUT_DIRECTORY if it doesn't exist
If the doxygen output directory does not exist, create it prior to running the doxygen commands.
This commit is contained in:
@@ -179,7 +179,8 @@ Functions
|
||||
will be converted to an absolute path relative to the current binary
|
||||
directory. This is necessary because doxygen will normally be run from a
|
||||
directory within the source tree so that relative source paths work as
|
||||
expected.
|
||||
expected. If this directory does not exist, it will be recursively created
|
||||
prior to executing the doxygen commands.
|
||||
|
||||
To change any of these defaults or override any other Doxygen config option,
|
||||
set relevant variables before calling ``doxygen_add_docs()``. For example:
|
||||
@@ -1020,6 +1021,13 @@ doxygen_add_docs() for target ${targetName}")
|
||||
WARN_LOGFILE
|
||||
XML_OUTPUT
|
||||
)
|
||||
|
||||
# Store the unmodified value of DOXYGEN_OUTPUT_DIRECTORY prior to invoking
|
||||
# doxygen_quote_value() below. This will mutate the string specifically for
|
||||
# consumption by Doxygen's config file, which we do not want when we use it
|
||||
# later in the custom target's commands.
|
||||
set( _original_doxygen_output_dir ${DOXYGEN_OUTPUT_DIRECTORY} )
|
||||
|
||||
foreach(_item IN LISTS _doxygen_quoted_options)
|
||||
doxygen_quote_value(DOXYGEN_${_item})
|
||||
endforeach()
|
||||
@@ -1030,8 +1038,8 @@ doxygen_add_docs() for target ${targetName}")
|
||||
configure_file("${_doxyfile_template}" "${_target_doxyfile}")
|
||||
|
||||
# Add the target
|
||||
add_custom_target(
|
||||
${targetName}
|
||||
add_custom_target( ${targetName} VERBATIM
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${_original_doxygen_output_dir}
|
||||
COMMAND "${DOXYGEN_EXECUTABLE}" "${_target_doxyfile}"
|
||||
WORKING_DIRECTORY "${_args_WORKING_DIRECTORY}"
|
||||
DEPENDS "${_target_doxyfile}"
|
||||
|
||||
Reference in New Issue
Block a user