aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorGraham Christensen <graham@grahamc.com>2019-07-04 08:23:39 -0400
committerGraham Christensen <graham@grahamc.com>2019-07-04 09:07:47 -0400
commitcd6bf8aa00962766e4db9f26e36848b6be8dd096 (patch)
treebdcca190ea7a29c855f8ac63735566dc1f775ade /doc
parentddfe184efcc2152b741bc0a8eee3dea12c4cb2f8 (diff)
docs: use a single nix-build for all the generate function docs
Diffstat (limited to 'doc')
-rw-r--r--doc/Makefile16
-rw-r--r--doc/default.nix6
-rw-r--r--doc/doc-support/default.nix14
-rw-r--r--doc/doc-support/lib-function-docs.nix (renamed from doc/lib-function-docs.nix)2
-rw-r--r--doc/doc-support/lib-function-locations.nix (renamed from doc/lib-function-locations.nix)0
5 files changed, 24 insertions, 14 deletions
diff --git a/doc/Makefile b/doc/Makefile
index 5badfe4138d..4cd493d5565 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -21,7 +21,7 @@ fix-misc-xml:
.PHONY: clean
clean:
- rm -f ${MD_TARGETS} .version manual-full.xml functions/library/locations.xml functions/library/generated
+ rm -f ${MD_TARGETS} doc-support/result .version manual-full.xml functions/library/locations.xml functions/library/generated
rm -rf ./out/ ./highlightjs
.PHONY: validate
@@ -78,14 +78,14 @@ manual-full.xml: ${MD_TARGETS} .version functions/library/locations.xml function
nix-instantiate --eval \
-E '(import ../lib).version' > .version
-functions/library/locations.xml:
- nix-build ./lib-function-locations.nix \
- --out-link $@
+doc-support/result:
+ (cd doc-support; nix-build)
-functions/library/generated: functions/library/locations.xml
- nix-build ./lib-function-docs.nix \
- --arg locationsXml $< \
- --out-link $@
+functions/library/locations.xml: doc-support/result
+ ln -rfs ./doc-support/result/function-locations.xml functions/library/locations.xml
+
+functions/library/generated: doc-support/result
+ ln -rfs ./doc-support/result/function-docs functions/library/generated
%.section.xml: %.section.md
pandoc $^ -w docbook+smart \
diff --git a/doc/default.nix b/doc/default.nix
index 7ceaec28af3..7b44376034c 100644
--- a/doc/default.nix
+++ b/doc/default.nix
@@ -1,8 +1,7 @@
{ pkgs ? (import ./.. { }), nixpkgs ? { }}:
let
lib = pkgs.lib;
- locationsXml = import ./lib-function-locations.nix { inherit pkgs nixpkgs; };
- functionDocs = import ./lib-function-docs.nix { inherit locationsXml pkgs; };
+ doc-support = import ./doc-support { inherit pkgs nixpkgs; };
in pkgs.stdenv.mkDerivation {
name = "nixpkgs-manual";
@@ -30,9 +29,6 @@ in pkgs.stdenv.mkDerivation {
];
postPatch = ''
- rm -rf ./functions/library/locations.xml
- ln -s ${locationsXml} ./functions/library/locations.xml
- ln -s ${functionDocs} ./functions/library/generated
echo ${lib.version} > .version
'';
diff --git a/doc/doc-support/default.nix b/doc/doc-support/default.nix
new file mode 100644
index 00000000000..93f6287d4b0
--- /dev/null
+++ b/doc/doc-support/default.nix
@@ -0,0 +1,14 @@
+{ pkgs ? (import ../.. {}), nixpkgs ? { }}:
+let
+ locationsXml = import ./lib-function-locations.nix { inherit pkgs nixpkgs; };
+ functionDocs = import ./lib-function-docs.nix { inherit locationsXml pkgs; };
+in pkgs.runCommand "doc-support" {}
+''
+ mkdir result
+ (
+ cd result
+ ln -s ${locationsXml} ./function-locations.xml
+ ln -s ${functionDocs} ./function-docs
+ )
+ mv result $out
+''
diff --git a/doc/lib-function-docs.nix b/doc/doc-support/lib-function-docs.nix
index 421f848d25a..5199b949e7b 100644
--- a/doc/lib-function-docs.nix
+++ b/doc/doc-support/lib-function-docs.nix
@@ -6,7 +6,7 @@
with pkgs; stdenv.mkDerivation {
name = "nixpkgs-lib-docs";
- src = ./../lib;
+ src = ./../../lib;
buildInputs = [ nixdoc ];
installPhase = ''
diff --git a/doc/lib-function-locations.nix b/doc/doc-support/lib-function-locations.nix
index ae7036e4626..ae7036e4626 100644
--- a/doc/lib-function-locations.nix
+++ b/doc/doc-support/lib-function-locations.nix