From 6cffff9de199446a0204670ad9d2138bfe466a60 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 3 Aug 2010 10:55:58 +0000 Subject: [PATCH] pkgs/tools/archivers/cpio: revert to version 2.9 The latest version, 2.11, doesn't compile on Darwin. The build expression for 2.11 is still still available in "latest.nix". svn path=/nixpkgs/trunk/; revision=22923 --- pkgs/tools/archivers/cpio/default.nix | 49 ++++++++------------------- pkgs/tools/archivers/cpio/latest.nix | 45 ++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 35 deletions(-) create mode 100644 pkgs/tools/archivers/cpio/latest.nix diff --git a/pkgs/tools/archivers/cpio/default.nix b/pkgs/tools/archivers/cpio/default.nix index 8e14ff178660..1700f03d7bd8 100644 --- a/pkgs/tools/archivers/cpio/default.nix +++ b/pkgs/tools/archivers/cpio/default.nix @@ -1,45 +1,24 @@ {stdenv, fetchurl}: -stdenv.mkDerivation ({ - name = "cpio-2.11"; - +stdenv.mkDerivation { + name = "cpio-2.9"; + src = fetchurl { - url = mirror://gnu/cpio/cpio-2.11.tar.bz2; - sha256 = "1gavgpzqwgkpagjxw72xgxz52y1ifgz0ckqh8g7cckz7jvyhp0mv"; + url = mirror://gnu/cpio/cpio-2.9.tar.bz2; + sha256 = "01s7f9hg8kgpis96j99hgkiqgdy53pm7qi7bhm3fzx58jfk5z6mv"; }; - # Tests fail on Darwin, see - # for - # details. - doCheck = !stdenv.isDarwin; + patches = [ + # Make it compile on GCC 4.3. + (fetchurl { + name = "cpio-2.9-gnu-inline.patch"; + url = "http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/app-arch/cpio/files/cpio-2.9-gnu-inline.patch?rev=1.1"; + sha256 = "1167hrq64h9lh3qhgasm2rivfzkkgx6fik92b017qfa0q61ff8c3"; + }) + ]; meta = { homepage = http://www.gnu.org/software/cpio/; - description = "GNU cpio, a program to create or extract from cpio archives"; - - longDescription = - '' GNU cpio copies files into or out of a cpio or tar archive. The - archive can be another file on the disk, a magnetic tape, or a pipe. - - GNU cpio supports the following archive formats: binary, old ASCII, - new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1 - tar. The tar format is provided for compatability with the tar - program. By default, cpio creates binary format archives, for - compatibility with older cpio programs. When extracting from - archives, cpio automatically recognizes which kind of archive it is - reading and can read archives created on machines with a different - byte-order. - ''; - - license = "GPLv3+"; - - maintainers = [ stdenv.lib.maintainers.ludo ]; - platforms = stdenv.lib.platforms.all; + description = "A program to create or extract from cpio archives"; }; } - -// - -(if stdenv.isLinux - then {} - else { patches = [ ./darwin-fix.patch ]; })) diff --git a/pkgs/tools/archivers/cpio/latest.nix b/pkgs/tools/archivers/cpio/latest.nix new file mode 100644 index 000000000000..8e14ff178660 --- /dev/null +++ b/pkgs/tools/archivers/cpio/latest.nix @@ -0,0 +1,45 @@ +{stdenv, fetchurl}: + +stdenv.mkDerivation ({ + name = "cpio-2.11"; + + src = fetchurl { + url = mirror://gnu/cpio/cpio-2.11.tar.bz2; + sha256 = "1gavgpzqwgkpagjxw72xgxz52y1ifgz0ckqh8g7cckz7jvyhp0mv"; + }; + + # Tests fail on Darwin, see + # for + # details. + doCheck = !stdenv.isDarwin; + + meta = { + homepage = http://www.gnu.org/software/cpio/; + description = "GNU cpio, a program to create or extract from cpio archives"; + + longDescription = + '' GNU cpio copies files into or out of a cpio or tar archive. The + archive can be another file on the disk, a magnetic tape, or a pipe. + + GNU cpio supports the following archive formats: binary, old ASCII, + new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1 + tar. The tar format is provided for compatability with the tar + program. By default, cpio creates binary format archives, for + compatibility with older cpio programs. When extracting from + archives, cpio automatically recognizes which kind of archive it is + reading and can read archives created on machines with a different + byte-order. + ''; + + license = "GPLv3+"; + + maintainers = [ stdenv.lib.maintainers.ludo ]; + platforms = stdenv.lib.platforms.all; + }; +} + +// + +(if stdenv.isLinux + then {} + else { patches = [ ./darwin-fix.patch ]; }))