@@ -1,14 +1,30 @@
1−{ stdenv, lib, zookeeper, zookeeper_mt, fuse, autoreconfHook, log4cxx, boost }:
1+{ stdenv
2+, lib
3+, autoreconfHook
4+, gnused
5+, boost
6+, fuse
7+, log4cxx
8+, zookeeper
9+, zookeeper_mt
10+}:
211
3−stdenv.mkDerivation {
12+stdenv.mkDerivation rec {
413 pname = "zkfuse";
5− inherit (zookeeper) version src;
14+ inherit (zookeeper_mt) version src;
615
7− sourceRoot = "${zookeeper.name}/src/contrib/zkfuse";
16+ sourceRoot = "apache-${zookeeper.pname}-${version}/zookeeper-contrib/zookeeper-contrib-zkfuse";
817
9− nativeBuildInputs = [ autoreconfHook ];
18+ nativeBuildInputs = [ autoreconfHook gnused ];
1019 buildInputs = [ zookeeper_mt log4cxx boost fuse ];
1120
21+ postPatch = ''
22+ # Make the async API accessible, and use the proper include path.
23+ sed -i src/zkadapter.h \
24+ -e '/"zookeeper\.h"/i#define THREADED' \
25+ -e 's,"zookeeper\.h",<zookeeper/zookeeper.h>,'
26+ '';
27+
1228 installPhase = ''
1329 mkdir -p $out/bin
1430 cp -v src/zkfuse $out/bin
@@ -16,7 +32,7 @@ stdenv.mkDerivation {
1632
1733 meta = with lib; {
1834 platforms = platforms.linux;
19− maintainers = with maintainers; [ cstrahan ];
35+ maintainers = with maintainers; [ cstrahan ztzg ];
2036 license = licenses.asl20;
2137 };
2238}