1 2008-08-24 Bruno Haible <bruno@clisp.org>
3 * configure.ac: Treat Dragonfly BSD platforms like FreeBSD.
4 Reported by Thomas Klausner <tk@giga.or.at>.
6 2008-08-24 Bruno Haible <bruno@clisp.org>
8 * src/stackvma-mincore.c (mincore_is_near_this): Improve logic. Needed
9 for reliable NULL pointer access classification as SIGSEGV on AIX 4.3.
11 2008-08-24 Bruno Haible <bruno@clisp.org>
13 * m4/sigaltstack.m4: Change 'volatile int' return type to 'int'. Needed
15 * m4/sigaltstack-longjmp.m4: Likewise.
16 * m4/sigaltstack-siglongjmp.m4: Likewise.
17 * tests/stackoverflow1.c (recurse): Likewise.
18 * tests/stackoverflow2.c (recurse): Likewise.
20 2008-08-24 Bruno Haible <bruno@clisp.org>
22 * tests/sigsegv1.c: Include <config.h>.
23 * tests/sigsegv2.c: Likewise.
24 * tests/sigsegv3.c: Include <config.h> before all other headers.
25 * tests/stackoverflow1.c: Likewise.
26 * tests/stackoverflow2.c: Likewise.
28 2008-08-24 Bruno Haible <bruno@clisp.org>
30 Fix the sigsegv3 test on MacOS X.
31 * src/sigsegv.h.in (sigsegv_leave_handler): Take 4 arguments.
32 * NEWS: Mention the change.
33 * src/handler-macos.c (our_exception_thread, signalled_thread): New
35 (catch_exception_raise): Set signalled_thread during the user_handler
37 (mach_exception_thread): Initialize our_exception_thread.
38 (sigsegv_leave_handler): Take 4 arguments. When called from within
39 the exception thread, let the signalled thread do a hyperjump.
40 * src/handler-unix.c (sigsegv_leave_handler): Take 4 arguments.
41 * src/handler-win32.c (sigsegv_leave_handler): Likewise.
42 * src/handler-none.c (sigsegv_leave_handler): Likewise.
43 * src/machfault-macos.h (SIGSEGV_INTEGER_ARGUMENT_1,
44 SIGSEGV_INTEGER_ARGUMENT_2, SIGSEGV_INTEGER_ARGUMENT_3,
45 SIGSEGV_FRAME_POINTER): New macros.
46 * tests/sigsegv3.c (handler_continuation): New function.
47 (handler): Update to new API.
48 * tests/stackoverflow1.c (stackoverflow_handler_continuation): New
50 (stackoverflow_handler): Update to new API.
51 * tests/stackoverflow2.c (stackoverflow_handler_continuation): New
53 (stackoverflow_handler, sigsegv_handler): Update to new API.
55 2008-08-24 Bruno Haible <bruno@clisp.org>
57 Test the use of sigsegv_leave_handler from within a SIGSEGV handler.
58 * tests/sigsegv3.c: New file.
59 * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add sigsegv3.
61 2008-08-23 Eric Blake <ebb9@byu.net>
63 * src/Makefile.am (noinst_HEADERS): Remove machfault-macos-powerpc.h
64 and machfault-macos-i386.h. Add machfault-macos.h.
66 2008-08-17 Bruno Haible <bruno@clisp.org>
68 Allow building universal binaries on MacOS X.
69 * src/machfault-macos.h: New file, combining
70 src/machfault-macos-powerpc.h and src/machfault-macos-i386.h.
71 * src/machfault-macos-powerpc.h: Remove file.
72 * src/machfault-macos-i386.h: Remove file.
73 * configure.ac (CFG_MACHFAULT): Set to machfault-macos.h.
74 (FAULT_CONTEXT_INCLUDE) [MacOSX]: Set to #ifdefs for all four possible
77 2008-07-20 Bruno Haible <bruno@clisp.org>
79 Make sigsegv_get_vma async-safe.
80 * src/sigsegv.h.in (sigsegv_handler_t, stackoverflow_handler_t):
81 Mention async-safety constraints.
82 + src/stackvma-rofile.c: New file.
83 * src/stackvma-freebsd.c: Include stackvma-rofile.c.
84 (sigsegv_get_vma): Use struct rofile instead of FILE.
85 * src/stackvma-linux.c: Include stackvma-rofile.c.
86 (sigsegv_get_vma): Use struct rofile instead of FILE.
87 * src/stackvma-procfs.c: Include <sys/mman.h> instead of <stdlib.h> and
89 (sigsegv_get_vma): Avoid using sprintf. Ensure pagesize is initialized.
90 Use mmap/munmap instead of malloc/free.
91 * src/Makefile.am (EXTRA_DIST): Add stackvma-rofile.c.
92 Reported by Eric Blake <ebb9@byu.net>.
94 2008-07-20 Bruno Haible <bruno@clisp.org>
96 * src/handler-unix.c (sigsegv_handler): Preserve errno.
98 2008-07-20 Eric Blake <ebb9@byu.net>
100 * src/stackvma-mincore.c (mincore_is_near_this): Fix logic.
102 2008-07-20 Bruno Haible <bruno@clisp.org>
104 * tests/stackoverflow2.c (main): Test also a NULL pointer access.
105 Reported by Eric Blake <ebb9@byu.net>.
107 2008-06-23 Bruno Haible <bruno@clisp.org>
109 * build-aux/config.guess: Update to GNU version 2008-06-16.
110 * build-aux/config.sub: Likewise.
112 2008-05-31 Bruno Haible <bruno@clisp.org>
114 Make cross-compile from MacOS X 10.5 to MacOS X 10.4 work.
115 * src/handler-macos.c (MacOS_X_10_5_HEADERS): New macro.
116 * src/machfault-macos-i386.h: Use it.
117 * src/machfault-macos-powerpc.h: Likewise.
118 Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
120 2008-05-31 Bruno Haible <bruno@clisp.org>
122 * m4/mmap-anon.m4 (SV_MMAP_ANON): Add known cross-compile results for
124 Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
126 2008-05-27 Bruno Haible <bruno@clisp.org>
128 * configure.ac: Require at least autoconf 2.62. Merge
129 FAULT_CONTEXT_INCLUDE2 variable into FAULT_CONTEXT_INCLUDE.
130 * src/sigsegv.h.in: Remove FAULT_CONTEXT_INCLUDE2 substitution.
131 * src/Makefile.am (sigsegv.h.msvc): Update.
133 2008-05-27 Bruno Haible <bruno@clisp.org>
135 * configure.ac: Bump version number to 2.6.
136 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
138 2008-05-27 Bruno Haible <bruno@clisp.org>
140 Support for 64-bit mode on MacOS X 10.5.
141 * src/handler-macos.c (catch_exception_raise): Align the stack pointer
142 also on x86_64. Needed for MMX instructions.
143 * src/machfault-macos-i386.h: Choose among 64-bit and 32-bit flavours.
144 Use new names for the 32-bit flavour when possible.
145 * src/machfault-macos-powerpc.h: Choose among 64-bit and 32-bit
147 * configure.ac (FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE2): Choose
148 right flavour (ppc_thread_state_t/ppc_thread_state64_t or
149 i386_thread_state_t/x86_thread_state32_t/x86_thread_state64_t) at
152 2008-05-18 Bruno Haible <bruno@clisp.org>
154 * m4/libtool.m4: Update from libtool-2.2.4.
155 * m4/ltoptions.m4: Likewise.
156 * m4/ltversion.m4: Likewise.
157 * m4/lt~obsolete.m4: Likewise.
158 * build-aux/ltmain.sh: Likewise.
160 2008-04-06 Bruno Haible <bruno@clisp.org>
162 * m4/libtool.m4: Update from libtool-2.2.2.
163 * m4/ltoptions.m4: New file, from libtool-2.2.2.
164 * m4/ltsugar.m4: New file, from libtool-2.2.2.
165 * m4/ltversion.m4: New file, from libtool-2.2.2.
166 * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
167 * build-aux/ltmain.sh: New file, from libtool-2.2.2.
168 * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
170 2007-11-16 Bruno Haible <bruno@clisp.org>
172 * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Use sc_rsp
173 also on x86_64-freebsd platform.
174 Reported by Dmitri Hrapof <hrapof@common-lisp.ru> and
175 Petr Salinger <Petr.Salinger@seznam.cz>.
177 2007-11-15 Bruno Haible <bruno@clisp.org>
179 * configure.ac (CFG_SIGNALS, CFG_FAULT): Port to i586-kfreebsd-gnu
180 and x86_64-kfreebsd-gnu.
181 * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Likewise.
182 Based on patch by Petr Salinger <Petr.Salinger@seznam.cz>.
184 2007-11-11 Bruno Haible <bruno@clisp.org>
186 * Version 2.5 released.
188 2007-11-11 Bruno Haible <bruno@clisp.org>
190 * configure.ac: Bump version number to 2.5.
191 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
193 2007-10-28 Bruno Haible <bruno@clisp.org>
195 * src/handler-macos.c (catch_exception_raise): Align the new stack
196 pointer on a 16-byte boundary.
197 * src/handler-win32.c (main_exception_filter): Correct alignment:
198 %esp must be aligned to == -4 mod 16 upon function entry.
200 2007-10-28 Bruno Haible <bruno@clisp.org>
202 * src/sigsegv.h.in (stackoverflow_install_handler): Avoid comment
204 Reported by Chris Willmore <willmc@rpi.edu>.
206 2007-10-28 Bruno Haible <bruno@clisp.org>
208 * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS,
209 SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Add __DARWIN_UNIX03
211 * src/machfault-macos-i386.h (SIGSEGV_FAULT_ADDRESS,
212 SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Likewise.
213 * src/fault-macosdarwin7-powerpc.h (SIGSEGV_FAULT_STACKPOINTER):
215 * src/fault-macosdarwin7-powerpc.c (get_fault_addr): Likewise.
216 Reported by Chris Willmore <willmc@rpi.edu>.
218 2007-01-12 Bruno Haible <bruno@clisp.org>
220 * Makefile.am (check-next): Don't ask for reports from x86_64-*-linux*
223 2006-07-14 Bruno Haible <bruno@clisp.org>
225 * m4/sigaltstack.m4 (SV_SIGALTSTACK): Use SIGSTKSZ instead of
227 * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
228 * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
230 * tests/stackoverflow1.c (main): Likewise.
231 * tests/stackoverflow2.c (main): Likewise.
232 * src/sigsegv.h.in (stackoverflow_install_handler): Update
233 recommendation for extra_stack_size.
235 Reported by Peter Van Eynde <pvaneynd@users.sourceforge.net>.
237 2006-06-23 Bruno Haible <bruno@clisp.org>
239 * Version 2.4 released.
241 2006-06-23 Bruno Haible <bruno@clisp.org>
243 * configure.ac: Bump version number to 2.4.
244 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
246 2006-06-17 Bruno Haible <bruno@clisp.org>
248 * src/Makefile.am (noinst_HEADERS): Add fault-netbsd.h.
250 2006-06-17 Bruno Haible <bruno@clisp.org>
252 * m4/sigaltstack.m4: Insert 'volatile' and pass a pointer, to defeat
254 * m4/sigaltstack-longjmp.m4: Likewise.
255 * m4/sigaltstack-siglongjmp.m4: Likewise.
257 2006-06-17 Bruno Haible <bruno@clisp.org>
259 * tests/stackoverflow1.c (recurse): Remove useless cast.
260 * tests/stackoverflow2.c (recurse): Likewise.
262 2006-06-17 Bruno Haible <bruno@clisp.org>
264 * src/stackvma-freebsd.c (sigsegv_get_vma): Test whether mincore()
265 works as expected before using it.
267 2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
269 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
270 "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
272 2006-06-13 Bruno Haible <bruno@clisp.org>
274 Make NetBSD/i386 stack overflow detection work even without mincore.
275 * src/fault-netbsd.h: New file.
276 * configure.ac (CFG_FAULT): Choose it when appropriate.
278 2006-05-16 Bruno Haible <bruno@clisp.org>
280 Don't allow the compiler to reorder instructions in the tests.
281 * tests/sigsegv1.c (crashes): Use volatile in pointer access.
282 * tests/sigsegv2.c (main): Likewise.
283 * tests/stackoverflow2.c (main): Likewise.
285 2006-05-14 Bruno Haible <bruno@clisp.org>
287 Exploit the mincore() system call where available.
288 * src/stackvma-mincore.c: New file.
289 * src/Makefile.am (EXTRA_DIST): Add it.
290 * src/stackvma.h: Add double-inclusion guard.
291 * src/stackvma-freebsd.c: If mincore() is available, include also
293 (sigsegv_get_vma): If mincore() is available, use it as fallback.
294 * src/stackvma-linux.c: If mincore() is available, include also
296 (sigsegv_get_vma): If mincore() is available, use it as fallback.
297 * src/stackvma-procfs.c: If mincore() is available, include also
299 (sigsegv_get_vma): If mincore() is available, use it as fallback.
300 * configure.ac: Test for mincore.
301 (CFG_STACKVMA): Set to stackvma-mincore.c if nothing else is available.
303 2006-05-14 Bruno Haible <bruno@clisp.org>
305 * src/stackvma-simple.c: New file, extracted from handler-unix.c.
306 * src/Makefile.am (EXTRA_DIST): Add it.
307 * src/stackvma-beos.c: Include stackvma-simple.c.
308 (sigsegv_get_vma): Fill the vma's is_near_this field.
309 * src/stackvma-freebsd.c: Include stackvma-simple.c.
310 (sigsegv_get_vma): Fill the vma's is_near_this field.
311 * src/stackvma-linux.c: Include stackvma-simple.c.
312 (sigsegv_get_vma): Fill the vma's is_near_this field.
313 * src/stackvma-mach.c: Include stackvma-simple.c.
314 (sigsegv_get_vma): Fill the vma's is_near_this field.
315 * src/stackvma-procfs.c: Include stackvma-simple.c.
316 (sigsegv_get_vma): Fill the vma's is_near_this field.
317 * src/stackvma.h (vma_struct): Add is_near_this field.
318 * src/handler-unix.c (sigsegv_handler): Use the vma's is_near_this
321 2006-04-28 Bruno Haible <bruno@clisp.org>
323 * Version 2.3 released.
325 2006-04-28 Bruno Haible <bruno@clisp.org>
327 * configure.ac: Bump version number to 2.3.
328 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
330 * build-aux/config.guess, build-aux/config.sub: Update to GNU version
333 * build-aux/install-sh: Update from automake-1.9.6.
334 * build-aux/missing: Likewise.
336 * build-aux/ltmain.sh: Update from libtool-1.5.22.
337 * m4/libtool.m4: Likewise.
339 2006-04-28 Bruno Haible <bruno@clisp.org>
341 * build-aux: Renamed from autoconf.
342 * configure.ac (AC_CONFIG_AUX_DIR): Set to build-aux.
344 2006-04-22 Bruno Haible <bruno@clisp.org>
346 * configure.ac: Renamed from configure.in.
348 2006-04-21 Bruno Haible <bruno@clisp.org>
350 * src/machfault-macos-i386.h: Rewritten for Darwin 8.6.1.
351 * configure.in: Change FAULT_CONTEXT for i?86-darwin.
353 2005-06-21 Paolo Bonzini <bonzini@gnu.org>
355 * configure.in: For handler-macos.c, include mach/thread_status.h.
356 * configure: Regenerate.
358 2005-06-21 Paolo Bonzini <bonzini@gnu.org>
360 * tests/stackoverflow1.c (recurse): Make more resilient to compiler
363 * tests/stackoverflow2.c: Likewise.
365 2005-05-24 Bruno Haible <bruno@clisp.org>
367 * src/handler-win32.c (main_exception_filter): Copy CONTEXT structure
368 to safe area on the stack.
369 Based on patch by Doug Currie <e@flavors.com>.
371 * src/handler-win32.c (main_exception_filter): Swap arguments passed
372 to stack_overflow_handler.
373 Patch by Doug Currie <e@flavors.com>.
375 * src/handler-win32.c (main_exception_filter): Align %esp on a 16-byte
378 2005-03-02 Bruno Haible <bruno@clisp.org>
380 * Version 2.2 released.
382 2005-03-02 Bruno Haible <bruno@clisp.org>
384 * autoconf/config.guess: Update.
385 * autoconf/config.sub: Update.
386 * autoconf/missing: Update from automake-1.9.5.
388 * m4/libtool.m4: Upgrade to libtool-1.5.14 with gettext modifications.
389 * autoconf/ltmain.sh: Likewise.
391 2005-03-02 Bruno Haible <bruno@clisp.org>
393 * src/fault-aix5.h: New file.
394 * src/fault-aix5-powerpc.h: New file.
395 * src/Makefile.am (noinst_HEADERS): Add them.
396 * configure.in: Choose them when the POSIX test succeeds on AIX.
398 * src/fault-aix3-powerpc.h: Renamed from src/fault-aix-powerpc.h.
399 * src/fault-aix3.h: Renamed from src/fault-aix.h.
400 * src/Makefile.am (noinst_HEADERS): Update.
401 * configure.in: Update. When cross-compiling, assume the AIX test
402 succeeds only on AIX 3 and AIX 4.
404 2005-03-01 Bruno Haible <bruno@clisp.org>
406 * configure.in: Fix test of CFG_MACHFAULT.
408 2005-02-27 Bruno Haible <bruno@clisp.org>
410 * configure.in: Skip tests that are not needed on MacOS X >= 10.2.
411 * m4/sigaltstack.m4 (SV_SIGALTSTACK): Don't perform the test on
414 2005-02-18 Bruno Haible <bruno@clisp.org>
416 * tests/sigsegv1.c (handler_called): Declare as volatile.
417 * tests/sigsegv2.c (logcount, logdata): Likewise.
418 * tests/stackoverflow1.c (pass): Likewise.
419 * tests/stackoverflow2.c (pass): Likewise.
421 2005-01-29 Bruno Haible <bruno@clisp.org>
423 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): New macro.
424 (libsigsegv_version): New declaration.
425 * src/version.c: New file.
426 * src/Makefile.am (libsigsegv_la_SOURCES): Add version.c.
427 * Makefile.msvc (OBJECTS): Add version.obj.
428 (version.obj): New rule.
429 Suggested by Sam Steingold.
431 2004-08-25 Bruno Haible <bruno@clisp.org>
433 * m4/libtool.m4: Upgrade to libtool-1.5.6.
434 * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
436 2004-08-18 Bruno Haible <bruno@clisp.org>
438 * configure.in: Bump version number to 2.2.
440 2004-08-17 Bruno Haible <bruno@clisp.org>
442 Finish the Mach-based MacOS X support.
443 * src/handler-macos.c: Don't include mach/vm_map.h.
444 Include machfault.h instead of fault.h.
445 (save_exc_state): Remove variable.
446 (save_thread_state): New variable.
447 (terminating_handler): New function.
448 (altstack_handler): Pass the save_thread_state, not the save_exc_state,
449 to the user's handler.
450 (catch_exception_raise): Make it work also for platforms which don't
451 have an exc_state type. Call SIGSEGV_FAULT_ADDRESS with 2 arguments.
452 Don't clobber the exc_state; instead set the thread's program counter
453 to terminating_handler or altstack_handler, depending on the case.
454 Return KERN_SUCCESS at the end.
455 * src/machfault.h: New file.
456 * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS): Add a second
458 * src/machfault-macos-i386.h: New file.
459 * src/Makefile.am (EXTRA_DIST): Add handler-macos.c.
460 (NOINST_HEADERS): Add machfault.h, machfault-macos-i386.h,
461 machfault-macos-powerpc.h.
462 * configure.in (CFG_HANDLER): Initialize to empty.
463 (CFG_MACHFAULT): New substituted variable.
464 On MacOS X PowerPC+i386, use CFG_HANDLER=handler-macos.c
466 (sv_cv_fault_include, sv_cv_have_stack_overflow_recovery): Set
467 correctly also in the handler-macos.c case.
469 2004-08-16 Bruno Haible <bruno@clisp.org>
471 Support for MacOS X 10.3 on PowerPC.
472 * src/fault-macosdarwin5-powerpc.h: Renamed from
473 src/fault-macos-powerpc.h.
474 * src/fault-macosdarwin5-powerpc.c: Renamed from
475 src/fault-macos-powerpc.c.
476 * src/fault-macosdarwin7-powerpc.h: New file.
477 * src/fault-macosdarwin7-powerpc.c: New file.
478 * src/Makefile.am (noinst_HEADERS): Update.
479 * configure.in: Test the method for MacOSX/Darwin5 PowerPC only after
480 the method for MacOSX/Darwin7 PowerPC failed.
481 Substitute FAULT_CONTEXT_INCLUDE2.
482 * src/sigsegv.h.in: Insert @FAULT_CONTEXT_INCLUDE2@.
483 * src/Makefile.am (sigsegv.h.msvc): Replace @FAULT_CONTEXT_INCLUDE2@.
485 2003-12-09 Paolo Bonzini <bonzini@gnu.org>
487 * src/handler-macos.c: Completed; removed dependency on
489 * src/machfault-macos-powerpc.h: Reorganized.
491 2003-12-08 Paolo Bonzini <bonzini@gnu.org>
492 Bruno Haible <bruno@clisp.org>
494 * src/handler-macos.c: New file.
495 * src/machfault.h: New file.
496 * src/machfault-macos-powerpc.h: New file.
498 2003-12-05 Bruno Haible <bruno@clisp.org>
500 * m4/fault.m4: Tweak indentation. Bump serial number.
501 * m4/getpagesize.m4: Likewise.
502 * m4/mmap-anon.m4: Likewise.
503 * m4/sigaltstack.m4: Likewise.
504 * m4/sigaltstack-longjmp.m4: Likewise.
505 * m4/sigaltstack-siglongjmp.m4: Likewise.
507 2003-12-05 Paolo Bonzini <bonzini@gnu.org>
509 * aclocal.m4: Regenerate with Automake 1.7h.
510 * configure.in: Drop m4/Makefile from list of generated files.
511 * configure: Regenerate.
512 * Makefile.am (install-data-hook): New name of the install-am
513 target, for Automake 1.8 compatibility. Other -am targets
514 are not affected because Automake does not have anything to
516 (AUTOMAKE_OPTIONS): Bump minimum Automake requirement to 1.7h.
517 (SUBDIRS): Remove m4.
518 ($(srcdir)/config.h.msvc): New target for config.h.msvc.
519 * Makefile.in: Regenerate with Automake 1.7h.
520 * m4/Makefile.am: Delete, Automake 1.7h takes care of it.
521 * m4/Makefile.in: Delete.
522 * src/Makefile.am (installdirs): Delete, Automake 1.7h adds it.
523 * src/Makefile.in: Regenerate with Automake 1.7h.
524 * tests/Makefile.in: Regenerate with Automake 1.7h.
526 * autoconf/config.guess: Update from automake-1.7h.
527 * autoconf/config.sub: Likewise.
528 * autoconf/install.sh: Likewise.
529 * autoconf/missing: Likewise.
530 * autoconf/mkinstalldirs: Delete.
531 * m4/fault.m4: autoupdate and manually tweak.
532 * m4/sigaltstack.m4: Likewise.
533 * m4/sigaltstack-longjmp.m4: Likewise.
534 * m4/sigaltstack-siglongjmp.m4: Likewise.
535 * m4/mmap-anon.m4: Likewise.
536 * m4/getpagesize.m4: Likewise.
538 2003-10-29 Bruno Haible <bruno@clisp.org>
540 * tests/sigsegv1.c (main): Add a check whether mprotect with
541 PROT_READ_WRITE really works.
542 * tests/sigsegv2.c (main): Likewise.
543 Reported by Ullal Devappa Kini <wmbfqj@vsnl.net>.
545 2003-08-21 Bruno Haible <bruno@clisp.org>
547 * Version 2.1 released.
549 2003-06-24 Paolo Bonzini <bonzini@gnu.org>
551 * m4/fault.m4: Exit if we detect an infinite loop.
552 * aclocal.m4: Regenerate.
553 * configure: Regenerate.
555 2003-06-18 Bruno Haible <bruno@clisp.org>
557 * autoconf/install-sh: Update from automake-1.7.5.
559 2003-05-14 Paolo Bonzini <bonzini@gnu.org>
561 * configure.in: Use signals-bsd.h for OpenBSD and NetBSD too.
562 Support instruction decoding to get fault address for Alphas.
563 * src/fault-netbsd-alpha.h: New file.
564 * src/fault-netbsd-alpha.c: New file.
565 * src/Makefile.am (noinst_HEADERS): Add them.
567 2003-05-14 Paolo Bonzini <bonzini@gnu.org>
569 * src/dispatcher.c (insert): Fix lossage in 64-bit environments
570 (cast from void* to unsigned int).
572 2003-05-10 Bruno Haible <bruno@clisp.org>
574 * tests/Makefile.am (../src/libsigsegv.la): New rule.
576 * Makefile.msvc (handler.obj): Complete the dependencies.
577 (stackoverflow2.exe): New rule.
578 (check): Depend on it.
581 2003-05-10 Paolo Bonzini <bonzini@gnu.org>
582 Bruno Haible <bruno@clisp.org>
584 * configure.in: AC_SUBST of CFG_STACKVMA, CFG_LEAVE, CFG_HANDLER.
585 * src/Makefile.am: Add dependencies for the object files.
587 2003-05-08 Paolo Bonzini <bonzini@gnu.org>
589 * configure.in: Add $srcdir/ to #include statements. Needed when
592 * src/signals-macos.h (SIGSEGV_FOR_ALL_SIGNALS): Add SIGSEGV.
594 2003-05-03 Paolo Bonzini <bonzini@gnu.org>
596 * configure.in: Tweak 2003-04-26 patch so that it works on mingw32 and
599 2003-05-02 Bruno Haible <bruno@clisp.org>
601 * src/handler-unix.c: Add special case for stack handling on IA-64.
602 * src/fault-linux-ia64.h: Complete the port.
603 * configure.in: Improve Linux/IA-64 support.
605 2003-05-01 Bruno Haible <bruno@clisp.org>
607 * configure.in: Don't use fault-hurd.h on NetBSD/alpha. It does not
610 2003-05-01 Bruno Haible <bruno@clisp.org>
612 Support for Linux/HPPA.
613 * fault-linux-hppa.h: Don't include <siginfo.h>.
614 (SIGSEGV_FAULT_ADDRESS): Change.
615 (SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO): Define it, otherwise the value
617 (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): Remove macros.
618 * configure.in: Improve Linux/HPPA support.
620 2003-05-01 Bruno Haible <bruno@clisp.org>
622 Support for OpenBSD/i386.
623 * src/fault-openbsd.h: New file.
624 * src/fault-openbsd-i386.h: New file.
625 * src/Makefile.am (noinst_HEADERS): Add them.
626 * configure.in: If the POSIX test works and the OS is OpenBSD, use
627 fault-openbsd.h instead of fault-posix.h.
629 2003-05-01 Bruno Haible <bruno@clisp.org>
631 * src/fault-hpux-hppa.h: Make it work on machines with 64-bit registers
633 * configure.in: Likewise.
635 2003-04-29 Bruno Haible <bruno@clisp.org>
637 * configure.in: Define HAVE_STACKVMA if CFG_STACKVMA is nontrivial.
638 * src/handler-unix.c: Test HAVE_STACKVMA instead of CFG_STACKVMA.
640 * m4/fault.m4 (SV_TRY_FAULT): On HP-UX, always pass 0 as first argument
642 * tests/mmaputil.h (mmap_zeromap): Likewise.
644 2003-04-28 Bruno Haible <bruno@clisp.org>
646 * src/stackvma-freebsd.c (sigsegv_get_vma): Fix logic error.
648 2002-04-17 Paolo Bonzini <bonzini@gnu.org>
651 * configure.in: Treat cygwin* like mingw*.
652 * src/handler-win32.c [CYGWIN] (exception_list, _except_list,
653 debug_get_except_list, cygwin_exception_handler,
654 libsigsegv_exception_handler, do_install_main_exception_filter): New
656 (install_main_exception_filter): New function.
657 (sigsegv_install_handler, stackoverflow_install_handler): Call it.
659 2003-04-26 Bruno Haible <bruno@clisp.org>
661 * configure.in: Don't set sv_cv_have_stack_overflow_recovery=yes if
662 not all of the fault-*.h and stackvma-*.h premises are fulfilled.
663 Reported by Paolo Bonzini <bonzini@gnu.org> for NetBSD/Alpha.
665 2003-04-03 Bruno Haible <bruno@clisp.org>
667 * configure.in: Add --enable-relocatable option.
668 * m4/relocatable.m4: New file, from GNU gettext.
669 * m4/Makefile.am (EXTRA_DIST): Add it.
671 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.4.3.
672 * autoconf/ltmain.sh: Likewise.
674 2003-04-02 Bruno Haible <bruno@clisp.org>
676 * configure.in: Bump version number to 2.1.
678 * tests/stackoverflow2.c: New file, based on code by Paolo Bonzini.
679 * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add stackoverflow2.
681 2003-04-02 Paolo Bonzini <bonzini@gnu.org>
682 Bruno Haible <bruno@clisp.org>
684 Complete the port to MacOS X (Darwin).
685 * m4/fault.m4: Include sys/signal.h. Have an exit status of 3 instead
686 of 1 if fault_address is misdetected.
687 * m4/sigaltstack.m4: Define stack_t to struct sigaltstack if absent.
688 Include <sys/signal.h>.
689 * configure.in: Add check for sys/signal.h.
690 Add support for catching stack overflow on MacOSX.
691 Add support for MacOSX on i386.
692 Provide a fallback for SS_ONSTACK before using it.
693 * src/fault-macos-i386.h: New file.
694 * src/stackvma-mach.c: New file.
695 * src/fault-macos-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Change.
696 * src/handler-unix.c: Include <sys/signal.h>.
697 (SS_DISABLE): Provide a fallback.
698 * src/leave-sigaltstack.c: Include sys/signal.h.
699 (SS_ONSTACK): Provide a fallback.
700 * src/Makefile.am (noinst_HEADERS): Add fault-macos-i386.h.
701 (EXTRA_DIST): Add stackvma-mach.c.
702 * tests/sigsegv1.c: Abort after 10 handler invocations.
703 (main): Drop SKIP message, now emitted by automake 1.7.x.
704 * tests/sigsegv2.c: Abort after 10 handler invocations.
705 (main): Drop SKIP message, now emitted by automake 1.7.x.
706 * tests/stackoverflow1.c (main): Drop SKIP message, now emitted by
709 2002-10-14 Bruno Haible <bruno@clisp.org>
711 * src/fault-none.h: New file.
712 * src/fault.h: Include CFG_FAULT unconditionally.
713 * src/leave-none.c: New file.
714 * src/leave.c: Include CFG_LEAVE unconditionally.
715 * src/stackvma.c: Include CFG_STACKVMA unconditionally.
716 * configure.in (CFG_LEAVE, CFG_STACKVMA): Define always.
717 * src/Makefile.am (noinst_HEADERS): Add fault-none.h.
718 (EXTRA_DIST): Add leave-none.c.
719 Reported by Paolo Bonzini <bonzini@gnu.org>.
721 2002-09-30 Bruno Haible <bruno@clisp.org>
723 * src/Makefile.am (noinst_HEADERS): Add fault-hurd.h,
724 fault-linux-m68k.c, fault-macos-powerpc.h, fault-macos-powerpc.c,
725 signals-hurd.h, signals-macos.h.
727 2002-09-30 Bruno Haible <bruno@clisp.org>
729 * Makefile.am (check-next): Don't ask for reports from i?86-*-linux*
732 2002-09-30 Bruno Haible <bruno@clisp.org>
734 Better Linux/PowerPC support.
735 * configure.in: Change Linux/PowerPC support.
736 * src/fault-linux-powerpc.h (SIGSEGV_FAULT_ADDRESS): New macro.
738 2002-09-30 Bruno Haible <bruno@clisp.org>
740 Better Linux/m68k support.
741 * configure.in: Change Linux/m68k support.
742 * src/fault-linux-m68k.c: New file.
743 * src/fault-linux-m68k.h: Use it.
745 2002-09-30 Bruno Haible <bruno@clisp.org>
747 Tentative Hurd support.
748 * configure.in: Add Hurd support.
749 * src/signals-hurd.h: New file.
750 * src/fault-hurd.h: New file.
752 2002-09-30 Bruno Haible <bruno@clisp.org>
754 MacOSX/PowerPC support.
755 * configure.in: Add MacOSX/PowerPC support.
756 * src/signals-macos.h: New file.
757 * src/fault-macos-powerpc.c: New file.
758 * src/fault-macos-powerpc.h: New file.
760 2002-09-16 Bruno Haible <bruno@clisp.org>
762 * src/fault-posix.h: Don't include <siginfo.h>. Needed for hppa-linux.
763 Reported by Will Newton <will@misconception.org.uk>.
765 2002-08-28 Bruno Haible <bruno@clisp.org>
767 * Version 2.0 released.
769 2002-07-28 Bruno Haible <bruno@clisp.org>
771 Big reorganization and rewrite. Every file changed.