Optimize gnulib checkout.
[libsigsegv/ericb.git] / ChangeLog
blobee34f3be85bff9324d9f1e2f65672ac7b36a63e5
1 2011-05-03  Eric Blake  <eblake@redhat.com>
3         Optimize gnulib checkout.
4         * autogen.sh: Use reference repository if GNULIB_SRCDIR is set.
6 2011-04-03  Bruno Haible  <bruno@clisp.org>
8         * Version 2.10 released.
10 2011-04-03  Bruno Haible  <bruno@clisp.org>
12         Don't ask for success reports on MacOS X any more.
13         * Makefile.am (check-next): No longer ask for success reports on
14         MacOS X.
16 2011-04-03  Bruno Haible  <bruno@clisp.org>
18         Bump version number.
19         * configure.ac: Bump version number to 2.10.
20         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
21         * README: Likewise. Recommend ftpmirror.gnu.org in the first place.
22         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:3:0.
24 2011-03-13  Bruno Haible  <bruno@clisp.org>
26         Support for Linux/S390.
27         * m4/fault.m4 (SV_TRY_FAULT): Define
28         SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS. On Linux/S390 systems, expect a
29         page-aligned fault address.
30         * src/sigsegv.h.in (SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS): New macro.
31         (sigsegv_register): Mention constraint about address and len arguments.
32         * tests/sigsegv1.c (handler): On Linux/S390 systems, expect a
33         page-aligned fault address.
34         * tests/sigsegv3.c (handler): Likewise.
35         * tests/sigsegv2.c: Add comment.
36         * NEWS: Document the change.
37         Reported by Christoph Egger <christoph@debian.org>.
39 2011-01-29  Bruno Haible  <bruno@clisp.org>
41         Improve OpenBSD support: Allow faster VMA determination.
42         * configure.ac: Check also for mquery.
43         (CFG_STACKVMA): Set to stackvma-mquery.c if mquery() exists.
44         * src/stackvma-mquery.c: New file.
45         * src/Makefile.am (EXTRA_DIST): Add it.
46         * NEWS: Document the improvement.
48 2011-01-23  Bruno Haible  <bruno@clisp.org>
50         Improve NetBSD support: Allow VMA determination with fewer system calls.
51         * src/stackvma-netbsd.c: New file, based on src/stackvma-freebsd.c.
52         * src/stackvma-freebsd.c: Add comment.
53         * src/Makefile.am (EXTRA_DIST): Add stackvma-netbsd.c.
54         * configure.ac (CFG_STACKVMA): Set to stackvma-netbsd.c on NetBSD.
56 2010-11-06  Bruno Haible  <bruno@clisp.org>
58         * Version 2.9 released.
60 2010-11-06  Bruno Haible  <bruno@clisp.org>
62         Bump version number.
63         * configure.ac: Bump version number to 2.9.
64         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
65         * README: Likewise.
66         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:2:0.
68 2010-11-06  Bruno Haible  <bruno@clisp.org>
70         Start to use gnulib.
71         * autogen.sh: New option --skip-gnulib. Fetch gnulib if GNULIB_TOOL is
72         not set. Import m4/relocatable-lib.m4.
73         * configure.ac: Invoke gl_RELOCATABLE_NOP instead of
74         AC_RELOCATABLE_NOP.
75         * m4/relocatable.m4: Remove file.
77 2010-11-06  Bruno Haible  <bruno@clisp.org>
79         Modernize autoconf macro style.
80         * configure.ac: Surround all macro arguments in brackets.
81         * m4/getpagesize.m4: Likewise.
82         * m4/mmap-anon.m4: Likewise.
83         * m4/sigaltstack.m4: Likewise.
85 2010-11-06  Bruno Haible  <bruno@clisp.org>
87         Don't list files in .gitignore that are absent after "make distclean".
88         * .gitignore: Complete the list of files that are created by "make" and
89         removed by "make distclean". But comment them out, since they belong in
90         .git/info/exclude. Also remove /autom4te.cache because "make distclean"
91         does not remove it.
93 2010-10-25  Eric Blake  <eblake@redhat.com>
95         Fix powerpc64-unknown-linux-gnu implementation.
96         * src/stackvma-rofile.c (struct rofile): Reduce size, to avoid
97         overflowing alternate stack when compiled under -O2.
98         * src/stackvma-mincore.c (mapped_range_start, mapped_range_end):
99         Likewise.
100         * NEWS: Document the fix.
102 2010-10-24  Eric Blake  <eblake@redhat.com>
103             Bruno Haible  <bruno@clisp.org>
105         Enhance the tests to detect overflow of the alternate stack.
106         * tests/altstack.h: New file.
107         * tests/Makefile.am (EXTRA_DIST): Add altstack.h.
108         * configure.ac: Invoke AC_TYPE_UINTPTR_T.
109         * tests/stackoverflow1.c: Include altstack.h.
110         (SIGSTKSZ): Remove definition.
111         (mystack): Remove definition.
112         (main): Invoke prepare_alternate_stack and
113         check_alternate_stack_no_overflow.
114         * tests/stackoverflow2.c: Likewise.
115         * tests/efault2.c: Likewise.
116         * tests/efault3.c: Likewise.
118 2010-10-21  Eric Blake  <eblake@redhat.com>
120         * .gitignore: Ignore more files.
122 2010-09-23  Bruno Haible  <bruno@clisp.org>
124         * m4/libtool.m4: Update from libtool-2.4.
125         * m4/ltversion.m4: Likewise.
126         * build-aux/ltmain.sh: Likewise.
128 2010-06-04  Bruno Haible  <bruno@clisp.org>
130         * m4/libtool.m4: Update from libtool-2.2.8.
131         * m4/ltoptions.m4: Likewise.
132         * m4/ltversion.m4: Likewise.
133         * m4/lt~obsolete.m4: Likewise.
134         * build-aux/ltmain.sh: Likewise.
136 2010-04-06  Eric Blake  <eblake@redhat.com>
138         * AUTHORS: Add myself.
140 2010-03-30  Bruno Haible  <bruno@clisp.org>
142         * README.woe32: Update for Cygwin 1.7.x.
144 2010-02-18  Bruno Haible  <bruno@clisp.org>
146         Fix 64-bit builds with --enable-shared on MacOS X.
147         * src/stackvma-mach.c (sigsegv_get_vma): On 64-bit MacOS X, use
148         vm_region_64 instead of vm_region.
149         * NEWS: Mention the fix.
150         Reported by Rudá Moura <ruda@rudix.org>.
152 2010-01-31  Bruno Haible  <bruno@clisp.org>
154         * README: Add more homepage links. Add bug report address.
156 2010-01-07  Bruno Haible  <bruno@clisp.org>
158         Improve support for OpenBSD.
159         * src/fault-openbsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Define
160         differently in 64-bit mode.
161         * src/fault-openbsd-alpha.h: New file.
162         * src/fault-openbsd-arm.h: New file.
163         * src/fault-openbsd-hppa.h: New file.
164         * src/fault-openbsd-m68k.h: New file.
165         * src/fault-openbsd-m88k.h: New file.
166         * src/fault-openbsd-mips.h: New file.
167         * src/fault-openbsd-powerpc.h: New file.
168         * src/fault-openbsd-sh.h: New file.
169         * src/fault-openbsd-sparc.h: New file.
170         * src/fault-openbsd-vax.h: New file.
171         * src/Makefile.am (noinst_HEADERS): Add the new files.
172         * configure.ac (CFG_FAULT): Use these files on OpenBSD.
173         Reported by Paul Irofti <bulibuta@sdf.lonestar.org>.
175 2009-12-11  Bruno Haible  <bruno@clisp.org>
177         * Version 2.8 released.
179 2009-12-11  Bruno Haible  <bruno@clisp.org>
181         * configure.ac: Bump version number to 2.8.
182         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
183         * README: Likewise.
184         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:1:0.
186 2009-12-11  Bruno Haible  <bruno@clisp.org>
188         Remove configuration option --enable-EFAULT.
189         * configure.ac (enable_EFAULT): Set to yes on Cygwin, to no otherwise.
190         * README, NEWS: Don't mention --enable-EFAULT.
191         Reported by Eric Blake.
193 2009-12-11  Bruno Haible  <bruno@clisp.org>
195         New test for Cygwin.
196         * tests/cygwin1.c: New file, based on code by Eric Blake.
197         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add it.
198         * configure.ac (CYGWIN): New conditional.
200 2009-11-21  Eric Blake  <ebb9@byu.net>
201             Bruno Haible  <bruno@clisp.org>
203         New configuration option --enable-EFAULT.
204         * configure.ac: Accept option --enable-EFAULT. Set and define
205         ENABLE_EFAULT. Invoke SV_SYSCALLS_EFAULT.
206         For Cygwin, use the CFG_FAULT that was already determined, or
207         fault-cygwin-old.h if none. In the latter case, define
208         OLD_CYGWIN_WORKAROUND.
209         * m4/efault.m4: New file.
210         * src/handler-win32.c [CYGWIN && ENABLE_EFAULT]: Include
211         handler-unix.c.
212         (MIXING_UNIX_SIGSEGV_AND_WIN32_STACKOVERFLOW_HANDLING): New macro.
213         (last_seen_fault_address): New variable.
214         (main_exception_filter): Store the fault address for the Unix signal
215         handler.
216         (sigsegv_install_handler): Redefine.
217         (sigsegv_deinstall_handler, sigsegv_leave_handler): Don't define.
218         * src/handler-unix.c (stackoverflow_install_handler,
219         stackoverflow_deinstall_handler): Don't define if
220         MIXING_UNIX_SIGSEGV_AND_WIN32_STACKOVERFLOW_HANDLING is set.
221         * src/fault-cygwin-old.h: New file.
222         * src/Makefile.am (noinst_HEADERS): Add it.
223         * tests/efault1.c: New file.
224         * tests/efault2.c: New file.
225         * tests/efault3.c: New file.
226         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add efault1, efault2,
227         efault3.
228         * README, NEWS: Mention the new option.
230 2009-11-21  Bruno Haible  <bruno@clisp.org>
232         Support for Cygwin 1.7.
233         * configure.ac: For Cygwin and mingw, choose FAULT_CONTEXT in a way
234         that is consistent with CFD_HANDLER.
235         Reported by Eric Blake <ebb9@byu.net>
237 2009-11-21  Bruno Haible  <bruno@clisp.org>
239         * configure.ac: Add comments and structure.
241 2009-11-21  Bruno Haible  <bruno@clisp.org>
243         Reduce size of configure.ac.
244         * m4/stack-direction.m4: New file, extracted from configure.ac.
245         * configure.ac: Simply invoke SV_STACK_DIRECTION.
247 2009-11-21  Eric Blake  <ebb9@byu.net>
248             Bruno Haible  <bruno@clisp.org>
250         Avoid a gcc warning.
251         * src/handler-win32.c (debug_get_except_list): Mark as unused.
253 2009-11-21  Bruno Haible  <bruno@clisp.org>
255         Fix compilation error on newer versions of HP-UX 11.31 on ia64.
256         * configure.ac: Set sv_cv_have_stack_overflow_recovery to 'no' if it is
257         not possible to longjmp out of the signal handler. On HP-UX 11.31 on
258         ia64 it is only possible with siglongjmp (as far as we know).
259         Reported by Bill Glessner <bill.glessner@cwu.edu>.
261         * configure.ac: Move determination of CFG_LEAVE before the
262         determination of sv_cv_have_stack_overflow_recovery.
264 2009-10-17  Bruno Haible  <bruno@clisp.org>
266         * README: Mention danger of longjmping back to a central point.
267         Reported by Angelo Borsotti <angelo.borsotti@gmail.com>.
269 2009-09-22  Paolo Bonzini  <bonzini@gnu.org>
271         Move more declarations of alternate stacks to global scope.
272         * m4/sigaltstack-longjmp.m4: Make mystack global.
273         * m4/sigaltstack-siglongjmp.m4: Make mystack global.
274         * m4/sigaltstack.m4: Make mystack global.
276 2009-09-22  Paolo Bonzini  <bonzini@gnu.org>
278         Fix crash of stackoverflow2 on x86_64-linux.
279         * tests/stackoverflow1.c: Make mystack global.
280         * tests/stackoverflow2.c: Likewise.
281         * src/sigsegv.h.in: Warn against placing the alternate stack
282         on the main stack.
284 2009-08-16  Bruno Haible  <bruno@clisp.org>
286         Avoid a gcc warning on Solaris.
287         * src/stackvma-procfs.c: Include <string.h>.
289 2009-08-14  Bruno Haible  <bruno@clisp.org>
291         Remove config.guess, config.sub from from version control.
292         * autogen.sh: Fetch config.guess, config.sub.
293         * build-aux/config.guess: Remove file.
294         * build-aux/config.sub: Remove file.
296 2009-08-14  Bruno Haible  <bruno@clisp.org>
298         Remove autogenerated files from version control.
299         * autogen.sh: New file.
300         * aclocal.m4: Remove file.
301         * configure: Remove file.
302         * config.h.in: Remove file.
303         * Makefile.in: Remove file.
304         * src/Makefile.in: Remove file.
305         * tests/Makefile.in: Remove file.
306         * build-aux/install-sh: Remove file.
307         * build-aux/missing: Remove file.
308         * config.h.msvc: Remove file.
309         * src/sigsegv.h.msvc: Remove file.
311 2009-08-14  Bruno Haible  <bruno@clisp.org>
313         Override automake's tar command used for creating distributions.
314         * configure.ac (am__tar): New variable.
316 2009-08-09  Bruno Haible  <bruno@clisp.org>
318         * Version 2.7 released.
320 2009-08-09  Bruno Haible  <bruno@clisp.org>
322         * configure.ac: Bump version number to 2.7.
323         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
324         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:0:0.
326 2009-08-09  Bruno Haible  <bruno@clisp.org>
328         * src/fault-linux-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Fix mistake.
330 2009-08-09  Bruno Haible  <bruno@clisp.org>
332         Avoid warnings on glibc systems.
333         * src/stackvma-mincore.c (pageinfo_t): New type.
334         (is_mapped, mapped_range_start, mapped_range_end): Use it.
336 2009-08-01  Bruno Haible  <bruno@clisp.org>
338         Prefer the POSIX way over the traditional one, on Linux.
339         * configure.ac: Use the traditional Linux way only if the POSIX way
340         does not work.
341         * NEWS: Mention the change.
343 2009-08-01  Bruno Haible  <bruno@clisp.org>
345         Add knowledge where to find the stack pointer on Linux platforms.
346         * src/fault-linux-alpha.h: New file.
347         * src/fault-linux-arm.h: New file.
348         * src/fault-linux-cris.h: New file.
349         * src/fault-linux-hppa.h: New file.
350         * src/fault-linux-i386.h: New file.
351         * src/fault-linux-ia64.h: New file.
352         * src/fault-linux-m68k.h: New file.
353         * src/fault-linux-mips.h: New file.
354         * src/fault-linux-powerpc.h: New file.
355         * src/fault-linux-s390.h: New file.
356         * src/fault-linux-sh.h: New file.
357         * src/fault-linux-sparc.h: New file.
358         * src/Makefile.am (noinst_HEADERS): Add them.
359         * src/handler-unix.c (_GNU_SOURCE): Define.
360         * src/fault-linux-hppa-old.h: Add alternative code, commented.
361         * src/fault-linux-sparc-old.h: Likewise.
362         * configure.ac (CFG_FAULT): Use these files on Linux when the POSIX way
363         of catching page faults works.
365 2009-08-01  Bruno Haible  <bruno@clisp.org>
367         * src/fault-linux-i386-old.h: Renamed from src/fault-linux-i386.h.
368         * src/Makefile.am (noinst_HEADERS): Update.
369         * configure.ac: Update.
371         * src/fault-linux-i386-oldold.h: Renamed from
372         src/fault-linux-i386-old.h.
373         * src/Makefile.am (noinst_HEADERS): Update.
374         * configure.ac: Update.
376         * src/fault-linux-alpha-old.h: Renamed from src/fault-linux-alpha.h.
377         * src/fault-linux-arm-old.h: Renamed from src/fault-linux-arm.h.
378         * src/fault-linux-cris-old.h: Renamed from src/fault-linux-cris.h.
379         * src/fault-linux-hppa-old.h: Renamed from src/fault-linux-hppa.h.
380         * src/fault-linux-ia64-old.h: Renamed from src/fault-linux-ia64.h.
381         * src/fault-linux-m68k-old.c: Renamed from src/fault-linux-m68k.c.
382         * src/fault-linux-m68k-old.h: Renamed from src/fault-linux-m68k.h.
383         Update.
384         * src/fault-linux-mips-old.h: Renamed from src/fault-linux-mips.h.
385         * src/fault-linux-powerpc-old.h: Renamed from src/fault-linux-powerpc.h.
386         * src/fault-linux-s390-old.h: Renamed from src/fault-linux-s390.h.
387         * src/fault-linux-sh-old.h: Renamed from src/fault-linux-sh.h.
388         * src/fault-linux-sparc-old.h: Renamed from src/fault-linux-sparc.h.
389         * src/fault-linux-x86_64-old.h: Renamed from src/fault-linux-x86_64.h.
390         * src/Makefile.am (noinst_HEADERS): Update.
391         * configure.ac: Update.
393 2009-06-23  Bruno Haible  <bruno@clisp.org>
395         * Makefile.am (check-next): No longer ask for copies of config.log.
397 2009-06-23  Bruno Haible  <bruno@clisp.org>
399         Improve support for MirBSD 10.
400         * configure.ac (CFG_FAULT, FAULT_CONTEXT): Treat MirBSD/i386 like
401         OpenBSD/i386.
403 2009-06-23  Bruno Haible  <bruno@clisp.org>
405         Add support for platforms that follow POSIX:2008, not POSIX:2001.
406         * configure.ac (POSIX): Add MirBSD to known list.
407         (CFG_FAULT, FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE): Define appropriately
408         when <ucontext.h> does not exist.
409         * src/fault-posix-ucontext.h: Renamed from src/fault-posix.h.
410         * src/fault-posix.h: New file.
411         * src/fault-aix5.h: Update.
412         * src/fault-hpux-hppa.h: Update.
413         * src/fault-netbsd.h: Update.
414         * src/fault-solaris.h: Update.
415         * src/Makefile.am (noinst_HEADERS): Add fault-posix-ucontext.h.
417 2009-06-23  Bruno Haible  <bruno@clisp.org>
419         * configure.ac (FAULT_CONTEXT_INCLUDE): Reinstall the AC_SUBST
420         invocation.
422 2009-05-21  Bruno Haible  <bruno@clisp.org>
424         * configure.ac (FAULT_CONTEXT_INCLUDE): Don't substitute into
425         Makefiles.
427 2009-05-21  Bruno Haible  <bruno@clisp.org>
429         * tests/Makefile.am (AUTOMAKE_OPTIONS): Assume automake >= 1.11.
430         Use color-tests option.
432 2009-01-14  Bruno Haible  <bruno@clisp.org>
434         * configure.ac: More consistent m4 quoting.
436 2008-09-27  Bruno Haible  <bruno@clisp.org>
438         * build-aux/config.sub: Update to GNU version 2008-09-08.
440 2008-09-23  Eric Blake  <ebb9@byu.net>
442         Use 2 * SIGSTKSZ consistently in configuration checks.
443         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Work around IRIX sigaltstack bug.
444         * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
445         * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
446         Likewise.
448 2008-09-21  Bruno Haible  <bruno@clisp.org>
450         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): New variable.
451         (libsigsegv_la_LDFLAGS): Pass -rpath and -version-info option.
452         Reported by Thomas Klausner <tk@giga.or.at>.
454 2008-09-21  Eric Blake  <ebb9@byu.net>
455             Bruno Haible  <bruno@clisp.org>
457         Detect and work around bug in Irix 5.3 sigaltstack.
458         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Test for broken stack_t direction
459         in sigaltstack.
460         * src/handler-unix.c (stackoverflow_install_handler): Adjust stack
461         accordingly.
462         * tests/stackoverflow1.c (stack_lower_bound, stack_upper_bound): New
463         variables.
464         (stackoverflow_handler): Use them to expose IRIX bug.
465         (main): Initialize them.
467 2008-09-07  Bruno Haible  <bruno@clisp.org>
469         * m4/libtool.m4: Update from libtool-2.2.6.
470         * m4/ltoptions.m4: Likewise.
471         * m4/ltsugar.m4: Likewise.
472         * m4/ltversion.m4: Likewise.
473         * build-aux/ltmain.sh: Likewise.
475 2008-08-25  Bruno Haible  <bruno@clisp.org>
477         * Version 2.6 released.
479 2008-08-24  Bruno Haible  <bruno@clisp.org>
481         * configure.ac: Treat Dragonfly BSD platforms like FreeBSD.
482         Reported by Thomas Klausner <tk@giga.or.at>.
484 2008-08-24  Bruno Haible  <bruno@clisp.org>
486         * src/stackvma-mincore.c (mincore_is_near_this): Improve logic. Needed
487         for reliable NULL pointer access classification as SIGSEGV on AIX 4.3.
489 2008-08-24  Bruno Haible  <bruno@clisp.org>
491         * m4/sigaltstack.m4: Change 'volatile int' return type to 'int'. Needed
492         for AIX 4.3 xlc.
493         * m4/sigaltstack-longjmp.m4: Likewise.
494         * m4/sigaltstack-siglongjmp.m4: Likewise.
495         * tests/stackoverflow1.c (recurse): Likewise.
496         * tests/stackoverflow2.c (recurse): Likewise.
498 2008-08-24  Bruno Haible  <bruno@clisp.org>
500         * tests/sigsegv1.c: Include <config.h>.
501         * tests/sigsegv2.c: Likewise.
502         * tests/sigsegv3.c: Include <config.h> before all other headers.
503         * tests/stackoverflow1.c: Likewise.
504         * tests/stackoverflow2.c: Likewise.
506 2008-08-24  Bruno Haible  <bruno@clisp.org>
508         Fix the sigsegv3 test on MacOS X.
509         * src/sigsegv.h.in (sigsegv_leave_handler): Take 4 arguments.
510         * NEWS: Mention the change.
511         * src/handler-macos.c (our_exception_thread, signalled_thread): New
512         variables.
513         (catch_exception_raise): Set signalled_thread during the user_handler
514         invocation.
515         (mach_exception_thread): Initialize our_exception_thread.
516         (sigsegv_leave_handler): Take 4 arguments. When called from within
517         the exception thread, let the signalled thread do a hyperjump.
518         * src/handler-unix.c (sigsegv_leave_handler): Take 4 arguments.
519         * src/handler-win32.c (sigsegv_leave_handler): Likewise.
520         * src/handler-none.c (sigsegv_leave_handler): Likewise.
521         * src/machfault-macos.h (SIGSEGV_INTEGER_ARGUMENT_1,
522         SIGSEGV_INTEGER_ARGUMENT_2, SIGSEGV_INTEGER_ARGUMENT_3,
523         SIGSEGV_FRAME_POINTER): New macros.
524         * tests/sigsegv3.c (handler_continuation): New function.
525         (handler): Update to new API.
526         * tests/stackoverflow1.c (stackoverflow_handler_continuation): New
527         function.
528         (stackoverflow_handler): Update to new API.
529         * tests/stackoverflow2.c (stackoverflow_handler_continuation): New
530         function.
531         (stackoverflow_handler, sigsegv_handler): Update to new API.
533 2008-08-24  Bruno Haible  <bruno@clisp.org>
535         Test the use of sigsegv_leave_handler from within a SIGSEGV handler.
536         * tests/sigsegv3.c: New file.
537         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add sigsegv3.
539 2008-08-23  Eric Blake  <ebb9@byu.net>
541         * src/Makefile.am (noinst_HEADERS): Remove machfault-macos-powerpc.h
542         and machfault-macos-i386.h. Add machfault-macos.h.
544 2008-08-17  Bruno Haible  <bruno@clisp.org>
546         Allow building universal binaries on MacOS X.
547         * src/machfault-macos.h: New file, combining
548         src/machfault-macos-powerpc.h and src/machfault-macos-i386.h.
549         * src/machfault-macos-powerpc.h: Remove file.
550         * src/machfault-macos-i386.h: Remove file.
551         * configure.ac (CFG_MACHFAULT): Set to machfault-macos.h.
552         (FAULT_CONTEXT_INCLUDE) [MacOSX]: Set to #ifdefs for all four possible
553         architectures.
555 2008-07-20  Bruno Haible  <bruno@clisp.org>
557         Make sigsegv_get_vma async-safe.
558         * src/sigsegv.h.in (sigsegv_handler_t, stackoverflow_handler_t):
559         Mention async-safety constraints.
560         + src/stackvma-rofile.c: New file.
561         * src/stackvma-freebsd.c: Include stackvma-rofile.c.
562         (sigsegv_get_vma): Use struct rofile instead of FILE.
563         * src/stackvma-linux.c: Include stackvma-rofile.c.
564         (sigsegv_get_vma): Use struct rofile instead of FILE.
565         * src/stackvma-procfs.c: Include <sys/mman.h> instead of <stdlib.h> and
566         <stdio.h>.
567         (sigsegv_get_vma): Avoid using sprintf. Ensure pagesize is initialized.
568         Use mmap/munmap instead of malloc/free.
569         * src/Makefile.am (EXTRA_DIST): Add stackvma-rofile.c.
570         Reported by Eric Blake <ebb9@byu.net>.
572 2008-07-20  Bruno Haible  <bruno@clisp.org>
574         * src/handler-unix.c (sigsegv_handler): Preserve errno.
576 2008-07-20  Eric Blake  <ebb9@byu.net>
578         * src/stackvma-mincore.c (mincore_is_near_this): Fix logic.
580 2008-07-20  Bruno Haible  <bruno@clisp.org>
582         * tests/stackoverflow2.c (main): Test also a NULL pointer access.
583         Reported by Eric Blake <ebb9@byu.net>.
585 2008-06-23  Bruno Haible  <bruno@clisp.org>
587         * build-aux/config.guess: Update to GNU version 2008-06-16.
588         * build-aux/config.sub: Likewise.
590 2008-05-31  Bruno Haible  <bruno@clisp.org>
592         Make cross-compile from MacOS X 10.5 to MacOS X 10.4 work.
593         * src/handler-macos.c (MacOS_X_10_5_HEADERS): New macro.
594         * src/machfault-macos-i386.h: Use it.
595         * src/machfault-macos-powerpc.h: Likewise.
596         Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
598 2008-05-31  Bruno Haible  <bruno@clisp.org>
600         * m4/mmap-anon.m4 (SV_MMAP_ANON): Add known cross-compile results for
601         MacOS X.
602         Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
604 2008-05-27  Bruno Haible  <bruno@clisp.org>
606         * configure.ac: Require at least autoconf 2.62. Merge
607         FAULT_CONTEXT_INCLUDE2 variable into FAULT_CONTEXT_INCLUDE.
608         * src/sigsegv.h.in: Remove FAULT_CONTEXT_INCLUDE2 substitution.
609         * src/Makefile.am (sigsegv.h.msvc): Update.
611 2008-05-27  Bruno Haible  <bruno@clisp.org>
613         * configure.ac: Bump version number to 2.6.
614         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
616 2008-05-27  Bruno Haible  <bruno@clisp.org>
618         Support for 64-bit mode on MacOS X 10.5.
619         * src/handler-macos.c (catch_exception_raise): Align the stack pointer
620         also on x86_64. Needed for MMX instructions.
621         * src/machfault-macos-i386.h: Choose among 64-bit and 32-bit flavours.
622         Use new names for the 32-bit flavour when possible.
623         * src/machfault-macos-powerpc.h: Choose among 64-bit and 32-bit
624         flavours.
625         * configure.ac (FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE2): Choose
626         right flavour (ppc_thread_state_t/ppc_thread_state64_t or
627         i386_thread_state_t/x86_thread_state32_t/x86_thread_state64_t) at
628         compile time.
630 2008-05-18  Bruno Haible  <bruno@clisp.org>
632         * m4/libtool.m4: Update from libtool-2.2.4.
633         * m4/ltoptions.m4: Likewise.
634         * m4/ltversion.m4: Likewise.
635         * m4/lt~obsolete.m4: Likewise.
636         * build-aux/ltmain.sh: Likewise.
638 2008-04-06  Bruno Haible  <bruno@clisp.org>
640         * m4/libtool.m4: Update from libtool-2.2.2.
641         * m4/ltoptions.m4: New file, from libtool-2.2.2.
642         * m4/ltsugar.m4: New file, from libtool-2.2.2.
643         * m4/ltversion.m4: New file, from libtool-2.2.2.
644         * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
645         * build-aux/ltmain.sh: New file, from libtool-2.2.2.
646         * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
648 2007-11-16  Bruno Haible  <bruno@clisp.org>
650         * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Use sc_rsp
651         also on x86_64-freebsd platform.
652         Reported by Dmitri Hrapof <hrapof@common-lisp.ru> and
653         Petr Salinger <Petr.Salinger@seznam.cz>.
655 2007-11-15  Bruno Haible  <bruno@clisp.org>
657         * configure.ac (CFG_SIGNALS, CFG_FAULT): Port to i586-kfreebsd-gnu
658         and x86_64-kfreebsd-gnu.
659         * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Likewise.
660         Based on patch by Petr Salinger <Petr.Salinger@seznam.cz>.
662 2007-11-11  Bruno Haible  <bruno@clisp.org>
664         * Version 2.5 released.
666 2007-11-11  Bruno Haible  <bruno@clisp.org>
668         * configure.ac: Bump version number to 2.5.
669         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
671 2007-10-28  Bruno Haible  <bruno@clisp.org>
673         * src/handler-macos.c (catch_exception_raise): Align the new stack
674         pointer on a 16-byte boundary.
675         * src/handler-win32.c (main_exception_filter): Correct alignment:
676         %esp must be aligned to == -4 mod 16 upon function entry.
678 2007-10-28  Bruno Haible  <bruno@clisp.org>
680         * src/sigsegv.h.in (stackoverflow_install_handler): Avoid comment
681         inside comment.
682         Reported by Chris Willmore <willmc@rpi.edu>.
684 2007-10-28  Bruno Haible  <bruno@clisp.org>
686         * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS,
687         SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Add __DARWIN_UNIX03
688         conditional.
689         * src/machfault-macos-i386.h (SIGSEGV_FAULT_ADDRESS,
690         SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Likewise.
691         * src/fault-macosdarwin7-powerpc.h (SIGSEGV_FAULT_STACKPOINTER):
692         Likewise.
693         * src/fault-macosdarwin7-powerpc.c (get_fault_addr): Likewise.
694         Reported by Chris Willmore <willmc@rpi.edu>.
696 2007-01-12  Bruno Haible  <bruno@clisp.org>
698         * Makefile.am (check-next): Don't ask for reports from x86_64-*-linux*
699         platforms.
701 2006-07-14  Bruno Haible  <bruno@clisp.org>
703         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Use SIGSTKSZ instead of
704         hardcoding 16384.
705         * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
706         * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
707         Likewise.
708         * tests/stackoverflow1.c (main): Likewise.
709         * tests/stackoverflow2.c (main): Likewise.
710         * src/sigsegv.h.in (stackoverflow_install_handler): Update
711         recommendation for extra_stack_size.
712         Needed for ia64.
713         Reported by Peter Van Eynde <pvaneynd@users.sourceforge.net>.
715 2006-06-23  Bruno Haible  <bruno@clisp.org>
717         * Version 2.4 released.
719 2006-06-23  Bruno Haible  <bruno@clisp.org>
721         * configure.ac: Bump version number to 2.4.
722         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
724 2006-06-17  Bruno Haible  <bruno@clisp.org>
726         * src/Makefile.am (noinst_HEADERS): Add fault-netbsd.h.
728 2006-06-17  Bruno Haible  <bruno@clisp.org>
730         * m4/sigaltstack.m4: Insert 'volatile' and pass a pointer, to defeat
731         GCC 4 optimizations.
732         * m4/sigaltstack-longjmp.m4: Likewise.
733         * m4/sigaltstack-siglongjmp.m4: Likewise.
735 2006-06-17  Bruno Haible  <bruno@clisp.org>
737         * tests/stackoverflow1.c (recurse): Remove useless cast.
738         * tests/stackoverflow2.c (recurse): Likewise.
740 2006-06-17  Bruno Haible  <bruno@clisp.org>
742         * src/stackvma-freebsd.c (sigsegv_get_vma): Test whether mincore()
743         works as expected before using it.
745 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
747         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
748         "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
750 2006-06-13  Bruno Haible  <bruno@clisp.org>
752         Make NetBSD/i386 stack overflow detection work even without mincore.
753         * src/fault-netbsd.h: New file.
754         * configure.ac (CFG_FAULT): Choose it when appropriate.
756 2006-05-16  Bruno Haible  <bruno@clisp.org>
758         Don't allow the compiler to reorder instructions in the tests.
759         * tests/sigsegv1.c (crashes): Use volatile in pointer access.
760         * tests/sigsegv2.c (main): Likewise.
761         * tests/stackoverflow2.c (main): Likewise.
763 2006-05-14  Bruno Haible  <bruno@clisp.org>
765         Exploit the mincore() system call where available.
766         * src/stackvma-mincore.c: New file.
767         * src/Makefile.am (EXTRA_DIST): Add it.
768         * src/stackvma.h: Add double-inclusion guard.
769         * src/stackvma-freebsd.c: If mincore() is available, include also
770         stackvma-mincore.c.
771         (sigsegv_get_vma): If mincore() is available, use it as fallback.
772         * src/stackvma-linux.c: If mincore() is available, include also
773         stackvma-mincore.c.
774         (sigsegv_get_vma): If mincore() is available, use it as fallback.
775         * src/stackvma-procfs.c: If mincore() is available, include also
776         stackvma-mincore.c.
777         (sigsegv_get_vma): If mincore() is available, use it as fallback.
778         * configure.ac: Test for mincore.
779         (CFG_STACKVMA): Set to stackvma-mincore.c if nothing else is available.
781 2006-05-14  Bruno Haible  <bruno@clisp.org>
783         * src/stackvma-simple.c: New file, extracted from handler-unix.c.
784         * src/Makefile.am (EXTRA_DIST): Add it.
785         * src/stackvma-beos.c: Include stackvma-simple.c.
786         (sigsegv_get_vma): Fill the vma's is_near_this field.
787         * src/stackvma-freebsd.c: Include stackvma-simple.c.
788         (sigsegv_get_vma): Fill the vma's is_near_this field.
789         * src/stackvma-linux.c: Include stackvma-simple.c.
790         (sigsegv_get_vma): Fill the vma's is_near_this field.
791         * src/stackvma-mach.c: Include stackvma-simple.c.
792         (sigsegv_get_vma): Fill the vma's is_near_this field.
793         * src/stackvma-procfs.c: Include stackvma-simple.c.
794         (sigsegv_get_vma): Fill the vma's is_near_this field.
795         * src/stackvma.h (vma_struct): Add is_near_this field.
796         * src/handler-unix.c (sigsegv_handler): Use the vma's is_near_this
797         function.
799 2006-04-28  Bruno Haible  <bruno@clisp.org>
801         * Version 2.3 released.
803 2006-04-28  Bruno Haible  <bruno@clisp.org>
805         * configure.ac: Bump version number to 2.3.
806         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
808         * build-aux/config.guess, build-aux/config.sub: Update to GNU version
809         2006-04-26.
811         * build-aux/install-sh: Update from automake-1.9.6.
812         * build-aux/missing: Likewise.
814         * build-aux/ltmain.sh: Update from libtool-1.5.22.
815         * m4/libtool.m4: Likewise.
817 2006-04-28  Bruno Haible  <bruno@clisp.org>
819         * build-aux: Renamed from autoconf.
820         * configure.ac (AC_CONFIG_AUX_DIR): Set to build-aux.
822 2006-04-22  Bruno Haible  <bruno@clisp.org>
824         * configure.ac: Renamed from configure.in.
826 2006-04-21  Bruno Haible  <bruno@clisp.org>
828         * src/machfault-macos-i386.h: Rewritten for Darwin 8.6.1.
829         * configure.in: Change FAULT_CONTEXT for i?86-darwin.
831 2005-06-21  Paolo Bonzini  <bonzini@gnu.org>
833         * configure.in: For handler-macos.c, include mach/thread_status.h.
834         * configure: Regenerate.
836 2005-06-21  Paolo Bonzini  <bonzini@gnu.org>
838         * tests/stackoverflow1.c (recurse): Make more resilient to compiler
839         optimization.
840         (recurse_1): New.
841         * tests/stackoverflow2.c: Likewise.
843 2005-05-24  Bruno Haible  <bruno@clisp.org>
845         * src/handler-win32.c (main_exception_filter): Copy CONTEXT structure
846         to safe area on the stack.
847         Based on patch by Doug Currie <e@flavors.com>.
849         * src/handler-win32.c (main_exception_filter): Swap arguments passed
850         to stack_overflow_handler.
851         Patch by Doug Currie <e@flavors.com>.
853         * src/handler-win32.c (main_exception_filter): Align %esp on a 16-byte
854         boundary.
856 2005-03-02  Bruno Haible  <bruno@clisp.org>
858         * Version 2.2 released.
860 2005-03-02  Bruno Haible  <bruno@clisp.org>
862         * autoconf/config.guess: Update.
863         * autoconf/config.sub: Update.
864         * autoconf/missing: Update from automake-1.9.5.
866         * m4/libtool.m4: Upgrade to libtool-1.5.14 with gettext modifications.
867         * autoconf/ltmain.sh: Likewise.
869 2005-03-02  Bruno Haible  <bruno@clisp.org>
871         * src/fault-aix5.h: New file.
872         * src/fault-aix5-powerpc.h: New file.
873         * src/Makefile.am (noinst_HEADERS): Add them.
874         * configure.in: Choose them when the POSIX test succeeds on AIX.
876         * src/fault-aix3-powerpc.h: Renamed from src/fault-aix-powerpc.h.
877         * src/fault-aix3.h: Renamed from src/fault-aix.h.
878         * src/Makefile.am (noinst_HEADERS): Update.
879         * configure.in: Update. When cross-compiling, assume the AIX test
880         succeeds only on AIX 3 and AIX 4.
882 2005-03-01  Bruno Haible  <bruno@clisp.org>
884         * configure.in: Fix test of CFG_MACHFAULT.
886 2005-02-27  Bruno Haible  <bruno@clisp.org>
888         * configure.in: Skip tests that are not needed on MacOS X >= 10.2.
889         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Don't perform the test on
890         MacOS X >= 10.2.
892 2005-02-18  Bruno Haible  <bruno@clisp.org>
894         * tests/sigsegv1.c (handler_called): Declare as volatile.
895         * tests/sigsegv2.c (logcount, logdata): Likewise.
896         * tests/stackoverflow1.c (pass): Likewise.
897         * tests/stackoverflow2.c (pass): Likewise.
899 2005-01-29  Bruno Haible  <bruno@clisp.org>
901         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): New macro.
902         (libsigsegv_version): New declaration.
903         * src/version.c: New file.
904         * src/Makefile.am (libsigsegv_la_SOURCES): Add version.c.
905         * Makefile.msvc (OBJECTS): Add version.obj.
906         (version.obj): New rule.
907         Suggested by Sam Steingold.
909 2004-08-25  Bruno Haible  <bruno@clisp.org>
911         * m4/libtool.m4: Upgrade to libtool-1.5.6.
912         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
914 2004-08-18  Bruno Haible  <bruno@clisp.org>
916         * configure.in: Bump version number to 2.2.
918 2004-08-17  Bruno Haible  <bruno@clisp.org>
920         Finish the Mach-based MacOS X support.
921         * src/handler-macos.c: Don't include mach/vm_map.h.
922         Include machfault.h instead of fault.h.
923         (save_exc_state): Remove variable.
924         (save_thread_state): New variable.
925         (terminating_handler): New function.
926         (altstack_handler): Pass the save_thread_state, not the save_exc_state,
927         to the user's handler.
928         (catch_exception_raise): Make it work also for platforms which don't
929         have an exc_state type. Call SIGSEGV_FAULT_ADDRESS with 2 arguments.
930         Don't clobber the exc_state; instead set the thread's program counter
931         to terminating_handler or altstack_handler, depending on the case.
932         Return KERN_SUCCESS at the end.
933         * src/machfault.h: New file.
934         * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS): Add a second
935         argument.
936         * src/machfault-macos-i386.h: New file.
937         * src/Makefile.am (EXTRA_DIST): Add handler-macos.c.
938         (NOINST_HEADERS): Add machfault.h, machfault-macos-i386.h,
939         machfault-macos-powerpc.h.
940         * configure.in (CFG_HANDLER): Initialize to empty.
941         (CFG_MACHFAULT): New substituted variable.
942         On MacOS X PowerPC+i386, use CFG_HANDLER=handler-macos.c
943         unconditionally.
944         (sv_cv_fault_include, sv_cv_have_stack_overflow_recovery): Set
945         correctly also in the handler-macos.c case.
947 2004-08-16  Bruno Haible  <bruno@clisp.org>
949         Support for MacOS X 10.3 on PowerPC.
950         * src/fault-macosdarwin5-powerpc.h: Renamed from
951         src/fault-macos-powerpc.h.
952         * src/fault-macosdarwin5-powerpc.c: Renamed from
953         src/fault-macos-powerpc.c.
954         * src/fault-macosdarwin7-powerpc.h: New file.
955         * src/fault-macosdarwin7-powerpc.c: New file.
956         * src/Makefile.am (noinst_HEADERS): Update.
957         * configure.in: Test the method for MacOSX/Darwin5 PowerPC only after
958         the method for MacOSX/Darwin7 PowerPC failed.
959         Substitute FAULT_CONTEXT_INCLUDE2.
960         * src/sigsegv.h.in: Insert @FAULT_CONTEXT_INCLUDE2@.
961         * src/Makefile.am (sigsegv.h.msvc): Replace @FAULT_CONTEXT_INCLUDE2@.
963 2003-12-09  Paolo Bonzini  <bonzini@gnu.org>
965         * src/handler-macos.c: Completed; removed dependency on
966         signals.
967         * src/machfault-macos-powerpc.h: Reorganized.
969 2003-12-08  Paolo Bonzini  <bonzini@gnu.org>
970             Bruno Haible  <bruno@clisp.org>
972         * src/handler-macos.c: New file.
973         * src/machfault.h: New file.
974         * src/machfault-macos-powerpc.h: New file.
976 2003-12-05  Bruno Haible  <bruno@clisp.org>
978         * m4/fault.m4: Tweak indentation. Bump serial number.
979         * m4/getpagesize.m4: Likewise.
980         * m4/mmap-anon.m4: Likewise.
981         * m4/sigaltstack.m4: Likewise.
982         * m4/sigaltstack-longjmp.m4: Likewise.
983         * m4/sigaltstack-siglongjmp.m4: Likewise.
985 2003-12-05  Paolo Bonzini  <bonzini@gnu.org>
987         * aclocal.m4: Regenerate with Automake 1.7h.
988         * configure.in: Drop m4/Makefile from list of generated files.
989         * configure: Regenerate.
990         * Makefile.am (install-data-hook): New name of the install-am
991         target, for Automake 1.8 compatibility.  Other -am targets
992         are not affected because Automake does not have anything to
993         do to make them.
994         (AUTOMAKE_OPTIONS): Bump minimum Automake requirement to 1.7h.
995         (SUBDIRS): Remove m4.
996         ($(srcdir)/config.h.msvc): New target for config.h.msvc.
997         * Makefile.in: Regenerate with Automake 1.7h.
998         * m4/Makefile.am: Delete, Automake 1.7h takes care of it.
999         * m4/Makefile.in: Delete.
1000         * src/Makefile.am (installdirs): Delete, Automake 1.7h adds it.
1001         * src/Makefile.in: Regenerate with Automake 1.7h.
1002         * tests/Makefile.in: Regenerate with Automake 1.7h.
1004         * autoconf/config.guess: Update from automake-1.7h.
1005         * autoconf/config.sub: Likewise.
1006         * autoconf/install.sh: Likewise.
1007         * autoconf/missing: Likewise.
1008         * autoconf/mkinstalldirs: Delete.
1009         * m4/fault.m4: autoupdate and manually tweak.
1010         * m4/sigaltstack.m4: Likewise.
1011         * m4/sigaltstack-longjmp.m4: Likewise.
1012         * m4/sigaltstack-siglongjmp.m4: Likewise.
1013         * m4/mmap-anon.m4: Likewise.
1014         * m4/getpagesize.m4: Likewise.
1016 2003-10-29  Bruno Haible  <bruno@clisp.org>
1018         * tests/sigsegv1.c (main): Add a check whether mprotect with
1019         PROT_READ_WRITE really works.
1020         * tests/sigsegv2.c (main): Likewise.
1021         Reported by Ullal Devappa Kini <wmbfqj@vsnl.net>.
1023 2003-08-21  Bruno Haible  <bruno@clisp.org>
1025         * Version 2.1 released.
1027 2003-06-24  Paolo Bonzini  <bonzini@gnu.org>
1029         * m4/fault.m4: Exit if we detect an infinite loop.
1030         * aclocal.m4: Regenerate.
1031         * configure: Regenerate.
1033 2003-06-18  Bruno Haible  <bruno@clisp.org>
1035         * autoconf/install-sh: Update from automake-1.7.5.
1037 2003-05-14  Paolo Bonzini  <bonzini@gnu.org>
1039         * configure.in: Use signals-bsd.h for OpenBSD and NetBSD too.
1040         Support instruction decoding to get fault address for Alphas.
1041         * src/fault-netbsd-alpha.h: New file.
1042         * src/fault-netbsd-alpha.c: New file.
1043         * src/Makefile.am (noinst_HEADERS): Add them.
1045 2003-05-14  Paolo Bonzini  <bonzini@gnu.org>
1047         * src/dispatcher.c (insert): Fix lossage in 64-bit environments
1048         (cast from void* to unsigned int).
1050 2003-05-10  Bruno Haible  <bruno@clisp.org>
1052         * tests/Makefile.am (../src/libsigsegv.la): New rule.
1054         * Makefile.msvc (handler.obj): Complete the dependencies.
1055         (stackoverflow2.exe): New rule.
1056         (check): Depend on it.
1057         (clean): Remove it.
1059 2003-05-10  Paolo Bonzini  <bonzini@gnu.org>
1060             Bruno Haible  <bruno@clisp.org>
1062         * configure.in: AC_SUBST of CFG_STACKVMA, CFG_LEAVE, CFG_HANDLER.
1063         * src/Makefile.am: Add dependencies for the object files.
1065 2003-05-08  Paolo Bonzini  <bonzini@gnu.org>
1067         * configure.in: Add $srcdir/ to #include statements. Needed when
1068         builddir != srcdir.
1070         * src/signals-macos.h (SIGSEGV_FOR_ALL_SIGNALS): Add SIGSEGV.
1072 2003-05-03  Paolo Bonzini  <bonzini@gnu.org>
1074         * configure.in: Tweak 2003-04-26 patch so that it works on mingw32 and
1075         Cygwin.
1077 2003-05-02  Bruno Haible  <bruno@clisp.org>
1079         * src/handler-unix.c: Add special case for stack handling on IA-64.
1080         * src/fault-linux-ia64.h: Complete the port.
1081         * configure.in: Improve Linux/IA-64 support.
1083 2003-05-01  Bruno Haible  <bruno@clisp.org>
1085         * configure.in: Don't use fault-hurd.h on NetBSD/alpha. It does not
1086         work.
1088 2003-05-01  Bruno Haible  <bruno@clisp.org>
1090         Support for Linux/HPPA.
1091         * fault-linux-hppa.h: Don't include <siginfo.h>.
1092         (SIGSEGV_FAULT_ADDRESS): Change.
1093         (SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO): Define it, otherwise the value
1094         passed for sip is 0.
1095         (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): Remove macros.
1096         * configure.in: Improve Linux/HPPA support.
1098 2003-05-01  Bruno Haible  <bruno@clisp.org>
1100         Support for OpenBSD/i386.
1101         * src/fault-openbsd.h: New file.
1102         * src/fault-openbsd-i386.h: New file.
1103         * src/Makefile.am (noinst_HEADERS): Add them.
1104         * configure.in: If the POSIX test works and the OS is OpenBSD, use
1105         fault-openbsd.h instead of fault-posix.h.
1107 2003-05-01  Bruno Haible  <bruno@clisp.org>
1109         * src/fault-hpux-hppa.h: Make it work on machines with 64-bit registers
1110         as well.
1111         * configure.in: Likewise.
1113 2003-04-29  Bruno Haible  <bruno@clisp.org>
1115         * configure.in: Define HAVE_STACKVMA if CFG_STACKVMA is nontrivial.
1116         * src/handler-unix.c: Test HAVE_STACKVMA instead of CFG_STACKVMA.
1118         * m4/fault.m4 (SV_TRY_FAULT): On HP-UX, always pass 0 as first argument
1119         of mmap().
1120         * tests/mmaputil.h (mmap_zeromap): Likewise.
1122 2003-04-28  Bruno Haible  <bruno@clisp.org>
1124         * src/stackvma-freebsd.c (sigsegv_get_vma): Fix logic error.
1126 2002-04-17  Paolo Bonzini  <bonzini@gnu.org>
1128         Support for Cygwin.
1129         * configure.in: Treat cygwin* like mingw*.
1130         * src/handler-win32.c [CYGWIN] (exception_list, _except_list,
1131         debug_get_except_list, cygwin_exception_handler,
1132         libsigsegv_exception_handler, do_install_main_exception_filter): New
1133         definitions.
1134         (install_main_exception_filter): New function.
1135         (sigsegv_install_handler, stackoverflow_install_handler): Call it.
1137 2003-04-26  Bruno Haible  <bruno@clisp.org>
1139         * configure.in: Don't set sv_cv_have_stack_overflow_recovery=yes if
1140         not all of the fault-*.h and stackvma-*.h premises are fulfilled.
1141         Reported by Paolo Bonzini <bonzini@gnu.org> for NetBSD/Alpha.
1143 2003-04-03  Bruno Haible  <bruno@clisp.org>
1145         * configure.in: Add --enable-relocatable option.
1146         * m4/relocatable.m4: New file, from GNU gettext.
1147         * m4/Makefile.am (EXTRA_DIST): Add it.
1149         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.4.3.
1150         * autoconf/ltmain.sh: Likewise.
1152 2003-04-02  Bruno Haible  <bruno@clisp.org>
1154         * configure.in: Bump version number to 2.1.
1156         * tests/stackoverflow2.c: New file, based on code by Paolo Bonzini.
1157         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add stackoverflow2.
1159 2003-04-02  Paolo Bonzini  <bonzini@gnu.org>
1160             Bruno Haible  <bruno@clisp.org>
1162         Complete the port to MacOS X (Darwin).
1163         * m4/fault.m4: Include sys/signal.h. Have an exit status of 3 instead
1164         of 1 if fault_address is misdetected.
1165         * m4/sigaltstack.m4: Define stack_t to struct sigaltstack if absent.
1166         Include <sys/signal.h>.
1167         * configure.in: Add check for sys/signal.h.
1168         Add support for catching stack overflow on MacOSX.
1169         Add support for MacOSX on i386.
1170         Provide a fallback for SS_ONSTACK before using it.
1171         * src/fault-macos-i386.h: New file.
1172         * src/stackvma-mach.c: New file.
1173         * src/fault-macos-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Change.
1174         * src/handler-unix.c: Include <sys/signal.h>.
1175         (SS_DISABLE): Provide a fallback.
1176         * src/leave-sigaltstack.c: Include sys/signal.h.
1177         (SS_ONSTACK): Provide a fallback.
1178         * src/Makefile.am (noinst_HEADERS): Add fault-macos-i386.h.
1179         (EXTRA_DIST): Add stackvma-mach.c.
1180         * tests/sigsegv1.c: Abort after 10 handler invocations.
1181         (main): Drop SKIP message, now emitted by automake 1.7.x.
1182         * tests/sigsegv2.c: Abort after 10 handler invocations.
1183         (main): Drop SKIP message, now emitted by automake 1.7.x.
1184         * tests/stackoverflow1.c (main): Drop SKIP message, now emitted by
1185         automake 1.7.x.
1187 2002-10-14  Bruno Haible  <bruno@clisp.org>
1189         * src/fault-none.h: New file.
1190         * src/fault.h: Include CFG_FAULT unconditionally.
1191         * src/leave-none.c: New file.
1192         * src/leave.c: Include CFG_LEAVE unconditionally.
1193         * src/stackvma.c: Include CFG_STACKVMA unconditionally.
1194         * configure.in (CFG_LEAVE, CFG_STACKVMA): Define always.
1195         * src/Makefile.am (noinst_HEADERS): Add fault-none.h.
1196         (EXTRA_DIST): Add leave-none.c.
1197         Reported by Paolo Bonzini <bonzini@gnu.org>.
1199 2002-09-30  Bruno Haible  <bruno@clisp.org>
1201         * src/Makefile.am (noinst_HEADERS): Add fault-hurd.h,
1202         fault-linux-m68k.c, fault-macos-powerpc.h, fault-macos-powerpc.c,
1203         signals-hurd.h, signals-macos.h.
1205 2002-09-30  Bruno Haible  <bruno@clisp.org>
1207         * Makefile.am (check-next): Don't ask for reports from i?86-*-linux*
1208         platforms.
1210 2002-09-30  Bruno Haible  <bruno@clisp.org>
1212         Better Linux/PowerPC support.
1213         * configure.in: Change Linux/PowerPC support.
1214         * src/fault-linux-powerpc.h (SIGSEGV_FAULT_ADDRESS): New macro.
1216 2002-09-30  Bruno Haible  <bruno@clisp.org>
1218         Better Linux/m68k support.
1219         * configure.in: Change Linux/m68k support.
1220         * src/fault-linux-m68k.c: New file.
1221         * src/fault-linux-m68k.h: Use it.
1223 2002-09-30  Bruno Haible  <bruno@clisp.org>
1225         Tentative Hurd support.
1226         * configure.in: Add Hurd support.
1227         * src/signals-hurd.h: New file.
1228         * src/fault-hurd.h: New file.
1230 2002-09-30  Bruno Haible  <bruno@clisp.org>
1232         MacOSX/PowerPC support.
1233         * configure.in: Add MacOSX/PowerPC support.
1234         * src/signals-macos.h: New file.
1235         * src/fault-macos-powerpc.c: New file.
1236         * src/fault-macos-powerpc.h: New file.
1238 2002-09-16  Bruno Haible  <bruno@clisp.org>
1240         * src/fault-posix.h: Don't include <siginfo.h>. Needed for hppa-linux.
1241         Reported by Will Newton <will@misconception.org.uk>.
1243 2002-08-28  Bruno Haible  <bruno@clisp.org>
1245         * Version 2.0 released.
1247 2002-07-28  Bruno Haible  <bruno@clisp.org>
1249         Big reorganization and rewrite. Every file changed.