diff options
author | Graham Christensen <graham@grahamc.com> | 2019-07-04 08:23:39 -0400 |
---|---|---|
committer | Graham Christensen <graham@grahamc.com> | 2019-07-04 09:07:47 -0400 |
commit | cd6bf8aa00962766e4db9f26e36848b6be8dd096 (patch) | |
tree | bdcca190ea7a29c855f8ac63735566dc1f775ade /doc/doc-support/lib-function-docs.nix | |
parent | ddfe184efcc2152b741bc0a8eee3dea12c4cb2f8 (diff) |
docs: use a single nix-build for all the generate function docs
Diffstat (limited to 'doc/doc-support/lib-function-docs.nix')
-rw-r--r-- | doc/doc-support/lib-function-docs.nix | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/doc/doc-support/lib-function-docs.nix b/doc/doc-support/lib-function-docs.nix new file mode 100644 index 0000000000000..5199b949e7b86 --- /dev/null +++ b/doc/doc-support/lib-function-docs.nix @@ -0,0 +1,26 @@ +# Generates the documentation for library functons via nixdoc. To add +# another library function file to this list, the include list in the +# file `doc/functions/library.xml` must also be updated. + +{ pkgs ? import ./.. {}, locationsXml }: + +with pkgs; stdenv.mkDerivation { + name = "nixpkgs-lib-docs"; + src = ./../../lib; + + buildInputs = [ nixdoc ]; + installPhase = '' + function docgen { + nixdoc -c "$1" -d "$2" -f "../lib/$1.nix" > "$out/$1.xml" + } + + mkdir -p $out + ln -s ${locationsXml} $out/locations.xml + + docgen strings 'String manipulation functions' + docgen trivial 'Miscellaneous functions' + docgen lists 'List manipulation functions' + docgen debug 'Debugging functions' + docgen options 'NixOS / nixpkgs option handling' + ''; +} |