1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-24 10:01:47 +02:00

guile: Silence GC warnings on the Hurd.

This should work around <https://issues.guix.gnu.org/73181>, resurrecting
offloading to the Hurd.

* gnu/packages/aux-files/guile-launcher.c (no_warnings)[__GNU__]: New
function.
(main)[__GNU__]: Use it to silence libgc warnings.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>.
Change-Id: I8f30732d192ce46144da4a1a081813a104a5f376
This commit is contained in:
Janneke Nieuwenhuizen
2024-11-04 14:54:55 +01:00
parent e37ee527a0
commit b0416b8503
+18 -1
View File
@@ -1,7 +1,8 @@
/* GNU Guix --- Functional package management for GNU
Copyright 1996-1997,2000-2001,2006,2008,2011,2013,2018,2020,2021
Free Software Foundation, Inc.
Copyright (C) 2020 Ludovic Courtès <ludo@gnu.org>
Copyright (C) 2020, 2024 Ludovic Courtès <ludo@gnu.org>
Copyright (C) 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
This file is part of GNU Guix.
@@ -28,6 +29,14 @@
#include <locale.h>
#include <libguile.h>
#if defined __GNU__
#include <gc.h>
static void
no_warnings (char *message, GC_word arg)
{
}
#endif
/* Saved values of GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH. */
static const char *load_path, *load_compiled_path;
@@ -73,6 +82,14 @@ main (int argc, char **argv)
which is always preferable over the C locale. */
setlocale (LC_ALL, "en_US.utf8");
#if defined __GNU__
/* XXX: On 32-bit GNU/Hurd (i586-gnu), libgc emits "Repeated allocation"
warnings that are annoying and interfere with communications between
'guix-daemon' and 'guix authenticate':
<https://issues.guix.gnu.org/73181>. Silence them. */
GC_set_warn_proc (no_warnings);
#endif
const char *str;
str = getenv ("GUILE_LOAD_PATH");
load_path = str != NULL ? strdup (str) : NULL;