diff options
| author | Ludovic Courtès <ludo@gnu.org> | 2026-06-16 10:53:03 +0200 |
|---|---|---|
| committer | Ludovic Courtès <ludo@gnu.org> | 2026-06-22 11:52:39 +0200 |
| commit | 596ede63a807da564e4ae203c7c52df06166bc37 (patch) | |
| tree | 976d32e714daf924fcb0ada51a5e308e311d4293 /gnu | |
| parent | 98d51e75c23b5cabee61bd1111c9adf6c84b1851 (diff) | |
gnu: libgit2: Use the SHA1 implementation of OpenSSL.
This leads to a 50% speedup on CPU time on a Skylake x86_64 CPU (20–25% on
wall-clock time, from 15m to 11m) on a full clone of the Guix repository.
* gnu/packages/version-control.scm (libgit2-1.9)[arguments]: Add
“-DUSE_SHA1=HTTPS”.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #9332
Diffstat (limited to 'gnu')
| -rw-r--r-- | gnu/packages/version-control.scm | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 03d6d74144b..cd33ccf42a3 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm | |||
| @@ -1396,6 +1396,12 @@ other git-like projects such as @code{libgit2}.") | |||
| 1396 | "-DREGEX_BACKEND=pcre2" | 1396 | "-DREGEX_BACKEND=pcre2" |
| 1397 | "-DUSE_HTTP_PARSER=http-parser" | 1397 | "-DUSE_HTTP_PARSER=http-parser" |
| 1398 | "-DUSE_SSH=ON" ; cmake fails to find libssh if this is missing | 1398 | "-DUSE_SSH=ON" ; cmake fails to find libssh if this is missing |
| 1399 | |||
| 1400 | ;; Use the SHA1 implementation from OpenSSL rather than the | ||
| 1401 | ;; builtin one. This halves the CPU time spent in the | ||
| 1402 | ;; "indexing objects" phase when cloning the Guix repo. | ||
| 1403 | "-DUSE_SHA1=HTTPS" | ||
| 1404 | |||
| 1399 | ;; See https://github.com/libgit2/libgit2/issues/7169 | 1405 | ;; See https://github.com/libgit2/libgit2/issues/7169 |
| 1400 | #$@(if (target-32bit?) | 1406 | #$@(if (target-32bit?) |
| 1401 | '("-DCMAKE_C_FLAGS=-D_FILE_OFFSET_BITS=64") | 1407 | '("-DCMAKE_C_FLAGS=-D_FILE_OFFSET_BITS=64") |
