xo-umbrella2/pkgs/xo-indentlog2.nix
Roland Conybeare 8b48faa075
Some checks failed
cmake-docker / cmake-build (push) Has been cancelled
CI / smoke-test (push) Has been cancelled
nix build: xo-indentlog2 xo-timeutil honor doCheck [NIX]
2026-07-26 13:05:58 -04:00

67 lines
1.8 KiB
Nix

{
# dependencies
lib, stdenv, cmake, catch2, cli11,
python3Packages,
doxygen, sphinx, graphviz, fontconfig,
# xo dependencies
xo-arena,
xo-ppsink,
xo-randomgen,
xo-testutil,
xo-cmake,
buildDocs ? false,
buildExamples ? false,
doCheck ? true,
} :
stdenv.mkDerivation (finalattrs:
{
name = "xo-indentlog2";
version = "1.0";
src = ../xo-indentlog2;
cmakeFlags = ["-DCMAKE_MODULE_PATH=${xo-cmake}/share/cmake"]
++ lib.optionals buildDocs ["-DXO_ENABLE_DOCS=on"]
++ lib.optionals buildExamples ["-DXO_ENABLE_EXAMPLES=on"]
++ lib.optionals doCheck ["-DENABLE_TESTING=1"];
inherit buildDocs;
inherit buildExamples;
inherit doCheck;
preBuild = lib.optionalString buildDocs ''
#echo "FONTCONFIG_FILE=$FONTCONFIG_FILE"
export FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf
#echo "FONTCONFIG_FILE=$FONTCONFIG_FILE"
'';
postBuild = lib.optionalString buildDocs ''
cmake --build . -- docs
'';
nativeBuildInputs = [ cmake
catch2
xo-cmake ]
++ lib.optionals doCheck [
xo-testutil
xo-randomgen
cli11
]
++ lib.optionals buildDocs [
doxygen
sphinx
graphviz
fontconfig
python3Packages.sphinx-rtd-theme
python3Packages.breathe
python3Packages.sphinxcontrib-ditaa
python3Packages.sphinxcontrib-plantuml
];
propagatedBuildInputs = [ xo-arena xo-ppsink ];
})