adding neko

adding repository locations for haxe* and neko repositories

svn path=/nixpkgs/trunk/; revision=18709
This commit is contained in:
Marc Weber 2009-11-30 01:05:07 +00:00
parent c5b2c2c40a
commit 4a999a3811
5 changed files with 136 additions and 0 deletions

View File

@ -0,0 +1,55 @@
args: with args;
let
inherit (args.composableDerivation) composableDerivation edf wwf;
libs = [ mysql apacheHttpd zlib sqlite pcre apr gtk];
includes = lib.concatMapStrings (x: ''"${x}/include",'' ) libs + ''"{gkt}/include/gtk-2.0",'';
in
composableDerivation {} ( fixed : {
name = "neko-cvs";
src = sourceByName "neko";
# optionally remove apache mysql like gentoo does?
# they just remove libs/{apache,mod_neko}
buildInputs = [boehmgc pkgconfig makeWrapper] ++ libs;
# apr should be in apacheHttpd propagatedBuildInputs
preConfigure = ''
sed -i \
-e 's@"/usr/include",@${includes}@' \
src/tools/install.neko
sed -i "s@/usr/local@$out@" Makefile
ensureDir $out/{bin,lib}
'';
inherit zlib;
meta = {
description = "Neko is an high-level dynamicly typed programming language";
homepage = http://nekovm.org;
license = ["GPLv2" ]; # -> docs/license.txt
maintainers = [args.lib.maintainers.marcweber];
platforms = args.lib.platforms.linux;
};
# if stripping was done neko and nekoc would be the same. ?!
dontStrip = 1;
postInstall = ''
wrapProgram "$out/bin/nekoc" \
--set "LD_LIBRARY_PATH" $out/lib/neko \
wrapProgram "$out/bin/neko" \
--set "LD_LIBRARY_PATH" $out/lib/neko \
'';
# TODO make them optional and make them work
patches = [ ./disable-modules.patch ];
})

View File

@ -0,0 +1,59 @@
diff --git a/src/tools/install.neko b/src/tools/install.neko
index 4cffa5e..5702add 100644
--- a/src/tools/install.neko
+++ b/src/tools/install.neko
@@ -39,26 +39,6 @@ buffer_string = $loader.loadprim("std@buffer_string",1);
// LIBS DATAS
libs = {
- mod_neko => {
- src => $array("../../vm/stats","mod_neko","cgi"),
- inc => "httpd.h",
- incname => "Apache 1.3.x"
- },
- mod_neko2 => {
- src => $array("../../vm/stats","mod_neko","cgi"),
- inc => $array("httpd.h","apr.h"),
- incname => "Apache 2.2.x",
- cflags => "-D_LARGEFILE64_SOURCE",
- realdir => "mod_neko",
- apache2 => true,
- },
- mysql => {
- src => $array("mysql"),
- inc => "mysql.h",
- incname => "MySQL 4.+"
- lib => "libmysqlclient_r.a",
- lparams => "-lz -lssl"
- },
mysql5 => {
src => $array("../common/sha1","../common/socket","my_proto/my_proto","my_proto/my_api","mysql"),
inc => $array(),
@@ -83,27 +63,6 @@ libs = {
incname => "Sqlite 3",
lparams => "-lsqlite3",
},
- ui => {
- src => $array("ui"),
- inc => switch system { "Mac" => "Carbon.h" default => "gtk/gtk.h" },
- incname => switch system { "Mac" => "Carbon" default => "GTK+2.0" },
- cflags => switch system { "Mac" => "" default => "`pkg-config --cflags gtk+-2.0`" },
- lparams => switch system { "Mac" => "-framework Carbon" default => "`pkg-config --libs gtk+-2.0` -lgthread-2.0" },
- },
- mod_tora => {
- src => $array("../common/socket","protocol","mod_tora"),
- inc => "httpd.h",
- incname => "Apache 1.3.x",
- cflags => "-I../common",
- },
- mod_tora2 => {
- src => $array("../common/socket","protocol","mod_tora"),
- inc => $array("httpd.h","apr.h"),
- incname => "Apache 2.2.x",
- cflags => "-D_LARGEFILE64_SOURCE -I../common",
- realdir => "mod_tora",
- apache2 => true,
- },
}
// PLATFORM

View File

@ -90,5 +90,16 @@ args:
libdom = { type = "svn"; url = "svn://svn.netsurf-browser.org/trunk/dom"; groups = "netsurf_group"; };
netsurf_haru = { type = "svn"; url = "svn://svn.netsurf-browser.org/trunk/libharu"; groups = "netsurf_group"; };
# haxe
haxe = { type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "haxe"; groups = "haxe_group"; };
haxe_swflib = { type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/swflib"; groups = "haxe_group"; };
haxe_extc = { type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/extc"; groups = "haxe_group"; };
haxe_extlib_dev = { type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/extlib-dev"; groups = "haxe_group"; };
haxe_xml_light = { type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/xml-light"; groups = "haxe_group"; };
haxe_neko_include = { type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "neko/libs/include/ocaml"; groups = "haxe_group"; };
neko = { type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "neko"; };
} // kde4support // getConfig [ "bleedingEdgeRepos" "repos" ] {};
}

View File

@ -319,4 +319,8 @@
url = "http://mawercer.de/~nix/repos/haxe_xml_light-F_00-39-46.tar.gz";
sha256 = "b23004c09d5e76b76de5a1938333c1aaccf059ebe62ad25728a267df79069a43";
};
neko = args: with args; fetchurl { # Fri Nov 27 18:37:43 CET 2009
url = "http://mawercer.de/~nix/repos/neko-F_18-37-40.tar.gz";
sha256 = "eac9c6144872d741c31a1c15539672b001977e877f30f01b9649f69b4df1d97c";
};
}

View File

@ -2064,6 +2064,13 @@ let
makeWrapper graphviz which python;
};
neko = import ../development/compilers/neko {
inherit (bleedingEdgeRepos) sourceByName ;
inherit fetchurl stdenv lib pkgconfig composableDerivation boehmgc apacheHttpd
mysql zlib sqlite pcre apr makeWrapper;
inherit (gtkLibs) gtk;
};
nasm = import ../development/compilers/nasm {
inherit fetchurl stdenv;
};