-
Notifications
You must be signed in to change notification settings - Fork 192
PARQUET-416: C++11 compilation, code reorg, libparquet and installation targets #14
Conversation
OS X is failing with a homebrew error on |
126379f
to
2bd7c4a
Compare
I disabled OS X in the Travis CI setup for now; the |
I tried this patch on osx by cloning and following the build steps in the readme. It worked on master but not this patch.
|
src/parquet.cc | ||
) | ||
|
||
set(LIBPARQUET_LINK_LIBS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why doesn't this have more things in it? e.g. snappy
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, If i add snappystatic and thriftstatic, it compiles.
Dynamic linking on OS X is a nightmare. With the fix I put in |
As soon as we get the build environment question sorted out it would be good to use the same linkage as libparquet for the dependencies that have both static and shared libraries available. |
Cool, I tried the latest version in your branch and it builds. |
@wesm can you fix the build issue. I think you just need to add -fPIC |
8b71d4f
to
636d0b7
Compare
This looks good to me. Can you file a jira and prefix the commit so the title is |
636d0b7
to
63d7794
Compare
Ready for cherry-picking. I updated the PARQUET-416 title and description. Thanks! |
@wesm is disabling osx still necessary? |
I can try the build again to see if the Homebrew thrift error cleared. I also could not get Thrift to build from source on Travis yesterday |
Nvm. I got confused. It's not the osx issues that that been fixed. Thanks. I'll merge this later today. |
|
||
set(THIRDPARTY_PREFIX ${CMAKE_SOURCE_DIR}/thirdparty/installed) | ||
set(CMAKE_PREFIX_PATH ${THIRDPARTY_PREFIX}) | ||
|
||
set(CMAKE_MACOSX_RPATH 1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you wrap this in if (APPLE)
please?
@grundprinzip sure; I'm seeing if OS X travis build will pass now and then will squash all these again |
Let me know when this is no longer in flux and I'lll rebase on top of it again with my pull request. |
…tr with std::shared_ptr and other C++11 fixes. Reorganize code into a top level src/parquet directly, add a libparquet shared library, and add install targets for libparquet and its header files. Add cpplint script and `make lint` target for code linting.
8b16ef2
to
2e356fd
Compare
@wesm Thanks! Can you not squash in the future? It makes it hard to review the deltas and the merge tool we use will squash them. |
Sure, no problem. |
This is based off of pull request #14. Author: Kalon Mills <[email protected]> Closes #16 from kalaxy/libparquet-library-update-build and squashes the following commits: 0ce51db [Kalon Mills] Add script for automating build env setup. 82a198c [Kalon Mills] Make thrift build on mac only a warning when not specified explicitly. d096c64 [Kalon Mills] Update build instructions. 6709182 [Kalon Mills] Support thrift dependency in thirdparty scripts for linux. bedd0d4 [Kalon Mills] Remove thirdparty code lz4 from repo. 30c2b7e [Kalon Mills] Support build environment configuration of LZ4 library. 73e7785 [Kalon Mills] Support build environment configuration of Snappy library.
This is based off of pull request apache/parquet-cpp#14. Author: Kalon Mills <[email protected]> Closes apache#16 from kalaxy/libparquet-library-update-build and squashes the following commits: 0ce51db [Kalon Mills] Add script for automating build env setup. 82a198c [Kalon Mills] Make thrift build on mac only a warning when not specified explicitly. d096c64 [Kalon Mills] Update build instructions. 6709182 [Kalon Mills] Support thrift dependency in thirdparty scripts for linux. bedd0d4 [Kalon Mills] Remove thirdparty code lz4 from repo. 30c2b7e [Kalon Mills] Support build environment configuration of LZ4 library. 73e7785 [Kalon Mills] Support build environment configuration of Snappy library.
This is based off of pull request apache/parquet-cpp#14. Author: Kalon Mills <[email protected]> Closes apache#16 from kalaxy/libparquet-library-update-build and squashes the following commits: 0ce51db [Kalon Mills] Add script for automating build env setup. 82a198c [Kalon Mills] Make thrift build on mac only a warning when not specified explicitly. d096c64 [Kalon Mills] Update build instructions. 6709182 [Kalon Mills] Support thrift dependency in thirdparty scripts for linux. bedd0d4 [Kalon Mills] Remove thirdparty code lz4 from repo. 30c2b7e [Kalon Mills] Support build environment configuration of LZ4 library. 73e7785 [Kalon Mills] Support build environment configuration of Snappy library. Change-Id: I266283fc15457a6116fc944b29656d071a917159
This is based off of pull request apache/parquet-cpp#14. Author: Kalon Mills <[email protected]> Closes apache#16 from kalaxy/libparquet-library-update-build and squashes the following commits: 0ce51db [Kalon Mills] Add script for automating build env setup. 82a198c [Kalon Mills] Make thrift build on mac only a warning when not specified explicitly. d096c64 [Kalon Mills] Update build instructions. 6709182 [Kalon Mills] Support thrift dependency in thirdparty scripts for linux. bedd0d4 [Kalon Mills] Remove thirdparty code lz4 from repo. 30c2b7e [Kalon Mills] Support build environment configuration of LZ4 library. 73e7785 [Kalon Mills] Support build environment configuration of Snappy library. Change-Id: I266283fc15457a6116fc944b29656d071a917159
This is based off of pull request apache/parquet-cpp#14. Author: Kalon Mills <[email protected]> Closes apache#16 from kalaxy/libparquet-library-update-build and squashes the following commits: 0ce51db [Kalon Mills] Add script for automating build env setup. 82a198c [Kalon Mills] Make thrift build on mac only a warning when not specified explicitly. d096c64 [Kalon Mills] Update build instructions. 6709182 [Kalon Mills] Support thrift dependency in thirdparty scripts for linux. bedd0d4 [Kalon Mills] Remove thirdparty code lz4 from repo. 30c2b7e [Kalon Mills] Support build environment configuration of LZ4 library. 73e7785 [Kalon Mills] Support build environment configuration of Snappy library. Change-Id: I266283fc15457a6116fc944b29656d071a917159
This is based off of pull request apache/parquet-cpp#14. Author: Kalon Mills <[email protected]> Closes apache#16 from kalaxy/libparquet-library-update-build and squashes the following commits: 0ce51db [Kalon Mills] Add script for automating build env setup. 82a198c [Kalon Mills] Make thrift build on mac only a warning when not specified explicitly. d096c64 [Kalon Mills] Update build instructions. 6709182 [Kalon Mills] Support thrift dependency in thirdparty scripts for linux. bedd0d4 [Kalon Mills] Remove thirdparty code lz4 from repo. 30c2b7e [Kalon Mills] Support build environment configuration of LZ4 library. 73e7785 [Kalon Mills] Support build environment configuration of Snappy library. Change-Id: I266283fc15457a6116fc944b29656d071a917159
Reorganize code into a top level src/parquet directly, add a libparquet shared library, and add install targets for libparquet and its header files. Add cpplint script and
make lint
target for code linting.Replaces earlier PR #13