wesm commented on pull request #7696:
URL: https://github.com/apache/arrow/pull/7696#issuecomment-656907552


   > This is not true.
   
   Sorry, my presumption was that when a system library is installed there is a 
shared library available. If there is both a shared and static library 
available for a dependency, the build system is _supposed_ to select the shared 
one. But you are right if there is only a static library (e.g. if someone 
created an all-static "system" toolchain), then indeed static libraries would 
be selected. But they would not be added to `libarrow_bundled_dependencies.a`, 
and they aren't. 
   
   > That's how it should be then. But by removing 
ARROW_STATIC_INSTALL_INTERFACE_LIBS you are breaking the case of external 
static dependencies. If you would only add those libs that are not BUNDLED to 
the list I'd be happy.
   
   Well, static linking was not possible at all prior to this PR when using the 
recommended memory allocator (jemalloc). So nothing has been "broken" because 
it never worked before. The case of external static dependencies isn't tested 
at all -- in no CI or integration task. If this use case is important to you, 
we could use your help writing Dockerized integration tests that exhibit this 
scenario so that we aren't flying blind like we are now. 
   
   I agree with adding non-bundled static libraries to 
`ARROW_STATIC_INSTALL_INTERFACE_LIBS` but we have to write tests to demonstrate 
that it works and that it does not break the use cases represented in this PR. 


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to