Sha256: c20950dae8a00819bb8090df6c48ce5dbfc5c18584d3ce29c5f534d2be3f68c0

Contents?: true

Size: 1.46 KB

Versions: 10

Compression:

Stored size: 1.46 KB

Contents

find_package(Doxygen)
find_program(DOT dot)
if(DOXYGEN_FOUND AND DOT)
  message(STATUS "Using doxygen: ${DOXYGEN_VERSION} (with ${DOT})")
  find_package(Java COMPONENTS Runtime)
  if(Java_Runtime_FOUND)
    include(UseJava)
    find_jar(PLANTUML_JAR_PATH NAMES plantuml)
    message(STATUS "Found plantuml: ${PLANTUML_JAR_PATH}")
  endif()
  file(
    GLOB_RECURSE
    COUCHBASE_CXX_CLIENT_PUBLIC_HEADERS
    ${PROJECT_SOURCE_DIR}/couchbase/**/*.hxx
    ${PROJECT_SOURCE_DIR}/docs/*.hxx
    ${PROJECT_SOURCE_DIR}/docs/*.md)

  set(DOXYGEN_INPUT_DIR ${PROJECT_SOURCE_DIR}/couchbase)
  set(DOXYGEN_OUTPUT_DIR ${PROJECT_BINARY_DIR}/couchbase-cxx-client-${COUCHBASE_CXX_CLIENT_SEMVER})
  set(DOXYGEN_INDEX_FILE ${DOXYGEN_OUTPUT_DIR}/html/index.html)
  set(DOXYGEN_CONFIG_TEMPLATE ${PROJECT_SOURCE_DIR}/docs/Doxyfile.in)
  set(DOXYGEN_CONFIG ${PROJECT_BINARY_DIR}/Doxyfile)
  configure_file(${DOXYGEN_CONFIG_TEMPLATE} ${DOXYGEN_CONFIG})
  add_custom_command(
    OUTPUT ${DOXYGEN_INDEX_FILE}
    DEPENDS ${COUCHBASE_CXX_CLIENT_PUBLIC_HEADERS}
    COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_CONFIG}
    WORKING_DIRECTORY ${DOXYGEN_OUTPUT_DIR}
    MAIN_DEPENDENCY ${DOXYGEN_CONFIG}
    ${DOXYGEN_CONFIG_TEMPLATE}
    COMMENT "Generating documentation with Doxygen: ${DOXYGEN_INDEX_FILE}")
  add_custom_target(doxygen DEPENDS ${DOXYGEN_INDEX_FILE} ${COUCHBASE_CXX_CLIENT_PUBLIC_HEADERS})
else()
  message(STATUS "Could not find doxygen executable. Documentation generation will be disabled.")
endif()

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
couchbase-3.5.6 ext/couchbase/cmake/Documentation.cmake
couchbase-3.5.5 ext/couchbase/cmake/Documentation.cmake
couchbase-3.5.4 ext/couchbase/cmake/Documentation.cmake
couchbase-3.5.3 ext/couchbase/cmake/Documentation.cmake
couchbase-3.5.2 ext/couchbase/cmake/Documentation.cmake
couchbase-3.5.1 ext/couchbase/cmake/Documentation.cmake
couchbase-3.5.0 ext/couchbase/cmake/Documentation.cmake
couchbase-3.4.5 ext/couchbase/cmake/Documentation.cmake
couchbase-3.4.4 ext/couchbase/cmake/Documentation.cmake
couchbase-3.4.3 ext/couchbase/cmake/Documentation.cmake