nixpkgs/pkgs/development/libraries/parquet-cpp/default.nix

38 lines
1.2 KiB
Nix
Raw Normal View History

{ stdenv, symlinkJoin, fetchurl, arrow-cpp, boost, cmake, gtest, snappy, thrift, zlib }:
stdenv.mkDerivation rec {
name = "parquet-cpp-${version}";
version = "1.4.0";
src = fetchurl {
url = "https://github.com/apache/parquet-cpp/archive/apache-${name}.tar.gz";
sha256 = "1kn7pjzi5san5f05qbl8l8znqsa3f9cq9bflfr4s2jfwr7k9p2aj";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ boost ];
preConfigure = ''
substituteInPlace cmake_modules/FindThrift.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
substituteInPlace cmake_modules/FindSnappy.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
'';
ARROW_HOME = arrow-cpp;
THRIFT_HOME = thrift;
GTEST_HOME = gtest;
SNAPPY_HOME = symlinkJoin { name="snappy-wrap"; paths = [ snappy snappy.dev ]; };
ZLIB_HOME = symlinkJoin { name="zlib-wrap"; paths = [ zlib.dev zlib.static ]; };
cmakeFlags = [
"-DPARQUET_BUILD_BENCHMARKS=OFF"
];
meta = {
description = "A C++ library to read and write the Apache Parquet columnar data format";
homepage = http://parquet.apache.org;
license = stdenv.lib.licenses.asl20;
platforms = stdenv.lib.platforms.unix;
maintainers = with stdenv.lib.maintainers; [ veprbl ];
};
}