DrTimothyAldenDavis / GraphBLAS

SuiteSparse:GraphBLAS: graph algorithms in the language of linear algebra. For production: (default) STABLE branch. Code development: ask me for the right branch before submitting a PR. video intro: https://youtu.be/Tj5y6d7FegI .
http://faculty.cse.tamu.edu/davis/GraphBLAS.html
Other
345 stars 61 forks source link

Modify CMake options to build without bundled libraries #233

Closed bkmgit closed 9 months ago

bkmgit commented 9 months ago

Enable building using system installations of lz4, xxhash and zstd.

DrTimothyAldenDavis commented 9 months ago

I would like to but It's not possible. LZ4 and ZSTD both have a mechanism for enabling the use of another memory manager (replacing malloc, calloc, and free) but those method require a recompilation of those libraries. I'm required to use the malloc/calloc/realloc/free dictated by the user application. So it's not possible to use any system library copy of LZ4 and ZSTD.

For xxHash, I require a copy with some compile-time options set, and I also require a patch regarding the use of stdalign.h, which is broken when using MSVC in the distributed version of xxHash. You can see the difference by comparing my copy of xxhash.h with the one on the xxHash github repo as of June 16, 2023.