1 2008-09-27 Bruno Haible <bruno@clisp.org>
3 * build-aux/config.sub: Update to GNU version 2008-09-08.
5 2008-09-23 Eric Blake <ebb9@byu.net>
7 Use 2 * SIGSTKSZ consistently in configuration checks.
8 * m4/sigaltstack.m4 (SV_SIGALTSTACK): Work around IRIX sigaltstack bug.
9 * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
10 * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
13 2008-09-21 Bruno Haible <bruno@clisp.org>
15 * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): New variable.
16 (libsigsegv_la_LDFLAGS): Pass -rpath and -version-info option.
17 Reported by Thomas Klausner <tk@giga.or.at>.
19 2008-09-21 Eric Blake <ebb9@byu.net>
20 Bruno Haible <bruno@clisp.org>
22 Detect and work around bug in Irix 5.3 sigaltstack.
23 * m4/sigaltstack.m4 (SV_SIGALTSTACK): Test for broken stack_t direction
25 * src/handler-unix.c (stackoverflow_install_handler): Adjust stack
27 * tests/stackoverflow1.c (stack_lower_bound, stack_upper_bound): New
29 (stackoverflow_handler): Use them to expose IRIX bug.
30 (main): Initialize them.
32 2008-09-07 Bruno Haible <bruno@clisp.org>
34 * m4/libtool.m4: Update from libtool-2.2.6.
35 * m4/ltoptions.m4: Likewise.
36 * m4/ltsugar.m4: Likewise.
37 * m4/ltversion.m4: Likewise.
38 * build-aux/ltmain.sh: Likewise.
40 2008-08-25 Bruno Haible <bruno@clisp.org>
42 * Version 2.6 released.
44 2008-08-24 Bruno Haible <bruno@clisp.org>
46 * configure.ac: Treat Dragonfly BSD platforms like FreeBSD.
47 Reported by Thomas Klausner <tk@giga.or.at>.
49 2008-08-24 Bruno Haible <bruno@clisp.org>
51 * src/stackvma-mincore.c (mincore_is_near_this): Improve logic. Needed
52 for reliable NULL pointer access classification as SIGSEGV on AIX 4.3.
54 2008-08-24 Bruno Haible <bruno@clisp.org>
56 * m4/sigaltstack.m4: Change 'volatile int' return type to 'int'. Needed
58 * m4/sigaltstack-longjmp.m4: Likewise.
59 * m4/sigaltstack-siglongjmp.m4: Likewise.
60 * tests/stackoverflow1.c (recurse): Likewise.
61 * tests/stackoverflow2.c (recurse): Likewise.
63 2008-08-24 Bruno Haible <bruno@clisp.org>
65 * tests/sigsegv1.c: Include <config.h>.
66 * tests/sigsegv2.c: Likewise.
67 * tests/sigsegv3.c: Include <config.h> before all other headers.
68 * tests/stackoverflow1.c: Likewise.
69 * tests/stackoverflow2.c: Likewise.
71 2008-08-24 Bruno Haible <bruno@clisp.org>
73 Fix the sigsegv3 test on MacOS X.
74 * src/sigsegv.h.in (sigsegv_leave_handler): Take 4 arguments.
75 * NEWS: Mention the change.
76 * src/handler-macos.c (our_exception_thread, signalled_thread): New
78 (catch_exception_raise): Set signalled_thread during the user_handler
80 (mach_exception_thread): Initialize our_exception_thread.
81 (sigsegv_leave_handler): Take 4 arguments. When called from within
82 the exception thread, let the signalled thread do a hyperjump.
83 * src/handler-unix.c (sigsegv_leave_handler): Take 4 arguments.
84 * src/handler-win32.c (sigsegv_leave_handler): Likewise.
85 * src/handler-none.c (sigsegv_leave_handler): Likewise.
86 * src/machfault-macos.h (SIGSEGV_INTEGER_ARGUMENT_1,
87 SIGSEGV_INTEGER_ARGUMENT_2, SIGSEGV_INTEGER_ARGUMENT_3,
88 SIGSEGV_FRAME_POINTER): New macros.
89 * tests/sigsegv3.c (handler_continuation): New function.
90 (handler): Update to new API.
91 * tests/stackoverflow1.c (stackoverflow_handler_continuation): New
93 (stackoverflow_handler): Update to new API.
94 * tests/stackoverflow2.c (stackoverflow_handler_continuation): New
96 (stackoverflow_handler, sigsegv_handler): Update to new API.
98 2008-08-24 Bruno Haible <bruno@clisp.org>
100 Test the use of sigsegv_leave_handler from within a SIGSEGV handler.
101 * tests/sigsegv3.c: New file.
102 * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add sigsegv3.
104 2008-08-23 Eric Blake <ebb9@byu.net>
106 * src/Makefile.am (noinst_HEADERS): Remove machfault-macos-powerpc.h
107 and machfault-macos-i386.h. Add machfault-macos.h.
109 2008-08-17 Bruno Haible <bruno@clisp.org>
111 Allow building universal binaries on MacOS X.
112 * src/machfault-macos.h: New file, combining
113 src/machfault-macos-powerpc.h and src/machfault-macos-i386.h.
114 * src/machfault-macos-powerpc.h: Remove file.
115 * src/machfault-macos-i386.h: Remove file.
116 * configure.ac (CFG_MACHFAULT): Set to machfault-macos.h.
117 (FAULT_CONTEXT_INCLUDE) [MacOSX]: Set to #ifdefs for all four possible
120 2008-07-20 Bruno Haible <bruno@clisp.org>
122 Make sigsegv_get_vma async-safe.
123 * src/sigsegv.h.in (sigsegv_handler_t, stackoverflow_handler_t):
124 Mention async-safety constraints.
125 + src/stackvma-rofile.c: New file.
126 * src/stackvma-freebsd.c: Include stackvma-rofile.c.
127 (sigsegv_get_vma): Use struct rofile instead of FILE.
128 * src/stackvma-linux.c: Include stackvma-rofile.c.
129 (sigsegv_get_vma): Use struct rofile instead of FILE.
130 * src/stackvma-procfs.c: Include <sys/mman.h> instead of <stdlib.h> and
132 (sigsegv_get_vma): Avoid using sprintf. Ensure pagesize is initialized.
133 Use mmap/munmap instead of malloc/free.
134 * src/Makefile.am (EXTRA_DIST): Add stackvma-rofile.c.
135 Reported by Eric Blake <ebb9@byu.net>.
137 2008-07-20 Bruno Haible <bruno@clisp.org>
139 * src/handler-unix.c (sigsegv_handler): Preserve errno.
141 2008-07-20 Eric Blake <ebb9@byu.net>
143 * src/stackvma-mincore.c (mincore_is_near_this): Fix logic.
145 2008-07-20 Bruno Haible <bruno@clisp.org>
147 * tests/stackoverflow2.c (main): Test also a NULL pointer access.
148 Reported by Eric Blake <ebb9@byu.net>.
150 2008-06-23 Bruno Haible <bruno@clisp.org>
152 * build-aux/config.guess: Update to GNU version 2008-06-16.
153 * build-aux/config.sub: Likewise.
155 2008-05-31 Bruno Haible <bruno@clisp.org>
157 Make cross-compile from MacOS X 10.5 to MacOS X 10.4 work.
158 * src/handler-macos.c (MacOS_X_10_5_HEADERS): New macro.
159 * src/machfault-macos-i386.h: Use it.
160 * src/machfault-macos-powerpc.h: Likewise.
161 Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
163 2008-05-31 Bruno Haible <bruno@clisp.org>
165 * m4/mmap-anon.m4 (SV_MMAP_ANON): Add known cross-compile results for
167 Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
169 2008-05-27 Bruno Haible <bruno@clisp.org>
171 * configure.ac: Require at least autoconf 2.62. Merge
172 FAULT_CONTEXT_INCLUDE2 variable into FAULT_CONTEXT_INCLUDE.
173 * src/sigsegv.h.in: Remove FAULT_CONTEXT_INCLUDE2 substitution.
174 * src/Makefile.am (sigsegv.h.msvc): Update.
176 2008-05-27 Bruno Haible <bruno@clisp.org>
178 * configure.ac: Bump version number to 2.6.
179 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
181 2008-05-27 Bruno Haible <bruno@clisp.org>
183 Support for 64-bit mode on MacOS X 10.5.
184 * src/handler-macos.c (catch_exception_raise): Align the stack pointer
185 also on x86_64. Needed for MMX instructions.
186 * src/machfault-macos-i386.h: Choose among 64-bit and 32-bit flavours.
187 Use new names for the 32-bit flavour when possible.
188 * src/machfault-macos-powerpc.h: Choose among 64-bit and 32-bit
190 * configure.ac (FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE2): Choose
191 right flavour (ppc_thread_state_t/ppc_thread_state64_t or
192 i386_thread_state_t/x86_thread_state32_t/x86_thread_state64_t) at
195 2008-05-18 Bruno Haible <bruno@clisp.org>
197 * m4/libtool.m4: Update from libtool-2.2.4.
198 * m4/ltoptions.m4: Likewise.
199 * m4/ltversion.m4: Likewise.
200 * m4/lt~obsolete.m4: Likewise.
201 * build-aux/ltmain.sh: Likewise.
203 2008-04-06 Bruno Haible <bruno@clisp.org>
205 * m4/libtool.m4: Update from libtool-2.2.2.
206 * m4/ltoptions.m4: New file, from libtool-2.2.2.
207 * m4/ltsugar.m4: New file, from libtool-2.2.2.
208 * m4/ltversion.m4: New file, from libtool-2.2.2.
209 * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
210 * build-aux/ltmain.sh: New file, from libtool-2.2.2.
211 * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
213 2007-11-16 Bruno Haible <bruno@clisp.org>
215 * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Use sc_rsp
216 also on x86_64-freebsd platform.
217 Reported by Dmitri Hrapof <hrapof@common-lisp.ru> and
218 Petr Salinger <Petr.Salinger@seznam.cz>.
220 2007-11-15 Bruno Haible <bruno@clisp.org>
222 * configure.ac (CFG_SIGNALS, CFG_FAULT): Port to i586-kfreebsd-gnu
223 and x86_64-kfreebsd-gnu.
224 * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Likewise.
225 Based on patch by Petr Salinger <Petr.Salinger@seznam.cz>.
227 2007-11-11 Bruno Haible <bruno@clisp.org>
229 * Version 2.5 released.
231 2007-11-11 Bruno Haible <bruno@clisp.org>
233 * configure.ac: Bump version number to 2.5.
234 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
236 2007-10-28 Bruno Haible <bruno@clisp.org>
238 * src/handler-macos.c (catch_exception_raise): Align the new stack
239 pointer on a 16-byte boundary.
240 * src/handler-win32.c (main_exception_filter): Correct alignment:
241 %esp must be aligned to == -4 mod 16 upon function entry.
243 2007-10-28 Bruno Haible <bruno@clisp.org>
245 * src/sigsegv.h.in (stackoverflow_install_handler): Avoid comment
247 Reported by Chris Willmore <willmc@rpi.edu>.
249 2007-10-28 Bruno Haible <bruno@clisp.org>
251 * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS,
252 SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Add __DARWIN_UNIX03
254 * src/machfault-macos-i386.h (SIGSEGV_FAULT_ADDRESS,
255 SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Likewise.
256 * src/fault-macosdarwin7-powerpc.h (SIGSEGV_FAULT_STACKPOINTER):
258 * src/fault-macosdarwin7-powerpc.c (get_fault_addr): Likewise.
259 Reported by Chris Willmore <willmc@rpi.edu>.
261 2007-01-12 Bruno Haible <bruno@clisp.org>
263 * Makefile.am (check-next): Don't ask for reports from x86_64-*-linux*
266 2006-07-14 Bruno Haible <bruno@clisp.org>
268 * m4/sigaltstack.m4 (SV_SIGALTSTACK): Use SIGSTKSZ instead of
270 * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
271 * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
273 * tests/stackoverflow1.c (main): Likewise.
274 * tests/stackoverflow2.c (main): Likewise.
275 * src/sigsegv.h.in (stackoverflow_install_handler): Update
276 recommendation for extra_stack_size.
278 Reported by Peter Van Eynde <pvaneynd@users.sourceforge.net>.
280 2006-06-23 Bruno Haible <bruno@clisp.org>
282 * Version 2.4 released.
284 2006-06-23 Bruno Haible <bruno@clisp.org>
286 * configure.ac: Bump version number to 2.4.
287 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
289 2006-06-17 Bruno Haible <bruno@clisp.org>
291 * src/Makefile.am (noinst_HEADERS): Add fault-netbsd.h.
293 2006-06-17 Bruno Haible <bruno@clisp.org>
295 * m4/sigaltstack.m4: Insert 'volatile' and pass a pointer, to defeat
297 * m4/sigaltstack-longjmp.m4: Likewise.
298 * m4/sigaltstack-siglongjmp.m4: Likewise.
300 2006-06-17 Bruno Haible <bruno@clisp.org>
302 * tests/stackoverflow1.c (recurse): Remove useless cast.
303 * tests/stackoverflow2.c (recurse): Likewise.
305 2006-06-17 Bruno Haible <bruno@clisp.org>
307 * src/stackvma-freebsd.c (sigsegv_get_vma): Test whether mincore()
308 works as expected before using it.
310 2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
312 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
313 "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
315 2006-06-13 Bruno Haible <bruno@clisp.org>
317 Make NetBSD/i386 stack overflow detection work even without mincore.
318 * src/fault-netbsd.h: New file.
319 * configure.ac (CFG_FAULT): Choose it when appropriate.
321 2006-05-16 Bruno Haible <bruno@clisp.org>
323 Don't allow the compiler to reorder instructions in the tests.
324 * tests/sigsegv1.c (crashes): Use volatile in pointer access.
325 * tests/sigsegv2.c (main): Likewise.
326 * tests/stackoverflow2.c (main): Likewise.
328 2006-05-14 Bruno Haible <bruno@clisp.org>
330 Exploit the mincore() system call where available.
331 * src/stackvma-mincore.c: New file.
332 * src/Makefile.am (EXTRA_DIST): Add it.
333 * src/stackvma.h: Add double-inclusion guard.
334 * src/stackvma-freebsd.c: If mincore() is available, include also
336 (sigsegv_get_vma): If mincore() is available, use it as fallback.
337 * src/stackvma-linux.c: If mincore() is available, include also
339 (sigsegv_get_vma): If mincore() is available, use it as fallback.
340 * src/stackvma-procfs.c: If mincore() is available, include also
342 (sigsegv_get_vma): If mincore() is available, use it as fallback.
343 * configure.ac: Test for mincore.
344 (CFG_STACKVMA): Set to stackvma-mincore.c if nothing else is available.
346 2006-05-14 Bruno Haible <bruno@clisp.org>
348 * src/stackvma-simple.c: New file, extracted from handler-unix.c.
349 * src/Makefile.am (EXTRA_DIST): Add it.
350 * src/stackvma-beos.c: Include stackvma-simple.c.
351 (sigsegv_get_vma): Fill the vma's is_near_this field.
352 * src/stackvma-freebsd.c: Include stackvma-simple.c.
353 (sigsegv_get_vma): Fill the vma's is_near_this field.
354 * src/stackvma-linux.c: Include stackvma-simple.c.
355 (sigsegv_get_vma): Fill the vma's is_near_this field.
356 * src/stackvma-mach.c: Include stackvma-simple.c.
357 (sigsegv_get_vma): Fill the vma's is_near_this field.
358 * src/stackvma-procfs.c: Include stackvma-simple.c.
359 (sigsegv_get_vma): Fill the vma's is_near_this field.
360 * src/stackvma.h (vma_struct): Add is_near_this field.
361 * src/handler-unix.c (sigsegv_handler): Use the vma's is_near_this
364 2006-04-28 Bruno Haible <bruno@clisp.org>
366 * Version 2.3 released.
368 2006-04-28 Bruno Haible <bruno@clisp.org>
370 * configure.ac: Bump version number to 2.3.
371 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
373 * build-aux/config.guess, build-aux/config.sub: Update to GNU version
376 * build-aux/install-sh: Update from automake-1.9.6.
377 * build-aux/missing: Likewise.
379 * build-aux/ltmain.sh: Update from libtool-1.5.22.
380 * m4/libtool.m4: Likewise.
382 2006-04-28 Bruno Haible <bruno@clisp.org>
384 * build-aux: Renamed from autoconf.
385 * configure.ac (AC_CONFIG_AUX_DIR): Set to build-aux.
387 2006-04-22 Bruno Haible <bruno@clisp.org>
389 * configure.ac: Renamed from configure.in.
391 2006-04-21 Bruno Haible <bruno@clisp.org>
393 * src/machfault-macos-i386.h: Rewritten for Darwin 8.6.1.
394 * configure.in: Change FAULT_CONTEXT for i?86-darwin.
396 2005-06-21 Paolo Bonzini <bonzini@gnu.org>
398 * configure.in: For handler-macos.c, include mach/thread_status.h.
399 * configure: Regenerate.
401 2005-06-21 Paolo Bonzini <bonzini@gnu.org>
403 * tests/stackoverflow1.c (recurse): Make more resilient to compiler
406 * tests/stackoverflow2.c: Likewise.
408 2005-05-24 Bruno Haible <bruno@clisp.org>
410 * src/handler-win32.c (main_exception_filter): Copy CONTEXT structure
411 to safe area on the stack.
412 Based on patch by Doug Currie <e@flavors.com>.
414 * src/handler-win32.c (main_exception_filter): Swap arguments passed
415 to stack_overflow_handler.
416 Patch by Doug Currie <e@flavors.com>.
418 * src/handler-win32.c (main_exception_filter): Align %esp on a 16-byte
421 2005-03-02 Bruno Haible <bruno@clisp.org>
423 * Version 2.2 released.
425 2005-03-02 Bruno Haible <bruno@clisp.org>
427 * autoconf/config.guess: Update.
428 * autoconf/config.sub: Update.
429 * autoconf/missing: Update from automake-1.9.5.
431 * m4/libtool.m4: Upgrade to libtool-1.5.14 with gettext modifications.
432 * autoconf/ltmain.sh: Likewise.
434 2005-03-02 Bruno Haible <bruno@clisp.org>
436 * src/fault-aix5.h: New file.
437 * src/fault-aix5-powerpc.h: New file.
438 * src/Makefile.am (noinst_HEADERS): Add them.
439 * configure.in: Choose them when the POSIX test succeeds on AIX.
441 * src/fault-aix3-powerpc.h: Renamed from src/fault-aix-powerpc.h.
442 * src/fault-aix3.h: Renamed from src/fault-aix.h.
443 * src/Makefile.am (noinst_HEADERS): Update.
444 * configure.in: Update. When cross-compiling, assume the AIX test
445 succeeds only on AIX 3 and AIX 4.
447 2005-03-01 Bruno Haible <bruno@clisp.org>
449 * configure.in: Fix test of CFG_MACHFAULT.
451 2005-02-27 Bruno Haible <bruno@clisp.org>
453 * configure.in: Skip tests that are not needed on MacOS X >= 10.2.
454 * m4/sigaltstack.m4 (SV_SIGALTSTACK): Don't perform the test on
457 2005-02-18 Bruno Haible <bruno@clisp.org>
459 * tests/sigsegv1.c (handler_called): Declare as volatile.
460 * tests/sigsegv2.c (logcount, logdata): Likewise.
461 * tests/stackoverflow1.c (pass): Likewise.
462 * tests/stackoverflow2.c (pass): Likewise.
464 2005-01-29 Bruno Haible <bruno@clisp.org>
466 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): New macro.
467 (libsigsegv_version): New declaration.
468 * src/version.c: New file.
469 * src/Makefile.am (libsigsegv_la_SOURCES): Add version.c.
470 * Makefile.msvc (OBJECTS): Add version.obj.
471 (version.obj): New rule.
472 Suggested by Sam Steingold.
474 2004-08-25 Bruno Haible <bruno@clisp.org>
476 * m4/libtool.m4: Upgrade to libtool-1.5.6.
477 * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
479 2004-08-18 Bruno Haible <bruno@clisp.org>
481 * configure.in: Bump version number to 2.2.
483 2004-08-17 Bruno Haible <bruno@clisp.org>
485 Finish the Mach-based MacOS X support.
486 * src/handler-macos.c: Don't include mach/vm_map.h.
487 Include machfault.h instead of fault.h.
488 (save_exc_state): Remove variable.
489 (save_thread_state): New variable.
490 (terminating_handler): New function.
491 (altstack_handler): Pass the save_thread_state, not the save_exc_state,
492 to the user's handler.
493 (catch_exception_raise): Make it work also for platforms which don't
494 have an exc_state type. Call SIGSEGV_FAULT_ADDRESS with 2 arguments.
495 Don't clobber the exc_state; instead set the thread's program counter
496 to terminating_handler or altstack_handler, depending on the case.
497 Return KERN_SUCCESS at the end.
498 * src/machfault.h: New file.
499 * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS): Add a second
501 * src/machfault-macos-i386.h: New file.
502 * src/Makefile.am (EXTRA_DIST): Add handler-macos.c.
503 (NOINST_HEADERS): Add machfault.h, machfault-macos-i386.h,
504 machfault-macos-powerpc.h.
505 * configure.in (CFG_HANDLER): Initialize to empty.
506 (CFG_MACHFAULT): New substituted variable.
507 On MacOS X PowerPC+i386, use CFG_HANDLER=handler-macos.c
509 (sv_cv_fault_include, sv_cv_have_stack_overflow_recovery): Set
510 correctly also in the handler-macos.c case.
512 2004-08-16 Bruno Haible <bruno@clisp.org>
514 Support for MacOS X 10.3 on PowerPC.
515 * src/fault-macosdarwin5-powerpc.h: Renamed from
516 src/fault-macos-powerpc.h.
517 * src/fault-macosdarwin5-powerpc.c: Renamed from
518 src/fault-macos-powerpc.c.
519 * src/fault-macosdarwin7-powerpc.h: New file.
520 * src/fault-macosdarwin7-powerpc.c: New file.
521 * src/Makefile.am (noinst_HEADERS): Update.
522 * configure.in: Test the method for MacOSX/Darwin5 PowerPC only after
523 the method for MacOSX/Darwin7 PowerPC failed.
524 Substitute FAULT_CONTEXT_INCLUDE2.
525 * src/sigsegv.h.in: Insert @FAULT_CONTEXT_INCLUDE2@.
526 * src/Makefile.am (sigsegv.h.msvc): Replace @FAULT_CONTEXT_INCLUDE2@.
528 2003-12-09 Paolo Bonzini <bonzini@gnu.org>
530 * src/handler-macos.c: Completed; removed dependency on
532 * src/machfault-macos-powerpc.h: Reorganized.
534 2003-12-08 Paolo Bonzini <bonzini@gnu.org>
535 Bruno Haible <bruno@clisp.org>
537 * src/handler-macos.c: New file.
538 * src/machfault.h: New file.
539 * src/machfault-macos-powerpc.h: New file.
541 2003-12-05 Bruno Haible <bruno@clisp.org>
543 * m4/fault.m4: Tweak indentation. Bump serial number.
544 * m4/getpagesize.m4: Likewise.
545 * m4/mmap-anon.m4: Likewise.
546 * m4/sigaltstack.m4: Likewise.
547 * m4/sigaltstack-longjmp.m4: Likewise.
548 * m4/sigaltstack-siglongjmp.m4: Likewise.
550 2003-12-05 Paolo Bonzini <bonzini@gnu.org>
552 * aclocal.m4: Regenerate with Automake 1.7h.
553 * configure.in: Drop m4/Makefile from list of generated files.
554 * configure: Regenerate.
555 * Makefile.am (install-data-hook): New name of the install-am
556 target, for Automake 1.8 compatibility. Other -am targets
557 are not affected because Automake does not have anything to
559 (AUTOMAKE_OPTIONS): Bump minimum Automake requirement to 1.7h.
560 (SUBDIRS): Remove m4.
561 ($(srcdir)/config.h.msvc): New target for config.h.msvc.
562 * Makefile.in: Regenerate with Automake 1.7h.
563 * m4/Makefile.am: Delete, Automake 1.7h takes care of it.
564 * m4/Makefile.in: Delete.
565 * src/Makefile.am (installdirs): Delete, Automake 1.7h adds it.
566 * src/Makefile.in: Regenerate with Automake 1.7h.
567 * tests/Makefile.in: Regenerate with Automake 1.7h.
569 * autoconf/config.guess: Update from automake-1.7h.
570 * autoconf/config.sub: Likewise.
571 * autoconf/install.sh: Likewise.
572 * autoconf/missing: Likewise.
573 * autoconf/mkinstalldirs: Delete.
574 * m4/fault.m4: autoupdate and manually tweak.
575 * m4/sigaltstack.m4: Likewise.
576 * m4/sigaltstack-longjmp.m4: Likewise.
577 * m4/sigaltstack-siglongjmp.m4: Likewise.
578 * m4/mmap-anon.m4: Likewise.
579 * m4/getpagesize.m4: Likewise.
581 2003-10-29 Bruno Haible <bruno@clisp.org>
583 * tests/sigsegv1.c (main): Add a check whether mprotect with
584 PROT_READ_WRITE really works.
585 * tests/sigsegv2.c (main): Likewise.
586 Reported by Ullal Devappa Kini <wmbfqj@vsnl.net>.
588 2003-08-21 Bruno Haible <bruno@clisp.org>
590 * Version 2.1 released.
592 2003-06-24 Paolo Bonzini <bonzini@gnu.org>
594 * m4/fault.m4: Exit if we detect an infinite loop.
595 * aclocal.m4: Regenerate.
596 * configure: Regenerate.
598 2003-06-18 Bruno Haible <bruno@clisp.org>
600 * autoconf/install-sh: Update from automake-1.7.5.
602 2003-05-14 Paolo Bonzini <bonzini@gnu.org>
604 * configure.in: Use signals-bsd.h for OpenBSD and NetBSD too.
605 Support instruction decoding to get fault address for Alphas.
606 * src/fault-netbsd-alpha.h: New file.
607 * src/fault-netbsd-alpha.c: New file.
608 * src/Makefile.am (noinst_HEADERS): Add them.
610 2003-05-14 Paolo Bonzini <bonzini@gnu.org>
612 * src/dispatcher.c (insert): Fix lossage in 64-bit environments
613 (cast from void* to unsigned int).
615 2003-05-10 Bruno Haible <bruno@clisp.org>
617 * tests/Makefile.am (../src/libsigsegv.la): New rule.
619 * Makefile.msvc (handler.obj): Complete the dependencies.
620 (stackoverflow2.exe): New rule.
621 (check): Depend on it.
624 2003-05-10 Paolo Bonzini <bonzini@gnu.org>
625 Bruno Haible <bruno@clisp.org>
627 * configure.in: AC_SUBST of CFG_STACKVMA, CFG_LEAVE, CFG_HANDLER.
628 * src/Makefile.am: Add dependencies for the object files.
630 2003-05-08 Paolo Bonzini <bonzini@gnu.org>
632 * configure.in: Add $srcdir/ to #include statements. Needed when
635 * src/signals-macos.h (SIGSEGV_FOR_ALL_SIGNALS): Add SIGSEGV.
637 2003-05-03 Paolo Bonzini <bonzini@gnu.org>
639 * configure.in: Tweak 2003-04-26 patch so that it works on mingw32 and
642 2003-05-02 Bruno Haible <bruno@clisp.org>
644 * src/handler-unix.c: Add special case for stack handling on IA-64.
645 * src/fault-linux-ia64.h: Complete the port.
646 * configure.in: Improve Linux/IA-64 support.
648 2003-05-01 Bruno Haible <bruno@clisp.org>
650 * configure.in: Don't use fault-hurd.h on NetBSD/alpha. It does not
653 2003-05-01 Bruno Haible <bruno@clisp.org>
655 Support for Linux/HPPA.
656 * fault-linux-hppa.h: Don't include <siginfo.h>.
657 (SIGSEGV_FAULT_ADDRESS): Change.
658 (SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO): Define it, otherwise the value
660 (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): Remove macros.
661 * configure.in: Improve Linux/HPPA support.
663 2003-05-01 Bruno Haible <bruno@clisp.org>
665 Support for OpenBSD/i386.
666 * src/fault-openbsd.h: New file.
667 * src/fault-openbsd-i386.h: New file.
668 * src/Makefile.am (noinst_HEADERS): Add them.
669 * configure.in: If the POSIX test works and the OS is OpenBSD, use
670 fault-openbsd.h instead of fault-posix.h.
672 2003-05-01 Bruno Haible <bruno@clisp.org>
674 * src/fault-hpux-hppa.h: Make it work on machines with 64-bit registers
676 * configure.in: Likewise.
678 2003-04-29 Bruno Haible <bruno@clisp.org>
680 * configure.in: Define HAVE_STACKVMA if CFG_STACKVMA is nontrivial.
681 * src/handler-unix.c: Test HAVE_STACKVMA instead of CFG_STACKVMA.
683 * m4/fault.m4 (SV_TRY_FAULT): On HP-UX, always pass 0 as first argument
685 * tests/mmaputil.h (mmap_zeromap): Likewise.
687 2003-04-28 Bruno Haible <bruno@clisp.org>
689 * src/stackvma-freebsd.c (sigsegv_get_vma): Fix logic error.
691 2002-04-17 Paolo Bonzini <bonzini@gnu.org>
694 * configure.in: Treat cygwin* like mingw*.
695 * src/handler-win32.c [CYGWIN] (exception_list, _except_list,
696 debug_get_except_list, cygwin_exception_handler,
697 libsigsegv_exception_handler, do_install_main_exception_filter): New
699 (install_main_exception_filter): New function.
700 (sigsegv_install_handler, stackoverflow_install_handler): Call it.
702 2003-04-26 Bruno Haible <bruno@clisp.org>
704 * configure.in: Don't set sv_cv_have_stack_overflow_recovery=yes if
705 not all of the fault-*.h and stackvma-*.h premises are fulfilled.
706 Reported by Paolo Bonzini <bonzini@gnu.org> for NetBSD/Alpha.
708 2003-04-03 Bruno Haible <bruno@clisp.org>
710 * configure.in: Add --enable-relocatable option.
711 * m4/relocatable.m4: New file, from GNU gettext.
712 * m4/Makefile.am (EXTRA_DIST): Add it.
714 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.4.3.
715 * autoconf/ltmain.sh: Likewise.
717 2003-04-02 Bruno Haible <bruno@clisp.org>
719 * configure.in: Bump version number to 2.1.
721 * tests/stackoverflow2.c: New file, based on code by Paolo Bonzini.
722 * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add stackoverflow2.
724 2003-04-02 Paolo Bonzini <bonzini@gnu.org>
725 Bruno Haible <bruno@clisp.org>
727 Complete the port to MacOS X (Darwin).
728 * m4/fault.m4: Include sys/signal.h. Have an exit status of 3 instead
729 of 1 if fault_address is misdetected.
730 * m4/sigaltstack.m4: Define stack_t to struct sigaltstack if absent.
731 Include <sys/signal.h>.
732 * configure.in: Add check for sys/signal.h.
733 Add support for catching stack overflow on MacOSX.
734 Add support for MacOSX on i386.
735 Provide a fallback for SS_ONSTACK before using it.
736 * src/fault-macos-i386.h: New file.
737 * src/stackvma-mach.c: New file.
738 * src/fault-macos-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Change.
739 * src/handler-unix.c: Include <sys/signal.h>.
740 (SS_DISABLE): Provide a fallback.
741 * src/leave-sigaltstack.c: Include sys/signal.h.
742 (SS_ONSTACK): Provide a fallback.
743 * src/Makefile.am (noinst_HEADERS): Add fault-macos-i386.h.
744 (EXTRA_DIST): Add stackvma-mach.c.
745 * tests/sigsegv1.c: Abort after 10 handler invocations.
746 (main): Drop SKIP message, now emitted by automake 1.7.x.
747 * tests/sigsegv2.c: Abort after 10 handler invocations.
748 (main): Drop SKIP message, now emitted by automake 1.7.x.
749 * tests/stackoverflow1.c (main): Drop SKIP message, now emitted by
752 2002-10-14 Bruno Haible <bruno@clisp.org>
754 * src/fault-none.h: New file.
755 * src/fault.h: Include CFG_FAULT unconditionally.
756 * src/leave-none.c: New file.
757 * src/leave.c: Include CFG_LEAVE unconditionally.
758 * src/stackvma.c: Include CFG_STACKVMA unconditionally.
759 * configure.in (CFG_LEAVE, CFG_STACKVMA): Define always.
760 * src/Makefile.am (noinst_HEADERS): Add fault-none.h.
761 (EXTRA_DIST): Add leave-none.c.
762 Reported by Paolo Bonzini <bonzini@gnu.org>.
764 2002-09-30 Bruno Haible <bruno@clisp.org>
766 * src/Makefile.am (noinst_HEADERS): Add fault-hurd.h,
767 fault-linux-m68k.c, fault-macos-powerpc.h, fault-macos-powerpc.c,
768 signals-hurd.h, signals-macos.h.
770 2002-09-30 Bruno Haible <bruno@clisp.org>
772 * Makefile.am (check-next): Don't ask for reports from i?86-*-linux*
775 2002-09-30 Bruno Haible <bruno@clisp.org>
777 Better Linux/PowerPC support.
778 * configure.in: Change Linux/PowerPC support.
779 * src/fault-linux-powerpc.h (SIGSEGV_FAULT_ADDRESS): New macro.
781 2002-09-30 Bruno Haible <bruno@clisp.org>
783 Better Linux/m68k support.
784 * configure.in: Change Linux/m68k support.
785 * src/fault-linux-m68k.c: New file.
786 * src/fault-linux-m68k.h: Use it.
788 2002-09-30 Bruno Haible <bruno@clisp.org>
790 Tentative Hurd support.
791 * configure.in: Add Hurd support.
792 * src/signals-hurd.h: New file.
793 * src/fault-hurd.h: New file.
795 2002-09-30 Bruno Haible <bruno@clisp.org>
797 MacOSX/PowerPC support.
798 * configure.in: Add MacOSX/PowerPC support.
799 * src/signals-macos.h: New file.
800 * src/fault-macos-powerpc.c: New file.
801 * src/fault-macos-powerpc.h: New file.
803 2002-09-16 Bruno Haible <bruno@clisp.org>
805 * src/fault-posix.h: Don't include <siginfo.h>. Needed for hppa-linux.
806 Reported by Will Newton <will@misconception.org.uk>.
808 2002-08-28 Bruno Haible <bruno@clisp.org>
810 * Version 2.0 released.
812 2002-07-28 Bruno Haible <bruno@clisp.org>
814 Big reorganization and rewrite. Every file changed.