ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
45 lines
1.3 KiB
Nix
45 lines
1.3 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchurl
|
|
, fetchpatch
|
|
, cmake
|
|
, boost
|
|
, python3
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "avro-c++";
|
|
version = "1.11.3";
|
|
|
|
src = fetchurl {
|
|
url = "mirror://apache/avro/avro-${version}/cpp/avro-cpp-${version}.tar.gz";
|
|
hash = "sha256-+6JCrvd+yBnQdWH8upN1FyGVbejQyujh8vMAtUszG64=";
|
|
};
|
|
patches = [
|
|
# This patch fixes boost compatibility and can be removed when
|
|
# upgrading beyond 1.11.3 https://github.com/apache/avro/pull/1920
|
|
(fetchpatch {
|
|
name = "fix-boost-compatibility.patch";
|
|
url = "https://github.com/apache/avro/commit/016323828f147f185d03f50d2223a2f50bfafce1.patch";
|
|
hash = "sha256-hP/5J2JzSplMvg8EjEk98Vim8DfTyZ4hZ/WGiVwvM1A=";
|
|
})
|
|
];
|
|
patchFlags = [ "-p3" ];
|
|
|
|
nativeBuildInputs = [ cmake python3 ];
|
|
buildInputs = [ boost ];
|
|
|
|
preConfigure = ''
|
|
substituteInPlace test/SchemaTests.cc --replace "BOOST_CHECKPOINT" "BOOST_TEST_CHECKPOINT"
|
|
substituteInPlace test/buffertest.cc --replace "BOOST_MESSAGE" "BOOST_TEST_MESSAGE"
|
|
'';
|
|
|
|
meta = {
|
|
description = "A C++ library which implements parts of the Avro Specification";
|
|
mainProgram = "avrogencpp";
|
|
homepage = "https://avro.apache.org/";
|
|
license = lib.licenses.asl20;
|
|
maintainers = with lib.maintainers; [ rasendubi ];
|
|
platforms = lib.platforms.all;
|
|
};
|
|
}
|