summary refs log tree commit diff
path: root/pkgs/top-level/all-packages.nix
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2006-08-23 15:58:54 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2006-08-23 15:58:54 +0000
commitca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d (patch)
tree588e7309f99625baf7f92907121d8e773cb99a79 /pkgs/top-level/all-packages.nix
parentab1557ee9623936c5f37fc8875c84674ed0a83e3 (diff)
downloadnixpkgs-ca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d.tar
nixpkgs-ca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d.tar.gz
nixpkgs-ca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d.tar.bz2
nixpkgs-ca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d.tar.lz
nixpkgs-ca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d.tar.xz
nixpkgs-ca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d.tar.zst
nixpkgs-ca6ae0b53d7aee64c6d927c85df0d6b25d25fd1d.zip
* Support different kinds of stdenvs on a particular system (like
  "i686-cygwin") by adding an argument "stdenvType" to specify which
  stdenv to use (like "i686-mingw").

svn path=/nixpkgs/trunk/; revision=6213
Diffstat (limited to 'pkgs/top-level/all-packages.nix')
-rw-r--r--pkgs/top-level/all-packages.nix14
1 files changed, 12 insertions, 2 deletions
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 1fa6aacad57..9308894d531 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5,9 +5,18 @@
    platform. */
    
 
-{ # The system for which to build the packages.
+{ # The system (e.g., `i686-linux') for which to build the packages.
   system ? __currentSystem
 
+  # Usually, the system type uniquely determines the stdenv and thus
+  # how to build the packages.  But on some platforms we have
+  # different stdenvs, leading to different ways to build the
+  # packages.  For instance, on Windows we support both Cygwin and
+  # Mingw builds.  In both cases, `system' is `i686-cygwin'.  The
+  # attribute `stdenvType' is used to select the specific kind of
+  # stdenv to use, e.g., `i686-mingw'.
+, stdenvType ? system
+
 , # The standard environment to use.  Only used for bootstrapping.  If
   # null, the default standard environment is used.
   bootStdenv ? null
@@ -71,7 +80,7 @@ rec {
 
   defaultStdenv =
     (import ../stdenv {
-      inherit system;
+      inherit system stdenvType;
       allPackages = import ./all-packages.nix;
     }).stdenv;
 
@@ -1248,6 +1257,7 @@ rec {
     inherit fetchurl stdenv pkgconfig gettext perl x11
             libtiff libjpeg libpng;
   };
+  
   gtkLibs22 = import ../development/libraries/gtk-libs-2.2 {
     inherit fetchurl stdenv pkgconfig gettext perl x11
             libtiff libjpeg libpng;