apache / arrow-nanoarrow

Helpers for Arrow C Data & Arrow C Stream interfaces
https://arrow.apache.org/nanoarrow
Apache License 2.0
149 stars 34 forks source link

chore: Enable extensions to be built from the main CMake project #481

Closed paleolimbot closed 1 month ago

paleolimbot commented 1 month ago

This is part of a solution to #407 in that it enables cmake . -DNANOARROW_IPC=ON; however, I don't think it completely solves it since I am not sure that the full suite of bundle/install/fetchcontent will work here yet.

The motivation for this is to make it easier to move pieces of the extensions into the main nanoarrow library that make sense (e.g., the definitions for the device structs), and eventually eliminate the extensions folder. I am planning in the next month or so to clean up the device extension and after that to work on the write component of the IPC extension. In combination with the testing utilities that were recently added, I think it makes the most sense for these to live at the top level and be developed together.