Compare commits

...

6 Commits

Author SHA1 Message Date
Peter Simons
8f15e42495 Merged from trunk:
* Get rid of the ugly `useFromStdenv' hack in all-packages.nix.
   Instead, use the generic package override mechanism to use packages
   from earlier bootstrap phases.

 * Don't rely on the existence of attributes such as `stdenv.coreutils'.

 * pkgs/tools/networking/nbd: updated to version 2.9.17

 * pkgs/stdenv/generic: added isSunOS attribute, similar to isLinux,
   isDarwin, etc.

 * pkgs/tools/networking/curl: assert that scpSupport is enabled only
   when libssh2 is available

 * pkgs/tools/networking/curl: strip trailing whitespace

 * pkgs/top-level/all-packages.nix: curl cannot support scp on Solaris
   because libssh2 doesn't compile

 * pkgs/top-level/all-packages.nix: don't enable ACL support in rsync
   when building on Solaris

 * pkgs/top-level/all-packages.nix: strip trailing whitespace

svn path=/nixpkgs/branches/parallel-building-merger/; revision=23002
2010-08-06 12:59:16 +00:00
Peter Simons
f171469b8a pkgs/development/interpreters/python/2.6: enable parallel building
svn path=/nixpkgs/branches/parallel-building-merger/; revision=23001
2010-08-06 12:50:25 +00:00
Peter Simons
4841663eec pkgs/applications/version-management/git-and-tools/git: enable parallelism during documentation build
svn path=/nixpkgs/branches/parallel-building-merger/; revision=22993
2010-08-06 12:41:09 +00:00
Peter Simons
219b210da8 pkgs/development/libraries/ncurses: enable parallel building for ncurses
svn path=/nixpkgs/branches/parallel-building-merger/; revision=22992
2010-08-06 12:40:10 +00:00
Peter Simons
ddd7190867 Merging updates from trunk:
* Update Coq to version 8.2pl2 (patch by roconnor)

 * Add libssh2

 * Add optional scp support to curl

 * Update to SQLite 3.7.0.1, which fixes a corruption bug when the
   database is also accessed using SQLite 3.6.23.

 * pam_krb5: added version 2.3.11-1.

 * pam_ccreds: to locally authenticate using an enterprise identity when
   the network is unavailable.

 * heimdal: add sqlite support and install server executables to
   $out/sbin

 * added older version of sqlite for use in DBD-SQLite perl package,
   which fails with newest one

svn path=/nixpkgs/branches/parallel-building-merger/; revision=22990
2010-08-06 10:13:03 +00:00
Peter Simons
7dc5f267eb Enable parallel building of gcc, glibc, gmp, mpfr, coreutils, perl, git, and qt4.
If a build expressions has set "enableParallelBuilding = true", then the
generic builder may utilize more than one CPU core to build that particular
expression. This feature works out of the box for GNU Make. Expressions that
use other build drivers like Boost.Jam or SCons have to specify appropriate
flags such as "-j${NIX_BUILD_CORES}" themselves.

svn path=/nixpkgs/branches/parallel-building-merger/; revision=22969
2010-08-05 18:37:30 +00:00
44 changed files with 267 additions and 164 deletions

View File

@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
libPath =
stdenv.lib.makeLibraryPath
[ stdenv.glibc stdenv.gcc.gcc ffmpeg cairo pango glib libXrender gtk nspr nss fontconfig freetype alsaLib libX11 GConf libXext atk libXt expat zlib libjpeg bzip2 libpng libXScrnSaver dbus dbus_glib cups libgcrypt] ;
[ stdenv.gcc.libc stdenv.gcc.gcc ffmpeg cairo pango glib libXrender gtk nspr nss fontconfig freetype alsaLib libX11 GConf libXext atk libXt expat zlib libjpeg bzip2 libpng libXScrnSaver dbus dbus_glib cups libgcrypt] ;
installPhase = ''
ensureDir $out/bin

View File

