From e9e825387f1daefde91b0ba5c5ec3540b0b227fa Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 8 May 2024 10:02:36 -0400 Subject: gnu: Add dwarves. * gnu/packages/linux.scm (dwarves): New variable. Change-Id: Ib2452868eae76bea95060a70e568dfb6e84b2a75 --- .../dwarves-threading-reproducibility.patch | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 gnu/packages/patches/dwarves-threading-reproducibility.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/dwarves-threading-reproducibility.patch b/gnu/packages/patches/dwarves-threading-reproducibility.patch new file mode 100644 index 0000000000..8771ca6b0d --- /dev/null +++ b/gnu/packages/patches/dwarves-threading-reproducibility.patch @@ -0,0 +1,23 @@ +Retrieved from nixpkgs. + +This causes pahole to use '-j1' (single thread) when SOURCE_DATE_EPOCH +is set, to ensure it produces reproducible output. + +diff --git a/pahole.c b/pahole.c +index 6fc4ed6..a4e306f 100644 +--- a/pahole.c ++++ b/pahole.c +@@ -1687,8 +1687,11 @@ static error_t pahole__options_parser(int key, char *arg, + class_name = arg; break; + case 'j': + #if _ELFUTILS_PREREQ(0, 178) +- conf_load.nr_jobs = arg ? atoi(arg) : +- sysconf(_SC_NPROCESSORS_ONLN) * 1.1; ++ // Force single thread if reproducibility is desirable. ++ if (!getenv("SOURCE_DATE_EPOCH")) { ++ conf_load.nr_jobs = arg ? atoi(arg) : ++ sysconf(_SC_NPROCESSORS_ONLN) * 1.1; ++ } + #else + fputs("pahole: Multithreading requires elfutils >= 0.178. Continuing with a single thread...\n", stderr); + #endif -- cgit v1.2.3