From e6cf1abcec26d701909666f886bb895cdc7df47f Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 13 Apr 2009 18:38:45 +0000 Subject: [PATCH] * bash: updated to 4.0 patchlevel 17. Removed the dietlibc patch, we don't need it anymore. svn path=/nixpkgs/branches/stdenv-updates/; revision=15018 --- pkgs/shells/bash/default.nix | 39 +++++++++++++++++++++++++++------ pkgs/shells/bash/winsize.patch | 14 ------------ pkgs/top-level/all-packages.nix | 13 ++++++----- 3 files changed, 39 insertions(+), 27 deletions(-) delete mode 100644 pkgs/shells/bash/winsize.patch diff --git a/pkgs/shells/bash/default.nix b/pkgs/shells/bash/default.nix index 3cc31ec4ec7a..8d1b19e3abbc 100644 --- a/pkgs/shells/bash/default.nix +++ b/pkgs/shells/bash/default.nix @@ -1,9 +1,9 @@ -{stdenv, fetchurl, readline ? null, interactive ? false, texinfo ? null}: +{stdenv, fetchurl, readline ? null, interactive ? false, texinfo ? null, bison}: assert interactive -> readline != null; stdenv.mkDerivation rec { - name = "bash-4.0"; + name = "bash-4.0-p17"; src = fetchurl { url = "mirror://gnu/bash/${name}.tar.gz"; @@ -21,12 +21,37 @@ stdenv.mkDerivation rec { postInstall = "ln -s bash $out/bin/sh"; - patches = [ - # For dietlibc builds. - ./winsize.patch - ]; + patchFlags = "-p0"; - buildInputs = [] + patches = + let + patch = nr: sha256: + fetchurl { + url = "mirror://gnu/bash/bash-4.0-patches/bash40-${nr}"; + inherit sha256; + }; + in [ + (patch "001" "06q3y3i2kp09bnjd99lxa95psdmj2haril7pxhdbz9sx9qh19dg3") + (patch "002" "1x2w3mmz1qga30zf95wmnpjsdp8cnd2ljl29mfq9r6q1cvjifla9") + (patch "003" "1n3vg6p4nc7kd896s0fp48y9f6ddf3bkpdqzgmdpgqxi243c8073") + (patch "004" "1bnja962g9isrqhrw8dzxsx7ssvc2ayk1a9vmg2dx6gai8gys0sb") + (patch "005" "0l4l62riap2kqy20789x7f6bfx361yvixds0gnh10rli4v05h1j2") + (patch "006" "1r429n2b5cs2gi5zjv1hlr8k7jplnjg3y563369z799x1x9651y7") + (patch "007" "0vb11vy8r5ayr88hrlli8xj2qcird1qg8l99nknrwnni4jg5b3am") + (patch "008" "1z6q0lq1yxwpf6nf1z39jbyycv6cfv6gwpaqmgg7pnw31z029nw7") + (patch "009" "0avyvz8rkj66x715zf1b3w2pgbwwzaj977v9pcrscjksc50c4iq0") + (patch "010" "05j8xq2s1wnii1za1s6nglzga9xp7q1dmcs1bqqrlggz8mmnyhgj") + (patch "011" "1m2lhfhy6bl3j88qi9kcn6n1qb439n8pmhl4cqsmi2g8xwli9j7z") + (patch "012" "1ww327ga4s7607jgr0xd6nh8bg4xgf2vk63p2yy9b1iaq7lxdi5j") + (patch "013" "0fjc3qj4q6q2zfq1qmiarp6s4hhbh80q47xwws0mvgpks7wwl33n") + (patch "014" "16n3l7627n8b1p9s9ss9fcj7nbn1s6yndwmlh3v751knj73c9v8k") + (patch "015" "0548fm4vd3sv3y4g3csysm1mm7jk5hvyfwglw1c0pj2lvyzf583v") + (patch "016" "06fmf6jmgzl0x1vd7pkyi90sa1wjywkd42gi1phqmrwgj9p96flg") + (patch "017" "08gh63spac39z90n1d8gpx571x7n4bwzp2yqm3ik9c1rcgz2mvib") + ]; + + # Note: Bison is needed because the patches above modify parse.y. + buildInputs = [bison] ++ stdenv.lib.optional (texinfo != null) texinfo ++ stdenv.lib.optional interactive readline; diff --git a/pkgs/shells/bash/winsize.patch b/pkgs/shells/bash/winsize.patch deleted file mode 100644 index bbe4151e0cc7..000000000000 --- a/pkgs/shells/bash/winsize.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -rc bash-3.1-orig/lib/sh/winsize.c bash-3.1/lib/sh/winsize.c -*** bash-3.1-orig/lib/sh/winsize.c 2006-10-18 18:08:25.000000000 +0200 ---- bash-3.1/lib/sh/winsize.c 2006-10-18 18:10:00.000000000 +0200 -*************** -*** 30,35 **** ---- 30,37 ---- - - #include - -+ #include -+ - #if !defined (STRUCT_WINSIZE_IN_SYS_IOCTL) - /* For struct winsize on SCO */ - /* sys/ptem.h has winsize but needs mblk_t from sys/stream.h */ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1680299e4303..578207233d39 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1454,13 +1454,14 @@ let ### SHELLS - bash = lowPrio (useFromStdenv "bash" - (import ../shells/bash { - inherit fetchurl stdenv; - })); + bash = lowPrio (useFromStdenv "bash" bashReal); - bashInteractive = appendToName "interactive" (import ../shells/bash { - inherit fetchurl stdenv readline; + bashReal = makeOverridable (import ../shells/bash) { + inherit fetchurl stdenv bison; + }; + + bashInteractive = appendToName "interactive" (bashReal.override { + inherit readline; interactive = true; });