xo-alloc/xo-unit/pkgs/xo-flatstring.nix
Roland Conybeare d1fa15f248 Add 'xo-unit/' from commit 'b531e382c2'
git-subtree-dir: xo-unit
git-subtree-mainline: e9ee6992ca
git-subtree-split: b531e382c2
2025-05-10 21:29:43 -05:00

75 lines
1.7 KiB
Nix

{
# 1. nixpkgs dependencies
# 1.1. python
python, pythonPackages,
# 1.2. particular python packages
sphinx ? pythonPackages.sphinx,
sphinx-rtd-theme ? pythonPackages.sphinx-rtd-theme,
breathe ? pythonPackages.breathe,
# 1.3. document-generation packages
# use of makeFontsConf adapted from nixpkgs/development/libraries/gtkmm/4.x.nix
#
doxygen, graphviz,
##fontconfig,
##makeFontsConf,
# 1.4. c++ build/utest chain
stdenv, cmake, catch2, # ... other deps here
# 2. xo dependencies
xo-cmake, xo-indentlog
# args
# attrset for fetching source code.
# { type, owner, repo, ref }
#
# e.g. type="github", owner="rconybea", repo="cmake-examples", ref="ex1b"
#
# see [[../flake.nix]]
#
#cmake-examples-ex1-path
# someconfigurationoption ? false
} :
stdenv.mkDerivation (finalattrs:
{
name = "xo-flatstring";
src = (fetchGit {
url = "https://github.com/rconybea/xo-flatstring";
version = "1.0";
#ref = "ex1";
#rev = "c0472c9d7e4d2c53bfb977d3182380832fe96645";
});
cmakeFlags = ["-DXO_CMAKE_CONFIG_EXECUTABLE=${xo-cmake}/bin/xo-cmake-config"];
# move HOME so fontconfig can do sensible things
buildPhase = ''
#set -x
echo "FONTCONFIG_FILE=$FONTCONFIG_FILE"
#export FONTCONFIG_FILE=$fontconfig.out/etc/fonts/fonts.conf
export HOME=$TMPDIR
export XDG_CONFIG_HOME=$TMPDIR
mkdir $XDG_CONFIG_HOME/fontconfig
#grep xdg $FONTCONFIG_FILE
#$fontconfig.out/bin/fc-cache -v
make && make docs
#make
'';
doCheck = true;
nativeBuildInputs = [ cmake catch2
doxygen graphviz sphinx sphinx-rtd-theme breathe ];
propagatedBuildInputs = [ xo-indentlog ];
})