* Added Subversion 1.5.0. Some features probably don't work yet

(building the Apache modules, building various language bindings).
* Neon 0.28.2.  Also kept Neon 0.26.x because Subversion 1.4.x needs
  it.

svn path=/nixpkgs/trunk/; revision=12162
This commit is contained in:
Eelco Dolstra 2008-06-19 15:29:25 +00:00
parent 8b3a7e2713
commit 9663d4c76a
5 changed files with 146 additions and 26 deletions

View File

@ -0,0 +1,59 @@
{ bdbSupport ? false # build support for Berkeley DB repositories
, httpServer ? false # build Apache DAV module
, httpSupport ? false # client must support http
, sslSupport ? false # client must support https
, compressionSupport ? false # client must support http compression
, pythonBindings ? false
, perlBindings ? false
, javahlBindings ? false
, stdenv, fetchurl, apr, aprutil, neon, zlib
, httpd ? null, expat, swig ? null, jdk ? null
}:
assert bdbSupport -> aprutil.bdbSupport;
assert httpServer -> httpd != null && httpd.expat == expat;
assert pythonBindings -> swig != null && swig.pythonSupport;
assert javahlBindings -> jdk != null;
assert sslSupport -> neon.sslSupport;
assert compressionSupport -> neon.compressionSupport;
stdenv.mkDerivation rec {
version = "1.5.0";
name = "subversion-${version}";
#builder = ./builder.sh;
src = fetchurl {
url = http://subversion.tigris.org/downloads/subversion-1.5.0.tar.bz2;
sha1 = "1236a32521b4d8c02261cdc567f6a33d9623f51f";
};
buildInputs = [zlib apr aprutil]
++ stdenv.lib.optional httpSupport neon;
configureFlags = ''
--disable-static
--disable-keychain
${if bdbSupport then "--with-berkeley-db" else "--without-berkeley-db"}
${if httpServer then
"--with-apxs=${httpd}/bin/apxs --with-apr=${httpd} --with-apr-util=${httpd}"
else
"--without-apxs"}
${if pythonBindings || perlBindings then "--with-swig=${swig}" else "--without-swig"}
${if javahlBindings then "--enable-javahl --with-jdk=${jdk}" else ""}
--disable-neon-version-check
'';
passthru = {
inherit perlBindings pythonBindings;
python = if swig != null && swig ? python then swig.python else null;
};
meta = {
description = "A version control system intended to be a compelling replacement for CVS in the open source community";
homepage = http://subversion.tigris.org/;
};
}

View File

@ -0,0 +1,31 @@
{ stdenv, fetchurl, libxml2
, compressionSupport ? true, zlib ? null
, sslSupport ? true, openssl ? null
}:
assert compressionSupport -> zlib != null;
assert sslSupport -> openssl != null;
stdenv.mkDerivation {
name = "neon-0.26.4";
src = fetchurl {
url = http://www.webdav.org/neon/neon-0.26.4.tar.gz;
sha256 = "1pjrn5wb18gy419293hmwd02blmh36aaxsrgajm9nkkkjzqakncj";
};
buildInputs = [libxml2] ++ stdenv.lib.optional compressionSupport zlib;
configureFlags = ''
--enable-shared --disable-static
${if compressionSupport then "--with-zlib" else "--without-zlib"}
${if sslSupport then "--with-ssl --with-libs=${openssl}" else "--without-ssl"}
'';
passthru = {inherit compressionSupport sslSupport;};
meta = {
description = "An HTTP and WebDAV client library";
homepage = http://www.webdav.org/neon/;
};
}

View File

@ -0,0 +1,31 @@
{ stdenv, fetchurl, libxml2
, compressionSupport ? true, zlib ? null
, sslSupport ? true, openssl ? null
}:
assert compressionSupport -> zlib != null;
assert sslSupport -> openssl != null;
stdenv.mkDerivation {
name = "neon-0.28.2";
src = fetchurl {
url = http://www.webdav.org/neon/neon-0.28.2.tar.gz;
sha256 = "154hzy2xa8a1dfdrjcggkik6dhpq1f5r1q2masrgysnv2cb61kfr";
};
buildInputs = [libxml2] ++ stdenv.lib.optional compressionSupport zlib;
configureFlags = ''
--enable-shared --disable-static
${if compressionSupport then "--with-zlib" else "--without-zlib"}
${if sslSupport then "--with-ssl --with-libs=${openssl}" else "--without-ssl"}
'';
passthru = {inherit compressionSupport sslSupport;};
meta = {
description = "An HTTP and WebDAV client library";
homepage = http://www.webdav.org/neon/;
};
}

View File

@ -1,24 +0,0 @@
{ stdenv, fetchurl, libxml2
, compressionSupport ? true, zlib ? null
, sslSupport ? true, openssl ? null
}:
assert compressionSupport -> zlib != null;
assert sslSupport -> openssl != null;
(stdenv.mkDerivation {
name = "neon-0.26.3";
src = fetchurl {
url = http://www.webdav.org/neon/neon-0.26.3.tar.gz;
sha256 = "0gvv5a5z0fmfhdvz5qb1zb1z30jlml1y03hjzg8dn9246nw7z2dn";
};
buildInputs = [libxml2] ++ (if compressionSupport then [zlib] else []);
configureFlags="
--enable-shared --disable-static
${if compressionSupport then "--with-zlib" else "--without-zlib"}
${if sslSupport then "--with-ssl --with-libs=${openssl}" else "--without-ssl"}
";
}) // {inherit compressionSupport sslSupport;}

View File

@ -3113,7 +3113,15 @@ let pkgs = rec {
stdenv = useDietLibC stdenv;
};
neon = import ../development/libraries/neon {
neon = neon026;
neon026 = import ../development/libraries/neon/0.26.nix {
inherit fetchurl stdenv libxml2 zlib openssl;
compressionSupport = true;
sslSupport = true;
};
neon028 = import ../development/libraries/neon/0.28.nix {
inherit fetchurl stdenv libxml2 zlib openssl;
compressionSupport = true;
sslSupport = true;
@ -6311,7 +6319,8 @@ let pkgs = rec {
subversion = subversion14;
subversion14 = import ../applications/version-management/subversion-1.4.x {
inherit fetchurl stdenv apr aprutil neon expat swig zlib jdk;
inherit fetchurl stdenv apr aprutil expat swig zlib jdk;
neon = neon026;
bdbSupport = getConfig ["subversion" "bdbSupport"] true;
httpServer = getConfig ["subversion" "httpServer"] false;
sslSupport = getConfig ["subversion" "sslSupport"] true;
@ -6324,6 +6333,20 @@ let pkgs = rec {
subversion14svnmerge = svnmergeFun subversion14;
subversion15 = import ../applications/version-management/subversion-1.5.x {
inherit fetchurl stdenv apr aprutil expat swig zlib jdk;
neon = neon028;
bdbSupport = getConfig ["subversion" "bdbSupport"] true;
httpServer = getConfig ["subversion" "httpServer"] false;
httpSupport = getConfig ["subversion" "httpSupport"] true;
sslSupport = getConfig ["subversion" "sslSupport"] true;
pythonBindings = getConfig ["subversion" "pythonBindings"] false;
perlBindings = getConfig ["subversion" "perlBindings"] false;
javahlBindings = getConfig ["subversion" "javahlBindings"] false;
compressionSupport = getConfig ["subversion" "compressionSupport"] true;
httpd = apacheHttpd;
};
svk = perlSVK;
svnmergeFun = subversion : (import ../applications/version-management/subversion-1.4.x/svnmerge.nix ) {