summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/compilers/qcmm/builder.sh22
-rw-r--r--pkgs/development/compilers/qcmm/default.nix12
-rw-r--r--pkgs/development/compilers/qcmm/qcmm.patch109
-rw-r--r--pkgs/development/interpreters/lua-4/builder.sh6
-rw-r--r--pkgs/development/interpreters/lua-4/default.nix10
-rw-r--r--pkgs/development/interpreters/lua-5/builder.sh6
-rw-r--r--pkgs/development/interpreters/lua-5/default.nix10
-rw-r--r--pkgs/development/tools/build-managers/mk/builder.sh4
-rw-r--r--pkgs/development/tools/build-managers/mk/default.nix10
-rw-r--r--pkgs/development/tools/haskell/uuagc/default.nix2
-rw-r--r--pkgs/development/tools/literate-programming/noweb/builder.sh11
-rw-r--r--pkgs/development/tools/literate-programming/noweb/default.nix10
-rw-r--r--pkgs/system/all-packages-generic.nix21
-rw-r--r--pkgs/system/populate-cache.nix2
14 files changed, 234 insertions, 1 deletions
diff --git a/pkgs/development/compilers/qcmm/builder.sh b/pkgs/development/compilers/qcmm/builder.sh
new file mode 100644
index 00000000000..c1850306cc2
--- /dev/null
+++ b/pkgs/development/compilers/qcmm/builder.sh
@@ -0,0 +1,22 @@
+source $stdenv/setup
+
+configureFlags="--with-lua=$lua"
+
+MKFLAGS="-w$lua/include/lauxlib.h,$lua/include/luadebug.h,$lua/include/lua.h,$lua/include/lualib.h"
+
+buildPhase() {
+  mk timestamps
+  mk $MKFLAGS all all.opt
+}
+
+installPhase() {
+mk $MKFLAGS install install.opt
+find $out -name \*.a -exec echo stripping {} \; \
+            -exec strip -S {} \; || fail
+patchELF $out
+}
+
+buildPhase=buildPhase
+installPhase=installPhase
+
+genericBuild
diff --git a/pkgs/development/compilers/qcmm/default.nix b/pkgs/development/compilers/qcmm/default.nix
new file mode 100644
index 00000000000..09807f22a97
--- /dev/null
+++ b/pkgs/development/compilers/qcmm/default.nix
@@ -0,0 +1,12 @@
+{stdenv, fetchurl, mk, ocaml, noweb, lua, groff }: 
+stdenv.mkDerivation {
+  name = "qcmm-2006-01-31";
+  src = fetchurl {
+    url = http://losser.st-lab.cs.uu.nl/~cddouma/dist/qc--20060131.tar.gz;
+    md5 = "9097830775bcf22c9bad54f389f5db23";
+  };
+  buildInputs = [ mk ocaml noweb groff ];
+  patches = [ ./qcmm.patch ];
+  builder = ./builder.sh;
+  inherit lua;
+}
diff --git a/pkgs/development/compilers/qcmm/qcmm.patch b/pkgs/development/compilers/qcmm/qcmm.patch
new file mode 100644
index 00000000000..570d87d5fee
--- /dev/null
+++ b/pkgs/development/compilers/qcmm/qcmm.patch
@@ -0,0 +1,109 @@
+diff -ur qc--20060131.orig/configure qc--20060131/configure
+--- qc--20060131.orig/configure	2005-11-05 22:15:24.000000000 +0100
++++ qc--20060131/configure	2006-02-02 14:29:07.000000000 +0100
+@@ -93,7 +93,22 @@
+ # for file in dirs and return, full path, if found, and "" otherwise.
+ #
+ 
+-sub search { search_with( sub($) { return (-f shift) }, @_) }
++sub combine {
++    my $base = shift;
++    my $file = shift;
++    return ("$base/$file")
++};
++
++sub search { search_with( sub($) { return (-f shift) }, \&combine, @_) }
++
++sub search_suffix {
++    my $f = sub($) {
++        my $suffix = shift;
++        my $base   = shift;
++        return ($base . $suffix);
++    };
++    search_with(sub($) { return (-f shift) }, $f, @_)
++}
+ 
+ sub searchx {
+     my $f = sub($) {
+@@ -105,16 +120,17 @@
+         }
+         return (1==2); # how do you write false in perl?
+     };
+-    search_with($f, @_)
++    search_with($f, \&combine, @_)
+ }
+ 
+ sub search_with {
+     my $p    = shift;
++    my $com  = shift;
+     my $file = shift;
+    
+-    printf(LOG "searching for %-20s", $file); 
++    printf(LOG "searching for %-20s ", $file); 
+     while ($f = shift (@_)) {
+-        my $x = "$f/$file";
++        my $x = &$com($f, $file);
+         if (&$p($x)) { 
+             print LOG "found $x\n"; 
+             return $x 
+@@ -124,6 +140,20 @@
+     return "";
+ }
+ 
++#configure lua based on some known installation prefix
++sub config_lua {
++  my $base = shift;
++  @libsuffix    = ( ".so", "40.so", ".a", "40.a" );
++
++  $x{lua_h}       = "$base/include/lua.h";
++  $x{lualib_h}    = "$base/include/lualib.h";
++  $x{liblua}      = search_suffix("$base/lib/liblua", @libsuffix);
++  $x{liblualib}   = search_suffix("$base/lib/liblualib", @libsuffix);
++  $x{lua_inc}     = "-I$base/include";
++  $x{lua_lib}     = "-L$base/lib/";
++  $x{lua_libs}    = "-llua -llualib";
++}
++
+ 
+ #
+ # compile and run a small C program to find out about architecture
+@@ -183,6 +213,8 @@
+     
+     ./configure [options]
+ 
++    --with-lua=/lua/path    lua is installed in /lua/path the default
++                            is to search for standard locations
+     --prefix=/usr/local     install into the /usr/local hierarchy which
+                             is also the default
+     -h, --help              this summary
+@@ -224,15 +256,15 @@
+ # We start from here with reading the command line
+ # ------------------------------------------------------------------ 
+ 
++open (LOG, ">$configure_log") || die "cannot write configure.log: $!";
++
+ foreach (@ARGV) {
+     if       (/^--?prefix=(.*)$/)             { $x{prefix}=$1     }
+     elsif    (/^--?h(elp?)$/)                 { usage(); exit 0   }  
++    elsif    (/^--?with-lua=(.*)$/)           { config_lua($1)    }
+     else     { usage(); exit 1 }
+ }
+ 
+-
+-open (LOG, ">$configure_log") || die "cannot write configure.log: $!";
+-
+ # check for various executables and versions. Only update variable if
+ # it is not already set.
+ #
+diff -ur qc--20060131.orig/doc/mkfile qc--20060131/doc/mkfile
+--- qc--20060131.orig/doc/mkfile	2005-11-07 01:41:21.000000000 +0100
++++ qc--20060131/doc/mkfile	2006-02-02 00:38:00.000000000 +0100
+@@ -92,7 +92,7 @@
+ # and accessible from Lua as This.manual.
+ 
+ qc--.man:D:     qc--.1
+-	GROFF_NO_SGR=1 nroff -man -Tascii qc--.1 | ul -t dump > $target                
++	GROFF_NO_SGR=1 nroff -man -Tascii qc--.1 > $target                
+ 
+ release.tex:D: release.nw
+ 	noweave -delay $prereq > $target
diff --git a/pkgs/development/interpreters/lua-4/builder.sh b/pkgs/development/interpreters/lua-4/builder.sh
new file mode 100644
index 00000000000..0c19827aea6
--- /dev/null
+++ b/pkgs/development/interpreters/lua-4/builder.sh
@@ -0,0 +1,6 @@
+source $stdenv/setup
+
+makeFlags="all so sobin"
+installFlags="INSTALL_ROOT=$out"
+
+genericBuild
diff --git a/pkgs/development/interpreters/lua-4/default.nix b/pkgs/development/interpreters/lua-4/default.nix
new file mode 100644
index 00000000000..9502a9a0860
--- /dev/null
+++ b/pkgs/development/interpreters/lua-4/default.nix
@@ -0,0 +1,10 @@
+{stdenv, fetchurl}: 
+
+stdenv.mkDerivation {
+  name = "lua-4.0.1";
+  src = fetchurl {
+    url = http://www.lua.org/ftp/lua-4.0.1.tar.gz;
+    md5 = "a31d963dbdf727f9b34eee1e0d29132c";
+  };
+  builder= ./builder.sh;
+}
diff --git a/pkgs/development/interpreters/lua-5/builder.sh b/pkgs/development/interpreters/lua-5/builder.sh
new file mode 100644
index 00000000000..6d1d918d4ce
--- /dev/null
+++ b/pkgs/development/interpreters/lua-5/builder.sh
@@ -0,0 +1,6 @@
+source $stdenv/setup
+
+makeFlags="all so sobin"
+installFlags="soinstall INSTALL_ROOT=$out"
+
+genericBuild
diff --git a/pkgs/development/interpreters/lua-5/default.nix b/pkgs/development/interpreters/lua-5/default.nix
new file mode 100644
index 00000000000..73270637eed
--- /dev/null
+++ b/pkgs/development/interpreters/lua-5/default.nix
@@ -0,0 +1,10 @@
+{stdenv, fetchurl}: 
+
+stdenv.mkDerivation {
+  name = "lua-5.0.2";
+  src = fetchurl {
+    url = http://www.lua.org/ftp/lua-5.0.2.tar.gz;
+    md5 = "dea74646b7e5c621fef7174df83c34b1";
+  };
+  builder= ./builder.sh;
+}
diff --git a/pkgs/development/tools/build-managers/mk/builder.sh b/pkgs/development/tools/build-managers/mk/builder.sh
new file mode 100644
index 00000000000..73678ae9f5c
--- /dev/null
+++ b/pkgs/development/tools/build-managers/mk/builder.sh
@@ -0,0 +1,4 @@
+source $stdenv/setup
+installFlags="PREFIX=$out"
+preInstall="mkdir -p $out/man/man1 $out/bin"
+genericBuild
diff --git a/pkgs/development/tools/build-managers/mk/default.nix b/pkgs/development/tools/build-managers/mk/default.nix
new file mode 100644
index 00000000000..65c934ec332
--- /dev/null
+++ b/pkgs/development/tools/build-managers/mk/default.nix
@@ -0,0 +1,10 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation {
+  name = "mk-2006-01-31";
+  src = fetchurl {
+    url = http://losser.st-lab.cs.uu.nl/~cddouma/dist/mk-20060131.tar.gz;
+    md5 = "167fd4e0eea4f49def01984ec203289b";
+  };
+  builder = ./builder.sh;
+}
diff --git a/pkgs/development/tools/haskell/uuagc/default.nix b/pkgs/development/tools/haskell/uuagc/default.nix
index 3a6354bddc8..c3c77a36790 100644
--- a/pkgs/development/tools/haskell/uuagc/default.nix
+++ b/pkgs/development/tools/haskell/uuagc/default.nix
@@ -9,7 +9,7 @@ let {
   };
 
   body = stdenv.mkDerivation {
-    name = "uuagc";
+    name = "uuagc-0.9.1";
     src = fetchurl {
       url = http://nix.cs.uu.nl/dist/tarballs/uuagc-0.9.1-src.tar.gz;
       md5 = "0f29cad75bd759696edc61c24d1a5db9";
diff --git a/pkgs/development/tools/literate-programming/noweb/builder.sh b/pkgs/development/tools/literate-programming/noweb/builder.sh
new file mode 100644
index 00000000000..0b5e5c6f634
--- /dev/null
+++ b/pkgs/development/tools/literate-programming/noweb/builder.sh
@@ -0,0 +1,11 @@
+source $stdenv/setup
+export BIN=$out/bin
+export LIB=$out/lib
+export MAN=$out/man
+# What location for texinputs (tex macro's used by noweb)?
+export TEXINPUTS=$out/share/texmf/tex/latex
+export SHELL
+makeFlags="-e"
+installFlags="-e"
+preInstall="mkdir -p $TEXINPUTS"
+genericBuild
diff --git a/pkgs/development/tools/literate-programming/noweb/default.nix b/pkgs/development/tools/literate-programming/noweb/default.nix
new file mode 100644
index 00000000000..5a6fd0c6f10
--- /dev/null
+++ b/pkgs/development/tools/literate-programming/noweb/default.nix
@@ -0,0 +1,10 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation {
+  name = "noweb-2.10c";
+  src = fetchurl {
+    url = http://losser.st-lab.cs.uu.nl/~cddouma/dist/noweb-20060201.tar.gz;
+    md5 = "b4813c6bc0bab9004e57edc1d7e57638";
+  };
+  builder = ./builder.sh;
+}
diff --git a/pkgs/system/all-packages-generic.nix b/pkgs/system/all-packages-generic.nix
index 77a2464e040..fe11dd3d10b 100644
--- a/pkgs/system/all-packages-generic.nix
+++ b/pkgs/system/all-packages-generic.nix
@@ -439,6 +439,14 @@ rec {
     inherit fetchurl stdenv;
   };
 
+  mk = (import ../development/tools/build-managers/mk) {
+    inherit fetchurl stdenv;
+  };
+
+  noweb = (import ../development/tools/literate-programming/noweb) {
+    inherit fetchurl stdenv;
+  };
+
   scons = (import ../development/tools/build-managers/scons) {
     inherit fetchurl stdenv python;
   };
@@ -644,6 +652,11 @@ rec {
     inherit fetchurl stdenv x11;
   };
 
+  qcmm = (import ../development/compilers/qcmm) {
+    lua = lua4;
+    inherit fetchurl stdenv mk ocaml noweb groff;
+  };
+
   mono = (import ../development/compilers/mono) {
     inherit fetchurl stdenv bison pkgconfig;
     inherit (gtkLibs) glib;
@@ -747,6 +760,14 @@ rec {
     inherit fetchurl stdenv;
   };
 
+  lua4 = (import ../development/interpreters/lua-4) {
+    inherit fetchurl stdenv;
+  };
+
+  lua5 = (import ../development/interpreters/lua-5) {
+    inherit fetchurl stdenv;
+  };
+
   tcl = (import ../development/interpreters/tcl) {
     inherit fetchurl stdenv;
   };
diff --git a/pkgs/system/populate-cache.nix b/pkgs/system/populate-cache.nix
index 155b0d8d157..9cc9e76919e 100644
--- a/pkgs/system/populate-cache.nix
+++ b/pkgs/system/populate-cache.nix
@@ -67,6 +67,7 @@ let {
     libxml2
     libxslt
     lynx
+    mk
     mktemp
     mono
     mysql
@@ -82,6 +83,7 @@ let {
     postgresql
     postgresql_jdbc
     python
+    qcmm
     qt3
     qtparted
     quake3demo