Compare commits
10 commits
ab5c08abed
...
12cf5de1a8
Author | SHA1 | Date | |
---|---|---|---|
|
12cf5de1a8 | ||
|
5115efe66a | ||
|
cc12978931 | ||
|
e6920f7c12 | ||
|
74fd5a2ff8 | ||
|
9f4867aa5e | ||
|
57d0b4dfc8 | ||
|
776d4f36be | ||
|
f0b5bdb1f5 | ||
|
84ed75ca7d |
5 changed files with 42 additions and 23 deletions
18
.github/workflows/documentation.yaml
vendored
18
.github/workflows/documentation.yaml
vendored
|
@ -8,10 +8,14 @@ on:
|
||||||
env:
|
env:
|
||||||
CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules
|
CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
name: Build and publish documentation
|
name: Build and publish documentation
|
||||||
runs-on: macos-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
@ -20,18 +24,22 @@ jobs:
|
||||||
path: "**/cpm_modules"
|
path: "**/cpm_modules"
|
||||||
key: ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
|
key: ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install python dependencies
|
||||||
run: |
|
run: |
|
||||||
brew install doxygen
|
pip3 install jinja2==3.1.6 Pygments==2.19.1
|
||||||
pip3 install jinja2 Pygments
|
|
||||||
|
|
||||||
|
- name: Install Doxygen
|
||||||
|
uses: ssciwr/doxygen-install@v1
|
||||||
|
with:
|
||||||
|
version: "1.13.2"
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: |
|
run: |
|
||||||
cmake -Sdocumentation -Bbuild
|
cmake -Sdocumentation -Bbuild
|
||||||
cmake --build build --target GenerateDocs
|
cmake --build build --target GenerateDocs
|
||||||
|
|
||||||
- name: Publish
|
- name: Publish
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
uses: peaceiris/actions-gh-pages@v4
|
||||||
with:
|
with:
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
publish_dir: ./build/doxygen/html
|
publish_dir: ./build/doxygen/html
|
||||||
|
|
|
@ -28,7 +28,7 @@ CPMAddPackage("gh:TheLartians/PackageProject.cmake@1.8.0")
|
||||||
|
|
||||||
CPMAddPackage(
|
CPMAddPackage(
|
||||||
NAME fmt
|
NAME fmt
|
||||||
GIT_TAG 9.1.0
|
GIT_TAG 10.2.1
|
||||||
GITHUB_REPOSITORY fmtlib/fmt
|
GITHUB_REPOSITORY fmtlib/fmt
|
||||||
OPTIONS "FMT_INSTALL YES" # create an installable target
|
OPTIONS "FMT_INSTALL YES" # create an installable target
|
||||||
)
|
)
|
||||||
|
@ -74,5 +74,5 @@ packageProject(
|
||||||
INCLUDE_DESTINATION include/${PROJECT_NAME}-${PROJECT_VERSION}
|
INCLUDE_DESTINATION include/${PROJECT_NAME}-${PROJECT_VERSION}
|
||||||
VERSION_HEADER "${VERSION_HEADER_LOCATION}"
|
VERSION_HEADER "${VERSION_HEADER_LOCATION}"
|
||||||
COMPATIBILITY SameMajorVersion
|
COMPATIBILITY SameMajorVersion
|
||||||
DEPENDENCIES "fmt 8.1.1"
|
DEPENDENCIES "fmt 10.2.1"
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
set(CPM_DOWNLOAD_VERSION 0.35.0)
|
# SPDX-License-Identifier: MIT
|
||||||
|
#
|
||||||
|
# SPDX-FileCopyrightText: Copyright (c) 2019-2023 Lars Melchior and contributors
|
||||||
|
|
||||||
|
set(CPM_DOWNLOAD_VERSION 0.40.2)
|
||||||
|
set(CPM_HASH_SUM "c8cdc32c03816538ce22781ed72964dc864b2a34a310d3b7104812a5ca2d835d")
|
||||||
|
|
||||||
if(CPM_SOURCE_CACHE)
|
if(CPM_SOURCE_CACHE)
|
||||||
# Expand relative path. This is important if the provided path contains a tilde (~)
|
|
||||||
get_filename_component(CPM_SOURCE_CACHE ${CPM_SOURCE_CACHE} ABSOLUTE)
|
|
||||||
set(CPM_DOWNLOAD_LOCATION "${CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
|
set(CPM_DOWNLOAD_LOCATION "${CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
|
||||||
elseif(DEFINED ENV{CPM_SOURCE_CACHE})
|
elseif(DEFINED ENV{CPM_SOURCE_CACHE})
|
||||||
set(CPM_DOWNLOAD_LOCATION "$ENV{CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
|
set(CPM_DOWNLOAD_LOCATION "$ENV{CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
|
||||||
|
@ -10,12 +13,12 @@ else()
|
||||||
set(CPM_DOWNLOAD_LOCATION "${CMAKE_BINARY_DIR}/cmake/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
|
set(CPM_DOWNLOAD_LOCATION "${CMAKE_BINARY_DIR}/cmake/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT (EXISTS ${CPM_DOWNLOAD_LOCATION}))
|
# Expand relative path. This is important if the provided path contains a tilde (~)
|
||||||
message(STATUS "Downloading CPM.cmake to ${CPM_DOWNLOAD_LOCATION}")
|
get_filename_component(CPM_DOWNLOAD_LOCATION ${CPM_DOWNLOAD_LOCATION} ABSOLUTE)
|
||||||
file(DOWNLOAD
|
|
||||||
https://github.com/cpm-cmake/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake
|
file(DOWNLOAD
|
||||||
${CPM_DOWNLOAD_LOCATION}
|
https://github.com/cpm-cmake/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake
|
||||||
)
|
${CPM_DOWNLOAD_LOCATION} EXPECTED_HASH SHA256=${CPM_HASH_SUM}
|
||||||
endif()
|
)
|
||||||
|
|
||||||
include(${CPM_DOWNLOAD_LOCATION})
|
include(${CPM_DOWNLOAD_LOCATION})
|
||||||
|
|
|
@ -11,7 +11,7 @@ include(${CMAKE_CURRENT_LIST_DIR}/CPM.cmake)
|
||||||
# enables sanitizers support using the the `USE_SANITIZER` flag available values are: Address,
|
# enables sanitizers support using the the `USE_SANITIZER` flag available values are: Address,
|
||||||
# Memory, MemoryWithOrigins, Undefined, Thread, Leak, 'Address;Undefined'
|
# Memory, MemoryWithOrigins, Undefined, Thread, Leak, 'Address;Undefined'
|
||||||
if(USE_SANITIZER OR USE_STATIC_ANALYZER)
|
if(USE_SANITIZER OR USE_STATIC_ANALYZER)
|
||||||
CPMAddPackage("gh:StableCoder/cmake-scripts#1f822d1fc87c8d7720c074cde8a278b44963c354")
|
CPMAddPackage("gh:StableCoder/cmake-scripts#24.04")
|
||||||
|
|
||||||
if(USE_SANITIZER)
|
if(USE_SANITIZER)
|
||||||
include(${cmake-scripts_SOURCE_DIR}/sanitizers.cmake)
|
include(${cmake-scripts_SOURCE_DIR}/sanitizers.cmake)
|
||||||
|
@ -54,13 +54,21 @@ if(USE_SANITIZER OR USE_STATIC_ANALYZER)
|
||||||
|
|
||||||
include(${cmake-scripts_SOURCE_DIR}/tools.cmake)
|
include(${cmake-scripts_SOURCE_DIR}/tools.cmake)
|
||||||
|
|
||||||
clang_tidy(${CLANG_TIDY_ARGS})
|
if(${CLANG_TIDY})
|
||||||
include_what_you_use(${IWYU_ARGS})
|
clang_tidy(${CLANG_TIDY_ARGS})
|
||||||
cppcheck(${CPPCHECK_ARGS})
|
endif()
|
||||||
|
|
||||||
|
if(${IWYU})
|
||||||
|
include_what_you_use(${IWYU_ARGS})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(${CPPCHECK})
|
||||||
|
cppcheck(${CPPCHECK_ARGS})
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# enables CCACHE support through the USE_CCACHE flag possible values are: YES, NO or equivalent
|
# enables CCACHE support through the USE_CCACHE flag possible values are: YES, NO or equivalent
|
||||||
if(USE_CCACHE)
|
if(USE_CCACHE)
|
||||||
CPMAddPackage("gh:TheLartians/Ccache.cmake@1.2.3")
|
CPMAddPackage("gh:TheLartians/Ccache.cmake@1.2.4")
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/** @page about About
|
/** @page about About
|
||||||
@section doc ModernCppStarter Documentation
|
@section doc ModernCppStarter Documentation
|
||||||
This is the auto-generated documentation for the initial project of the ModernCppStater.
|
This is the auto-generated documentation for the initial project of the ModernCppStarter.
|
||||||
It shows how we can use Doxygen to automatically build a browsable documentation for your projects.
|
It shows how we can use Doxygen to automatically build a browsable documentation for your projects.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue