From 83e547525166f120435db61edd540fd836e1a51c Mon Sep 17 00:00:00 2001
From: Michael Raskin <7c6f434c@mail.ru>
Date: Sun, 25 Nov 2007 18:35:33 +0000
Subject: [PATCH] Added indent

svn path=/nixpkgs/trunk/; revision=9790
---
 pkgs/development/tools/misc/indent/2.2.9.nix  | 28 +++++++++++++++++++
 .../development/tools/misc/indent/default.nix |  9 ++++++
 pkgs/top-level/all-packages.nix               |  8 ++++++
 3 files changed, 45 insertions(+)
 create mode 100644 pkgs/development/tools/misc/indent/2.2.9.nix
 create mode 100644 pkgs/development/tools/misc/indent/default.nix

diff --git a/pkgs/development/tools/misc/indent/2.2.9.nix b/pkgs/development/tools/misc/indent/2.2.9.nix
new file mode 100644
index 00000000000..d7e91abcf83
--- /dev/null
+++ b/pkgs/development/tools/misc/indent/2.2.9.nix
@@ -0,0 +1,28 @@
+args : with args;
+	with builderDefs {
+		src = /* put a fetchurl here */
+		fetchurl {
+			url = ftp://ftp.gnu.org/gnu/indent/indent-2.2.9.tar.gz;
+			sha256 = "0rp4divzv5xyflm8ixpp2isa092n0nmhgmhvz56db7k3lnyqg4qb";
+		};
+
+		buildInputs = [];
+		configureFlags = [];
+	} null; /* null is a terminator for sumArgs */
+let 
+	preBuild = FullDepEntry ("
+		sed -e '/extern FILE [*]output/i#ifndef OUTPUT_DEFINED_ELSEWHERE' -i src/indent.h
+		sed -e '/extern FILE [*]output/a#endif' -i src/indent.h
+		sed -e '1i#define OUTPUT_DEFINED_ELSEWHERE 1' -i src/output.c
+	") [minInit doUnpack];
+in
+stdenv.mkDerivation rec {
+	name = "indent";
+	builder = writeScript (name + "-builder")
+		(textClosure [doConfigure preBuild doMakeInstall doForceShare doPropagate]);
+	meta = {
+		description = "
+	GNU Indent - a source text formatter.
+";
+	};
+}
diff --git a/pkgs/development/tools/misc/indent/default.nix b/pkgs/development/tools/misc/indent/default.nix
new file mode 100644
index 00000000000..2fd30577441
--- /dev/null
+++ b/pkgs/development/tools/misc/indent/default.nix
@@ -0,0 +1,9 @@
+let
+    realPath=y: (__toPath ((toString ./JustNothing/.. )+"/"+y.version+".nix"));
+    dispatch=(x: ((import (realPath x)) x)); 
+in
+args : 
+with args; 
+with builderDefs {src="";} null;  
+let eater=(lib.sumArgs dispatch args); in
+eater
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 1f222c3b1f9..8020e628a62 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1414,6 +1414,14 @@ rec {
     inherit fetchurl stdenv perl perlXMLSimple;
   };
 
+  indentFun = import ../development/tools/misc/indent {
+    inherit fetchurl stdenv builderDefs;
+  };
+
+  indent = indentFun {
+    version = "2.2.9";
+  } null;
+
   jikespg = import ../development/tools/parsing/jikespg {
     inherit fetchurl stdenv;
   };