Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/website-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ jobs:
-DBLAZE_TEST:BOOL=OFF
-DBLAZE_CONFIGURATION:BOOL=OFF
-DBLAZE_ALTERSCHEMA:BOOL=OFF
-DBLAZE_DOCUMENTATION:BOOL=OFF
-DBLAZE_TESTS:BOOL=OFF
-DBLAZE_DOCS:BOOL=ON
- run: cmake --build ./build --config Release --target doxygen
1 change: 1 addition & 0 deletions .github/workflows/website-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ jobs:
-DBLAZE_TEST:BOOL=OFF
-DBLAZE_CONFIGURATION:BOOL=OFF
-DBLAZE_ALTERSCHEMA:BOOL=OFF
-DBLAZE_DOCUMENTATION:BOOL=OFF
-DBLAZE_TESTS:BOOL=OFF
-DBLAZE_DOCS:BOOL=ON
- run: cmake --build ./build --config Release --target doxygen
Expand Down
9 changes: 9 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ option(BLAZE_OUTPUT "Build the Blaze output formats library" ON)
option(BLAZE_TEST "Build the Blaze test runner library" ON)
option(BLAZE_CONFIGURATION "Build the Blaze configuration file library" ON)
option(BLAZE_ALTERSCHEMA "Build the Blaze alterschema rule library" ON)
option(BLAZE_DOCUMENTATION "Build the Blaze documentation generator library" ON)
option(BLAZE_TESTS "Build the Blaze tests" OFF)
option(BLAZE_BENCHMARK "Build the Blaze benchmarks" OFF)
option(BLAZE_CONTRIB "Build the Blaze contrib programs" OFF)
Expand Down Expand Up @@ -67,6 +68,10 @@ if(BLAZE_ALTERSCHEMA)
add_subdirectory(src/alterschema)
endif()

if(BLAZE_DOCUMENTATION)
add_subdirectory(src/documentation)
endif()

if(BLAZE_CONTRIB)
add_subdirectory(contrib)
endif()
Expand Down Expand Up @@ -134,6 +139,10 @@ if(BLAZE_TESTS)
add_subdirectory(test/alterschema)
endif()

if(BLAZE_DOCUMENTATION)
add_subdirectory(test/documentation)
endif()

if(PROJECT_IS_TOP_LEVEL)
# Otherwise we need the child project to link
# against the sanitizers too.
Expand Down
3 changes: 3 additions & 0 deletions config.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ if(NOT BLAZE_COMPONENTS)
list(APPEND BLAZE_COMPONENTS test)
list(APPEND BLAZE_COMPONENTS configuration)
list(APPEND BLAZE_COMPONENTS alterschema)
list(APPEND BLAZE_COMPONENTS documentation)
endif()

include(CMakeFindDependencyMacro)
Expand All @@ -35,6 +36,8 @@ foreach(component ${BLAZE_COMPONENTS})
include("${CMAKE_CURRENT_LIST_DIR}/sourcemeta_blaze_compiler.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/sourcemeta_blaze_output.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/sourcemeta_blaze_alterschema.cmake")
elseif(component STREQUAL "documentation")
include("${CMAKE_CURRENT_LIST_DIR}/sourcemeta_blaze_documentation.cmake")
else()
message(FATAL_ERROR "Unknown Blaze component: ${component}")
endif()
Expand Down
1 change: 1 addition & 0 deletions doxygen/index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ CMake
| `BLAZE_EVALUATOR` | Boolean | `ON` | Build the Blaze evaluator library |
| `BLAZE_TEST` | Boolean | `ON` | Build the Blaze test runner library |
| `BLAZE_ALTERSCHEMA` | Boolean | `ON` | Build the Blaze alterschema rule library|
| `BLAZE_DOCUMENTATION` | Boolean | `ON` | Build the Blaze documentation library |
| `BLAZE_TESTS` | Boolean | `OFF` | Build the Blaze tests |
| `BLAZE_BENCHMARK` | Boolean | `OFF` | Build the Blaze benchmarks |
| `BLAZE_CONTRIB` | Boolean | `OFF` | Build the Blaze contrib programs |
Expand Down
15 changes: 15 additions & 0 deletions src/documentation/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
sourcemeta_library(NAMESPACE sourcemeta PROJECT blaze NAME documentation
FOLDER "Blaze/Documentation"
PRIVATE_HEADERS error.h
SOURCES documentation.cc)

if(BLAZE_INSTALL)
sourcemeta_library_install(NAMESPACE sourcemeta PROJECT blaze NAME documentation)
endif()

target_link_libraries(sourcemeta_blaze_documentation PUBLIC
sourcemeta::core::json)
target_link_libraries(sourcemeta_blaze_documentation PUBLIC
sourcemeta::core::jsonschema)
target_link_libraries(sourcemeta_blaze_documentation PRIVATE
sourcemeta::blaze::alterschema)
Loading
Loading