Loading CMakeLists.txt +26 −1 Original line number Diff line number Diff line project(libhtmlpp CXX) cmake_minimum_required(VERSION 3.0) cmake_minimum_required(VERSION 3.23) enable_testing () set(LIBV "1.0.0") set(Upstream_VERSION 1.0.0) find_package(Doxygen QUIET) if (DOXYGEN_FOUND) set(DOXYFILE_IN ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in) set(DOXYFILE_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) set(DOC_INSTALL_DIR "${CMAKE_INSTALL_DATAROOTDIR}/libhtmlpp/html") # Allow @LIBV@ substitution from your existing variable configure_file(${DOXYFILE_IN} ${DOXYFILE_OUT} @ONLY) add_custom_target(docs COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE_OUT} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating API documentation with Doxygen (sources: ${CMAKE_SOURCE_DIR}/src)" VERBATIM) install( DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/html/" DESTINATION "${DOC_INSTALL_DIR}" COMPONENT docs ) else() message(STATUS "Doxygen not found; 'docs' target will not be available.") endif() if(NOT ${CMAKE_CXX_COMPILER} MATCHES "MSVC") set(CMAKE_CXX_FLAGS "-fPIC -Wall") endif() Loading Doxyfile.in 0 → 100644 +59 −0 Original line number Diff line number Diff line # Doxygen configuration for libhtmlpp # This file is configured by CMake (configure_file) to produce a Doxyfile. PROJECT_NAME = "libhtmlpp" PROJECT_NUMBER = "@LIBV@" OUTPUT_DIRECTORY = "@CMAKE_BINARY_DIR@/docs" CREATE_SUBDIRS = NO # What to document INPUT = "@CMAKE_SOURCE_DIR@/src" "@CMAKE_SOURCE_DIR@" RECURSIVE = YES FILE_PATTERNS = *.h *.hpp *.hh *.hxx *.c *.cc *.cpp *.cxx # Extraction options EXTRACT_ALL = YES EXTRACT_PRIVATE = NO EXTRACT_STATIC = NO EXTRACT_LOCAL_CLASSES = YES EXTRACT_ANON_NSPACES = YES # Warnings WARNINGS = YES WARN_IF_UNDOCUMENTED = NO WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = YES WARN_LOGFILE = "@CMAKE_BINARY_DIR@/docs/doxygen-warnings.log" # Source browser SOURCE_BROWSER = YES INLINE_SOURCES = NO STRIP_CODE_COMMENTS = YES # HTML output GENERATE_HTML = YES HTML_OUTPUT = html SEARCHENGINE = YES # Disable LaTeX/PDF by default GENERATE_LATEX = NO # Diagrams (optional, requires Graphviz "dot") HAVE_DOT = YES DOT_IMAGE_FORMAT = svg DOT_TRANSPARENT = YES CALL_GRAPH = NO CALLER_GRAPH = NO CLASS_GRAPH = YES COLLABORATION_GRAPH = NO INCLUDE_GRAPH = YES INCLUDED_BY_GRAPH = YES # Misc TAB_SIZE = 4 JAVADOC_AUTOBRIEF = YES MULTILINE_CPP_IS_BRIEF = NO OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO Loading
CMakeLists.txt +26 −1 Original line number Diff line number Diff line project(libhtmlpp CXX) cmake_minimum_required(VERSION 3.0) cmake_minimum_required(VERSION 3.23) enable_testing () set(LIBV "1.0.0") set(Upstream_VERSION 1.0.0) find_package(Doxygen QUIET) if (DOXYGEN_FOUND) set(DOXYFILE_IN ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in) set(DOXYFILE_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) set(DOC_INSTALL_DIR "${CMAKE_INSTALL_DATAROOTDIR}/libhtmlpp/html") # Allow @LIBV@ substitution from your existing variable configure_file(${DOXYFILE_IN} ${DOXYFILE_OUT} @ONLY) add_custom_target(docs COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE_OUT} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating API documentation with Doxygen (sources: ${CMAKE_SOURCE_DIR}/src)" VERBATIM) install( DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/html/" DESTINATION "${DOC_INSTALL_DIR}" COMPONENT docs ) else() message(STATUS "Doxygen not found; 'docs' target will not be available.") endif() if(NOT ${CMAKE_CXX_COMPILER} MATCHES "MSVC") set(CMAKE_CXX_FLAGS "-fPIC -Wall") endif() Loading
Doxyfile.in 0 → 100644 +59 −0 Original line number Diff line number Diff line # Doxygen configuration for libhtmlpp # This file is configured by CMake (configure_file) to produce a Doxyfile. PROJECT_NAME = "libhtmlpp" PROJECT_NUMBER = "@LIBV@" OUTPUT_DIRECTORY = "@CMAKE_BINARY_DIR@/docs" CREATE_SUBDIRS = NO # What to document INPUT = "@CMAKE_SOURCE_DIR@/src" "@CMAKE_SOURCE_DIR@" RECURSIVE = YES FILE_PATTERNS = *.h *.hpp *.hh *.hxx *.c *.cc *.cpp *.cxx # Extraction options EXTRACT_ALL = YES EXTRACT_PRIVATE = NO EXTRACT_STATIC = NO EXTRACT_LOCAL_CLASSES = YES EXTRACT_ANON_NSPACES = YES # Warnings WARNINGS = YES WARN_IF_UNDOCUMENTED = NO WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = YES WARN_LOGFILE = "@CMAKE_BINARY_DIR@/docs/doxygen-warnings.log" # Source browser SOURCE_BROWSER = YES INLINE_SOURCES = NO STRIP_CODE_COMMENTS = YES # HTML output GENERATE_HTML = YES HTML_OUTPUT = html SEARCHENGINE = YES # Disable LaTeX/PDF by default GENERATE_LATEX = NO # Diagrams (optional, requires Graphviz "dot") HAVE_DOT = YES DOT_IMAGE_FORMAT = svg DOT_TRANSPARENT = YES CALL_GRAPH = NO CALLER_GRAPH = NO CLASS_GRAPH = YES COLLABORATION_GRAPH = NO INCLUDE_GRAPH = YES INCLUDED_BY_GRAPH = YES # Misc TAB_SIZE = 4 JAVADOC_AUTOBRIEF = YES MULTILINE_CPP_IS_BRIEF = NO OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO