Re-add HTTP/HTTPS support back to Subversion by adding serf. Tested.

This commit is contained in:
Michael Raskin 2013-12-30 23:32:53 +04:00
parent 64361fd269
commit a3843455c5
6 changed files with 65 additions and 3 deletions

View File

@ -9,7 +9,7 @@
, saslSupport ? false
, stdenv, fetchurl, apr, aprutil, neon, zlib, sqlite
, httpd ? null, expat, swig ? null, jdk ? null, python ? null, perl ? null
, sasl ? null
, sasl ? null, serf ? null
}:
assert bdbSupport -> aprutil.bdbSupport;
@ -32,6 +32,7 @@ stdenv.mkDerivation rec {
buildInputs = [ zlib apr aprutil sqlite ]
++ stdenv.lib.optional httpSupport neon
++ stdenv.lib.optional httpSupport serf
++ stdenv.lib.optional pythonBindings python
++ stdenv.lib.optional perlBindings perl
++ stdenv.lib.optional saslSupport sasl;
@ -43,6 +44,7 @@ stdenv.mkDerivation rec {
${if javahlBindings then "--enable-javahl --with-jdk=${jdk}" else ""}
${if stdenv.isDarwin then "--enable-keychain" else "--disable-keychain"}
${if saslSupport then "--enable-sasl --with-sasl=${sasl}" else "--disable-sasl"}
${if httpSupport then "--enable-serf --with-serf=${serf}" else "--disable-serf"}
--with-zlib=${zlib}
--with-sqlite=${sqlite}
'';

View File

@ -0,0 +1,45 @@
{stdenv, fetchurl, apr, scons, openssl, aprutil, zlib, krb5, pkgconfig}:
let
s = # Generated upstream information
rec {
baseName="serf";
version="1.3.3";
name="${baseName}-${version}";
hash="0axdz1bbdrgvrsqmy1j0kx54y1hhhs6xmc1j7jz4fqr9fr0y1sh2";
url="https://serf.googlecode.com/files/serf-1.3.3.tar.bz2";
sha256="0axdz1bbdrgvrsqmy1j0kx54y1hhhs6xmc1j7jz4fqr9fr0y1sh2";
};
buildInputs = [
apr scons openssl aprutil zlib krb5 pkgconfig
];
in
stdenv.mkDerivation {
inherit (s) name version;
inherit buildInputs;
src = fetchurl {
inherit (s) url sha256;
};
configurePhase = ''
sed -e '/^env[.]Append(BUILDERS/ienv.Append(ENV={"PATH":os.environ["PATH"]})' -i SConstruct
sed -e '/^env[.]Append(BUILDERS/ienv.Append(ENV={"NIX_CFLAGS_COMPILE":os.environ["NIX_CFLAGS_COMPILE"]})' -i SConstruct
sed -e '/^env[.]Append(BUILDERS/ienv.Append(ENV={"NIX_LDFLAGS":os.environ["NIX_LDFLAGS"]})' -i SConstruct
'';
buildPhase = ''
scons PREFIX="$out" OPENSSL="${openssl}" ZLIB="${zlib}" APR="$(echo "${apr}"/bin/*-config)" \
APU="$(echo "${aprutil}"/bin/*-config)" GSSAPI="${krb5}" CC="${stdenv.gcc}/bin/gcc"
'';
installPhase = ''
scons install
'';
meta = {
inherit (s) version;
description = "HTTP client library based on APR";
license = stdenv.lib.licenses.asl20 ;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
};
}

View File

@ -0,0 +1,3 @@
url https://code.google.com/p/serf/downloads/list
version_link '[.]tar[.][a-z0-9]+$'
process 'code[.]google[.]com//' ''

View File

@ -2,7 +2,7 @@
let
name = "scons";
version = "2.1.0";
version = "2.3.0";
in
stdenv.mkDerivation {
@ -10,7 +10,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "mirror://sourceforge/scons/${name}-${version}.tar.gz";
sha256 = "4139ed14f60dd2ebcd47c59984d14705636180eb27b3d1b2949489e514b1921d";
sha256 = "0jrv8v5dpdp231n1gsfmirqy27f7qas6m255jjm2qjygk6chchll";
};
buildInputs = [python makeWrapper];

View File

@ -0,0 +1,10 @@
url http://sourceforge.net/projects/scons/files/scons/
SF_version_dir
version_link '[.]tar[.]gz/download$'
SF_redirect
ensure_hash
do_overwrite() {
set_var_value version "$CURRENT_VERSION"
set_var_value sha256 "$CURRENT_HASH"
}

View File

@ -5648,6 +5648,8 @@ let
serd = callPackage ../development/libraries/serd {};
serf = callPackage ../development/libraries/serf {};
silgraphite = callPackage ../development/libraries/silgraphite {};
graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix {};