xo-gc: docs build [WIP] + misc fixes + works w/ nix
This commit is contained in:
parent
115782abf6
commit
d8d8781068
11 changed files with 117 additions and 11 deletions
|
|
@ -95,19 +95,19 @@ add_subdirectory(xo-ratio)
|
|||
add_subdirectory(xo-unit)
|
||||
add_subdirectory(xo-pyunit)
|
||||
add_subdirectory(xo-callback)
|
||||
add_subdirectory(xo-printable2) # experiment w/ facet object model
|
||||
add_subdirectory(xo-printable2) # experiment w/ facet object model
|
||||
add_subdirectory(xo-alloc)
|
||||
add_subdirectory(xo-alloc2) # experiment w/ facet object model
|
||||
add_subdirectory(xo-gc)
|
||||
add_subdirectory(xo-alloc2) # experiment w/ facet object model
|
||||
add_subdirectory(xo-gc) # experiment w/ facet object model
|
||||
add_subdirectory(xo-object)
|
||||
add_subdirectory(xo-object2) # experiment w/ facet object model
|
||||
add_subdirectory(xo-procedure2) # schematika procedure abstraction + runtime context (fomo)
|
||||
add_subdirectory(xo-object2) # experiment w/ facet object model
|
||||
add_subdirectory(xo-procedure2) # schematika procedure abstraction + runtime context (fomo)
|
||||
add_subdirectory(xo-ordinaltree)
|
||||
#
|
||||
add_subdirectory(xo-tokenizer2) # schematika tokenizer (fomo)
|
||||
add_subdirectory(xo-tokenizer2) # schematika tokenizer (fomo)
|
||||
add_subdirectory(xo-expression2) # schematika expressions (fomo)
|
||||
add_subdirectory(xo-reader2) # schematika expression parser (fomo)
|
||||
add_subdirectory(xo-interpreter2) # schematika interpreter (fomo)
|
||||
add_subdirectory(xo-reader2) # schematika expression parser (fomo)
|
||||
add_subdirectory(xo-interpreter2) # schematika interpreter (fomo)
|
||||
#
|
||||
add_subdirectory(xo-webutil)
|
||||
add_subdirectory(xo-pywebutil)
|
||||
|
|
|
|||
|
|
@ -141,8 +141,9 @@ let
|
|||
xo-arena = self.callPackage pkgs/xo-arena.nix { buildDocs = true; };
|
||||
xo-facet = self.callPackage pkgs/xo-facet.nix {};
|
||||
xo-allocutil = self.callPackage pkgs/xo-allocutil.nix {};
|
||||
xo-alloc = self.callPackage pkgs/xo-alloc.nix {}; # buildDocs = true;
|
||||
xo-alloc = self.callPackage pkgs/xo-alloc.nix { buildDocs = true; };
|
||||
xo-alloc2 = self.callPackage pkgs/xo-alloc2.nix { buildDocs = true; };
|
||||
xo-gc = self.callPackage pkgs/xo-gc.nix { buildDocs = true; };
|
||||
xo-refcnt = self.callPackage pkgs/xo-refcnt.nix {};
|
||||
xo-ordinaltree = self.callPackage pkgs/xo-ordinaltree.nix {};
|
||||
xo-flatstring = self.callPackage pkgs/xo-flatstring.nix { buildDocs = true; buildExamples = true; };
|
||||
|
|
@ -491,6 +492,7 @@ in
|
|||
allocutil = pkgs.xo-allocutil;
|
||||
alloc = pkgs.xo-alloc;
|
||||
alloc2 = pkgs.xo-alloc2;
|
||||
gc = pkgs.xo-gc;
|
||||
ordinaltree = pkgs.xo-ordinaltree;
|
||||
flatstring = pkgs.xo-flatstring;
|
||||
pyutil = pkgs.xo-pyutil;
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ Some features: kalman filters, stochastic processes, complex event processing, s
|
|||
xo-flatstring/docs/index
|
||||
xo-ratio/docs/index
|
||||
xo-unit/docs/index
|
||||
xo-gc/docs/index
|
||||
xo-tokenizer/docs/index
|
||||
xo-reader/docs/index
|
||||
xo-jit/docs/index
|
||||
|
|
|
|||
61
pkgs/xo-gc.nix
Normal file
61
pkgs/xo-gc.nix
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
{
|
||||
# nixpkgs dependencies
|
||||
lib, stdenv, cmake, catch2,
|
||||
doxygen,
|
||||
|
||||
python3Packages,
|
||||
|
||||
sphinx, graphviz,
|
||||
|
||||
# xo dependencies
|
||||
xo-alloc2,
|
||||
xo-facet,
|
||||
xo-randomgen,
|
||||
xo-subsys,
|
||||
# xo-reflectutil,
|
||||
# xo-indentlog,
|
||||
xo-cmake,
|
||||
|
||||
buildDocs ? false,
|
||||
doCheck ? true,
|
||||
} :
|
||||
|
||||
stdenv.mkDerivation (finalattrs:
|
||||
{
|
||||
name = "xo-gc";
|
||||
|
||||
src = ../xo-gc;
|
||||
|
||||
cmakeFlags = ["-DCMAKE_MODULE_PATH=${xo-cmake}/share/cmake"]
|
||||
++ lib.optionals buildDocs ["-DXO_ENABLE_DOCS=on"]
|
||||
++ lib.optionals doCheck ["-DENABLE_TESTING=1"];
|
||||
|
||||
inherit buildDocs;
|
||||
inherit doCheck;
|
||||
|
||||
postBuild = lib.optionalString buildDocs ''
|
||||
cmake --build . -- docs
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake catch2
|
||||
xo-cmake
|
||||
xo-randomgen
|
||||
] ++ lib.optionals buildDocs [
|
||||
doxygen
|
||||
sphinx
|
||||
graphviz
|
||||
python3Packages.sphinx-rtd-theme
|
||||
python3Packages.breathe
|
||||
python3Packages.sphinxcontrib-ditaa
|
||||
python3Packages.sphinxcontrib-plantuml
|
||||
python3Packages.pillow
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
xo-alloc2
|
||||
xo-facet
|
||||
xo-subsys
|
||||
# xo-reflectutil
|
||||
# xo-indentlog
|
||||
];
|
||||
})
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
include(CMakeFindDependencyMacro)
|
||||
#find_dependency(indentlog)
|
||||
find_depnedency(xo_arena)
|
||||
find_dependency(xo_arena)
|
||||
find_dependency(xo_facet)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake")
|
||||
check_required_components("@PROJECT_NAME@")
|
||||
|
|
|
|||
|
|
@ -41,6 +41,6 @@ xo_export_cmake_config(${PROJECT_NAME} ${PROJECT_VERSION} ${PROJECT_NAME}Targets
|
|||
# docs targets depend on other library/utest/exec targets above,
|
||||
# --> must come after them.
|
||||
#
|
||||
#add_subdirectory(docs)
|
||||
add_subdirectory(docs)
|
||||
|
||||
# end CMakeLists.txt
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
include(CMakeFindDependencyMacro)
|
||||
find_dependency(xo_alloc2)
|
||||
find_dependency(xo_facet)
|
||||
find_dependency(subsys)
|
||||
find_dependency(indentlog)
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake")
|
||||
|
|
|
|||
1
xo-gc/docs/_static/README
vendored
Normal file
1
xo-gc/docs/_static/README
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
add any static {.html, .js, ..} files for sphinx to pickup here
|
||||
BIN
xo-gc/docs/_static/img/favicon.ico
vendored
Normal file
BIN
xo-gc/docs/_static/img/favicon.ico
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 303 KiB |
39
xo-gc/docs/conf.py
Normal file
39
xo-gc/docs/conf.py
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
# Configuration file for the Sphinx documentation builder.
|
||||
#
|
||||
# For the full list of built-in configuration values, see the documentation:
|
||||
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
||||
|
||||
# -- Project information -----------------------------------------------------
|
||||
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
|
||||
|
||||
project = 'xo gc documentation'
|
||||
copyright = '2026, Roland Conybeare'
|
||||
author = 'Roland Conybeare'
|
||||
|
||||
# -- General configuration ---------------------------------------------------
|
||||
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
||||
|
||||
#extensions = []
|
||||
extensions = [ "breathe",
|
||||
"sphinx.ext.mathjax", # inline math
|
||||
"sphinx.ext.autodoc", # generate info from docstrings
|
||||
"sphinxcontrib.ditaa", # diagrams-through-ascii-art
|
||||
"sphinxcontrib.plantuml" # text -> uml diagrams
|
||||
]
|
||||
|
||||
# note: breathe requires doxygen xml output -> must have GENERATE_XML = YES in Doxyfile.in
|
||||
# match project name in Doxyfile.in
|
||||
breathe_default_project = "xodoxxml"
|
||||
|
||||
templates_path = ['_templates']
|
||||
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
|
||||
|
||||
pygments_style = 'sphinx'
|
||||
|
||||
# -- Options for HTML output -------------------------------------------------
|
||||
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
|
||||
|
||||
#html_theme = 'alabaster'
|
||||
html_theme = 'sphinx_rtd_theme'
|
||||
html_static_path = ['_static']
|
||||
html_favicon = '_static/img/favicon.ico'
|
||||
|
|
@ -21,4 +21,5 @@ xo_add_shared_library4(${SELF_LIB} ${PROJECT_NAME}Targets ${PROJECT_VERSION} 1 $
|
|||
# note: deps here must also appear in cmake/xo_alloc2Config.cmake.in
|
||||
xo_dependency(${SELF_LIB} xo_alloc2)
|
||||
xo_dependency(${SELF_LIB} xo_facet)
|
||||
xo_dependency(${SELF_LIB} subsys)
|
||||
xo_dependency(${SELF_LIB} indentlog)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue