New reports from 2.9.
[libsigsegv/ericb.git] / ChangeLog
blob9f7e80c08422390fb16d3e412975fe6fc19a9ac8
1 2010-11-06  Bruno Haible  <bruno@clisp.org>
3         * Version 2.9 released.
5 2010-11-06  Bruno Haible  <bruno@clisp.org>
7         Bump version number.
8         * configure.ac: Bump version number to 2.9.
9         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
10         * README: Likewise.
11         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:2:0.
13 2010-11-06  Bruno Haible  <bruno@clisp.org>
15         Start to use gnulib.
16         * autogen.sh: New option --skip-gnulib. Fetch gnulib if GNULIB_TOOL is
17         not set. Import m4/relocatable-lib.m4.
18         * configure.ac: Invoke gl_RELOCATABLE_NOP instead of
19         AC_RELOCATABLE_NOP.
20         * m4/relocatable.m4: Remove file.
22 2010-11-06  Bruno Haible  <bruno@clisp.org>
24         Modernize autoconf macro style.
25         * configure.ac: Surround all macro arguments in brackets.
26         * m4/getpagesize.m4: Likewise.
27         * m4/mmap-anon.m4: Likewise.
28         * m4/sigaltstack.m4: Likewise.
30 2010-11-06  Bruno Haible  <bruno@clisp.org>
32         Don't list files in .gitignore that are absent after "make distclean".
33         * .gitignore: Complete the list of files that are created by "make" and
34         removed by "make distclean". But comment them out, since they belong in
35         .git/info/exclude. Also remove /autom4te.cache because "make distclean"
36         does not remove it.
38 2010-10-25  Eric Blake  <eblake@redhat.com>
40         Fix powerpc64-unknown-linux-gnu implementation.
41         * src/stackvma-rofile.c (struct rofile): Reduce size, to avoid
42         overflowing alternate stack when compiled under -O2.
43         * src/stackvma-mincore.c (mapped_range_start, mapped_range_end):
44         Likewise.
45         * NEWS: Document the fix.
47 2010-10-24  Eric Blake  <eblake@redhat.com>
48             Bruno Haible  <bruno@clisp.org>
50         Enhance the tests to detect overflow of the alternate stack.
51         * tests/altstack.h: New file.
52         * tests/Makefile.am (EXTRA_DIST): Add altstack.h.
53         * configure.ac: Invoke AC_TYPE_UINTPTR_T.
54         * tests/stackoverflow1.c: Include altstack.h.
55         (SIGSTKSZ): Remove definition.
56         (mystack): Remove definition.
57         (main): Invoke prepare_alternate_stack and
58         check_alternate_stack_no_overflow.
59         * tests/stackoverflow2.c: Likewise.
60         * tests/efault2.c: Likewise.
61         * tests/efault3.c: Likewise.
63 2010-10-21  Eric Blake  <eblake@redhat.com>
65         * .gitignore: Ignore more files.
67 2010-09-23  Bruno Haible  <bruno@clisp.org>
69         * m4/libtool.m4: Update from libtool-2.4.
70         * m4/ltversion.m4: Likewise.
71         * build-aux/ltmain.sh: Likewise.
73 2010-06-04  Bruno Haible  <bruno@clisp.org>
75         * m4/libtool.m4: Update from libtool-2.2.8.
76         * m4/ltoptions.m4: Likewise.
77         * m4/ltversion.m4: Likewise.
78         * m4/lt~obsolete.m4: Likewise.
79         * build-aux/ltmain.sh: Likewise.
81 2010-04-06  Eric Blake  <eblake@redhat.com>
83         * AUTHORS: Add myself.
85 2010-03-30  Bruno Haible  <bruno@clisp.org>
87         * README.woe32: Update for Cygwin 1.7.x.
89 2010-02-18  Bruno Haible  <bruno@clisp.org>
91         Fix 64-bit builds with --enable-shared on MacOS X.
92         * src/stackvma-mach.c (sigsegv_get_vma): On 64-bit MacOS X, use
93         vm_region_64 instead of vm_region.
94         * NEWS: Mention the fix.
95         Reported by Rudá Moura <ruda@rudix.org>.
97 2010-01-31  Bruno Haible  <bruno@clisp.org>
99         * README: Add more homepage links. Add bug report address.
101 2010-01-07  Bruno Haible  <bruno@clisp.org>
103         Improve support for OpenBSD.
104         * src/fault-openbsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Define
105         differently in 64-bit mode.
106         * src/fault-openbsd-alpha.h: New file.
107         * src/fault-openbsd-arm.h: New file.
108         * src/fault-openbsd-hppa.h: New file.
109         * src/fault-openbsd-m68k.h: New file.
110         * src/fault-openbsd-m88k.h: New file.
111         * src/fault-openbsd-mips.h: New file.
112         * src/fault-openbsd-powerpc.h: New file.
113         * src/fault-openbsd-sh.h: New file.
114         * src/fault-openbsd-sparc.h: New file.
115         * src/fault-openbsd-vax.h: New file.
116         * src/Makefile.am (noinst_HEADERS): Add the new files.
117         * configure.ac (CFG_FAULT): Use these files on OpenBSD.
118         Reported by Paul Irofti <bulibuta@sdf.lonestar.org>.
120 2009-12-11  Bruno Haible  <bruno@clisp.org>
122         * Version 2.8 released.
124 2009-12-11  Bruno Haible  <bruno@clisp.org>
126         * configure.ac: Bump version number to 2.8.
127         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
128         * README: Likewise.
129         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:1:0.
131 2009-12-11  Bruno Haible  <bruno@clisp.org>
133         Remove configuration option --enable-EFAULT.
134         * configure.ac (enable_EFAULT): Set to yes on Cygwin, to no otherwise.
135         * README, NEWS: Don't mention --enable-EFAULT.
136         Reported by Eric Blake.
138 2009-12-11  Bruno Haible  <bruno@clisp.org>
140         New test for Cygwin.
141         * tests/cygwin1.c: New file, based on code by Eric Blake.
142         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add it.
143         * configure.ac (CYGWIN): New conditional.
145 2009-11-21  Eric Blake  <ebb9@byu.net>
146             Bruno Haible  <bruno@clisp.org>
148         New configuration option --enable-EFAULT.
149         * configure.ac: Accept option --enable-EFAULT. Set and define
150         ENABLE_EFAULT. Invoke SV_SYSCALLS_EFAULT.
151         For Cygwin, use the CFG_FAULT that was already determined, or
152         fault-cygwin-old.h if none. In the latter case, define
153         OLD_CYGWIN_WORKAROUND.
154         * m4/efault.m4: New file.
155         * src/handler-win32.c [CYGWIN && ENABLE_EFAULT]: Include
156         handler-unix.c.
157         (MIXING_UNIX_SIGSEGV_AND_WIN32_STACKOVERFLOW_HANDLING): New macro.
158         (last_seen_fault_address): New variable.
159         (main_exception_filter): Store the fault address for the Unix signal
160         handler.
161         (sigsegv_install_handler): Redefine.
162         (sigsegv_deinstall_handler, sigsegv_leave_handler): Don't define.
163         * src/handler-unix.c (stackoverflow_install_handler,
164         stackoverflow_deinstall_handler): Don't define if
165         MIXING_UNIX_SIGSEGV_AND_WIN32_STACKOVERFLOW_HANDLING is set.
166         * src/fault-cygwin-old.h: New file.
167         * src/Makefile.am (noinst_HEADERS): Add it.
168         * tests/efault1.c: New file.
169         * tests/efault2.c: New file.
170         * tests/efault3.c: New file.
171         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add efault1, efault2,
172         efault3.
173         * README, NEWS: Mention the new option.
175 2009-11-21  Bruno Haible  <bruno@clisp.org>
177         Support for Cygwin 1.7.
178         * configure.ac: For Cygwin and mingw, choose FAULT_CONTEXT in a way
179         that is consistent with CFD_HANDLER.
180         Reported by Eric Blake <ebb9@byu.net>
182 2009-11-21  Bruno Haible  <bruno@clisp.org>
184         * configure.ac: Add comments and structure.
186 2009-11-21  Bruno Haible  <bruno@clisp.org>
188         Reduce size of configure.ac.
189         * m4/stack-direction.m4: New file, extracted from configure.ac.
190         * configure.ac: Simply invoke SV_STACK_DIRECTION.
192 2009-11-21  Eric Blake  <ebb9@byu.net>
193             Bruno Haible  <bruno@clisp.org>
195         Avoid a gcc warning.
196         * src/handler-win32.c (debug_get_except_list): Mark as unused.
198 2009-11-21  Bruno Haible  <bruno@clisp.org>
200         Fix compilation error on newer versions of HP-UX 11.31 on ia64.
201         * configure.ac: Set sv_cv_have_stack_overflow_recovery to 'no' if it is
202         not possible to longjmp out of the signal handler. On HP-UX 11.31 on
203         ia64 it is only possible with siglongjmp (as far as we know).
204         Reported by Bill Glessner <bill.glessner@cwu.edu>.
206         * configure.ac: Move determination of CFG_LEAVE before the
207         determination of sv_cv_have_stack_overflow_recovery.
209 2009-10-17  Bruno Haible  <bruno@clisp.org>
211         * README: Mention danger of longjmping back to a central point.
212         Reported by Angelo Borsotti <angelo.borsotti@gmail.com>.
214 2009-09-22  Paolo Bonzini  <bonzini@gnu.org>
216         Move more declarations of alternate stacks to global scope.
217         * m4/sigaltstack-longjmp.m4: Make mystack global.
218         * m4/sigaltstack-siglongjmp.m4: Make mystack global.
219         * m4/sigaltstack.m4: Make mystack global.
221 2009-09-22  Paolo Bonzini  <bonzini@gnu.org>
223         Fix crash of stackoverflow2 on x86_64-linux.
224         * tests/stackoverflow1.c: Make mystack global.
225         * tests/stackoverflow2.c: Likewise.
226         * src/sigsegv.h.in: Warn against placing the alternate stack
227         on the main stack.
229 2009-08-16  Bruno Haible  <bruno@clisp.org>
231         Avoid a gcc warning on Solaris.
232         * src/stackvma-procfs.c: Include <string.h>.
234 2009-08-14  Bruno Haible  <bruno@clisp.org>
236         Remove config.guess, config.sub from from version control.
237         * autogen.sh: Fetch config.guess, config.sub.
238         * build-aux/config.guess: Remove file.
239         * build-aux/config.sub: Remove file.
241 2009-08-14  Bruno Haible  <bruno@clisp.org>
243         Remove autogenerated files from version control.
244         * autogen.sh: New file.
245         * aclocal.m4: Remove file.
246         * configure: Remove file.
247         * config.h.in: Remove file.
248         * Makefile.in: Remove file.
249         * src/Makefile.in: Remove file.
250         * tests/Makefile.in: Remove file.
251         * build-aux/install-sh: Remove file.
252         * build-aux/missing: Remove file.
253         * config.h.msvc: Remove file.
254         * src/sigsegv.h.msvc: Remove file.
256 2009-08-14  Bruno Haible  <bruno@clisp.org>
258         Override automake's tar command used for creating distributions.
259         * configure.ac (am__tar): New variable.
261 2009-08-09  Bruno Haible  <bruno@clisp.org>
263         * Version 2.7 released.
265 2009-08-09  Bruno Haible  <bruno@clisp.org>
267         * configure.ac: Bump version number to 2.7.
268         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
269         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:0:0.
271 2009-08-09  Bruno Haible  <bruno@clisp.org>
273         * src/fault-linux-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Fix mistake.
275 2009-08-09  Bruno Haible  <bruno@clisp.org>
277         Avoid warnings on glibc systems.
278         * src/stackvma-mincore.c (pageinfo_t): New type.
279         (is_mapped, mapped_range_start, mapped_range_end): Use it.
281 2009-08-01  Bruno Haible  <bruno@clisp.org>
283         Prefer the POSIX way over the traditional one, on Linux.
284         * configure.ac: Use the traditional Linux way only if the POSIX way
285         does not work.
286         * NEWS: Mention the change.
288 2009-08-01  Bruno Haible  <bruno@clisp.org>
290         Add knowledge where to find the stack pointer on Linux platforms.
291         * src/fault-linux-alpha.h: New file.
292         * src/fault-linux-arm.h: New file.
293         * src/fault-linux-cris.h: New file.
294         * src/fault-linux-hppa.h: New file.
295         * src/fault-linux-i386.h: New file.
296         * src/fault-linux-ia64.h: New file.
297         * src/fault-linux-m68k.h: New file.
298         * src/fault-linux-mips.h: New file.
299         * src/fault-linux-powerpc.h: New file.
300         * src/fault-linux-s390.h: New file.
301         * src/fault-linux-sh.h: New file.
302         * src/fault-linux-sparc.h: New file.
303         * src/Makefile.am (noinst_HEADERS): Add them.
304         * src/handler-unix.c (_GNU_SOURCE): Define.
305         * src/fault-linux-hppa-old.h: Add alternative code, commented.
306         * src/fault-linux-sparc-old.h: Likewise.
307         * configure.ac (CFG_FAULT): Use these files on Linux when the POSIX way
308         of catching page faults works.
310 2009-08-01  Bruno Haible  <bruno@clisp.org>
312         * src/fault-linux-i386-old.h: Renamed from src/fault-linux-i386.h.
313         * src/Makefile.am (noinst_HEADERS): Update.
314         * configure.ac: Update.
316         * src/fault-linux-i386-oldold.h: Renamed from
317         src/fault-linux-i386-old.h.
318         * src/Makefile.am (noinst_HEADERS): Update.
319         * configure.ac: Update.
321         * src/fault-linux-alpha-old.h: Renamed from src/fault-linux-alpha.h.
322         * src/fault-linux-arm-old.h: Renamed from src/fault-linux-arm.h.
323         * src/fault-linux-cris-old.h: Renamed from src/fault-linux-cris.h.
324         * src/fault-linux-hppa-old.h: Renamed from src/fault-linux-hppa.h.
325         * src/fault-linux-ia64-old.h: Renamed from src/fault-linux-ia64.h.
326         * src/fault-linux-m68k-old.c: Renamed from src/fault-linux-m68k.c.
327         * src/fault-linux-m68k-old.h: Renamed from src/fault-linux-m68k.h.
328         Update.
329         * src/fault-linux-mips-old.h: Renamed from src/fault-linux-mips.h.
330         * src/fault-linux-powerpc-old.h: Renamed from src/fault-linux-powerpc.h.
331         * src/fault-linux-s390-old.h: Renamed from src/fault-linux-s390.h.
332         * src/fault-linux-sh-old.h: Renamed from src/fault-linux-sh.h.
333         * src/fault-linux-sparc-old.h: Renamed from src/fault-linux-sparc.h.
334         * src/fault-linux-x86_64-old.h: Renamed from src/fault-linux-x86_64.h.
335         * src/Makefile.am (noinst_HEADERS): Update.
336         * configure.ac: Update.
338 2009-06-23  Bruno Haible  <bruno@clisp.org>
340         * Makefile.am (check-next): No longer ask for copies of config.log.
342 2009-06-23  Bruno Haible  <bruno@clisp.org>
344         Improve support for MirBSD 10.
345         * configure.ac (CFG_FAULT, FAULT_CONTEXT): Treat MirBSD/i386 like
346         OpenBSD/i386.
348 2009-06-23  Bruno Haible  <bruno@clisp.org>
350         Add support for platforms that follow POSIX:2008, not POSIX:2001.
351         * configure.ac (POSIX): Add MirBSD to known list.
352         (CFG_FAULT, FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE): Define appropriately
353         when <ucontext.h> does not exist.
354         * src/fault-posix-ucontext.h: Renamed from src/fault-posix.h.
355         * src/fault-posix.h: New file.
356         * src/fault-aix5.h: Update.
357         * src/fault-hpux-hppa.h: Update.
358         * src/fault-netbsd.h: Update.
359         * src/fault-solaris.h: Update.
360         * src/Makefile.am (noinst_HEADERS): Add fault-posix-ucontext.h.
362 2009-06-23  Bruno Haible  <bruno@clisp.org>
364         * configure.ac (FAULT_CONTEXT_INCLUDE): Reinstall the AC_SUBST
365         invocation.
367 2009-05-21  Bruno Haible  <bruno@clisp.org>
369         * configure.ac (FAULT_CONTEXT_INCLUDE): Don't substitute into
370         Makefiles.
372 2009-05-21  Bruno Haible  <bruno@clisp.org>
374         * tests/Makefile.am (AUTOMAKE_OPTIONS): Assume automake >= 1.11.
375         Use color-tests option.
377 2009-01-14  Bruno Haible  <bruno@clisp.org>
379         * configure.ac: More consistent m4 quoting.
381 2008-09-27  Bruno Haible  <bruno@clisp.org>
383         * build-aux/config.sub: Update to GNU version 2008-09-08.
385 2008-09-23  Eric Blake  <ebb9@byu.net>
387         Use 2 * SIGSTKSZ consistently in configuration checks.
388         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Work around IRIX sigaltstack bug.
389         * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
390         * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
391         Likewise.
393 2008-09-21  Bruno Haible  <bruno@clisp.org>
395         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): New variable.
396         (libsigsegv_la_LDFLAGS): Pass -rpath and -version-info option.
397         Reported by Thomas Klausner <tk@giga.or.at>.
399 2008-09-21  Eric Blake  <ebb9@byu.net>
400             Bruno Haible  <bruno@clisp.org>
402         Detect and work around bug in Irix 5.3 sigaltstack.
403         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Test for broken stack_t direction
404         in sigaltstack.
405         * src/handler-unix.c (stackoverflow_install_handler): Adjust stack
406         accordingly.
407         * tests/stackoverflow1.c (stack_lower_bound, stack_upper_bound): New
408         variables.
409         (stackoverflow_handler): Use them to expose IRIX bug.
410         (main): Initialize them.
412 2008-09-07  Bruno Haible  <bruno@clisp.org>
414         * m4/libtool.m4: Update from libtool-2.2.6.
415         * m4/ltoptions.m4: Likewise.
416         * m4/ltsugar.m4: Likewise.
417         * m4/ltversion.m4: Likewise.
418         * build-aux/ltmain.sh: Likewise.
420 2008-08-25  Bruno Haible  <bruno@clisp.org>
422         * Version 2.6 released.
424 2008-08-24  Bruno Haible  <bruno@clisp.org>
426         * configure.ac: Treat Dragonfly BSD platforms like FreeBSD.
427         Reported by Thomas Klausner <tk@giga.or.at>.
429 2008-08-24  Bruno Haible  <bruno@clisp.org>
431         * src/stackvma-mincore.c (mincore_is_near_this): Improve logic. Needed
432         for reliable NULL pointer access classification as SIGSEGV on AIX 4.3.
434 2008-08-24  Bruno Haible  <bruno@clisp.org>
436         * m4/sigaltstack.m4: Change 'volatile int' return type to 'int'. Needed
437         for AIX 4.3 xlc.
438         * m4/sigaltstack-longjmp.m4: Likewise.
439         * m4/sigaltstack-siglongjmp.m4: Likewise.
440         * tests/stackoverflow1.c (recurse): Likewise.
441         * tests/stackoverflow2.c (recurse): Likewise.
443 2008-08-24  Bruno Haible  <bruno@clisp.org>
445         * tests/sigsegv1.c: Include <config.h>.
446         * tests/sigsegv2.c: Likewise.
447         * tests/sigsegv3.c: Include <config.h> before all other headers.
448         * tests/stackoverflow1.c: Likewise.
449         * tests/stackoverflow2.c: Likewise.
451 2008-08-24  Bruno Haible  <bruno@clisp.org>
453         Fix the sigsegv3 test on MacOS X.
454         * src/sigsegv.h.in (sigsegv_leave_handler): Take 4 arguments.
455         * NEWS: Mention the change.
456         * src/handler-macos.c (our_exception_thread, signalled_thread): New
457         variables.
458         (catch_exception_raise): Set signalled_thread during the user_handler
459         invocation.
460         (mach_exception_thread): Initialize our_exception_thread.
461         (sigsegv_leave_handler): Take 4 arguments. When called from within
462         the exception thread, let the signalled thread do a hyperjump.
463         * src/handler-unix.c (sigsegv_leave_handler): Take 4 arguments.
464         * src/handler-win32.c (sigsegv_leave_handler): Likewise.
465         * src/handler-none.c (sigsegv_leave_handler): Likewise.
466         * src/machfault-macos.h (SIGSEGV_INTEGER_ARGUMENT_1,
467         SIGSEGV_INTEGER_ARGUMENT_2, SIGSEGV_INTEGER_ARGUMENT_3,
468         SIGSEGV_FRAME_POINTER): New macros.
469         * tests/sigsegv3.c (handler_continuation): New function.
470         (handler): Update to new API.
471         * tests/stackoverflow1.c (stackoverflow_handler_continuation): New
472         function.
473         (stackoverflow_handler): Update to new API.
474         * tests/stackoverflow2.c (stackoverflow_handler_continuation): New
475         function.
476         (stackoverflow_handler, sigsegv_handler): Update to new API.
478 2008-08-24  Bruno Haible  <bruno@clisp.org>
480         Test the use of sigsegv_leave_handler from within a SIGSEGV handler.
481         * tests/sigsegv3.c: New file.
482         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add sigsegv3.
484 2008-08-23  Eric Blake  <ebb9@byu.net>
486         * src/Makefile.am (noinst_HEADERS): Remove machfault-macos-powerpc.h
487         and machfault-macos-i386.h. Add machfault-macos.h.
489 2008-08-17  Bruno Haible  <bruno@clisp.org>
491         Allow building universal binaries on MacOS X.
492         * src/machfault-macos.h: New file, combining
493         src/machfault-macos-powerpc.h and src/machfault-macos-i386.h.
494         * src/machfault-macos-powerpc.h: Remove file.
495         * src/machfault-macos-i386.h: Remove file.
496         * configure.ac (CFG_MACHFAULT): Set to machfault-macos.h.
497         (FAULT_CONTEXT_INCLUDE) [MacOSX]: Set to #ifdefs for all four possible
498         architectures.
500 2008-07-20  Bruno Haible  <bruno@clisp.org>
502         Make sigsegv_get_vma async-safe.
503         * src/sigsegv.h.in (sigsegv_handler_t, stackoverflow_handler_t):
504         Mention async-safety constraints.
505         + src/stackvma-rofile.c: New file.
506         * src/stackvma-freebsd.c: Include stackvma-rofile.c.
507         (sigsegv_get_vma): Use struct rofile instead of FILE.
508         * src/stackvma-linux.c: Include stackvma-rofile.c.
509         (sigsegv_get_vma): Use struct rofile instead of FILE.
510         * src/stackvma-procfs.c: Include <sys/mman.h> instead of <stdlib.h> and
511         <stdio.h>.
512         (sigsegv_get_vma): Avoid using sprintf. Ensure pagesize is initialized.
513         Use mmap/munmap instead of malloc/free.
514         * src/Makefile.am (EXTRA_DIST): Add stackvma-rofile.c.
515         Reported by Eric Blake <ebb9@byu.net>.
517 2008-07-20  Bruno Haible  <bruno@clisp.org>
519         * src/handler-unix.c (sigsegv_handler): Preserve errno.
521 2008-07-20  Eric Blake  <ebb9@byu.net>
523         * src/stackvma-mincore.c (mincore_is_near_this): Fix logic.
525 2008-07-20  Bruno Haible  <bruno@clisp.org>
527         * tests/stackoverflow2.c (main): Test also a NULL pointer access.
528         Reported by Eric Blake <ebb9@byu.net>.
530 2008-06-23  Bruno Haible  <bruno@clisp.org>
532         * build-aux/config.guess: Update to GNU version 2008-06-16.
533         * build-aux/config.sub: Likewise.
535 2008-05-31  Bruno Haible  <bruno@clisp.org>
537         Make cross-compile from MacOS X 10.5 to MacOS X 10.4 work.
538         * src/handler-macos.c (MacOS_X_10_5_HEADERS): New macro.
539         * src/machfault-macos-i386.h: Use it.
540         * src/machfault-macos-powerpc.h: Likewise.
541         Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
543 2008-05-31  Bruno Haible  <bruno@clisp.org>
545         * m4/mmap-anon.m4 (SV_MMAP_ANON): Add known cross-compile results for
546         MacOS X.
547         Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
549 2008-05-27  Bruno Haible  <bruno@clisp.org>
551         * configure.ac: Require at least autoconf 2.62. Merge
552         FAULT_CONTEXT_INCLUDE2 variable into FAULT_CONTEXT_INCLUDE.
553         * src/sigsegv.h.in: Remove FAULT_CONTEXT_INCLUDE2 substitution.
554         * src/Makefile.am (sigsegv.h.msvc): Update.
556 2008-05-27  Bruno Haible  <bruno@clisp.org>
558         * configure.ac: Bump version number to 2.6.
559         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
561 2008-05-27  Bruno Haible  <bruno@clisp.org>
563         Support for 64-bit mode on MacOS X 10.5.
564         * src/handler-macos.c (catch_exception_raise): Align the stack pointer
565         also on x86_64. Needed for MMX instructions.
566         * src/machfault-macos-i386.h: Choose among 64-bit and 32-bit flavours.
567         Use new names for the 32-bit flavour when possible.
568         * src/machfault-macos-powerpc.h: Choose among 64-bit and 32-bit
569         flavours.
570         * configure.ac (FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE2): Choose
571         right flavour (ppc_thread_state_t/ppc_thread_state64_t or
572         i386_thread_state_t/x86_thread_state32_t/x86_thread_state64_t) at
573         compile time.
575 2008-05-18  Bruno Haible  <bruno@clisp.org>
577         * m4/libtool.m4: Update from libtool-2.2.4.
578         * m4/ltoptions.m4: Likewise.
579         * m4/ltversion.m4: Likewise.
580         * m4/lt~obsolete.m4: Likewise.
581         * build-aux/ltmain.sh: Likewise.
583 2008-04-06  Bruno Haible  <bruno@clisp.org>
585         * m4/libtool.m4: Update from libtool-2.2.2.
586         * m4/ltoptions.m4: New file, from libtool-2.2.2.
587         * m4/ltsugar.m4: New file, from libtool-2.2.2.
588         * m4/ltversion.m4: New file, from libtool-2.2.2.
589         * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
590         * build-aux/ltmain.sh: New file, from libtool-2.2.2.
591         * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
593 2007-11-16  Bruno Haible  <bruno@clisp.org>
595         * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Use sc_rsp
596         also on x86_64-freebsd platform.
597         Reported by Dmitri Hrapof <hrapof@common-lisp.ru> and
598         Petr Salinger <Petr.Salinger@seznam.cz>.
600 2007-11-15  Bruno Haible  <bruno@clisp.org>
602         * configure.ac (CFG_SIGNALS, CFG_FAULT): Port to i586-kfreebsd-gnu
603         and x86_64-kfreebsd-gnu.
604         * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Likewise.
605         Based on patch by Petr Salinger <Petr.Salinger@seznam.cz>.
607 2007-11-11  Bruno Haible  <bruno@clisp.org>
609         * Version 2.5 released.
611 2007-11-11  Bruno Haible  <bruno@clisp.org>
613         * configure.ac: Bump version number to 2.5.
614         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
616 2007-10-28  Bruno Haible  <bruno@clisp.org>
618         * src/handler-macos.c (catch_exception_raise): Align the new stack
619         pointer on a 16-byte boundary.
620         * src/handler-win32.c (main_exception_filter): Correct alignment:
621         %esp must be aligned to == -4 mod 16 upon function entry.
623 2007-10-28  Bruno Haible  <bruno@clisp.org>
625         * src/sigsegv.h.in (stackoverflow_install_handler): Avoid comment
626         inside comment.
627         Reported by Chris Willmore <willmc@rpi.edu>.
629 2007-10-28  Bruno Haible  <bruno@clisp.org>
631         * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS,
632         SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Add __DARWIN_UNIX03
633         conditional.
634         * src/machfault-macos-i386.h (SIGSEGV_FAULT_ADDRESS,
635         SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Likewise.
636         * src/fault-macosdarwin7-powerpc.h (SIGSEGV_FAULT_STACKPOINTER):
637         Likewise.
638         * src/fault-macosdarwin7-powerpc.c (get_fault_addr): Likewise.
639         Reported by Chris Willmore <willmc@rpi.edu>.
641 2007-01-12  Bruno Haible  <bruno@clisp.org>
643         * Makefile.am (check-next): Don't ask for reports from x86_64-*-linux*
644         platforms.
646 2006-07-14  Bruno Haible  <bruno@clisp.org>
648         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Use SIGSTKSZ instead of
649         hardcoding 16384.
650         * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
651         * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
652         Likewise.
653         * tests/stackoverflow1.c (main): Likewise.
654         * tests/stackoverflow2.c (main): Likewise.
655         * src/sigsegv.h.in (stackoverflow_install_handler): Update
656         recommendation for extra_stack_size.
657         Needed for ia64.
658         Reported by Peter Van Eynde <pvaneynd@users.sourceforge.net>.
660 2006-06-23  Bruno Haible  <bruno@clisp.org>
662         * Version 2.4 released.
664 2006-06-23  Bruno Haible  <bruno@clisp.org>
666         * configure.ac: Bump version number to 2.4.
667         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
669 2006-06-17  Bruno Haible  <bruno@clisp.org>
671         * src/Makefile.am (noinst_HEADERS): Add fault-netbsd.h.
673 2006-06-17  Bruno Haible  <bruno@clisp.org>
675         * m4/sigaltstack.m4: Insert 'volatile' and pass a pointer, to defeat
676         GCC 4 optimizations.
677         * m4/sigaltstack-longjmp.m4: Likewise.
678         * m4/sigaltstack-siglongjmp.m4: Likewise.
680 2006-06-17  Bruno Haible  <bruno@clisp.org>
682         * tests/stackoverflow1.c (recurse): Remove useless cast.
683         * tests/stackoverflow2.c (recurse): Likewise.
685 2006-06-17  Bruno Haible  <bruno@clisp.org>
687         * src/stackvma-freebsd.c (sigsegv_get_vma): Test whether mincore()
688         works as expected before using it.
690 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
692         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
693         "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
695 2006-06-13  Bruno Haible  <bruno@clisp.org>
697         Make NetBSD/i386 stack overflow detection work even without mincore.
698         * src/fault-netbsd.h: New file.
699         * configure.ac (CFG_FAULT): Choose it when appropriate.
701 2006-05-16  Bruno Haible  <bruno@clisp.org>
703         Don't allow the compiler to reorder instructions in the tests.
704         * tests/sigsegv1.c (crashes): Use volatile in pointer access.
705         * tests/sigsegv2.c (main): Likewise.
706         * tests/stackoverflow2.c (main): Likewise.
708 2006-05-14  Bruno Haible  <bruno@clisp.org>
710         Exploit the mincore() system call where available.
711         * src/stackvma-mincore.c: New file.
712         * src/Makefile.am (EXTRA_DIST): Add it.
713         * src/stackvma.h: Add double-inclusion guard.
714         * src/stackvma-freebsd.c: If mincore() is available, include also
715         stackvma-mincore.c.
716         (sigsegv_get_vma): If mincore() is available, use it as fallback.
717         * src/stackvma-linux.c: If mincore() is available, include also
718         stackvma-mincore.c.
719         (sigsegv_get_vma): If mincore() is available, use it as fallback.
720         * src/stackvma-procfs.c: If mincore() is available, include also
721         stackvma-mincore.c.
722         (sigsegv_get_vma): If mincore() is available, use it as fallback.
723         * configure.ac: Test for mincore.
724         (CFG_STACKVMA): Set to stackvma-mincore.c if nothing else is available.
726 2006-05-14  Bruno Haible  <bruno@clisp.org>
728         * src/stackvma-simple.c: New file, extracted from handler-unix.c.
729         * src/Makefile.am (EXTRA_DIST): Add it.
730         * src/stackvma-beos.c: Include stackvma-simple.c.
731         (sigsegv_get_vma): Fill the vma's is_near_this field.
732         * src/stackvma-freebsd.c: Include stackvma-simple.c.
733         (sigsegv_get_vma): Fill the vma's is_near_this field.
734         * src/stackvma-linux.c: Include stackvma-simple.c.
735         (sigsegv_get_vma): Fill the vma's is_near_this field.
736         * src/stackvma-mach.c: Include stackvma-simple.c.
737         (sigsegv_get_vma): Fill the vma's is_near_this field.
738         * src/stackvma-procfs.c: Include stackvma-simple.c.
739         (sigsegv_get_vma): Fill the vma's is_near_this field.
740         * src/stackvma.h (vma_struct): Add is_near_this field.
741         * src/handler-unix.c (sigsegv_handler): Use the vma's is_near_this
742         function.
744 2006-04-28  Bruno Haible  <bruno@clisp.org>
746         * Version 2.3 released.
748 2006-04-28  Bruno Haible  <bruno@clisp.org>
750         * configure.ac: Bump version number to 2.3.
751         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
753         * build-aux/config.guess, build-aux/config.sub: Update to GNU version
754         2006-04-26.
756         * build-aux/install-sh: Update from automake-1.9.6.
757         * build-aux/missing: Likewise.
759         * build-aux/ltmain.sh: Update from libtool-1.5.22.
760         * m4/libtool.m4: Likewise.
762 2006-04-28  Bruno Haible  <bruno@clisp.org>
764         * build-aux: Renamed from autoconf.
765         * configure.ac (AC_CONFIG_AUX_DIR): Set to build-aux.
767 2006-04-22  Bruno Haible  <bruno@clisp.org>
769         * configure.ac: Renamed from configure.in.
771 2006-04-21  Bruno Haible  <bruno@clisp.org>
773         * src/machfault-macos-i386.h: Rewritten for Darwin 8.6.1.
774         * configure.in: Change FAULT_CONTEXT for i?86-darwin.
776 2005-06-21  Paolo Bonzini  <bonzini@gnu.org>
778         * configure.in: For handler-macos.c, include mach/thread_status.h.
779         * configure: Regenerate.
781 2005-06-21  Paolo Bonzini  <bonzini@gnu.org>
783         * tests/stackoverflow1.c (recurse): Make more resilient to compiler
784         optimization.
785         (recurse_1): New.
786         * tests/stackoverflow2.c: Likewise.
788 2005-05-24  Bruno Haible  <bruno@clisp.org>
790         * src/handler-win32.c (main_exception_filter): Copy CONTEXT structure
791         to safe area on the stack.
792         Based on patch by Doug Currie <e@flavors.com>.
794         * src/handler-win32.c (main_exception_filter): Swap arguments passed
795         to stack_overflow_handler.
796         Patch by Doug Currie <e@flavors.com>.
798         * src/handler-win32.c (main_exception_filter): Align %esp on a 16-byte
799         boundary.
801 2005-03-02  Bruno Haible  <bruno@clisp.org>
803         * Version 2.2 released.
805 2005-03-02  Bruno Haible  <bruno@clisp.org>
807         * autoconf/config.guess: Update.
808         * autoconf/config.sub: Update.
809         * autoconf/missing: Update from automake-1.9.5.
811         * m4/libtool.m4: Upgrade to libtool-1.5.14 with gettext modifications.
812         * autoconf/ltmain.sh: Likewise.
814 2005-03-02  Bruno Haible  <bruno@clisp.org>
816         * src/fault-aix5.h: New file.
817         * src/fault-aix5-powerpc.h: New file.
818         * src/Makefile.am (noinst_HEADERS): Add them.
819         * configure.in: Choose them when the POSIX test succeeds on AIX.
821         * src/fault-aix3-powerpc.h: Renamed from src/fault-aix-powerpc.h.
822         * src/fault-aix3.h: Renamed from src/fault-aix.h.
823         * src/Makefile.am (noinst_HEADERS): Update.
824         * configure.in: Update. When cross-compiling, assume the AIX test
825         succeeds only on AIX 3 and AIX 4.
827 2005-03-01  Bruno Haible  <bruno@clisp.org>
829         * configure.in: Fix test of CFG_MACHFAULT.
831 2005-02-27  Bruno Haible  <bruno@clisp.org>
833         * configure.in: Skip tests that are not needed on MacOS X >= 10.2.
834         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Don't perform the test on
835         MacOS X >= 10.2.
837 2005-02-18  Bruno Haible  <bruno@clisp.org>
839         * tests/sigsegv1.c (handler_called): Declare as volatile.
840         * tests/sigsegv2.c (logcount, logdata): Likewise.
841         * tests/stackoverflow1.c (pass): Likewise.
842         * tests/stackoverflow2.c (pass): Likewise.
844 2005-01-29  Bruno Haible  <bruno@clisp.org>
846         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): New macro.
847         (libsigsegv_version): New declaration.
848         * src/version.c: New file.
849         * src/Makefile.am (libsigsegv_la_SOURCES): Add version.c.
850         * Makefile.msvc (OBJECTS): Add version.obj.
851         (version.obj): New rule.
852         Suggested by Sam Steingold.
854 2004-08-25  Bruno Haible  <bruno@clisp.org>
856         * m4/libtool.m4: Upgrade to libtool-1.5.6.
857         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
859 2004-08-18  Bruno Haible  <bruno@clisp.org>
861         * configure.in: Bump version number to 2.2.
863 2004-08-17  Bruno Haible  <bruno@clisp.org>
865         Finish the Mach-based MacOS X support.
866         * src/handler-macos.c: Don't include mach/vm_map.h.
867         Include machfault.h instead of fault.h.
868         (save_exc_state): Remove variable.
869         (save_thread_state): New variable.
870         (terminating_handler): New function.
871         (altstack_handler): Pass the save_thread_state, not the save_exc_state,
872         to the user's handler.
873         (catch_exception_raise): Make it work also for platforms which don't
874         have an exc_state type. Call SIGSEGV_FAULT_ADDRESS with 2 arguments.
875         Don't clobber the exc_state; instead set the thread's program counter
876         to terminating_handler or altstack_handler, depending on the case.
877         Return KERN_SUCCESS at the end.
878         * src/machfault.h: New file.
879         * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS): Add a second
880         argument.
881         * src/machfault-macos-i386.h: New file.
882         * src/Makefile.am (EXTRA_DIST): Add handler-macos.c.
883         (NOINST_HEADERS): Add machfault.h, machfault-macos-i386.h,
884         machfault-macos-powerpc.h.
885         * configure.in (CFG_HANDLER): Initialize to empty.
886         (CFG_MACHFAULT): New substituted variable.
887         On MacOS X PowerPC+i386, use CFG_HANDLER=handler-macos.c
888         unconditionally.
889         (sv_cv_fault_include, sv_cv_have_stack_overflow_recovery): Set
890         correctly also in the handler-macos.c case.
892 2004-08-16  Bruno Haible  <bruno@clisp.org>
894         Support for MacOS X 10.3 on PowerPC.
895         * src/fault-macosdarwin5-powerpc.h: Renamed from
896         src/fault-macos-powerpc.h.
897         * src/fault-macosdarwin5-powerpc.c: Renamed from
898         src/fault-macos-powerpc.c.
899         * src/fault-macosdarwin7-powerpc.h: New file.
900         * src/fault-macosdarwin7-powerpc.c: New file.
901         * src/Makefile.am (noinst_HEADERS): Update.
902         * configure.in: Test the method for MacOSX/Darwin5 PowerPC only after
903         the method for MacOSX/Darwin7 PowerPC failed.
904         Substitute FAULT_CONTEXT_INCLUDE2.
905         * src/sigsegv.h.in: Insert @FAULT_CONTEXT_INCLUDE2@.
906         * src/Makefile.am (sigsegv.h.msvc): Replace @FAULT_CONTEXT_INCLUDE2@.
908 2003-12-09  Paolo Bonzini  <bonzini@gnu.org>
910         * src/handler-macos.c: Completed; removed dependency on
911         signals.
912         * src/machfault-macos-powerpc.h: Reorganized.
914 2003-12-08  Paolo Bonzini  <bonzini@gnu.org>
915             Bruno Haible  <bruno@clisp.org>
917         * src/handler-macos.c: New file.
918         * src/machfault.h: New file.
919         * src/machfault-macos-powerpc.h: New file.
921 2003-12-05  Bruno Haible  <bruno@clisp.org>
923         * m4/fault.m4: Tweak indentation. Bump serial number.
924         * m4/getpagesize.m4: Likewise.
925         * m4/mmap-anon.m4: Likewise.
926         * m4/sigaltstack.m4: Likewise.
927         * m4/sigaltstack-longjmp.m4: Likewise.
928         * m4/sigaltstack-siglongjmp.m4: Likewise.
930 2003-12-05  Paolo Bonzini  <bonzini@gnu.org>
932         * aclocal.m4: Regenerate with Automake 1.7h.
933         * configure.in: Drop m4/Makefile from list of generated files.
934         * configure: Regenerate.
935         * Makefile.am (install-data-hook): New name of the install-am
936         target, for Automake 1.8 compatibility.  Other -am targets
937         are not affected because Automake does not have anything to
938         do to make them.
939         (AUTOMAKE_OPTIONS): Bump minimum Automake requirement to 1.7h.
940         (SUBDIRS): Remove m4.
941         ($(srcdir)/config.h.msvc): New target for config.h.msvc.
942         * Makefile.in: Regenerate with Automake 1.7h.
943         * m4/Makefile.am: Delete, Automake 1.7h takes care of it.
944         * m4/Makefile.in: Delete.
945         * src/Makefile.am (installdirs): Delete, Automake 1.7h adds it.
946         * src/Makefile.in: Regenerate with Automake 1.7h.
947         * tests/Makefile.in: Regenerate with Automake 1.7h.
949         * autoconf/config.guess: Update from automake-1.7h.
950         * autoconf/config.sub: Likewise.
951         * autoconf/install.sh: Likewise.
952         * autoconf/missing: Likewise.
953         * autoconf/mkinstalldirs: Delete.
954         * m4/fault.m4: autoupdate and manually tweak.
955         * m4/sigaltstack.m4: Likewise.
956         * m4/sigaltstack-longjmp.m4: Likewise.
957         * m4/sigaltstack-siglongjmp.m4: Likewise.
958         * m4/mmap-anon.m4: Likewise.
959         * m4/getpagesize.m4: Likewise.
961 2003-10-29  Bruno Haible  <bruno@clisp.org>
963         * tests/sigsegv1.c (main): Add a check whether mprotect with
964         PROT_READ_WRITE really works.
965         * tests/sigsegv2.c (main): Likewise.
966         Reported by Ullal Devappa Kini <wmbfqj@vsnl.net>.
968 2003-08-21  Bruno Haible  <bruno@clisp.org>
970         * Version 2.1 released.
972 2003-06-24  Paolo Bonzini  <bonzini@gnu.org>
974         * m4/fault.m4: Exit if we detect an infinite loop.
975         * aclocal.m4: Regenerate.
976         * configure: Regenerate.
978 2003-06-18  Bruno Haible  <bruno@clisp.org>
980         * autoconf/install-sh: Update from automake-1.7.5.
982 2003-05-14  Paolo Bonzini  <bonzini@gnu.org>
984         * configure.in: Use signals-bsd.h for OpenBSD and NetBSD too.
985         Support instruction decoding to get fault address for Alphas.
986         * src/fault-netbsd-alpha.h: New file.
987         * src/fault-netbsd-alpha.c: New file.
988         * src/Makefile.am (noinst_HEADERS): Add them.
990 2003-05-14  Paolo Bonzini  <bonzini@gnu.org>
992         * src/dispatcher.c (insert): Fix lossage in 64-bit environments
993         (cast from void* to unsigned int).
995 2003-05-10  Bruno Haible  <bruno@clisp.org>
997         * tests/Makefile.am (../src/libsigsegv.la): New rule.
999         * Makefile.msvc (handler.obj): Complete the dependencies.
1000         (stackoverflow2.exe): New rule.
1001         (check): Depend on it.
1002         (clean): Remove it.
1004 2003-05-10  Paolo Bonzini  <bonzini@gnu.org>
1005             Bruno Haible  <bruno@clisp.org>
1007         * configure.in: AC_SUBST of CFG_STACKVMA, CFG_LEAVE, CFG_HANDLER.
1008         * src/Makefile.am: Add dependencies for the object files.
1010 2003-05-08  Paolo Bonzini  <bonzini@gnu.org>
1012         * configure.in: Add $srcdir/ to #include statements. Needed when
1013         builddir != srcdir.
1015         * src/signals-macos.h (SIGSEGV_FOR_ALL_SIGNALS): Add SIGSEGV.
1017 2003-05-03  Paolo Bonzini  <bonzini@gnu.org>
1019         * configure.in: Tweak 2003-04-26 patch so that it works on mingw32 and
1020         Cygwin.
1022 2003-05-02  Bruno Haible  <bruno@clisp.org>
1024         * src/handler-unix.c: Add special case for stack handling on IA-64.
1025         * src/fault-linux-ia64.h: Complete the port.
1026         * configure.in: Improve Linux/IA-64 support.
1028 2003-05-01  Bruno Haible  <bruno@clisp.org>
1030         * configure.in: Don't use fault-hurd.h on NetBSD/alpha. It does not
1031         work.
1033 2003-05-01  Bruno Haible  <bruno@clisp.org>
1035         Support for Linux/HPPA.
1036         * fault-linux-hppa.h: Don't include <siginfo.h>.
1037         (SIGSEGV_FAULT_ADDRESS): Change.
1038         (SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO): Define it, otherwise the value
1039         passed for sip is 0.
1040         (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): Remove macros.
1041         * configure.in: Improve Linux/HPPA support.
1043 2003-05-01  Bruno Haible  <bruno@clisp.org>
1045         Support for OpenBSD/i386.
1046         * src/fault-openbsd.h: New file.
1047         * src/fault-openbsd-i386.h: New file.
1048         * src/Makefile.am (noinst_HEADERS): Add them.
1049         * configure.in: If the POSIX test works and the OS is OpenBSD, use
1050         fault-openbsd.h instead of fault-posix.h.
1052 2003-05-01  Bruno Haible  <bruno@clisp.org>
1054         * src/fault-hpux-hppa.h: Make it work on machines with 64-bit registers
1055         as well.
1056         * configure.in: Likewise.
1058 2003-04-29  Bruno Haible  <bruno@clisp.org>
1060         * configure.in: Define HAVE_STACKVMA if CFG_STACKVMA is nontrivial.
1061         * src/handler-unix.c: Test HAVE_STACKVMA instead of CFG_STACKVMA.
1063         * m4/fault.m4 (SV_TRY_FAULT): On HP-UX, always pass 0 as first argument
1064         of mmap().
1065         * tests/mmaputil.h (mmap_zeromap): Likewise.
1067 2003-04-28  Bruno Haible  <bruno@clisp.org>
1069         * src/stackvma-freebsd.c (sigsegv_get_vma): Fix logic error.
1071 2002-04-17  Paolo Bonzini  <bonzini@gnu.org>
1073         Support for Cygwin.
1074         * configure.in: Treat cygwin* like mingw*.
1075         * src/handler-win32.c [CYGWIN] (exception_list, _except_list,
1076         debug_get_except_list, cygwin_exception_handler,
1077         libsigsegv_exception_handler, do_install_main_exception_filter): New
1078         definitions.
1079         (install_main_exception_filter): New function.
1080         (sigsegv_install_handler, stackoverflow_install_handler): Call it.
1082 2003-04-26  Bruno Haible  <bruno@clisp.org>
1084         * configure.in: Don't set sv_cv_have_stack_overflow_recovery=yes if
1085         not all of the fault-*.h and stackvma-*.h premises are fulfilled.
1086         Reported by Paolo Bonzini <bonzini@gnu.org> for NetBSD/Alpha.
1088 2003-04-03  Bruno Haible  <bruno@clisp.org>
1090         * configure.in: Add --enable-relocatable option.
1091         * m4/relocatable.m4: New file, from GNU gettext.
1092         * m4/Makefile.am (EXTRA_DIST): Add it.
1094         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.4.3.
1095         * autoconf/ltmain.sh: Likewise.
1097 2003-04-02  Bruno Haible  <bruno@clisp.org>
1099         * configure.in: Bump version number to 2.1.
1101         * tests/stackoverflow2.c: New file, based on code by Paolo Bonzini.
1102         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add stackoverflow2.
1104 2003-04-02  Paolo Bonzini  <bonzini@gnu.org>
1105             Bruno Haible  <bruno@clisp.org>
1107         Complete the port to MacOS X (Darwin).
1108         * m4/fault.m4: Include sys/signal.h. Have an exit status of 3 instead
1109         of 1 if fault_address is misdetected.
1110         * m4/sigaltstack.m4: Define stack_t to struct sigaltstack if absent.
1111         Include <sys/signal.h>.
1112         * configure.in: Add check for sys/signal.h.
1113         Add support for catching stack overflow on MacOSX.
1114         Add support for MacOSX on i386.
1115         Provide a fallback for SS_ONSTACK before using it.
1116         * src/fault-macos-i386.h: New file.
1117         * src/stackvma-mach.c: New file.
1118         * src/fault-macos-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Change.
1119         * src/handler-unix.c: Include <sys/signal.h>.
1120         (SS_DISABLE): Provide a fallback.
1121         * src/leave-sigaltstack.c: Include sys/signal.h.
1122         (SS_ONSTACK): Provide a fallback.
1123         * src/Makefile.am (noinst_HEADERS): Add fault-macos-i386.h.
1124         (EXTRA_DIST): Add stackvma-mach.c.
1125         * tests/sigsegv1.c: Abort after 10 handler invocations.
1126         (main): Drop SKIP message, now emitted by automake 1.7.x.
1127         * tests/sigsegv2.c: Abort after 10 handler invocations.
1128         (main): Drop SKIP message, now emitted by automake 1.7.x.
1129         * tests/stackoverflow1.c (main): Drop SKIP message, now emitted by
1130         automake 1.7.x.
1132 2002-10-14  Bruno Haible  <bruno@clisp.org>
1134         * src/fault-none.h: New file.
1135         * src/fault.h: Include CFG_FAULT unconditionally.
1136         * src/leave-none.c: New file.
1137         * src/leave.c: Include CFG_LEAVE unconditionally.
1138         * src/stackvma.c: Include CFG_STACKVMA unconditionally.
1139         * configure.in (CFG_LEAVE, CFG_STACKVMA): Define always.
1140         * src/Makefile.am (noinst_HEADERS): Add fault-none.h.
1141         (EXTRA_DIST): Add leave-none.c.
1142         Reported by Paolo Bonzini <bonzini@gnu.org>.
1144 2002-09-30  Bruno Haible  <bruno@clisp.org>
1146         * src/Makefile.am (noinst_HEADERS): Add fault-hurd.h,
1147         fault-linux-m68k.c, fault-macos-powerpc.h, fault-macos-powerpc.c,
1148         signals-hurd.h, signals-macos.h.
1150 2002-09-30  Bruno Haible  <bruno@clisp.org>
1152         * Makefile.am (check-next): Don't ask for reports from i?86-*-linux*
1153         platforms.
1155 2002-09-30  Bruno Haible  <bruno@clisp.org>
1157         Better Linux/PowerPC support.
1158         * configure.in: Change Linux/PowerPC support.
1159         * src/fault-linux-powerpc.h (SIGSEGV_FAULT_ADDRESS): New macro.
1161 2002-09-30  Bruno Haible  <bruno@clisp.org>
1163         Better Linux/m68k support.
1164         * configure.in: Change Linux/m68k support.
1165         * src/fault-linux-m68k.c: New file.
1166         * src/fault-linux-m68k.h: Use it.
1168 2002-09-30  Bruno Haible  <bruno@clisp.org>
1170         Tentative Hurd support.
1171         * configure.in: Add Hurd support.
1172         * src/signals-hurd.h: New file.
1173         * src/fault-hurd.h: New file.
1175 2002-09-30  Bruno Haible  <bruno@clisp.org>
1177         MacOSX/PowerPC support.
1178         * configure.in: Add MacOSX/PowerPC support.
1179         * src/signals-macos.h: New file.
1180         * src/fault-macos-powerpc.c: New file.
1181         * src/fault-macos-powerpc.h: New file.
1183 2002-09-16  Bruno Haible  <bruno@clisp.org>
1185         * src/fault-posix.h: Don't include <siginfo.h>. Needed for hppa-linux.
1186         Reported by Will Newton <will@misconception.org.uk>.
1188 2002-08-28  Bruno Haible  <bruno@clisp.org>
1190         * Version 2.0 released.
1192 2002-07-28  Bruno Haible  <bruno@clisp.org>
1194         Big reorganization and rewrite. Every file changed.