Tatsuyuki Ishi 1d96e4bc2d
[ELF] Change build-id default to sha1 (#93943)
The current default, build-id=fast, is only 8 bytes due to the usage of
64-bit XXH3. This is incompatible with RPM packaging tools which
requires >=16 bytes [1].

In Clang the ENABLE_LINKER_BUILD_ID define makes it pass --build-id
without a specific hash type. When also defaulting to LLD, this provides
a pretty broken default out-of-box.

Using XXH3 was a considerable performance advantage when build-id was
first implemented, because sha1 was really sha1 and rather slow.
Nowadays sha1 is just 160-bit BLAKE3 which is decently fast and not
cryptographically broken, so it should be a good default.

Note that the default remains "fast" for wasm because sha1 for wasm is
still real sha1.

Close https://github.com/llvm/llvm-project/issues/43483.

[1]:
b7d427728b/build/files.c (L1883)
2024-06-10 10:14:44 -07:00
..
2021-02-08 08:55:29 -08:00
2023-05-02 09:34:48 +08:00
2023-08-21 09:11:51 -07:00
2024-01-22 09:09:46 -08:00
2022-08-15 18:49:02 -04:00
2021-01-22 19:07:02 -08:00
2021-10-04 11:10:10 +01:00
2021-10-04 11:10:10 +01:00
2021-10-04 11:10:10 +01:00
2021-10-04 11:10:10 +01:00
2020-08-07 22:08:44 -07:00
2023-07-18 17:57:31 -07:00
2022-08-02 09:52:31 -04:00
2020-06-01 10:19:41 -07:00
2023-07-25 17:06:07 +08:00
2023-07-25 17:06:07 +08:00
2022-01-15 22:33:51 -08:00
2022-01-15 22:33:51 -08:00
2022-10-24 10:54:09 -07:00
2023-07-18 17:57:31 -07:00
2024-04-19 09:09:41 -07:00
2024-05-15 15:41:20 -07:00
2022-09-20 17:12:44 -07:00
2022-10-24 10:54:09 -07:00
2021-10-31 12:10:43 -07:00