Open moravveji opened 3 weeks ago
When I diff
the CMakeLists.txt
between version 1.0.9 and 1.1.0, I see that the following directives are removed, resulting in not building libbrotli{dec,enc,common}-static.a
.
set(BROTLI_LIBRARIES_CORE_STATIC brotlienc-static brotlidec-static brotlicommon-static)
set(BROTLI_STATIC_LIBS brotlicommon-static brotlidec-static brotlienc-static)
add_library(brotlicommon-static STATIC ${BROTLI_COMMON_C})
add_library(brotlidec-static STATIC ${BROTLI_DEC_C})
add_library(brotlienc-static STATIC ${BROTLI_ENC_C})
target_link_libraries(brotlidec-static brotlicommon-static)
target_link_libraries(brotlienc-static brotlicommon-static)
I wonder why this has happened?
Also, I am thinking of patching version 1.1.0 to restore building the *-static.a
libraries. Is that fine?
I am building the
Brunsli/0.1-GCCcore-13.2.0
module from source on our HPC clusters, and it depends onlibbrotlidec-static.a
. The latter static library is automatically created with Brotli version 1.0.9. However, in the newer minor release 1.1.0, the static library is no longer created.This is causing a lot of dependency resolution issues for me when building massive bundle of R packages using EasyBuild (see e.g. (this PR)[https://github.com/easybuilders/easybuild-easyconfigs/pull/20756]).
Now, I wonder how it would be possible to let the build system for version 1.1.0 consistently create
libbrotlidec-static.a
, so that I can compile my desired version of Brunsli by linking to it.