WillAyd commented on PR #47535:
URL: https://github.com/apache/arrow/pull/47535#issuecomment-3268431211

   Nice observation @kou - there appear to be various inconsistencies with the 
packages that are not found:
   
   bzip2 does not provide any information about its dependency (neither 
pkg-config nor CMake files), so I think that would need an upstream patch
   
   snappy does not provide a pkg-config file. It *does* provide a CMake file, 
but unfortunately only for MODULE search mode and not CONFIG search mode. As 
search, it provides a file located in "${CONDA_PREFIX}/lib/cmake" called 
`Snappy/SnappyConfig.cmake`. The case-sensitive nature of the search overlooks 
that file.
   
   If we cared enough, we could patch our meson configuration to try something 
like:
   
   ```
   snappy_dep = dependency('Snappy', required: false)
   if not snappy_dep.found()
       snappy_dep = dependency('snappy')
   endif
   ```
   
   Although that does special-case snappy. We could alternatively just see if 
they can distribute pkg-config information, or a CMake file using the MODULE 
search mode
   
   Regarding `benchmark-main`, it appears that there is an inconsistency in the 
wrapdb. Google benchmark distributes a file by the name of `benchmark_main` 
(underscore not hyphen). We can therefore change our code to:
   
   ```python
   benchmark_main_dep = dependency(
       'benchmark_main',
       fallback: ['benchmark', 'google_benchmark_main_dep'],
   )
   ```
   
   I've opened an upstream issue about that in 
https://github.com/mesonbuild/wrapdb/issues/2388, and an issue for a workaround 
here in https://github.com/apache/arrow/issues/47537


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to