-
Notifications
You must be signed in to change notification settings - Fork 915
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
Rework JNI CMake to leverage rapids_find_package #10649
Conversation
Codecov Report
@@ Coverage Diff @@
## branch-22.06 #10649 +/- ##
================================================
+ Coverage 86.34% 86.41% +0.06%
================================================
Files 142 142
Lines 22356 22334 -22
================================================
- Hits 19304 19300 -4
+ Misses 3052 3034 -18
Continue to review full report at Codecov.
|
Note that the previous CI failures were due to problems with the cuco dependency in a shared library build setup which should be addressed by #10662. |
@gpucibot merge |
The JNI CMakeLists.txt has been fragile, looking for specific .a or .so libraries and header file locations, and will break again when libcudf moves to a pre-installed nvcomp 2.3 package since it expects to find nvcomp in a very specific location today. This refactors the JNI CMakeLists.txt to leverage
rapids_find_package
to reuse the work performed in the libcudf build and also has the nice side-effect of avoiding redundant pulls and builds of the Thrust and RMM repositories that is happening today.Another side-effect is that the JNI will now automatically pull in the same RMM compile definitions that are used for libcudf, meaning the separate RMM logging flag for the JNI build is no longer necessary. Similarly it's no longer necessary to explicitly specify to the JNI build which type of Arrow library to use (i.e,.: static or dynamic), it will automatically use whichever Arrow library was built by libcudf.