summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/setup-hooks/multiple-outputs.sh8
-rw-r--r--pkgs/build-support/substitute/substitute-all.nix4
-rw-r--r--pkgs/build-support/trivial-builders.nix20
3 files changed, 21 insertions, 11 deletions
diff --git a/pkgs/build-support/setup-hooks/multiple-outputs.sh b/pkgs/build-support/setup-hooks/multiple-outputs.sh
index 189c98cdfa71..ae491e8a7ef1 100644
--- a/pkgs/build-support/setup-hooks/multiple-outputs.sh
+++ b/pkgs/build-support/setup-hooks/multiple-outputs.sh
@@ -16,6 +16,7 @@ _assignFirst() {
     echo "Error: _assignFirst found no valid variant!"
     return 1 # none found
 }
+
 # Same as _assignFirst, but only if "$1" = ""
 _overrideFirst() {
     if [ -z "${!1}" ]; then
@@ -37,9 +38,10 @@ _overrideFirst outputInclude "$outputDev"
 _overrideFirst outputLib "lib" "out"
 
 _overrideFirst outputDoc "doc" "out"
-_overrideFirst outputDocdev "devdoc" REMOVE # documentation for developers
+_overrideFirst outputDevdoc "devdoc" REMOVE # documentation for developers
 # man and info pages are small and often useful to distribute with binaries
 _overrideFirst outputMan "man" "doc" "$outputBin"
+_overrideFirst outputDevman "devman" "devdoc" "$outputMan"
 _overrideFirst outputInfo "info" "doc" "$outputMan"
 
 
@@ -136,11 +138,11 @@ _multioutDocs() {
 
     moveToOutput share/info "${!outputInfo}"
     moveToOutput share/doc "${!outputDoc}"
-    moveToOutput share/gtk-doc "${!outputDocdev}"
+    moveToOutput share/gtk-doc "${!outputDevdoc}"
 
     # the default outputMan is in $bin
     moveToOutput share/man "${!outputMan}"
-    moveToOutput share/man/man3 "${!outputDocdev}"
+    moveToOutput share/man/man3 "${!outputDevman}"
 }
 
 # Move development-only stuff to the desired outputs.
diff --git a/pkgs/build-support/substitute/substitute-all.nix b/pkgs/build-support/substitute/substitute-all.nix
index 1022b25c4c9b..7fd46f95f998 100644
--- a/pkgs/build-support/substitute/substitute-all.nix
+++ b/pkgs/build-support/substitute/substitute-all.nix
@@ -1,9 +1,9 @@
-{ stdenv }:
+{ stdenvNoCC }:
 
 args:
 
 # see the substituteAll in the nixpkgs documentation for usage and constaints
-stdenv.mkDerivation ({
+stdenvNoCC.mkDerivation ({
   name = if args ? name then args.name else baseNameOf (toString args.src);
   builder = ./substitute-all.sh;
   inherit (args) src;
diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix
index 398426bf9a48..d6f390ddfb1c 100644
--- a/pkgs/build-support/trivial-builders.nix
+++ b/pkgs/build-support/trivial-builders.nix
@@ -1,16 +1,24 @@
-{ lib, stdenv, lndir }:
+{ lib, stdenv, stdenvNoCC, lndir }:
 
-rec {
+let
 
-  # Run the shell command `buildCommand' to produce a store path named
-  # `name'.  The attributes in `env' are added to the environment
-  # prior to running the command.
-  runCommand = name: env: buildCommand:
+  runCommand' = stdenv: name: env: buildCommand:
     stdenv.mkDerivation ({
       inherit name buildCommand;
       passAsFile = [ "buildCommand" ];
     } // env);
 
+in
+
+rec {
+
+  # Run the shell command `buildCommand' to produce a store path named
+  # `name'.  The attributes in `env' are added to the environment
+  # prior to running the command.
+  runCommand = runCommandNoCC;
+  runCommandNoCC = runCommand' stdenvNoCC;
+  runCommandCC = runCommand' stdenv;
+
 
   # Create a single file.
   writeTextFile =