Repository: arrow Updated Branches: refs/heads/master 0c95d3cc6 -> 3b777c7f4
ARROW-26: Add instructions for enabling Arrow C++ Parquet adapter build This patch documents the workflow for building the optional Arrow-Parquet C++ integration. I originally thought about adding an option to build it in Arrow's thirdparty, but it immediately results in a dependency-hell situation (Parquet requires Thrift, Boost, snappy, lz4, zlib) Author: Wes McKinney <w...@apache.org> Closes #12 from wesm/ARROW-26 and squashes the following commits: b28fd75 [Wes McKinney] Add instructions for enabling Arrow C++ Parquet adapter build Project: http://git-wip-us.apache.org/repos/asf/arrow/repo Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/3b777c7f Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/3b777c7f Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/3b777c7f Branch: refs/heads/master Commit: 3b777c7f43d75444f040351b8ae4b735250f2efc Parents: 0c95d3c Author: Wes McKinney <w...@apache.org> Authored: Thu Mar 3 16:18:28 2016 -0800 Committer: Wes McKinney <w...@apache.org> Committed: Thu Mar 3 16:18:28 2016 -0800 ---------------------------------------------------------------------- cpp/CMakeLists.txt | 4 ++-- cpp/doc/Parquet.md | 24 ++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/arrow/blob/3b777c7f/cpp/CMakeLists.txt ---------------------------------------------------------------------- diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 5e4c204..f425c5f 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -54,7 +54,7 @@ endif() # Top level cmake dir if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") - option(ARROW_WITH_PARQUET + option(ARROW_PARQUET "Build the Parquet adapter and link to libparquet" OFF) @@ -441,7 +441,7 @@ endif (UNIX) #---------------------------------------------------------------------- # Parquet adapter -if(ARROW_WITH_PARQUET) +if(ARROW_PARQUET) find_package(Parquet REQUIRED) include_directories(SYSTEM ${PARQUET_INCLUDE_DIR}) ADD_THIRDPARTY_LIB(parquet http://git-wip-us.apache.org/repos/asf/arrow/blob/3b777c7f/cpp/doc/Parquet.md ---------------------------------------------------------------------- diff --git a/cpp/doc/Parquet.md b/cpp/doc/Parquet.md new file mode 100644 index 0000000..370ac83 --- /dev/null +++ b/cpp/doc/Parquet.md @@ -0,0 +1,24 @@ +## Building Arrow-Parquet integration + +To build the Arrow C++'s Parquet adapter library, you must first build [parquet-cpp][1]: + +```bash +# Set this to your preferred install location +export PARQUET_HOME=$HOME/local + +git clone https://github.com/apache/parquet-cpp.git +cd parquet-cpp +source setup_build_env.sh +cmake -DCMAKE_INSTALL_PREFIX=$PARQUET_HOME +make -j4 +make install +``` + +Make sure that `$PARQUET_HOME` is set to the installation location. Now, build +Arrow with the Parquet adapter enabled: + +```bash +cmake -DARROW_PARQUET=ON +``` + +[1]: https://github.com/apache/parquet-cpp \ No newline at end of file