From 779c74f79575952e14b11bfdbe1b15ec9ce5d001 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Fri, 11 Jan 2013 16:09:07 -0500 Subject: [PATCH] Remove some artifacts of a failed attempt from replace-dependency --- pkgs/build-support/replace-dependency.nix | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/pkgs/build-support/replace-dependency.nix b/pkgs/build-support/replace-dependency.nix index 364d5548151..56f324841a8 100644 --- a/pkgs/build-support/replace-dependency.nix +++ b/pkgs/build-support/replace-dependency.nix @@ -63,18 +63,17 @@ let } | $nixStore --restore $out ''; - fn = { drv, rewritten-drvs }: rewritten-drvs // ( + rewritten-deps = listToAttrs [ {name = discard old-dependency.outPath; value = new-dependency;} ]; + + fn = drv: if depends-on-old drv then listToAttrs [ { name = discard (toString drv); - value = replace-strings drv (rewritten-drvs // (fold (drv: acc: - (fn { inherit drv rewritten-drvs; }) // acc + value = replace-strings drv (rewritten-deps // (fold (drv: acc: + (fn drv) // acc ) {} (references-of drv))); } ] - else {} - ); -in assert (stringLength old-dependency.name == stringLength new-dependency.name); getAttr (discard drv.outPath) (fn { - inherit drv; - rewritten-drvs = listToAttrs [ {name = discard old-dependency.outPath; value = new-dependency;} ]; -}) + else {}; +in assert (stringLength old-dependency.name == stringLength new-dependency.name); +getAttr (discard drv.outPath) (fn drv)