[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
request review: branch "wingo"
From: |
Andy Wingo |
Subject: |
request review: branch "wingo" |
Date: |
Fri, 27 Mar 2009 16:29:55 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.91 (gnu/linux) |
Hi,
On the "wingo" branch in the main repository, you will find the
following patches:
The following changes since commit 0fe95f9c4ce063781e79a15bc123c57c33ef9755:
Ludovic Courtès (1):
Improve wording in `libguile/Makefile.am' regarding stack
calibration.
are available in the git repository at:
git.sv.gnu.org:/srv/git/guile.git wingo
Andy Wingo (7):
allow building against uninstalled guile; move some things to meta/
add getrlimit and setrlimit wrappers
getrlimit-based stack limits
rely on getrlimit to DTRT, don't make stack calibration file
fix check for guile-tools running uninstalled
fix "linking" of guile-config
fix distcheck hopefully, by cleaning the vm-i-*.i files
.gitignore | 1 -
Makefile.am | 9 +-
README | 20 ++-
am/guilec | 4 +-
am/pre-inst-guile | 2 +-
check-guile.in | 5 +-
configure.in | 16 +-
doc/ref/Makefile.am | 4 +-
gc-benchmarks/run-benchmark.scm | 2 +-
libguile/Makefile.am | 25 +---
libguile/debug.c | 36 ++++
libguile/measure-hwm.scm | 136 ---------------
libguile/posix.c | 174
++++++++++++++++++++
libguile/posix.h | 2 +
{guile-config => meta}/ChangeLog-2008 | 0
{guile-config => meta}/Makefile.am | 25 +--
.../gdb-uninstalled-guile.in | 10 +-
meta/guile-1.8-uninstalled.pc.in | 8 +
guile-1.8.pc.in => meta/guile-1.8.pc.in | 0
{guile-config => meta}/guile-config.in | 7 +-
guile-tools.in => meta/guile-tools.in | 2 +-
pre-inst-guile.in => meta/guile.in | 6 +-
{guile-config => meta}/guile.m4 | 0
pre-inst-guile-env.in => meta/uninstalled-env.in | 17 ++-
test-suite/standalone/Makefile.am | 2 +-
test-suite/standalone/README | 2 +-
test-suite/standalone/test-fast-slot-ref.in | 2 +-
test-suite/standalone/test-use-srfi.in | 6 +-
testsuite/Makefile.am | 2 +-
29 files changed, 299 insertions(+), 226 deletions(-)
delete mode 100644 libguile/measure-hwm.scm
rename {guile-config => meta}/ChangeLog-2008 (100%)
rename {guile-config => meta}/Makefile.am (59%)
rename gdb-pre-inst-guile.in => meta/gdb-uninstalled-guile.in (79%)
create mode 100644 meta/guile-1.8-uninstalled.pc.in
rename guile-1.8.pc.in => meta/guile-1.8.pc.in (100%)
rename {guile-config => meta}/guile-config.in (98%)
rename guile-tools.in => meta/guile-tools.in (98%)
rename pre-inst-guile.in => meta/guile.in (93%)
rename {guile-config => meta}/guile.m4 (100%)
rename pre-inst-guile-env.in => meta/uninstalled-env.in (87%)
The patches fix distcheck again, but the interesting one is
ec900eacb71bbf66b85a5605f67f83b43f2c6ca8, which does this in debug.c:
@@ -513,11 +518,42 @@ SCM_DEFINE (scm_debug_hang, "debug-hang", 0, 1, 0,
#undef FUNC_NAME
#endif
+static void
+init_stack_limit (void)
+{
+#ifdef HAVE_GETRLIMIT
+ struct rlimit lim;
+ if (getrlimit (RLIMIT_STACK, &lim) == 0)
+ {
+ int bytes = lim.rlim_cur, words;
+
+ /* set our internal stack limit to 1 MB or 80% of the rlimit,
whichever
+ is lower. */
+ if (bytes == RLIM_INFINITY)
+ bytes = lim.rlim_max;
+
+ if (bytes == RLIM_INFINITY)
+ words = 1024 * 1024 / sizeof (scm_t_bits);
+ else
+ {
+ bytes = bytes * 8 / 10;
+ if (bytes > 1024 * 1024)
+ bytes = 1024 * 1024;
+ words = bytes / sizeof (scm_t_bits);
+ }
+
+ SCM_STACK_LIMIT = words;
+ }
+ errno = 0;
+#endif
+}
+
void
scm_init_debug ()
{
+ init_stack_limit ();
scm_init_opts (scm_debug_options, scm_debug_opts);
[...]
Comments? OK to merge to master?
Andy
--
http://wingolog.org/
- request review: branch "wingo",
Andy Wingo <=