Skip to content
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

ARROW-6312: [C++] Add support for "pkg-config --static arrow" #10626

Closed
wants to merge 4 commits into from

Conversation

kou
Copy link
Member

@kou kou commented Jun 30, 2021

No description provided.

@github-actions
Copy link

@pitrou
Copy link
Member

pitrou commented Jun 30, 2021

This seems useful. Can we add a documentation chapter about using pkg-config? For example in https://arrow.apache.org/docs/cpp/cmake.html, which currently only covers CMake.

@kou
Copy link
Member Author

kou commented Jul 2, 2021

I've added a documentation about using pkg-config.

@kou
Copy link
Member Author

kou commented Jul 5, 2021

+1

If we need more work for #10404, we can work on it in #10404.

@kou kou closed this in 74af39d Jul 5, 2021
@kou kou deleted the cpp-pc-libs-private branch July 5, 2021 01:22
@kszucs
Copy link
Member

kszucs commented Jul 6, 2021

@kou this seems to broke the manylinux and macos wheel builds.

@kou
Copy link
Member Author

kou commented Jul 6, 2021

Oh, sorry. I'll fix it soon.

@kou
Copy link
Member Author

kou commented Jul 7, 2021

#10668

kou added a commit to kou/arrow that referenced this pull request Feb 4, 2024
…arrow.pc

We chose Libs{,.private} with libre2.a for system RE2 in
apacheGH-10626. Because "Require{,.private} re2" may add "-std=c++11". If
"-std=c++11" was added, users can't build Apache Arrow C++ because
Apache Arrow C++ requires C++17 or later.

But this approach doesn't work with RE2 2024-06-01 or later because it
at least requires Abseil. If we keep the Libs{,.private} approach, we
also need to add Abseil libraries to Libs{,.private}. But it's
unmaintainable.

Let's use "Requires{,.private} re2" instead of Libs{,.private}. I hope
recent re2.pc doesn't add "-std=c++11".
kou added a commit that referenced this pull request Feb 5, 2024
…pc (#39932)

### Rationale for this change

We chose Libs{,.private} with libre2.a for system RE2 in GH-10626. Because "Require{,.private} re2" may add "-std=c++11". If "-std=c++11" was added, users can't build Apache Arrow C++ because Apache Arrow C++ requires C++17 or later.

But this approach doesn't work with RE2 2024-06-01 or later because it at least requires Abseil. If we keep the Libs{,.private} approach, we also need to add Abseil libraries to Libs{,.private}. But it's unmaintainable.

### What changes are included in this PR?

Let's use "Requires{,.private} re2" instead of Libs{,.private}. I hope recent re2.pc doesn't add "-std=c++11".

### Are these changes tested?

Yes.

### Are there any user-facing changes?

Yes.
* Closes: #39930

Authored-by: Sutou Kouhei <kou@clear-code.com>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
dgreiss pushed a commit to dgreiss/arrow that referenced this pull request Feb 19, 2024
…arrow.pc (apache#39932)

### Rationale for this change

We chose Libs{,.private} with libre2.a for system RE2 in apacheGH-10626. Because "Require{,.private} re2" may add "-std=c++11". If "-std=c++11" was added, users can't build Apache Arrow C++ because Apache Arrow C++ requires C++17 or later.

But this approach doesn't work with RE2 2024-06-01 or later because it at least requires Abseil. If we keep the Libs{,.private} approach, we also need to add Abseil libraries to Libs{,.private}. But it's unmaintainable.

### What changes are included in this PR?

Let's use "Requires{,.private} re2" instead of Libs{,.private}. I hope recent re2.pc doesn't add "-std=c++11".

### Are these changes tested?

Yes.

### Are there any user-facing changes?

Yes.
* Closes: apache#39930

Authored-by: Sutou Kouhei <kou@clear-code.com>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
zanmato1984 pushed a commit to zanmato1984/arrow that referenced this pull request Feb 28, 2024
…arrow.pc (apache#39932)

### Rationale for this change

We chose Libs{,.private} with libre2.a for system RE2 in apacheGH-10626. Because "Require{,.private} re2" may add "-std=c++11". If "-std=c++11" was added, users can't build Apache Arrow C++ because Apache Arrow C++ requires C++17 or later.

But this approach doesn't work with RE2 2024-06-01 or later because it at least requires Abseil. If we keep the Libs{,.private} approach, we also need to add Abseil libraries to Libs{,.private}. But it's unmaintainable.

### What changes are included in this PR?

Let's use "Requires{,.private} re2" instead of Libs{,.private}. I hope recent re2.pc doesn't add "-std=c++11".

### Are these changes tested?

Yes.

### Are there any user-facing changes?

Yes.
* Closes: apache#39930

Authored-by: Sutou Kouhei <kou@clear-code.com>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
thisisnic pushed a commit to thisisnic/arrow that referenced this pull request Mar 8, 2024
…arrow.pc (apache#39932)

### Rationale for this change

We chose Libs{,.private} with libre2.a for system RE2 in apacheGH-10626. Because "Require{,.private} re2" may add "-std=c++11". If "-std=c++11" was added, users can't build Apache Arrow C++ because Apache Arrow C++ requires C++17 or later.

But this approach doesn't work with RE2 2024-06-01 or later because it at least requires Abseil. If we keep the Libs{,.private} approach, we also need to add Abseil libraries to Libs{,.private}. But it's unmaintainable.

### What changes are included in this PR?

Let's use "Requires{,.private} re2" instead of Libs{,.private}. I hope recent re2.pc doesn't add "-std=c++11".

### Are these changes tested?

Yes.

### Are there any user-facing changes?

Yes.
* Closes: apache#39930

Authored-by: Sutou Kouhei <kou@clear-code.com>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants