You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "kou (via GitHub)" <gi...@apache.org> on 2023/08/28 00:39:52 UTC
[GitHub] [arrow] kou opened a new pull request, #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
kou opened a new pull request, #37412:
URL: https://github.com/apache/arrow/pull/37412
### Rationale for this change
Gandiva always links LLVM statically. But we can use LLVM shared library instead to reduce `libgandiva.so` size.
### What changes are included in this PR?
Add `ARROW_LLVM_USE_SHARED` like other dependencies.
### Are these changes tested?
Yes.
### Are there any user-facing changes?
Yes.
This has a backward incompatible change. LLVM shared library not static libraries is used by default. If you want to use LLVM static libraries, you need to specify `-DARROW_LLVM_USE_SHARED=OFF` or `-DARROW_DEPENDENCY_USE_SHARED=OFF` explicitly.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1704532793
+1
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1704454418
Revision: 52caff975a5fc3f0de5112dc19d692a0cef1231b
Submitted crossbow builds: [ursacomputing/crossbow @ actions-e8c648a76a](https://github.com/ursacomputing/crossbow/branches/all?query=actions-e8c648a76a)
|Task|Status|
|----|------|
|almalinux-8-amd64|[](https://github.com/ursacomputing/crossbow/tree/actions-e8c648a76a-github-almalinux-8-amd64)|
|almalinux-8-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067666399/job/16459632701)|
|almalinux-9-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067665627/job/16459630757)|
|almalinux-9-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067660864/job/16459619407)|
|amazon-linux-2023-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067667957/job/16459635992)|
|amazon-linux-2023-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067663629/job/16459626162)|
|centos-7-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067665145/job/16459629689)|
|centos-8-stream-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067666025/job/16459631778)|
|centos-8-stream-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067664124/job/16459627234)|
|centos-9-stream-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067666552/job/16459633165)|
|centos-9-stream-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067667579/job/16459635182)|
|debian-bookworm-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067668424/job/16459636979)|
|debian-bookworm-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067664661/job/16459628503)|
|debian-bullseye-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067660136/job/16459617324)|
|debian-bullseye-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067661523/job/16459620918)|
|debian-trixie-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067659686/job/16459616245)|
|debian-trixie-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067662307/job/16459622715)|
|ubuntu-focal-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067668915/job/16459638145)|
|ubuntu-focal-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067666750/job/16459633615)|
|ubuntu-jammy-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067659876/job/16459616573)|
|ubuntu-jammy-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067661858/job/16459621692)|
|ubuntu-lunar-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067662704/job/16459623735)|
|ubuntu-lunar-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6067660510/job/16459618440)|
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1694823652
@github-actions java-jars -g wheel
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] conbench-apache-arrow[bot] commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "conbench-apache-arrow[bot] (via GitHub)" <gi...@apache.org>.
conbench-apache-arrow[bot] commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1706675538
After merging your PR, Conbench analyzed the 6 benchmarking runs that have been run so far on merge-commit 3ad2d0ccd98192d32d54af371bad6b61ea3c4736.
There were no benchmark performance regressions. 🎉
The [full Conbench report](https://github.com/apache/arrow/runs/16510076337) has more details. It also includes information about possible false positives for unstable benchmarks that are known to sometimes produce them.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1696669106
Revision: 780357cc6ed0adad236452ad8e214e04386794a5
Submitted crossbow builds: [ursacomputing/crossbow @ actions-3d4f488389](https://github.com/ursacomputing/crossbow/branches/all?query=actions-3d4f488389)
|Task|Status|
|----|------|
|test-alpine-linux-cpp|[](https://github.com/ursacomputing/crossbow/actions/runs/6007087810/job/16292678868)|
|test-build-cpp-fuzz|[](https://github.com/ursacomputing/crossbow/actions/runs/6007088763/job/16292682570)|
|test-conda-cpp|[](https://github.com/ursacomputing/crossbow/actions/runs/6007086357/job/16292673733)|
|test-conda-cpp-valgrind|[](https://github.com/ursacomputing/crossbow/runs/16292677972)|
|test-cuda-cpp|[](https://github.com/ursacomputing/crossbow/actions/runs/6007087687/job/16292678381)|
|test-debian-11-cpp-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6007089146/job/16292684382)|
|test-debian-11-cpp-i386|[](https://github.com/ursacomputing/crossbow/actions/runs/6007086505/job/16292674320)|
|test-fedora-35-cpp|[](https://github.com/ursacomputing/crossbow/actions/runs/6007089338/job/16292685213)|
|test-ubuntu-20.04-cpp|[](https://github.com/ursacomputing/crossbow/actions/runs/6007087050/job/16292675993)|
|test-ubuntu-20.04-cpp-bundled|[](https://github.com/ursacomputing/crossbow/actions/runs/6007088077/job/16292679843)|
|test-ubuntu-20.04-cpp-minimal-with-formats|[](https://github.com/ursacomputing/crossbow/actions/runs/6007088295/job/16292680825)|
|test-ubuntu-20.04-cpp-thread-sanitizer|[](https://github.com/ursacomputing/crossbow/actions/runs/6007088531/job/16292681832)|
|test-ubuntu-22.04-cpp|[](https://github.com/ursacomputing/crossbow/actions/runs/6007086952/job/16292675625)|
|test-ubuntu-22.04-cpp-20|[](https://github.com/ursacomputing/crossbow/actions/runs/6007086645/job/16292674839)|
|test-ubuntu-22.04-cpp-no-threading|[](https://github.com/ursacomputing/crossbow/actions/runs/6007088961/job/16292683536)|
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou merged pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou merged PR #37412:
URL: https://github.com/apache/arrow/pull/37412
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on a diff in pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "pitrou (via GitHub)" <gi...@apache.org>.
pitrou commented on code in PR #37412:
URL: https://github.com/apache/arrow/pull/37412#discussion_r1311788943
##########
cpp/cmake_modules/DefineOptions.cmake:
##########
@@ -470,6 +470,16 @@ takes precedence over ccache if a storage backend is configured" ON)
"Rely on jemalloc shared libraries where relevant"
${ARROW_DEPENDENCY_USE_SHARED})
+ if(MSVC)
+ # It seems that conda's llvmdev for Windows doesn't provide shared
+ # library.
+ set(ARROW_LLVM_USE_SHARED_DEFAULT OFF)
Review Comment:
Hmm, I don't think we should change this for conda. Instead, conda users on Windows will have to explicitly pass `-DARROW_LLVM_USE_SHARED=OFF`.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1704452901
@github-actions crossbow submit -g linux
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1694822541
:warning: GitHub issue #37410 **has been automatically assigned in GitHub** to PR creator.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on a diff in pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on code in PR #37412:
URL: https://github.com/apache/arrow/pull/37412#discussion_r1312481501
##########
cpp/cmake_modules/DefineOptions.cmake:
##########
@@ -470,6 +470,16 @@ takes precedence over ccache if a storage backend is configured" ON)
"Rely on jemalloc shared libraries where relevant"
${ARROW_DEPENDENCY_USE_SHARED})
+ if(MSVC)
+ # It seems that conda's llvmdev for Windows doesn't provide shared
+ # library.
+ set(ARROW_LLVM_USE_SHARED_DEFAULT OFF)
Review Comment:
It seems that LLVM itself doesn't support shared library on Windows: https://github.com/llvm/llvm-project/blob/main/llvm/tools/llvm-shlib/CMakeLists.txt#L14-L16
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1696601450
Revision: 511765513afdcefe752e05e8d9b02e8712d920b0
Submitted crossbow builds: [ursacomputing/crossbow @ actions-63e615699a](https://github.com/ursacomputing/crossbow/branches/all?query=actions-63e615699a)
|Task|Status|
|----|------|
|java-jars|[](https://github.com/ursacomputing/crossbow/tree/actions-63e615699a-github-java-jars)|
|wheel-clean|[](https://github.com/ursacomputing/crossbow/actions/runs/6006426914/job/16290935058)|
|wheel-macos-big-sur-cp310-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006420725/job/16290918381)|
|wheel-macos-big-sur-cp311-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006423841/job/16290926294)|
|wheel-macos-big-sur-cp38-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006423214/job/16290924831)|
|wheel-macos-big-sur-cp39-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006417272/job/16290908300)|
|wheel-macos-mojave-cp310-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006428145/job/16290938287)|
|wheel-macos-mojave-cp311-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006426259/job/16290933100)|
|wheel-macos-mojave-cp38-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006418455/job/16290911326)|
|wheel-macos-mojave-cp39-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006427727/job/16290937230)|
|wheel-manylinux-2-28-cp310-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006424153/job/16290926883)|
|wheel-manylinux-2-28-cp310-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006425981/job/16290932052)|
|wheel-manylinux-2-28-cp311-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006422687/job/16290923575)|
|wheel-manylinux-2-28-cp311-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006415471/job/16290904342)|
|wheel-manylinux-2-28-cp38-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006419382/job/16290913893)|
|wheel-manylinux-2-28-cp38-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006420133/job/16290916365)|
|wheel-manylinux-2-28-cp39-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006420430/job/16290917501)|
|wheel-manylinux-2-28-cp39-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006416586/job/16290906952)|
|wheel-manylinux-2014-cp310-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006424890/job/16290928957)|
|wheel-manylinux-2014-cp310-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006417915/job/16290909822)|
|wheel-manylinux-2014-cp311-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006422229/job/16290922440)|
|wheel-manylinux-2014-cp311-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006421629/job/16290921036)|
|wheel-manylinux-2014-cp38-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006419751/job/16290915163)|
|wheel-manylinux-2014-cp38-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006425596/job/16290930884)|
|wheel-manylinux-2014-cp39-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006425153/job/16290929668)|
|wheel-manylinux-2014-cp39-arm64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006416023/job/16290905789)|
|wheel-windows-cp310-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006421010/job/16290919251)|
|wheel-windows-cp311-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006418906/job/16290912496)|
|wheel-windows-cp38-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006415751/job/16290905075)|
|wheel-windows-cp39-amd64|[](https://github.com/ursacomputing/crossbow/actions/runs/6006427266/job/16290936068)|
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] js8544 commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "js8544 (via GitHub)" <gi...@apache.org>.
js8544 commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1697379966
+1. Thanks!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1696666641
@github-actions crossbow submit -g cpp
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on PR #37412:
URL: https://github.com/apache/arrow/pull/37412#issuecomment-1696778773
I'll merge this in this week if nobody objects this.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on a diff in pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on code in PR #37412:
URL: https://github.com/apache/arrow/pull/37412#discussion_r1312481501
##########
cpp/cmake_modules/DefineOptions.cmake:
##########
@@ -470,6 +470,16 @@ takes precedence over ccache if a storage backend is configured" ON)
"Rely on jemalloc shared libraries where relevant"
${ARROW_DEPENDENCY_USE_SHARED})
+ if(MSVC)
+ # It seems that conda's llvmdev for Windows doesn't provide shared
+ # library.
+ set(ARROW_LLVM_USE_SHARED_DEFAULT OFF)
Review Comment:
It seems that LLVM itself doesn't support shared library with MSVC: https://github.com/llvm/llvm-project/blob/main/llvm/tools/llvm-shlib/CMakeLists.txt#L14-L16
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] kou commented on a diff in pull request #37412: GH-37410: [C++][Gandiva] Add support for using LLVM shared library
Posted by "kou (via GitHub)" <gi...@apache.org>.
kou commented on code in PR #37412:
URL: https://github.com/apache/arrow/pull/37412#discussion_r1312484145
##########
cpp/cmake_modules/DefineOptions.cmake:
##########
@@ -470,6 +470,16 @@ takes precedence over ccache if a storage backend is configured" ON)
"Rely on jemalloc shared libraries where relevant"
${ARROW_DEPENDENCY_USE_SHARED})
+ if(MSVC)
+ # It seems that conda's llvmdev for Windows doesn't provide shared
+ # library.
Review Comment:
```suggestion
# LLVM doesn't support shared library with MSVC.
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org