* libjpeg updated to version 8.

* libpng updated to 1.4.0.
* For libjpegStatic, use a stdenv adapter to build a static library.

svn path=/nixpkgs/branches/stdenv-updates/; revision=19605
This commit is contained in:
Eelco Dolstra 2010-01-21 21:42:17 +00:00
parent 8b4f33ac76
commit ed3ebb7c2c
4 changed files with 22 additions and 11 deletions

View File

@ -1,15 +1,13 @@
{ stdenv, fetchurl, libtool, static ? false }: { stdenv, fetchurl }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "libjpeg-7"; name = "libjpeg-8";
src = fetchurl { src = fetchurl {
url = http://www.ijg.org/files/jpegsrc.v7.tar.gz; url = http://www.ijg.org/files/jpegsrc.v8.tar.gz;
sha256 = "1gvy6f83pskxrxwnxqah3g9mhnlgi6aph39b99609gn50ri8ddsh"; sha256 = "1b0blpk8v397klssk99l6ddsb64krcb29pbkbp8ziw5kmjvsbfhp";
}; };
configureFlags = "--enable-shared ${if static then " --enable-static" else ""}";
meta = { meta = {
homepage = http://www.ijg.org/; homepage = http://www.ijg.org/;
description = "A library that implements the JPEG image file format"; description = "A library that implements the JPEG image file format";

View File

@ -3,11 +3,11 @@
assert zlib != null; assert zlib != null;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libpng-1.2.40"; name = "libpng-1.4.0";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/libpng/${name}.tar.gz"; url = "mirror://sourceforge/libpng/${name}.tar.gz";
md5 = "a2f6808735bf404967f81519a967fb2a"; md5 = "dfa01122db3be9808a8c9ace7d0580fd";
}; };
propagatedBuildInputs = [zlib]; propagatedBuildInputs = [zlib];

View File

@ -107,6 +107,19 @@ rec {
isStatic = true; isStatic = true;
} // {inherit fetchurl;}; } // {inherit fetchurl;};
# Return a modified stdenv that disables building shared libraries.
# However, executables will still be dynamically linked.
disableSharedLibraries = stdenv: stdenv //
{ mkDerivation = args: stdenv.mkDerivation (args // {
dontDisableStatic = true;
configureFlags =
(if args ? configureFlags then args.configureFlags else "")
+ " --disable-shared"; # brrr...
});
} // {inherit fetchurl;};
# Return a modified stdenv that adds a cross compiler to the # Return a modified stdenv that adds a cross compiler to the
# builds. # builds.
makeStdenvCross = stdenv: cross: binutilsCross: gccCross: stdenv // makeStdenvCross = stdenv: cross: binutilsCross: gccCross: stdenv //
@ -164,6 +177,7 @@ rec {
}; };
} // { inherit cross; }; } // { inherit cross; };
/* Modify a stdenv so that the specified attributes are added to /* Modify a stdenv so that the specified attributes are added to
every derivation returned by its mkDerivation function. every derivation returned by its mkDerivation function.
@ -267,7 +281,6 @@ rec {
/* Use the trace output to report all processed derivations with their /* Use the trace output to report all processed derivations with their
license name. license name.
*/ */
traceDrvLicenses = stdenv: stdenv // traceDrvLicenses = stdenv: stdenv //
{ mkDerivation = args: { mkDerivation = args:
@ -289,6 +302,7 @@ rec {
}; };
}; };
/* Abort if the license predicate is not verified for a derivation /* Abort if the license predicate is not verified for a derivation
declared with mkDerivation. declared with mkDerivation.

View File

@ -4172,7 +4172,6 @@ let
libjpeg = makeOverridable (import ../development/libraries/libjpeg) { libjpeg = makeOverridable (import ../development/libraries/libjpeg) {
inherit fetchurl stdenv; inherit fetchurl stdenv;
libtool = libtool_1_5;
}; };
libjpeg62 = makeOverridable (import ../development/libraries/libjpeg/62.nix) { libjpeg62 = makeOverridable (import ../development/libraries/libjpeg/62.nix) {
@ -4181,7 +4180,7 @@ let
}; };
libjpegStatic = lowPrio (appendToName "static" (libjpeg.override { libjpegStatic = lowPrio (appendToName "static" (libjpeg.override {
static = true; stdenv = disableSharedLibraries stdenv;
})); }));
libksba = import ../development/libraries/libksba { libksba = import ../development/libraries/libksba {