Replies: 2 comments 3 replies
0 replies
|
I didn't imagine Meson use case when I created it... In CMake, we can use the following to check CSV availability: find_package(Arrow REQUIRED)
if(NOT ARROW_CSV)
message(FATAL_ERROR "CSV must be enabled")
endif()See also how Apache Arrow C GLib does: Lines 101 to 142 in 5a48044 If we want to provide the same interface for pkg-config and CMake package, I suggest that we add variables to diff --git a/cpp/src/arrow/arrow.pc.in b/cpp/src/arrow/arrow.pc.in
index 309789379a..27d2899ccd 100644
--- a/cpp/src/arrow/arrow.pc.in
+++ b/cpp/src/arrow/arrow.pc.in
@@ -23,6 +23,8 @@ so_version=@ARROW_SO_VERSION@
abi_version=@ARROW_SO_VERSION@
full_so_version=@ARROW_FULL_SO_VERSION@
+csv=@ARROW_CSV@
+
Name: Apache Arrow
Description: Arrow is a set of technologies that enable big-data systems to process and move data fast.
Version: @ARROW_VERSION@With the approach, we can use the following Meson configuration: assert(
arrow.get_variable(cmake: 'ARROW_CSV', pkgconfig: 'csv', default_value: 'OFF') == 'ON',
'CSV module must be enabled',
)In pkg-config context, |
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
In #6285 it appears that we added .pc files for things like arrow-csv, arrow-json, etc... My best guess is that this was done to signal for a given Arrow installation, if it was built with support for those options. However, it doesn't appear that there is a CMake equivalent (?) so its hard to rely on that mechanism universally.
Taking Meson as an example, its trivial to see if the host system provides arrow-compute, whether through pkgconfig or through CMake's own discovery:
but for something like
arrow-csvthere is no equivalent CMake discovery (?)All reactions