-
Notifications
You must be signed in to change notification settings - Fork 160
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add options to use system abseil, lz4 and cityhash #168
Conversation
Hi, CI is broken on master due to SSL error, hence I can't verify that my changes aren't causing regression. See other MRs
Would you be kind enough to have a look at the SSL issue ? |
Should be fixed in #170 BTW - maybe that should be also added to a build matrix? I.e. build with system libs, similar to clickhouse-cpp/.github/workflows/linux.yml Lines 40 to 42 in a85a982
|
We DEFINITELY need to add at least 1 variant to the build matrix for each platform: build with system libs (i.e. |
@DavidKeller Tnak you for a PR, few more steps to get it merged:
|
4a2fd8f
to
c6354b1
Compare
In the previous layout, It user wants to use the contrib absl, the build system would have to include
But that would include other dependencies as well, even if the user prefers to rely on the system lz4 or cityhash. The extra level allow to add only absl to the include path, i.e.:
|
c6354b1
to
16ef205
Compare
16ef205
to
b0cd98c
Compare
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.
Please fix the workflows, and it will be good to merge.
b0cd98c
to
7fe1e84
Compare
Gentlemen, I've fought quite a bit in order to test dependencies across all platforms. So I've switched to conan, as it eases dependencies management. Pro
Con
I'm running out of time to solve these, but I'm pushing the current state to have your feeling on this work, I may resume later. |
7fe1e84
to
d34cd97
Compare
Ok, so could you please reduce the scope of this PR to just system-provided third-parties. I do believe that if it is hard to obtain a library on certain OS, then we can safely omit corresponding CI/CD job type. So you don't need to test system third-parties against all possible combinations, only for those that make sense. Also, if possible, you may want to hard-code third-parties version installed to avoid accidental breakage in the future. As for Conan: this is an interesting idea, but could we please move it to another PR? |
@DavidKeller ping? |
Hi, will try to split the MR and provide separate MR with conan by the end of the week. |
edd6451
to
5cc154b
Compare
5feafbc
to
eeeb4b9
Compare
Here is the current state:
Some remarks:
What's your opinion on these remarks ? |
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.
Hi @DavidKeller sorry for a late reply. Looks nice, could you please resolve the merge issues?
This change solves ClickHouse#86, ClickHouse#99. Signed-off-by: David Keller <[email protected]>
eeeb4b9
to
04abf44
Compare
Rebased. |
@Enmk sorry for ping. Are there any chances for this pr? |
Sure, just need to rebase and verify that it does what it advertizes. |
We're no longer using clickhouse, so I'm afraid I won't spend more time rebasing it again. @Jihadist, feel free to complete this MR. I believe the power move here would be - once this get merged - to rely on conan to build everything and retrieve dependencies. See d34cd97 |
@DavidKeller thank you for this pr and for conanfile especially. I'll try to continue your ideas. Looks like we do not need to rebase it again because no one changed cmake files since last rebasing. |
Hi @DavidKeller ! Thank you for your contribution, I think this is a good start for proper Conan support for clickhouse-cpp. Sorry if the review process wasn't smooth for you |
@Enmk this can be closed |
This change closes #86, and closes #99.
Furthermore, it eases Conan packaging, as Conan already provides abseil, lz4 and cityhash.
Signed-off-by: David Keller [email protected]