]> git.proxmox.com Git - ceph.git/blob - ceph/src/arrow/dev/tasks/homebrew-formulae/apache-arrow.rb
import quincy 17.2.0
[ceph.git] / ceph / src / arrow / dev / tasks / homebrew-formulae / apache-arrow.rb
1 class ApacheArrow < Formula
2 desc "Columnar in-memory analytics layer designed to accelerate big data"
3 homepage "https://arrow.apache.org/"
4 url "https://www.apache.org/dyn/closer.lua?path=arrow/arrow-6.0.1/apache-arrow-6.0.1.tar.gz"
5 sha256 "9948ddb6d4798b51552d0dca3252dd6e3a7d0f9702714fc6f5a1b59397ce1d28"
6 license "Apache-2.0"
7 head "https://github.com/apache/arrow.git"
8
9 depends_on "boost" => :build
10 depends_on "cmake" => :build
11 depends_on "llvm" => :build
12 depends_on "brotli"
13 depends_on "glog"
14 depends_on "grpc"
15 depends_on "lz4"
16 depends_on "numpy"
17 depends_on "openssl@1.1"
18 depends_on "protobuf"
19 depends_on "python@3.9"
20 depends_on "rapidjson"
21 depends_on "snappy"
22 depends_on "thrift"
23 depends_on "zstd"
24
25 def install
26 ENV.cxx11
27 # link against system libc++ instead of llvm provided libc++
28 ENV.remove "HOMEBREW_LIBRARY_PATHS", Formula["llvm"].opt_lib
29 args = %W[
30 -DARROW_FLIGHT=ON
31 -DARROW_GANDIVA=ON
32 -DARROW_JEMALLOC=ON
33 -DARROW_MIMALLOC=ON
34 -DARROW_ORC=ON
35 -DARROW_PARQUET=ON
36 -DARROW_PLASMA=ON
37 -DARROW_PROTOBUF_USE_SHARED=ON
38 -DARROW_PYTHON=ON
39 -DARROW_WITH_BZ2=ON
40 -DARROW_WITH_ZLIB=ON
41 -DARROW_WITH_ZSTD=ON
42 -DARROW_WITH_LZ4=ON
43 -DARROW_WITH_SNAPPY=ON
44 -DARROW_WITH_BROTLI=ON
45 -DARROW_INSTALL_NAME_RPATH=OFF
46 -DPython3_EXECUTABLE=#{Formula["python@3.9"].bin/"python3"}
47 ]
48 # Re-enable -DARROW_S3=ON and add back aws-sdk-cpp to depends_on in ARROW-6437
49
50 mkdir "build"
51 cd "build" do
52 system "cmake", "../cpp", *std_cmake_args, *args
53 system "make"
54 system "make", "install"
55 end
56 end
57
58 test do
59 (testpath/"test.cpp").write <<~EOS
60 #include "arrow/api.h"
61 int main(void) {
62 arrow::int64();
63 return 0;
64 }
65 EOS
66 system ENV.cxx, "test.cpp", "-std=c++11", "-I#{include}", "-L#{lib}", "-larrow", "-o", "test"
67 system "./test"
68 end
69 end