@@ -4,19 +4,15 @@
{stdenv, fetchurl, ocaml, camlp5, lablgtk, ncurses}:
let
pname = "coq";
version = "8.2pl1";
name = "${pname}-${version}";
version = "8.2pl2";
in
stdenv.mkDerivation {
inherit name;
name = "coq-${version}";
src = fetchurl {
url = "http://coq.inria.fr/V${version}/files/${name}.tar.gz";
sha256 = "7c15acfd369111e51d937cce632d22fc77a6718a5ac9f2dd2dcbdfab4256ae0c";
url = "http://coq.inria.fr/V${version}/files/coq-${version}.tar.gz";
sha256 = "0dh2vv3bvz8694dd12kjdkdaq19l1vslvygzif11igshc5bw4rhf";
};
buildInputs = [ ocaml camlp5 ncurses lablgtk ];

View File

@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
'')
+ ''# Install man pages and Info manual
make PERL_PATH="${perl}/bin/perl" cmd-list.made install install-info \
make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES PERL_PATH="${perl}/bin/perl" cmd-list.made install install-info \
-C Documentation ''
+ (if guiSupport then ''
@@ -116,6 +116,8 @@ stdenv.mkDerivation rec {
'';
enableParallelBuilding = true;
meta = {
license = "GPLv2";
homepage = http://git-scm.com/;

View File

@@ -1,6 +1,6 @@
{ stdenv, fetchurl, lib, iasl, dev86, libxslt, libxml2, libX11, xproto, libXext
, libXcursor, qt4, libIDL, SDL, hal, libcap, zlib, libpng, glib, kernel
, python, which, alsaLib, curl
, python, which, alsaLib, curl, gawk
}:
stdenv.mkDerivation {
@@ -72,7 +72,7 @@ stdenv.mkDerivation {
sed -i -e "s|@INSTALL_PATH@|$out/virtualbox|" \
-e "s|@QT4_PATH@|${qt4}/lib|" \
-e "s|which|${which}/bin/which|" \
-e "s|awk|${stdenv.gawk}/bin/awk|" \
-e "s|awk|${gawk}/bin/awk|" \
$out/bin/VBox.sh
chmod 755 $out/bin/VBox.sh
for file in VirtualBox VBoxManage VBoxSDL

View File

@@ -127,6 +127,8 @@ stdenv.mkDerivation ({
passthru = { inherit langC langCC langFortran langVhdl langTreelang
enableMultilib; };
enableParallelBuilding = true;
meta = {
homepage = "http://gcc.gnu.org/";
license = "GPL/LGPL";

View File

@@ -201,6 +201,8 @@ stdenv.mkDerivation ({
passthru = { inherit langC langCC langAda langFortran langTreelang langVhdl
enableMultilib version; };
enableParallelBuilding = true;
meta = {
homepage = http://gcc.gnu.org/;
license = "GPLv3+"; # runtime support libraries are typically LGPLv3+

View File

@@ -289,6 +289,8 @@ stdenv.mkDerivation ({
passthru = { inherit langC langCC langAda langFortran langTreelang langVhdl
enableMultilib version; };
enableParallelBuilding = true;
meta = {
homepage = http://gcc.gnu.org/;
license = "GPLv3+"; # runtime support libraries are typically LGPLv3+

View File

@@ -21,6 +21,8 @@ stdenv.mkDerivation ({
sha256 = "a7d8041e50e110f5a503e188a05cb217f0c99c51f248a0a1387cc07a0b6f167f";
}) ;
enableParallelBuilding = true;
sourceRoot = "gcc_42-5574/";
patches =
[./pass-cxxcpp.patch ./debug_list.patch]

View File

@@ -21,6 +21,8 @@ stdenv.mkDerivation ({
sha256 = "1fy6j41rhxdsm19sib9wygjl5l54g8pm13c6y5x13f40mavw1mma";
}) ;
enableParallelBuilding = true;
libstdcxx = "libstdcxx-39";
sourceRoot = "gcc-5646/";
patches =

View File

@@ -1,4 +1,4 @@
{stdenv, fetchhg, bison, glibc, ed, which, bash, makeWrapper, perl, ...}:
{ stdenv, fetchhg, bison, glibc, ed, which, bash, coreutils, makeWrapper, perl }:
let
version = "2010-06-09";
@@ -29,8 +29,8 @@ stdenv.mkDerivation {
sed -i 's,/usr/share/zoneinfo/,${glibc}/share/zoneinfo/,' src/pkg/time/zoneinfo.go
sed -i 's,/bin/ed,${ed}/bin/ed,' src/cmd/6l/mkenam
sed -i -e 's,/bin/cat,${stdenv.coreutils}/bin/cat,' \
-e 's,/bin/echo,${stdenv.coreutils}/bin/echo,' \
sed -i -e 's,/bin/cat,${coreutils}/bin/cat,' \
-e 's,/bin/echo,${coreutils}/bin/echo,' \
src/pkg/exec/exec_test.go
# Disabling the 'os/http/net' tests (they want files not available in

View File

@@ -13,7 +13,7 @@ stdenv.mkDerivation {
patchPhase = ''
sed -i s,/usr/bin/ld,$(type -P ld), src/driver/phases.c
sed -i s,/lib64/ld-linux-x86-64.so.2,${stdenv.glibc}/lib/ld-linux-x86-64.so.2, src/include/main_defs.h.in
sed -i s,/lib64/ld-linux-x86-64.so.2,${stdenv.gcc.libc}/lib/ld-linux-x86-64.so.2, src/include/main_defs.h.in
'';
cmakeFlags = ''
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
-DPATH64_ENABLE_PSCRUNTIME=OFF
-DPATH64_ENABLE_PROFILING=OFF -DPATH64_ENABLE_TARGETS=x8664
-DCMAKE_BUILD_TYPE=Debug -DPATH64_ENABLE_FORTRAN=OFF
-DPSC_CRT_PATH=${stdenv.glibc}/lib
-DPSC_CRT_PATH=${stdenv.gcc.libc}/lib
'';
makeFlags = "-j4";

View File

@@ -39,6 +39,8 @@ stdenv.mkDerivation rec {
dontAddPrefix = true;
enableParallelBuilding = true;
preConfigure =
''
configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3"

View File

@@ -88,6 +88,8 @@ stdenv.mkDerivation ( {
libPrefix = "python${majorVersion}";
};
enableParallelBuilding = true;
meta = {
platforms = stdenv.lib.platforms.all;
};

View File

@@ -17,7 +17,7 @@ postConfigure() {
postInstall() {
if test -n "$installLocales"; then
make localedata/install-locales
make -j${NIX_BUILD_CORES:-1} -l${NIX_BUILD_CORES:-1} localedata/install-locales
fi
test -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache

View File

@@ -20,7 +20,7 @@ postConfigure() {
postInstall() {
if test -n "$installLocales"; then
make localedata/install-locales
make -j${NIX_BUILD_CORES:-1} -l${NIX_BUILD_CORES:-1} localedata/install-locales
fi
test -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache

View File

@@ -30,6 +30,8 @@ stdenv.mkDerivation ({
inherit (stdenv) is64bit;
enableParallelBuilding = true;
patches =
stdenv.lib.optional (fetchgit == null)
/* Fix for NIXPKGS-79: when doing host name lookups, when

View File

@@ -38,7 +38,7 @@ postConfigure() {
postInstall() {
if test -n "$installLocales"; then
make localedata/install-locales
make -j${NIX_BUILD_CORES:-1} -l${NIX_BUILD_CORES:-1} localedata/install-locales
fi
rm $out/etc/ld.so.cache
(cd $out/include && ln -s $kernelHeaders/include/* .) || exit 1

View File

@@ -30,6 +30,8 @@ stdenv.mkDerivation {
# the symbol __i686.get_pc_thunk.dx to be mangled.
NIX_CFLAGS_COMPILE = "-U__i686";
enableParallelBuilding = true;
meta = {
homepage = http://www.gnu.org/software/libc/;
description = "The GNU C Library";

View File

@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
doCheck = true;
enableParallelBuilding = true;
meta = {
description = "A free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers";
homepage = http://gmplib.org/;

View File

@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
doCheck = true;
enableParallelBuilding = true;
meta = {
description = "A free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers";
homepage = http://gmplib.org/;

View File

@@ -1,4 +1,4 @@
{ stdenv, fetchurl, openldap, readline, db4, openssl, cyrus_sasl }:
{ stdenv, fetchurl, openldap, readline, db4, openssl, cyrus_sasl, sqlite} :
stdenv.mkDerivation rec {
name = "heimdal-1.3.3";
@@ -14,7 +14,16 @@ stdenv.mkDerivation rec {
patches = [ ./no-md2.patch ];
## ugly, X should be made an option
configureFlags = "--with-openldap=${openldap} --without-x";
propagatedBuildInputs = [ readline db4 openssl openldap cyrus_sasl ];
configureFlags = [
"--with-openldap=${openldap}"
"--with-sqlite3=${sqlite}"
"--without-x"
];
# dont succeed with --libexec=$out/sbin, so
postInstall = ''
mv $out/libexec/* $out/sbin/
rmdir $out/libexec
'';
propagatedBuildInputs = [ readline db4 openssl openldap cyrus_sasl sqlite];
}

View File

@@ -0,0 +1,19 @@
{stdenv, fetchurlBoot, openssl, zlib}:
stdenv.mkDerivation rec {
name = "libssh2-1.2.6";
src = fetchurlBoot {
url = "${meta.homepage}/download/${name}.tar.gz";
sha256 = "00f6hw972v7jd0rrdr6kx5cn7pa1spyx8xgc7vhjydksgsig3f8b";
};
buildInputs = [ openssl zlib ];
meta = {
description = "A client-side C library implementing the SSH2 protocol";
homepage = http://www.libssh2.org;
platforms = stdenv.lib.platforms.all;
maintainers = [ stdenv.lib.maintainers.urkud ];
};
}

View File

@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
doCheck = true;
enableParallelBuilding = true;
meta = {
homepage = http://www.mpfr.org/;
description = "GNU MPFR, a library for multiple-precision floating-point arithmetic";

View File

@@ -14,7 +14,9 @@ stdenv.mkDerivation ( rec {
'';
selfBuildNativeInput = true;
enableParallelBuilding = true;
preBuild = ''sed -e "s@\([[:space:]]\)sh @\1''${SHELL} @" -i */Makefile Makefile'';
# When building a wide-character (Unicode) build, create backward

View File

@@ -74,6 +74,8 @@ stdenv.mkDerivation {
${if keepDocumentation == false then "rm -rf $out/doc" else ""}
'';
enableParallelBuilding = true;
meta = {
homepage = http://www.qtsoftware.com/downloads/opensource/appdev/linux-x11-cpp;
description = "A cross-platform application framework for C++";

View File

@@ -89,6 +89,8 @@ stdenv.mkDerivation rec {
postInstall = if useDocs then "rm -rf $out/share/doc/${name}/{html,src}" else "";
enableParallelBuilding = true;
meta = {
homepage = http://qt.nokia.com/products;
description = "A cross-platform application framework for C++";

View File

@@ -99,6 +99,8 @@ stdenv.mkDerivation rec {
postInstall = if useDocs then "rm -rf $out/share/doc/${name}/{html,src}" else "";
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = http://qt.nokia.com/products;
description = "A cross-platform application framework for C++";

View File

@@ -0,0 +1,23 @@
{ stdenv, fetchurl, readline ? null, ncurses ? null }:
assert readline != null -> ncurses != null;
stdenv.mkDerivation {
name = "sqlite-3.6.23";
src = fetchurl {
url = "http://www.sqlite.org/sqlite-amalgamation-3.6.23.tar.gz";
sha256 = "a5de9ec9273acabc6cb18235df802549c476410b09d58a206e02862b4dc303ae";
};
buildInputs = [readline ncurses];
configureFlags = "--enable-threadsafe";
NIX_CFLAGS_COMPILE = "-DSQLITE_ENABLE_COLUMN_METADATA=1";
NIX_CFLAGS_LINK = if readline != null then "-lncurses" else "";
meta = {
homepage = http://www.sqlite.org/;
description = "A self-contained, serverless, zero-configuration, transactional SQL database engine";
};
}

View File

@@ -3,11 +3,11 @@
assert readline != null -> ncurses != null;
stdenv.mkDerivation {
name = "sqlite-3.7.0";
name = "sqlite-3.7.0.1";
src = fetchurl {
url = "http://www.sqlite.org/sqlite-amalgamation-3.7.0.tar.gz";
sha256 = "13krs46f6fx83hd13i1a6ndbqs12wv4nhgi2dg3aas58r40p7a3w";
url = "http://www.sqlite.org/sqlite-amalgamation-3.7.0.1.tar.gz";
sha256 = "0nx506wmp32l6sh2p82bd2fscak1b402fp86cxl3r9pfs1yvychj";
};
buildInputs = [ readline ncurses ];

View File

@@ -0,0 +1,19 @@
{stdenv, fetchurl, pam, openssl, db}:
stdenv.mkDerivation {
name = "pam_ccreds-10";
src = fetchurl {
url = "http://www.padl.com/download/pam_ccreds.tgz";
sha256 = "1h7zyg1b1h69civyvrj95w22dg0y7lgw3hq4gqkdcg35w1y76fhz";
};
patchPhase = ''
sed 's/-o root -g root//' -i Makefile.in
'';
buildInputs = [pam openssl db];
meta = {
homepage = "http://www.padl.com/OSS/pam_ccreds.html";
description = "The pam_ccreds module provides the means for Linux workstations to locally authenticate using an enterprise identity when the network is unavailable.";
};
}

View File

@@ -0,0 +1,19 @@
{stdenv, fetchurl, pam, kerberos}:
stdenv.mkDerivation {
name = "pam_krb5-2.3.11-1";
src = fetchurl {
url = https://fedorahosted.org/releases/p/a/pam_krb5/pam_krb5-2.3.11-1.tar.gz;
sha256 = "1x6wgjzkfkx0h9a7wdgx0jwrdm15npbs79i510lk1n3fyx9lk4mq";
# url = http://archives.eyrie.org/software/kerberos/pam-krb5-4.2.tar.gz;
# sha256 = "0a0zyd4ddln8yf827qxbfqi1pryxnj0fykfz8lx6nxn2f9pqj1gv";
};
buildInputs = [pam kerberos];
meta = {
# homepage = "http://www.eyrie.org/~eagle/software/pam-krb5";
homepage = "https://fedorahosted.org/pam_krb5/";
description = "The pam_krb5 module allows PAM-aware applications to authenticate users by performing an AS exchange with a Kerberos KDC. It can optionally convert Kerberos 5 credentials to Kerberos IV credentials and/or use them to set up AFS tokens for a user's session.";
};
}

View File

@@ -1,6 +1,8 @@
{stdenv, fetchurl, db4, glibc, openssl, cyrus_sasl}:
{ stdenv, fetchurl, db4, glibc, openssl, cyrus_sasl
, coreutils, findutils, gnused, gnugrep
}:
assert stdenv.isLinux && stdenv ? coreutils;
assert stdenv.isLinux;
stdenv.mkDerivation {
name = "postfix-2.2.11";
@@ -24,8 +26,8 @@ stdenv.mkDerivation {
mkdir $out/share/postfix/conf
cp conf/* $out/share/postfix/conf
sed -e 's@PATH=.*@PATH=${stdenv.coreutils}/bin:${stdenv.findutils}/bin:${stdenv.gnused}/bin:${stdenv.gnugrep}/bin:$out/sbin@' -i $out/share/postfix/conf/post-install
sed -e '2aPATH=${stdenv.coreutils}/bin:${stdenv.findutils}/bin:${stdenv.gnused}/bin:${stdenv.gnugrep}/bin:$out/sbin' -i $out/share/postfix/conf/postfix-script
sed -e 's@PATH=.*@PATH=${coreutils}/bin:${findutils}/bin:${gnused}/bin:${gnugrep}/bin:$out/sbin@' -i $out/share/postfix/conf/post-install
sed -e '2aPATH=${coreutils}/bin:${findutils}/bin:${gnused}/bin:${gnugrep}/bin:$out/sbin' -i $out/share/postfix/conf/postfix-script
chmod a+x $out/share/postfix/conf/{postfix-script,post-install}
'';

View File

@@ -1,7 +1,5 @@
{ stdenv, fetchurl, libxml2, openssl, readline, gawk }:
assert stdenv ? gawk || gawk != null;
stdenv.mkDerivation rec {
name = "virtuoso-opensource-6.1.1";
@@ -10,8 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "1sd70j9i26ml16lig9r9lmrdf5q0kybq71r6vzzzc5v5jxjz0l7w";
};
buildInputs = [ libxml2 openssl readline ]
++ stdenv.lib.optional (! stdenv ? gawk) gawk;
buildInputs = [ libxml2 openssl readline gawk ];
CPP="${stdenv.gcc}/bin/gcc -E";

View File

@@ -1,6 +1,6 @@
{ system, name, preHook ? null, postHook ? null, initialPath, gcc, shell
, param1 ? "", param2 ? "", param3 ? "", param4 ? "", param5 ? ""
, extraAttrs ? {}
, extraAttrs ? {}, overrides ? {}
, # The `fetchurl' to use for downloading curl and its dependencies
# (see all-packages.nix).
@@ -95,6 +95,7 @@ let
|| result.system == "x86_64-linux"
|| result.system == "powerpc-linux"
|| result.system == "armv5tel-linux";
isSunOS = result.system == "i386-sunos";
isi686 = result.system == "i686-linux"
|| result.system == "i686-darwin"
|| result.system == "i686-freebsd"
@@ -118,6 +119,7 @@ let
inherit fetchurlBoot;
inherit overrides;
}
# Propagate any extra attributes. For instance, we use this to

View File

@@ -269,6 +269,23 @@ fi
export NIX_INDENT_MAKE=1
# Normalize the NIX_BUILD_CORES variable. The value might be 0, which
# means that we're supposed to try and auto-detect the number of
# available CPU cores at run-time.
if test -z "${NIX_BUILD_CORES:-}"; then
NIX_BUILD_CORES="1"
elif test "$NIX_BUILD_CORES" -le 0; then
NIX_BUILD_CORES=$(nproc 2>/dev/null || true)
if expr >/dev/null 2>&1 "$NIX_BUILD_CORES" : "^[0-9][0-9]*$"; then
:
else
NIX_BUILD_CORES="1"
fi
fi
export NIX_BUILD_CORES
######################################################################
# Misc. helper functions.
@@ -603,6 +620,7 @@ buildPhase() {
echo "make flags: $makeFlags ${makeFlagsArray[@]} $buildFlags ${buildFlagsArray[@]}"
make ${makefile:+-f $makefile} \
${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \
$makeFlags "${makeFlagsArray[@]}" \
$buildFlags "${buildFlagsArray[@]}"
@@ -615,6 +633,7 @@ checkPhase() {
echo "check flags: $makeFlags ${makeFlagsArray[@]} $checkFlags ${checkFlagsArray[@]}"
make ${makefile:+-f $makefile} \
${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \
$makeFlags "${makeFlagsArray[@]}" \
$checkFlags "${checkFlagsArray[@]}" ${checkTarget:-check}

View File

@@ -73,7 +73,7 @@ rec {
# This function builds the various standard environments used during
# the bootstrap.
stdenvBootFun =
{gcc, extraAttrs ? {}, extraPath ? [], fetchurl}:
{gcc, extraAttrs ? {}, overrides ? {}, extraPath ? [], fetchurl}:
import ../generic {
inherit system;
@@ -89,8 +89,10 @@ rec {
shell = "${bootstrapTools}/bin/sh";
initialPath = [bootstrapTools] ++ extraPath;
fetchurlBoot = fetchurl;
inherit gcc;
extraAttrs = extraAttrs // {inherit fetchurl;};
inherit gcc extraAttrs;
overrides = overrides // {
inherit fetchurl;
};
};
# Build a dummy stdenv with no GCC or working fetchurl. This is
@@ -168,7 +170,7 @@ rec {
coreutils = bootstrapTools;
libc = stdenvLinuxGlibc;
};
extraAttrs = {
overrides = {
glibc = stdenvLinuxGlibc;
inherit (stdenvLinuxBoot1Pkgs) perl;
};
@@ -195,7 +197,7 @@ rec {
gcc = stdenvLinuxBoot2Pkgs.gcc.gcc;
name = "";
};
extraAttrs = {
overrides = {
inherit (stdenvLinuxBoot1Pkgs) perl;
};
inherit fetchurl;
@@ -215,7 +217,7 @@ rec {
#
# When updating stdenvLinux, make sure that the result has no
# dependency (`nix-store -qR') on bootstrapTools.
stdenvLinux = import ../generic {
stdenvLinux = import ../generic rec {
name = "stdenv-linux";
inherit system;
@@ -240,10 +242,15 @@ rec {
fetchurlBoot = fetchurl;
extraAttrs = {
inherit (stdenvLinuxBoot2Pkgs) binutils /* gcc */ glibc;
inherit (stdenvLinuxBoot2Pkgs) glibc;
};
overrides = {
inherit gcc;
inherit (stdenvLinuxBoot2Pkgs) binutils glibc;
inherit (stdenvLinuxBoot3Pkgs)
gzip bzip2 bash coreutils diffutils findutils gawk
gnumake gnused gnutar gnugrep patch patchelf
gnumake gnused gnutar gnugrep gnupatch patchelf
attr acl;
};
};

View File

@@ -62,7 +62,7 @@ let {
body =
stdenv // mkDerivationFun // {
inherit fetchurl;
pkgconfig = pkgconfigBin;
overrides.pkgconfig = pkgconfigBin;
};
shell =

View File

@@ -24,6 +24,8 @@ stdenv.mkDerivation (rec {
# and {Open,Free}BSD.
doCheck = (stdenv ? glibc) && (cross == null);
enableParallelBuilding = true;
meta = {
homepage = http://www.gnu.org/software/coreutils/;
description = "The basic file, shell and text manipulation utilities of the GNU operating system";

View File

@@ -1,34 +1,37 @@
{ stdenv, fetchurl
, zlibSupport ? false, zlib ? null
, sslSupport ? false, openssl ? null
, zlibSupport ? false, zlib
, sslSupport ? false, openssl
, scpSupport ? false, libssh2
, linkStatic ? false
}:
assert zlibSupport -> zlib != null;
assert sslSupport -> openssl != null;
assert scpSupport -> libssh2 != null;
stdenv.mkDerivation rec {
name = "curl-7.21.0";
src = fetchurl {
url = "http://curl.haxx.se/download/${name}.tar.bz2";
sha256 = "1fl7sh38i746b57aqjqjaykwq4rhm2p1phzrgnc2h6wm2k2b95gy";
};
# Zlib and OpenSSL must be propagated because `libcurl.la' contains
# "-lz -lssl", which aren't necessary direct build inputs of
# applications that use Curl.
propagatedBuildInputs =
stdenv.lib.optional zlibSupport zlib ++
stdenv.lib.optional sslSupport openssl;
configureFlags = ''
${if sslSupport then "--with-ssl=${openssl}" else "--without-ssl"}
${if scpSupport then "--with-libssh2=${libssh2}" else "--without-libssh2"}
${if linkStatic then "--enable-static --disable-shared" else ""}
'';
dontDisableStatic = if linkStatic then true else false;
CFLAGS = if stdenv ? isDietLibC then "-DHAVE_INET_NTOA_R_2_ARGS=1" else "";
LDFLAGS = if linkStatic then "-static" else "";
CXX = "g++";

View File

@@ -1,4 +1,4 @@
{ stdenv, fetchurl, nettools, iputils, iproute, makeWrapper }:
{ stdenv, fetchurl, nettools, iputils, iproute, makeWrapper, coreutils, gnused }:
stdenv.mkDerivation rec {
name = "dhcp-4.1.1-P1";
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
substituteInPlace $out/sbin/dhclient-script \
--replace /sbin/ip ${iproute}/sbin/ip
wrapProgram "$out/sbin/dhclient-script" --prefix PATH : \
"${nettools}/bin:${nettools}/sbin:${iputils}/bin:${stdenv.coreutils}/bin:${stdenv.gnused}/bin"
"${nettools}/bin:${nettools}/sbin:${iputils}/bin:${coreutils}/bin:${gnused}/bin"
'';
preConfigure =

View File

@@ -1,11 +1,11 @@
{stdenv, fetchurl, pkgconfig, glib}:
stdenv.mkDerivation rec {
name = "nbd-2.9.16";
name = "nbd-2.9.17";
src = fetchurl {
url = "mirror://sourceforge/nbd/${name}.tar.bz2";
sha256 = "1dcd5c5bc478497f0aa6f21f6f04d6cadc3f2e39d45d0e2705a9a1c1c8e91dc9";
sha256 = "07423fba4b1a6d394008505b86fe41d1978956035f49c1197de648fbaa7fb7ff";
};
buildInputs = [pkgconfig glib];

View File

@@ -4,11 +4,11 @@
}:
stdenv.mkDerivation rec {
name = "nix-0.16pre22378";
name = "nix-0.16pre22953";
src = fetchurl {
url = "http://hydra.nixos.org/build/467032/download/4/${name}.tar.bz2";
sha256 = "1bd3645da0bc03b70e4b0d687c6c0868bb1522b01b6acf4af858556f8f21ee57";
url = "http://hydra.nixos.org/build/527157/download/4/${name}.tar.bz2";
sha256 = "7fe185f49bda5281274b203467d206a6a76a762f742a93adeca71ba63470f71e";
};
buildInputs = [ perl curl openssl ];

View File

@@ -93,10 +93,11 @@ let
# (un-overriden) set of packages, allowing packageOverrides
# attributes to refer to the original attributes (e.g. "foo =
# ... pkgs.foo ...").
__overrides = (getConfig ["packageOverrides"] (pkgs: {})) pkgsOrig;
overrides = (getConfig ["packageOverrides"] (pkgs: {})) pkgsOrig //
(if pkgsOrig.stdenv ? overrides then pkgsOrig.stdenv.overrides else { });
pkgsOrig = pkgsFun {}; # the un-overriden packages, passed to packageOverrides
pkgs = pkgsFun __overrides; # the overriden, final packages
pkgs = pkgsFun overrides; # the overriden, final packages
# We use `callPackage' to be able to omit function arguments that
@@ -113,6 +114,7 @@ let
# The package compositions. Yes, this isn't properly indented.
pkgsFun = __overrides: with helperFunctions; helperFunctions // rec {
# Override system. This is useful to build i686 packages on x86_64-linux.
forceSystem = system: (import ./all-packages.nix) {
inherit system;
@@ -152,10 +154,6 @@ let
# inside the set for derivations.
recurseIntoAttrs = attrs: attrs // {recurseForDerivations = true;};
useFromStdenv = it : alternative : if ((bootStdenv != null ||
crossSystem == null) && builtins.hasAttr it stdenv) then
(builtins.getAttr it stdenv) else alternative;
# Return the first available value in the order: pkg.val, val, or default.
getPkgConfig = pkg : val : default : (getConfig [ pkg val ] (getConfig [ val ] default));
@@ -265,15 +263,10 @@ let
inherit stdenv mercurial nix;
};
# `fetchurl' downloads a file from the network. The `useFromStdenv'
# is there to allow stdenv to determine fetchurl. Used during the
# stdenv-linux bootstrap phases to prevent lots of different curls
# from being built.
fetchurl = useFromStdenv "fetchurl"
(import ../build-support/fetchurl {
curl = curl;
stdenv = stdenv;
});
# `fetchurl' downloads a file from the network.
fetchurl = import ../build-support/fetchurl {
inherit curl stdenv;
};
# fetchurlBoot is used for curl and its dependencies in order to
# prevent a cyclic dependency (curl depends on curl.tar.bz2,
@@ -428,10 +421,7 @@ let
bsdiff = callPackage ../tools/compression/bsdiff { };
bzip2 = useFromStdenv "bzip2"
(import ../tools/compression/bzip2 {
inherit fetchurl stdenv;
});
bzip2 = callPackage ../tools/compression/bzip2 { };
cabextract = callPackage ../tools/archivers/cabextract { };
@@ -469,18 +459,14 @@ let
convmv = callPackage ../tools/misc/convmv { };
coreutils_real = makeOverridable (if stdenv ? isDietLibC
then import ../tools/misc/coreutils-5
else import ../tools/misc/coreutils)
coreutils = callPackage (if stdenv ? isDietLibC
then ../tools/misc/coreutils-5
else ../tools/misc/coreutils)
{
inherit fetchurl stdenv acl perl gmp;
# TODO: Add ACL support for cross-Linux.
aclSupport = (crossSystem == null) && stdenv.isLinux;
aclSupport = crossSystem == null && stdenv.isLinux;
};
coreutils = useFromStdenv "coreutils" coreutils_real;
cpio = callPackage ../tools/archivers/cpio { };
cromfs = callPackage ../tools/archivers/cromfs { };
@@ -488,11 +474,12 @@ let
cron = callPackage ../tools/system/cron { # see also fcron
};
curl = makeOverridable (import ../tools/networking/curl) {
curl = makeOverridable (import ../tools/networking/curl) rec {
fetchurl = fetchurlBoot;
inherit stdenv zlib openssl;
inherit stdenv zlib openssl libssh2;
zlibSupport = ! ((stdenv ? isDietLibC) || (stdenv ? isStatic));
sslSupport = ! ((stdenv ? isDietLibC) || (stdenv ? isStatic));
sslSupport = zlibSupport;
scpSupport = zlibSupport && (!stdenv.isSunOS);
};
curlftpfs = callPackage ../tools/filesystems/curlftpfs { };
@@ -528,10 +515,7 @@ let
diffstat = callPackage ../tools/text/diffstat { };
diffutils = useFromStdenv "diffutils"
(import ../tools/text/diffutils {
inherit fetchurl stdenv coreutils;
});
diffutils = callPackage ../tools/text/diffutils { };
dirmngr = callPackage ../tools/security/dirmngr { };
@@ -589,12 +573,10 @@ let
file = callPackage ../tools/misc/file { };
findutils = useFromStdenv "findutils"
(if stdenv.isDarwin then findutils4227 else
import ../tools/misc/findutils {
inherit fetchurl stdenv coreutils;
}
);
findutils =
if stdenv.isDarwin
then findutils4227
else callPackage ../tools/misc/findutils { };
findutils4227 = callPackage ../tools/misc/findutils/4.2.27.nix { };
@@ -610,10 +592,7 @@ let
unix2dos = callPackage ../tools/text/unix2dos { };
gawk = useFromStdenv "gawk"
(import ../tools/text/gawk {
inherit fetchurl stdenv;
});
gawk = callPackage ../tools/text/gawk { };
gdmap = callPackage ../tools/system/gdmap {
inherit (gtkLibs216) gtk;
@@ -644,14 +623,9 @@ let
inherit (gtkLibs) glib;
};
gnugrep = useFromStdenv "gnugrep"
(import ../tools/text/gnugrep {
inherit fetchurl stdenv pcre;
});
gnugrep = callPackage ../tools/text/gnugrep { };
gnupatch = useFromStdenv "patch" (import ../tools/text/gnupatch {
inherit fetchurl stdenv ed;
});
gnupatch = callPackage ../tools/text/gnupatch { };
gnupg1orig = callPackage ../tools/security/gnupg1 {
ideaSupport = false;
@@ -670,17 +644,11 @@ let
lua = null;
};
gnused = useFromStdenv "gnused"
(import ../tools/text/gnused {
inherit fetchurl stdenv;
});
gnused = callPackage ../tools/text/gnused { };
gnused_4_2 = callPackage ../tools/text/gnused/4.2.nix { };
gnutar = useFromStdenv "gnutar"
(import ../tools/archivers/gnutar {
inherit fetchurl stdenv;
});
gnutar = callPackage ../tools/archivers/gnutar { };
gnuvd = callPackage ../tools/misc/gnuvd { };
@@ -730,10 +698,7 @@ let
inherit openssl gmp nettools iproute;
};
gzip = useFromStdenv "gzip"
(import ../tools/compression/gzip {
inherit fetchurl stdenv;
});
gzip = callPackage ../tools/compression/gzip { };
pigz = callPackage ../tools/compression/pigz { };
@@ -1384,14 +1349,11 @@ let
### SHELLS
bash = lowPrio (useFromStdenv "bash" bashReal);
bashReal = callPackage ../shells/bash {
bash = lowPrio (callPackage ../shells/bash {
texinfo = null;
};
});
bashInteractive = appendToName "interactive" (bashReal.override {
inherit readline texinfo;
bashInteractive = appendToName "interactive" (callPackage ../shells/bash {
interactive = true;
});
@@ -1479,7 +1441,7 @@ let
profiledCompiler = false;
});
gcc44 = useFromStdenv "gcc" gcc44_real;
gcc44 = gcc44_real;
gcc43 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc-4.3) {
inherit stdenv fetchurl texinfo gmp mpfr noSysDirs;
@@ -2075,8 +2037,7 @@ let
fetchurl = fetchurlBoot;
};
perl = useFromStdenv "perl"
(if system != "i686-cygwin" then perl510 else sysPerl);
perl = if system != "i686-cygwin" then perl510 else sysPerl;
php = makeOverridable (import ../development/interpreters/php) {
inherit
@@ -2273,10 +2234,9 @@ let
avrdude = callPackage ../development/tools/misc/avrdude { };
binutils = useFromStdenv "binutils"
(import ../development/tools/misc/binutils {
inherit fetchurl stdenv noSysDirs;
});
binutils = callPackage ../development/tools/misc/binutils {
inherit noSysDirs;
};
binutilsCross = forceBuildDrv (import ../development/tools/misc/binutils {
inherit stdenv fetchurl;
@@ -2377,10 +2337,7 @@ let
gnum4 = callPackage ../development/tools/misc/gnum4 { };
gnumake = useFromStdenv "gnumake"
(import ../development/tools/build-managers/gnumake {
inherit fetchurl stdenv;
});
gnumake = callPackage ../development/tools/build-managers/gnumake { };
gnumake380 = callPackage ../development/tools/build-managers/gnumake-3.80 { };
@@ -2446,31 +2403,19 @@ let
*/
};
patchelf = useFromStdenv "patchelf"
(import ../development/tools/misc/patchelf {
inherit fetchurl stdenv;
});
patchelf = callPackage ../development/tools/misc/patchelf { };
patchelf06 = callPackage ../development/tools/misc/patchelf/0.6.nix { };
pmccabe = callPackage ../development/tools/misc/pmccabe { };
/**
* pkgconfig is optionally taken from the stdenv to allow bootstrapping
* of glib and pkgconfig itself on MinGW.
*/
pkgconfigReal = useFromStdenv "pkgconfig"
(import ../development/tools/misc/pkgconfig {
inherit fetchurl stdenv;
});
/* Make pkgconfig always return a buildDrv, never a proper hostDrv,
because most usage of pkgconfig as buildInput (inheritance of
pre-cross nixpkgs) means using it using as buildNativeInput
cross_renaming: we should make all programs use pkgconfig as
buildNativeInput after the renaming.
*/
pkgconfig = forceBuildDrv pkgconfigReal;
pkgconfig = forceBuildDrv (callPackage ../development/tools/misc/pkgconfig { });
radare = callPackage ../development/tools/analysis/radare {
inherit (gtkLibs) gtk;
@@ -2548,10 +2493,7 @@ let
aalib = callPackage ../development/libraries/aalib { };
acl = useFromStdenv "acl"
(import ../development/libraries/acl {
inherit stdenv fetchurl gettext attr libtool;
});
acl = callPackage ../development/libraries/acl { };
adns = import ../development/libraries/adns/1.4.nix {
inherit stdenv fetchurl;
@@ -2588,10 +2530,7 @@ let
inherit fetchurl stdenv;
});
attr = useFromStdenv "attr"
(import ../development/libraries/attr {
inherit stdenv fetchurl gettext libtool;
});
attr = callPackage ../development/libraries/attr { };
aubio = callPackage ../development/libraries/aubio { };
@@ -2830,7 +2769,7 @@ let
glfw = callPackage ../development/libraries/glfw { };
glibc = useFromStdenv "glibc" glibc211;
glibc = glibc211;
glibc25 = callPackage ../development/libraries/glibc-2.5 {
kernelHeaders = linuxHeaders;
@@ -3377,6 +3316,8 @@ let
libssh = callPackage ../development/libraries/libssh { };
libssh2 = callPackage ../development/libraries/libssh2 { };
libstartup_notification = callPackage ../development/libraries/startup-notification { };
libtasn1 = callPackage ../development/libraries/libtasn1 { };
@@ -3734,6 +3675,11 @@ let
ncurses = null;
};
sqlite36 = callPackage ../development/libraries/sqlite/3.6.x.nix {
readline = null;
ncurses = null;
};
sqliteInteractive = appendToName "interactive" (sqlite.override {
inherit readline ncurses;
});
@@ -4724,6 +4670,10 @@ let
# pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader )
pam_ccreds = callPackage ../os-specific/linux/pam_ccreds {
db = db4;
};
pam_console = callPackage ../os-specific/linux/pam_console {
libtool = libtool_1_5;
flex = if stdenv.system == "i686-linux" then flex else flex2533;
@@ -4731,6 +4681,8 @@ let
pam_devperm = callPackage ../os-specific/linux/pam_devperm { };
pam_krb5 = callPackage ../os-specific/linux/pam_krb5 { };
pam_ldap = callPackage ../os-specific/linux/pam_ldap { };
pam_login = callPackage ../os-specific/linux/pam_login { };
@@ -5988,7 +5940,7 @@ let
};
rsync = callPackage ../applications/networking/sync/rsync {
enableACLs = !stdenv.isDarwin;
enableACLs = !(stdenv.isDarwin || stdenv.isSunOS);
};
rxvt = callPackage ../applications/misc/rxvt { };

View File

@@ -904,7 +904,7 @@ rec {
DBDSQLite = import ../development/perl-modules/DBD-SQLite {
inherit fetchurl buildPerlPackage DBI;
inherit (pkgs) sqlite;
sqlite = pkgs.sqlite36;
};
DBDmysql = import ../development/perl-modules/DBD-mysql {