summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS6
-rw-r--r--libguile/numbers.c1
-rw-r--r--meta/build-env.in5
3 files changed, 10 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index 397ff6c43..477592373 100644
--- a/NEWS
+++ b/NEWS
@@ -67,7 +67,11 @@ GMP, and so does Guile. Since Guile 2.0.4, Guile has installed libgc as
the GMP allocator, so since then, Guile-GnuTLS has been buggy.
Therefore, the default is now to not install libgc as the GMP allocator.
-This may slow down some uses of bignums.
+This may slow down some uses of bignums. If you know that your Guile
+program will never use a library that uses GMP, you can set the
+GUILE_INSTALL_GMP_MEMORY_FUNCTIONS=1 in your environment. Guile sets
+this environment variable when building Guile, for example. See
+"Environment Variables" in the manual, for more.
In some future, Guile may switch to GMP's more low-level "MPN" API for
working with bignums, which would allow us to regain the ability to use
diff --git a/libguile/numbers.c b/libguile/numbers.c
index a4c8308f4..18bd22dbb 100644
--- a/libguile/numbers.c
+++ b/libguile/numbers.c
@@ -68,6 +68,7 @@
#include "modules.h"
#include "pairs.h"
#include "ports.h"
+#include "simpos.h"
#include "smob.h"
#include "strings.h"
#include "values.h"
diff --git a/meta/build-env.in b/meta/build-env.in
index 27e604366..299b44f99 100644
--- a/meta/build-env.in
+++ b/meta/build-env.in
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright (C) 2003, 2006, 2008-2012, 2016, 2017 Free Software Foundation
+# Copyright (C) 2003, 2006, 2008-2012, 2016, 2017, 2021 Free Software Foundation
#
# This file is part of GNU Guile.
#
@@ -90,6 +90,9 @@ done
export LTDL_LIBRARY_PATH
export DYLD_LIBRARY_PATH
+GUILE_INSTALL_GMP_MEMORY_FUNCTIONS=1
+export GUILE_INSTALL_GMP_MEMORY_FUNCTIONS
+
if [ x"$PKG_CONFIG_PATH" = x ]
then
PKG_CONFIG_PATH="${top_builddir}/meta"