blob: 746331adbf898378f8cdb6fee57e78223a3e9acf (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
pkgs: attrs: with pkgs; with attrs; rec {
version = "5.0.0";
src = fetchFromGitHub {
owner = "apache";
repo = "arrow";
rev = "apache-arrow-${version}";
sha256 = "0plks5f4rv91qj0d9khmd45wi4a0khrp0g7ww430hp7a69306x5x";
};
patches = [ ];
preConfigure = "";
buildInputs = [
boost
brotli
flatbuffers
gflags
lz4
protobuf
rapidjson
re2
snappy
thrift
utf8proc
zlib
zstd
python3
python3Packages.numpy
];
cmakeFlags = [
# It turns out arrow-cpp CMakeLists doesn"t support default MinSizeRel
"-DCMAKE_BUILD_TYPE=Release"
# Python requires compatible version for later usage,
# setup this when needed for the bindings.
"-DARROW_PYTHON=ON"
"-DARROW_FILESYSTEM=OFF"
"-DARROW_PLASMA=OFF"
"-DARROW_PLASMA_JAVA_CLIENT=OFF"
"-DARROW_HDFS=OFF"
# Before enabling jemalloc see JEMALLOC_MANGLE define inside arrow code
"-DARROW_JEMALLOC=OFF"
"-DARROW_MIMALLOC=OFF"
# TODO: support compatible runtimes on corresponding archs (? like at openal and ffmpeg)
"-DARROW_SIMD_LEVEL=NONE"
"-DARROW_RUNTIME_SIMD_LEVEL=NONE"
# Hack to avoid generation of platform-specific sources and removing them when
# no runtime is selected (see above todo).
"-DARROW_CPU_FLAG=none"
# Needs fixing several compilation errors and googletest provides usage
"-DARROW_BUILD_TESTS=OFF"
"-DARROW_COMPUTE=ON"
"-DARROW_ORC=ON"
"-DARROW_PARQUET=ON"
"-DARROW_CSV=ON"
"-DARROW_USE_GLOG=OFF"
"-DARROW_WITH_BROTLI=ON"
"-DARROW_WITH_BACKTRACE=OFF"
# build only C++ part of the library
"../cpp"
];
sourceRoot = "source";
}
|