1
0
Fork 0
mirror of https://github.com/TheLartians/ModernCppStarter.git synced 2025-08-30 13:41:13 +02:00

Doxygen support (#43)

* init doxygen

* fix format

* use readme as main file

* don't generate LaTeX

* automatically use correct project version and update html settings

* minify Doxyfile

* add documentation

* add workflow to publish documentation

* remove mac comment

* formatting

* fix typo

* grammar
This commit is contained in:
Lars Melchior 2020-06-03 14:31:53 +02:00 committed by GitHub
parent fa77b5371f
commit 032e506c12
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 144 additions and 13 deletions

View file

@ -0,0 +1,36 @@
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
project(GreeterDocs)
# ---- Dependencies ----
include(../cmake/CPM.cmake)
CPMAddPackage(
NAME Greeter
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/..
)
CPMAddPackage(
NAME StableCoder-cmake-scripts
GITHUB_REPOSITORY StableCoder/cmake-scripts
GIT_TAG 3d2d5a9fb26f0ce24e3e4eaeeff686ec2ecfb3fb
)
# ---- Doxygen ----
set(BUILD_DOCUMENTATION ON CACHE INTERNAL "")
include(${StableCoder-cmake-scripts_SOURCE_DIR}/doxygen.cmake)
# set Doxyfile variables
set(DOXYGEN_PROJECT_NAME Greeter)
set(DOXYGEN_PROJECT_VERSION ${Greeter_VERSION})
set(DOXYGEN_PROJECT_ROOT "${CMAKE_CURRENT_LIST_DIR}/..")
# see https://github.com/StableCoder/cmake-scripts#doxygen-doxygencmake for additional options
build_docs(
TARGET_NAME GenerateDocs
DOXYFILE_PATH ${CMAKE_CURRENT_LIST_DIR}/Doxyfile
OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/doxygen
PROCESS_DOXYFILE ON
)

25
documentation/Doxyfile Normal file
View file

@ -0,0 +1,25 @@
# Configuration for Doxygen for use with CMake
# Only options that deviate from the default are included
# To create a new Doxyfile containing all available options, call `doxygen -g`
# Get Project name and version from CMake
PROJECT_NAME = @DOXYGEN_PROJECT_NAME@
PROJECT_NUMBER = @DOXYGEN_PROJECT_VERSION@
# Add sources
INPUT = @DOXYGEN_PROJECT_ROOT@/README.md @DOXYGEN_PROJECT_ROOT@/include @DOXYGEN_PROJECT_ROOT@/source
EXTRACT_ALL = YES
RECURSIVE = YES
# We don't want local paths in the documentation
FULL_PATH_NAMES = NO
# Use the README as a main page
USE_MDFILE_AS_MAINPAGE = @DOXYGEN_PROJECT_ROOT@/README.md
# Create nicer looking HTML
HTML_DYNAMIC_SECTIONS = YES
GENERATE_TREEVIEW = YES
# We don't need LaTeX generation
GENERATE_LATEX = NO