CMake 3.31.0 extend the deduplication of static libraries to new environments.
Unfortunately, the version 3.31.0 introduce an unwanted side-effect regarding lld usage which reveal a problem with lld in case of ELF binary format: if static libraries are deduplicated, the success or failure of the build of LLVM depends on the order of the static libraries. For other binary format (COFF, Mach-O) the link is successful regardless the order of static libraries.
Unfortunately, I was unable to reproduce this problem on a simple example.
The full history of this problem can be consulted on the CMake-26447 issue.
FYI, CMake version 3.31.1 will suppress this side effect, but users of lld will potentially be confronted to this bug if static libraries deduplication is active.
`CMake` 3.31.0 extend the deduplication of static libraries to new environments.
Unfortunately, the version `3.31.0` introduce an unwanted side-effect regarding `lld` usage which reveal a problem with `lld` in case of `ELF` binary format: if static libraries are deduplicated, the success or failure of the build of `LLVM` depends on the order of the static libraries. For other binary format (`COFF`, `Mach-O`) the link is successful regardless the order of static libraries.
Unfortunately, I was unable to reproduce this problem on a simple example.
The full history of this problem can be consulted on the [CMake-26447](https://gitlab.kitware.com/cmake/cmake/-/issues/26447) issue.
FYI, `CMake` version 3.31.1 will suppress this side effect, but users of `lld` will potentially be confronted to this bug if static libraries deduplication is active.
CMake
3.31.0 extend the deduplication of static libraries to new environments.Unfortunately, the version
3.31.0
introduce an unwanted side-effect regardinglld
usage which reveal a problem withlld
in case ofELF
binary format: if static libraries are deduplicated, the success or failure of the build ofLLVM
depends on the order of the static libraries. For other binary format (COFF
,Mach-O
) the link is successful regardless the order of static libraries. Unfortunately, I was unable to reproduce this problem on a simple example.The full history of this problem can be consulted on the CMake-26447 issue.
FYI,
CMake
version 3.31.1 will suppress this side effect, but users oflld
will potentially be confronted to this bug if static libraries deduplication is active.