@@ -24,6 +24,7 @@ OPTION (MSGPACK_CXX20 "Using c++20 compiler" OFF)
2424OPTION (MSGPACK_32BIT "32bit compile" OFF )
2525OPTION (MSGPACK_USE_X3_PARSE "Use Boost X3 parse" OFF )
2626OPTION (MSGPACK_BUILD_TESTS "Build tests" OFF )
27+ OPTION (MSGPACK_BUILD_DOCS "Build Doxygen documentation" ON )
2728OPTION (MSGPACK_FUZZ_REGRESSION "Enable regression testing" OFF )
2829OPTION (MSGPACK_BUILD_EXAMPLES "Build msgpack examples" OFF )
2930OPTION (MSGPACK_GEN_COVERAGE "Generate coverage report" OFF )
@@ -153,28 +154,30 @@ IF (MSGPACK_BUILD_EXAMPLES)
153154ENDIF ()
154155
155156# Doxygen
156- FIND_PACKAGE (Doxygen)
157- IF (DOXYGEN_FOUND)
158- LIST (APPEND Doxyfile_cpp_CONTENT
159- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR} /Doxyfile ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
160- COMMAND ${CMAKE_COMMAND} -E echo "FILE_PATTERNS = *.hpp" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
161- COMMAND ${CMAKE_COMMAND} -E echo "OUTPUT_DIRECTORY = doc_cpp" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
162- COMMAND ${CMAKE_COMMAND} -E echo "INPUT = ${CMAKE_CURRENT_SOURCE_DIR} /include" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
163- COMMAND ${CMAKE_COMMAND} -E echo "EXTRACT_ALL = YES" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
164- COMMAND ${CMAKE_COMMAND} -E echo "STRIP_FROM_PATH = ${CMAKE_CURRENT_SOURCE_DIR} /include" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
165- )
166- IF (DOXYGEN_DOT_FOUND)
157+ IF (MSGPACK_BUILD_DOCS)
158+ FIND_PACKAGE (Doxygen)
159+ IF (DOXYGEN_FOUND)
167160 LIST (APPEND Doxyfile_cpp_CONTENT
168- COMMAND ${CMAKE_COMMAND} -E echo "HAVE_DOT = YES" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
161+ COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR} /Doxyfile ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
162+ COMMAND ${CMAKE_COMMAND} -E echo "FILE_PATTERNS = *.hpp" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
163+ COMMAND ${CMAKE_COMMAND} -E echo "OUTPUT_DIRECTORY = doc_cpp" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
164+ COMMAND ${CMAKE_COMMAND} -E echo "INPUT = ${CMAKE_CURRENT_SOURCE_DIR} /include" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
165+ COMMAND ${CMAKE_COMMAND} -E echo "EXTRACT_ALL = YES" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
166+ COMMAND ${CMAKE_COMMAND} -E echo "STRIP_FROM_PATH = ${CMAKE_CURRENT_SOURCE_DIR} /include" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
167+ )
168+ IF (DOXYGEN_DOT_FOUND)
169+ LIST (APPEND Doxyfile_cpp_CONTENT
170+ COMMAND ${CMAKE_COMMAND} -E echo "HAVE_DOT = YES" >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
171+ )
172+ ENDIF ()
173+ ADD_CUSTOM_TARGET (
174+ doxygen
175+ ${Doxyfile_cpp_CONTENT}
176+ COMMAND ${CMAKE_COMMAND} -E echo "PROJECT_NAME = \" MessagePack for C++\" " >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
177+ COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
178+ VERBATIM
169179 )
170180 ENDIF ()
171- ADD_CUSTOM_TARGET (
172- doxygen
173- ${Doxyfile_cpp_CONTENT}
174- COMMAND ${CMAKE_COMMAND} -E echo "PROJECT_NAME = \" MessagePack for C++\" " >> ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
175- COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR} /Doxyfile_cpp
176- VERBATIM
177- )
178181ENDIF ()
179182
180183# Install library.
0 commit comments