Avoid test failures with ASAN.
[libsigsegv.git] / ChangeLog
blob04b7dadca30e805bb100e6bca350ac771fedff55
1 2024-05-08  Bruno Haible  <bruno@clisp.org>
3         Avoid test failures with ASAN.
4         * tests/test-catch-stackoverflow1.c (HAVE_STACK_OVERFLOW_RECOVERY):
5         Undefine if ASAN is enabled.
6         * tests/test-catch-stackoverflow2.c (HAVE_STACK_OVERFLOW_RECOVERY):
7         Likewise.
9 2024-04-04  Bruno Haible  <bruno@clisp.org>
11         Fix macro file 'serial' numbers for 'aclocal --install'.
12         * m4/bold.m4: Make 'serial' effective.
13         * m4/efault.m4: Likewise.
14         * m4/fault.m4: Likewise.
15         * m4/getpagesize.m4: Likewise.
16         * m4/mmap-anon.m4: Likewise.
17         * m4/sigaltstack-longjmp.m4: Likewise.
18         * m4/sigaltstack-siglongjmp.m4: Likewise.
20 2023-11-09  Bruno Haible  <bruno@clisp.org>
22         Port to CHERI.
23         * m4/fault.m4 (SV_TRY_FAULT): Use 'uintptr_t' instead of
24         'unsigned long'.
25         * src/signals-bsd.h (SIGSEGV_FOR_ALL_SIGNALS): On CheriBSD, treat
26         SIGPROT like SIGSEGV and SIGBUS.
27         * src/fault-freebsd-arm.h (SIGSEGV_FAULT_STACKPOINTER): Define
28         differently on CheriBSD.
30 2023-10-15  Bruno Haible  <bruno@clisp.org>
32         Fix compilation error on FreeBSD 5.2.1.
33         * src/stackvma-freebsd.c: Include <sys/param.h>.
35 2023-09-18  Bruno Haible  <bruno@clisp.org>
37         Fix shared library support on Android.
38         Patch from <https://savannah.gnu.org/patch/index.php?10393>.
39         * m4/libtool.m4: On Android, fix library_names_spec and
40         hardcode_libdir_flag_spec.
42 2023-08-30  Bruno Haible  <bruno@clisp.org>
44         Recognize the *-*-windows* config triplets introduced on 2023-06-26.
45         * configure.ac: Treat windows* as equivalent to mingw*.
46         * m4/efault.m4 (SV_SYSCALLS_EFAULT): Likewise.
48 2023-06-29  Bruno Haible  <bruno@clisp.org>
50         Update the installation instructions for Windows.
51         * INSTALL.windows: Add a note about MSYS2.
53 2023-06-29  Bruno Haible  <bruno@clisp.org>
55         Make the autoconf tests more robust.
56         Triggered by
57         https://gitlab.com/redhat/centos-stream/rpms/libsigsegv/-/blob/c9s/configure.patch
58         from Petr Šabata <contyk@redhat.com>.
59         * m4/fault.m4 (SV_TRY_FAULT): Mark the variables that are accessed by
60         the signal handler as 'volatile'.
62 2023-05-21  Bruno Haible  <bruno@clisp.org>
64         Support creating shared libraries on Hurd/x86_64.
65         Patch from
66         <https://lists.gnu.org/archive/html/bug-hurd/2023-05/msg00086.html>.
67         * m4/libtool.m4 (_LT_ENABLE_LOCK): Treat Hurd/x86_64 like
68         Linux/x86_64.
70 2023-05-15  Bruno Haible  <bruno@clisp.org>
72         Add support for Hurd through the POSIX API.
73         Suggested by Sergey Bugaev <bugaevc@gmail.com>.
74         * src/fault-hurd-i386-old.h: Renamed from src/fault-hurd-i386.h.
75         * src/fault-hurd-i386.h: New file, based on src/fault-hurd-i386-old.h.
76         * src/Makefile.am (noinst_HEADERS): Add fault-hurd-i386-old.h.
77         * configure.ac (CFG_FAULT): Use fault-hurd-i386.h or
78         fault-posix-ucontext.h when the POSIX API works on Hurd.
80 2023-05-14  Bruno Haible  <bruno@clisp.org>
82         Tentative support for Hurd/x86_64.
83         Reported by Sergey Bugaev <bugaevc@gmail.com>.
84         * src/fault-hurd.h (SIGSEGV_FAULT_HANDLER_ARGLIST): Change type of
85         second parameter.
87 2023-05-14  Bruno Haible  <bruno@clisp.org>
89         Fix comments.
90         * src/fault-hurd-i386.h: Fix comments, based on info by Sergey Bugaev in
91         <https://lists.gnu.org/archive/html/bug-hurd/2023-05/msg00210.html>.
93 2023-05-12  Bruno Haible  <bruno@clisp.org>
95         Tentative support for Hurd/x86_64.
96         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
97         * src/fault-hurd-i386.h: Add support for x86_64 CPU.
98         * configure.ac (CFG_FAULT): Use fault-hurd-i386.h also on x86_64.
100 2023-02-26  Bruno Haible  <bruno@clisp.org>
102         Modernize handling of m4 macro dirs.
103         * configure.ac (AC_CONFIG_MACRO_DIRS): Specify the m4 macro dirs here.
104         * Makefile.am (ACLOCAL_AMFLAGS): ... not here.
105         * autogen.sh: Update comments.
107 2023-02-11  Bruno Haible  <bruno@clisp.org>
109         Don't let configure tests fail due to the picky clang 16 compiler.
110         clang 16 will report an error for -Wincompatible-function-pointer-types
111         by default.
112         Reported by Sam James <sam@gentoo.org> in
113         <https://savannah.gnu.org/bugs/index.php?63788>.
114         * configure.ac (MacOSX/Darwin7 PowerPC): Add a cast when assigning to
115         action.sa_sigaction.
117 2023-02-11  Bruno Haible  <bruno@clisp.org>
119         Add support for clang 16 on OpenBSD and Mac OS X 10/PowerPC.
120         clang 16 will report an error for -Wincompatible-function-pointer-types
121         by default.
122         * src/handler-unix.c (install_for): Add a cast when assigning to
123         action.sa_sigaction.
125 2023-01-04  Bruno Haible  <bruno@clisp.org>
127         Add support for macOS/x86_64 with clang 15.
128         Reported at <https://savannah.gnu.org/bugs/?63617>.
129         * src/handler-macos.c (sigsegv_leave_handler): Add a cast, to silence a
130         warning that became an error in clang 15.
131         * NEWS: Mention it.
133 2022-07-18  Bruno Haible  <bruno@clisp.org>
135         Make autopull.sh more suited for continuous integration.
136         * autopull.sh: Support option --one-time.
138 2022-07-18  Bruno Haible  <bruno@clisp.org>
140         Move gnulib-tool invocation back from autopull.sh to autogen.sh.
141         * autogen.sh: Revert last change. Improve comments.
142         * autopull.sh: Only call 'gitsub.sh pull'.
144 2022-07-17  Bruno Haible  <bruno@clisp.org>
146         Split autogen.sh into autopull.sh and autogen.sh.
147         * autopull.sh: New file, based on autogen.sh.
148         * autogen.sh: Remove code that was moved to autopull.sh. Remove
149         --skip-gnulib option.
150         * HACKING: Mention autopull.sh.
151         * Makefile.am (EXTRA_DIST): Add HACKING, autogen.sh.
153 2022-07-10  Bruno Haible  <bruno@clisp.org>
155         Optimize stackvma implementation for AIX 7.
156         Reported by Neha Jain <nehajain29@in.ibm.com> in
157         <https://lists.gnu.org/archive/html/bug-m4/2022-06/msg00005.html>
158         via Eric Blake.
159         * src/stackvma-aix.c: Add implementation that uses /proc/$pid/map,
160         based on src/stackvma-procfs.h and gnulib/lib/vma-iter.c.
161         (sigsegv_get_vma): Use it on AIX 7 or higher.
162         * configure.ac (CFG_STACKVMA): On AIX, use stackvma-aix.c always.
163         * NEWS: Mention the improvement.
165 2022-05-22  Bruno Haible  <bruno@clisp.org>
167         Add GNU Project notice.
168         * JOIN-GNU: New file. Inspired by a suggestion from José E. Marchesi
169         on the gnu-prog-discuss mailing list.
170         * README: Refer to it.
171         * Makefile.am (EXTRA_DIST): Add it.
173 2022-05-15  Bruno Haible  <bruno@clisp.org>
175         Switch to libtool 2.4.7.
176         * m4/libtool.m4: Update from libtool-2.4.7.
177         * m4/ltoptions.m4: Likewise.
178         * m4/ltsugar.m4: Likewise.
179         * m4/ltversion.m4: Likewise.
180         * m4/lt~obsolete.m4: Likewise.
181         * build-aux/ltmain.sh: Likewise.
183 2022-03-13  Bruno Haible  <bruno@clisp.org>
185         Add support for Linux/PowerPC (32-bit) with musl libc.
186         Reported by Khem Raj <raj.khem@gmail.com> in
187         <https://lists.gnu.org/archive/html/m4-patches/2022-03/msg00000.html>.
188         * autogen.sh: Copy also musl.m4.
189         * configure.ac: Invoke gl_MUSL_LIBC.
190         * src/fault-linux-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): In the 32-bit
191         case, handle musl libc differently.
192         * NEWS: Mention it.
194 2022-01-07  Bruno Haible  <bruno@clisp.org>
196         Prepare for version 2.14.
197         * configure.ac (AC_INIT): Bump version to 2.14.
198         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
199         * README: Likewise.
200         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:7:0.
202 2022-01-07  Bruno Haible  <bruno@clisp.org>
204         Improve support for Linux/LoongArch64.
205         * src/fault-linux-loongarch.h: New file.
206         * src/Makefile.am (noinst_HEADERS): Add it.
207         * configure.ac (CFG_FAULT): Use this file on Linux/LoongArch64.
208         * NEWS: Mention it.
210 2021-09-13  Bruno Haible  <bruno@clisp.org>
212         Improve support for OpenBSD/PowerPC64.
213         Based on a patch by Christian Weisgerber <naddy@mips.inka.de> at
214         <https://lists.gnu.org/archive/html/bug-gnulib/2021-09/msg00045.html>.
215         * src/fault-openbsd-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Define
216         differently in 64-bit mode.
217         * NEWS: Mention it.
219 2021-08-07  Bruno Haible  <bruno@clisp.org>
221         tests: Silence some GCC warnings.
222         Patch by Paul Eggert.
223         * tests/test-catch-segv1.c, tests/test-catch-stackoverflow1.c,
224         tests/test-catch-stackoverflow2.c: Declare some functions and variables
225         static, to pacify GCC when warning about external functions missing
226         declarations.
228 2021-06-09  Bruno Haible  <bruno@clisp.org>
230         tests: Hide a null pointer from the compiler's optimizations.
231         Patch by Paul Eggert.
232         * tests/test-catch-stackoverflow2.c (null_pointer_to_volatile_int): New
233         variable.
234         (main): Use it.
236 2021-06-06  Bruno Haible  <bruno@clisp.org>
238         Avoid a gcc warning "declaration of 'sig' shadows a parameter".
239         Reported by Dmitry V. Levin <ldv@altlinux.org> in
240         <https://lists.gnu.org/archive/html/bug-gnulib/2021-06/msg00018.html>.
241         * src/handler-unix.c (sigsegv_handler): Use a different local variable
242         name than 'sig'.
244 2021-05-29  Bruno Haible  <bruno@clisp.org>
246         Fix typo in comment.
247         * src/stackvma-procfs.c: Fix typo in comment, found by Paul Eggert.
248         * src/stackvma-vma-iter.c: Likewise.
249         * src/stackvma-beos.c: Likewise.
251 2021-05-16  Bruno Haible  <bruno@clisp.org>
253         Avoid compilation error with glibc >= 2.34.
254         * lib/sigsegv.h.in (SIGSTKSZ): On glibc systems, redefine to a suitable
255         constant.
256         * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
257         * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
258         Likewise.
260 2021-05-16  Bruno Haible  <bruno@clisp.org>
262         On Cygwin, use the sigaltstack-based approach by default.
263         * src/fault-cygwin.h: New file.
264         * src/fault-cygwin-i386.h: New file.
265         * src/stackvma-cygwin.c: New file, based on src/stackvma-netbsd.c.
266         * src/stackvma-vma-iter.c: Enable /proc-reading code also on Cygwin.
267         * src/Makefile.am (noinst_HEADERS): Add fault-cygwin.h,
268         fault-cygwin-i386.h.
269         (EXTRA_DIST): Add stackvma-cygwin.c.
270         * configure.ac: Use fault-cygwin-i386.h instead of
271         fault-posix-ucontext.h. Add --enable-support-old-cygwin option. When it
272         is not specified, use handler-unix.c and stackvma-cygwin.c
273         * NEWS: Mention that 64-bit Cygwin is now supported.
275 2021-05-16  Bruno Haible  <bruno@clisp.org>
277         Simplify: Use the POSIX API instead of Mach API on newer macOS versions.
278         * src/fault-macos.h: New file.
279         * src/fault-macos-arm64.h: New file.
280         * src/fault-macos-i386.h: New file.
281         * src/fault-macos-powerpc.h: New file.
282         * src/Makefile.am (noinst_HEADERS): Add them.
283         * configure.ac (CFG_FAULT): On macOS 10.13 or newer, use fault-macos*.h
284         and handler-unix.c, instead of handler-macos.c.
286 2021-05-16  Bruno Haible  <bruno@clisp.org>
288         Rename fault-macos-i386.h to fault-macos-i386-old.h.
289         * src/fault-macos-i386-old.h: Renamed from src/fault-macos-i386.h.
290         * configure.ac (CFG_FAULT): Update.
291         * src/Makefile.am (noinst_HEADERS): Likewise.
293 2021-05-16  Bruno Haible  <bruno@clisp.org>
295         Simplify inclusion of stackvma-mincore.c.
296         * src/stackvma-mincore.c (mincore_get_vma): Renamed from
297         sigsegv_get_vma.
298         * src/stackvma-linux.c: No need to define 'sigsegv_get_vma' and 'STATIC'
299         macros before including stackvma-mincore.c.
300         * src/stackvma-freebsd.c: Likewise.
301         * src/stackvma-netbsd.c: Likewise.
302         * src/stackvma-mquery.c: Likewise.
303         * src/stackvma-procfs.c: Likewise.
304         * src/stackvma-aix.c: New file.
305         * src/Makefile.am (EXTRA_DIST): Add it.
306         * configure.ac (CFG_STACKVMA): Set to stackvma-aix.c instead of
307         stackvma-mincore.c.
309 2021-05-16  Bruno Haible  <bruno@clisp.org>
311         Drop supporting outdated way of building on native Windows.
312         * autogen.sh: Don't create config.h.msvc, src/sigsegv.h.msvc.
313         * Makefile.msvc: Remove file.
314         * Makefile.am (EXTRA_DIST): Remove Makefile.msvc, config.h.msvc.
315         (config.h.msvc): Remove rule.
316         * src/Makefile.am (EXTRA_DIST): Remove sigsegv.h.msvc.
317         (sigsegv.h.msvc): Remove rule.
319 2021-05-16  Bruno Haible  <bruno@clisp.org>
321         Moved sigaltstack.m4 and stack-direction.m4 to gnulib.
322         * m4/sigaltstack.m4: Remove file.
323         * m4/stack-direction.m4: Remove file.
324         * autogen.sh: Copy the two files from gnulib.
326 2021-05-16  Bruno Haible  <bruno@clisp.org>
328         Avoid compiler warning.
329         * src/stackvma-netbsd.c (sigsegv_get_vma): Avoid unreachable statement.
331 2021-05-15  Bruno Haible  <bruno@clisp.org>
333         Avoid warning on systems with musl libc.
334         * src/stackvma-mincore.c (pageinfo_t): Treat all libcs on Linux like
335         glibc.
337 2021-05-15  Bruno Haible  <bruno@clisp.org>
339         Rename test files.
340         * tests/test-catch-segv1.c: Renamed from tests/sigsegv1.c.
341         * tests/test-catch-segv2.c: Renamed from tests/sigsegv3.c.
342         * tests/test-catch-stackoverflow1.c: Renamed from
343         tests/stackoverflow1.c.
344         * tests/test-catch-stackoverflow2.c: Renamed from
345         tests/stackoverflow2.c.
346         * tests/test-segv-dispatcher1.c: Renamed from tests/sigsegv2.c.
347         * tests/altstack-util.h: Renamed from tests/altstack.h.
348         * tests/mmap-anon-util.h: Renamed from tests/mmaputil.h.
350 2021-05-15  Bruno Haible  <bruno@clisp.org>
352         Improve comments.
353         * src/handler-unix.c: Mention Solaris 11 stack_violation().
354         * src/fault.h: SIGSEGV_FAULT_ADDRESS is not mandatory.
355         * src/stackvma-mquery.c: Update.
357 2021-05-15  Bruno Haible  <bruno@clisp.org>
359         Fix possible warnings on AIX.
360         * src/stackvma-mincore.c (MINCORE_ADDR_T): Test _AIX, not UNIX_AIX.
362 2021-05-15  Bruno Haible  <bruno@clisp.org>
364         Improve support for Solaris OpenIndiana.
365         * configure.ac: Make the test for <sys/procfs.h> succeed on Solaris
366         OpenIndiana even with -D_XOPEN_SOURCE=700.
367         * src/stackvma-procfs.c: Define __EXTENSIONS__, for Solaris OpenIndiana.
368         * NEWS: Mention the change.
370 2021-02-28  Bruno Haible  <bruno@clisp.org>
372         Update DEPENDENCIES.
373         * DEPENDENCIES: List the normal dependencies of a package with an
374         Autoconf-generated configure file.
376 2021-02-20  Bruno Haible  <bruno@clisp.org>
378         Support creating shared libraries on MidnightBSD.
379         Patch from <https://savannah.gnu.org/patch/?10007>.
380         * m4/libtool.m4: Treat MidnightBSD like FreeBSD.
381         * build-aux/ltmain.sh: Likewise.
382         * configure.ac (CFG_SIGNALS): Likewise.
383         * NEWS: Mention it.
385 2021-02-20  Bruno Haible  <bruno@clisp.org>
387         Switch to autoconf 2.71.
388         * autogen.sh: Update comment.
390 2021-01-16  Bruno Haible  <bruno@clisp.org>
392         Prepare for version 2.13.
393         * configure.ac (AC_INIT): Bump version to 2.13.
394         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
395         * README: Likewise.
396         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:6:0.
397         * NEWS: Add entries.
399 2021-01-16  Bruno Haible  <bruno@clisp.org>
401         Add support for catching stack overflow on 64-bit Haiku.
402         * src/stackvma-beos.c (vma_iterate): Adapt to changed signature of
403         get_next_area_info.
405 2021-01-16  Bruno Haible  <bruno@clisp.org>
407         Fix compilation errors and warnings on Solaris OpenIndiana.
408         * src/handler-unix.c: Define __EXTENSIONS__.
409         * src/stackvma-mincore.c: Likewise.
411 2021-01-16  Bruno Haible  <bruno@clisp.org>
413         Override value of SIGSTKSZ on 64-bit Solaris/x86_64.
414         * src/sigsegv.h.in: On 64-bit Solaris/x86_64, set SIGSTKSZ to 16 KB.
416 2021-01-16  Bruno Haible  <bruno@clisp.org>
418         Add support for catching stack overflow on Solaris 11/SPARC.
419         * src/fault-solaris11-sparc.h: New file.
420         * src/Makefile.am (noinst_HEADERS): Add it.
421         * configure.ac (CFG_FAULT): Choose it on Solaris 11/SPARC.
423 2021-01-11  Bruno Haible  <bruno@clisp.org>
425         Find stack detection reliably, even with GCC >= 10.
426         Reported by Andreas Schwab <schwab@gnu.org> in
427         <https://savannah.gnu.org/bugs/?59714>.
428         * m4/stack-direction.m4 (SV_STACK_DIRECTION): In the test program, use
429         the find_stack_direction function from Autoconf 2.70 (with parameters
430         that depend on argc, and with a recursion depth 20 instead of 2).
432 2021-01-11  Bruno Haible  <bruno@clisp.org>
434         Switch to automake 1.16.3.
435         * autogen.sh: Update comment.
437 2020-12-08  Bruno Haible  <bruno@clisp.org>
439         Switch to autoconf 2.70.
440         * autogen.sh: Update comment.
442 2020-12-04  Bruno Haible  <bruno@clisp.org>
444         Improve support for FreeBSD/arm and FreeBSD/arm64.
445         * src/fault-freebsd-arm.h: New file.
446         * src/Makefile.am (noinst_HEADERS): Add it.
447         * configure.ac (CFG_FAULT): Use this file on FreeBSD/arm and
448         FreeBSD/arm64.
450 2020-12-04  Bruno Haible  <bruno@clisp.org>
452         Improve support for FreeBSD/x86 and FreeBSD/x86_64.
453         * src/fault-freebsd-i386.h: Add alternative code that uses SA_SIGINFO.
455 2020-12-04  Bruno Haible  <bruno@clisp.org>
457         Add support for macOS on arm64.
458         Helped by Hill Ma <maahiuzeon@gmail.com> in
459         <https://savannah.gnu.org/bugs/?59539>.
460         * src/handler-macos.c (catch_exception_raise): Align the stack also on
461         arm64 CPUs.
463 2020-12-02  Bruno Haible  <bruno@clisp.org>
465         Improve porting documentation.
466         * PORTING: Add some more porting tips.
468 2020-12-01  Bruno Haible  <bruno@clisp.org>
470         Add configure option --disable-stackvma, for testing the fault-* files.
471         * configure.ac: Add option --enable/disable-stackvma. Set CFG_STACKVMA
472         to 'stackvma-none.c' if --disable-stackvma was specified.
474 2020-12-01  Bruno Haible  <bruno@clisp.org>
476         Use canonical test for arm64 CPU.
477         This is for consistency with gnulib and with predef.sourceforge.net.
478         * configure.ac: Test __aarch64__, not __arm64__.
479         * src/handler-macos.c: Likewise.
480         * src/machfault-macos.h: Likewise.
481         * src/stackvma-mach.c: Likewise.
483 2020-11-29  Hill Ma  <maahiuzeon@gmail.com>
485         mach: macos: preliminary support for darwin arm64.
486         * configure.ac: Treat macos/arm64 like the other macos platforms.
487         * src/handler-macos.c (sigsegv_leave_handler): On arm64, pass arguments
488         in registers.
489         * src/machfault-macos.h (SIGSEGV_*): Define appropriately for arm64.
490         * src/stackvma-mach.c (sigsegv_get_vma): On arm64, use 64-bit type
491         definitions.
493 2020-10-04  Bruno Haible  <bruno@clisp.org>
495         build: Fix warnings from Autoconf 2.69c.
496         * configure.ac: Move AM_INIT_AUTOMAKE arguments to AC_INIT. Use
497         AC_CONFIG_HEADERS instead of AM_CONFIG_HEADER. Use AC_LINK_IFELSE.
498         Update AC_OUTPUT invocation.
500 2020-09-06  Bruno Haible  <bruno@clisp.org>
502         build: Update after gnulib changed.
503         * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.64.
505 2019-09-01  Bruno Haible  <bruno@clisp.org>
507         build: Add support for shallow-cloning of subdirectories.
508         * gitsub.sh (func_usage): Document allowed git options with 'git pull'.
509         (func_pull): Accept GIT_OPTIONS argument.
510         (pull): Parse git options before complaining about too many arguments.
511         Pass the git options to func_pull.
513 2019-08-07  Nylon Chen  <nylon7@andestech.com>
515         Improve support for Linux/NDS32.
516         * src/fault-linux-nds32.h: New file.
517         * src/Makefile.am (noinst_HEADERS): Add it.
518         * configure.ac (CFG_FAULT): Use this file on Linux/NDS32.
519         * m4/stack-direction.m4: Add stack direction for NDS32.
521 2019-05-11  Bruno Haible  <bruno@clisp.org>
523         Update bug reporting instructions.
524         * README: Tell users to report bugs in the bug tracker or by email.
526 2019-04-01  Bruno Haible  <bruno@clisp.org>
528         build: Separate git operations from build operations.
529         * gitsub.sh: New file, from gnulib.
530         * .gitmodules: New file.
531         * autogen.sh: Remove all git operations. Look at GNULIB_SRCDIR
532         environment variable. Ignore the GNULIB_TOOL environment variable.
533         * HACKING: New file.
534         * DEPENDENCIES: New file.
536 2019-01-28  Bruno Haible  <bruno@clisp.org>
538         Improve support for Android.
539         * src/stackvma-mincore.c (pageinfo_t): Set to 'unsigned char' on
540         Android.
541         * src/stackvma-rofile.c: Treat Android like Linux.
542         * src/stackvma-vma-iter.c: Likewise.
544 2018-11-13  Thomas Petazzoni <thomas.petazzoni@bootlin.com>
546         Fix cross-compilation for RISC-V.
547         * m4/stack-direction.m4: Add stack direction for RISC-V.
549 2018-10-24  Bruno Haible  <bruno@clisp.org>
551         Update after gnulib changed.
552         * configure.ac (AC_PREREQ): Require Autoconf >= 2.63.
554 2018-03-15  Bruno Haible  <bruno@clisp.org>
556         Improve support for Linux/RISC-V.
557         * src/fault-linux-riscv64.h: New file.
558         * src/Makefile.am (noinst_HEADERS): Add it.
559         * configure.ac (CFG_FAULT): Use this file on Linux/riscv64.
561 2018-02-18  Bruno Haible  <bruno@clisp.org>
563         Avoid "warning: command substitution: ignored null byte in input".
564         Reported by Nelson Beebe.
565         * m4/bold.m4 (RSE_BOLD): For vt100, remove trailing NUL bytes. Only
566         physical terminals need these NULs; physical terminals are not in use
567         any more nowadays.
569 2018-02-03  Bruno Haible  <bruno@clisp.org>
571         Fix compilation error on Solaris 11 Dyson in 64-bit mode.
572         * src/fault-solaris-i386.h (SIGSEGV_FAULT_STACKPOINTER): In 64-bit mode,
573         use the 64-bit stack pointer.
575 2018-01-27  Bruno Haible  <bruno@clisp.org>
577         Rename some file.
578         * INSTALL.windows: Renamed from README.windows.
579         * Makefile.am (EXTRA_DIST): Update.
581 2018-01-16  Bruno Haible  <bruno@clisp.org>
583         Prepare for new release.
584         * configure.ac: Bump version number to 2.12.
585         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
586         * README: Likewise.
587         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:5:0.
588         * NEWS: Mention some more improvements.
590 2018-01-16  Bruno Haible  <bruno@clisp.org>
592         Correct distinction between stack overflow and other fault on AIX.
593         * src/stackvma-mincore.c (MINCORE_ADDR_T): New type.
594         (is_mapped, mapped_range_start, mapped_range_end): Use it.
595         * configure.ac: Don't use stackvma-procfs.c on AIX.
596         * NEWS: Mention the improvement.
598 2017-10-29  Bruno Haible  <bruno@clisp.org>
600         Improve Haiku support.
601         * src/fault-haiku.h: New file.
602         * src/fault-haiku-i386.h: New file.
603         * src/Makefile.am (noinst_HEADERS): Add them.
604         * configure.ac: On Haiku, use fault-haiku-i386.h instead of just
605         fault-posix.h, and use stackvma-beos.c instead of stackvma-none.c.
606         * NEWS: Mention the improvement.
608 2017-10-09  Bruno Haible  <bruno@clisp.org>
610         Avoid build failures caused by parallel make.
611         * Makefile.am (GNUMAKEFLAGS): New variable.
613 2017-10-08  Bruno Haible  <bruno@clisp.org>
615         Make VMA detection more reliable on FreeBSD.
616         * src/stackvma-vma-iter.c (vma_iterate_proc): Extracted from vma_iterate.
617         (vma_iterate_bsd): New function.
618         (vma_iterate): Call both, in the appropriate order.
619         * src/stackvma-freebsd.c: Include <sys/user.h> and <sys/sysctl.h>.
621 2017-10-08  Bruno Haible  <bruno@clisp.org>
623         Fix broken VMA detection on NetBSD (regression from 2017-10-07).
624         * src/stackvma-rofile.c (MIN_LEFTOVER): Define to 1, not 0.
626 2017-10-07  Bruno Haible  <bruno@clisp.org>
628         Fix broken VMA detection on Linux (regression from 2017-09-28).
629         * src/stackvma-rofile.c (MIN_LEFTOVER): New macro.
630         (STACK_ALLOCATED_BUFFER_SIZE): New macro.
631         (rof_open): On Linux, do multiple read() calls and make sure
632         MIN_LEFTOVER bytes are left when read() returns.
634 2017-10-06  Bruno Haible  <bruno@clisp.org>
636         Fix definition of SIGSEGV_FAULT_ADDRESS_ALIGNMENT: don't break clisp.
637         Existing versions of clisp expect that SIGSEGV_FAULT_ADDRESS_ALIGNMENT
638         is a constant expression. We cannot include a variable reference or
639         a function call in it.
640         * src/sigsegv.h.in (SIGSEGV_FAULT_ADDRESS_ALIGNMENT): Define as a
641         constant expression.
642         * tests/sigsegv1.c (SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS): Define based
643         on SIGSEGV_FAULT_ADDRESS_ALIGNMENT.
644         (handler): Use it.
645         * tests/sigsegv3.c: Likewise.
647 2017-10-05  Bruno Haible  <bruno@clisp.org>
649         Fix support for NetBSD/sparc on SPARC64 machines.
650         * src/sigsegv.h.in (SIGSEGV_FAULT_ADDRESS_ALIGNMENT) [NetBSD/sparc]:
651         Use getpagesize().
652         * m4/fault.m4 (SV_TRY_FAULT): On NetBSD/sparc, use getpagesize().
654 2017-10-03  Bruno Haible  <bruno@clisp.org>
656         Add support for NetBSD/sparc.
657         * src/sigsegv.h.in (SIGSEGV_FAULT_ADDRESS_ALIGNMENT) [NetBSD/sparc]:
658         Define to 0x1000.
659         * m4/fault.m4 (SV_TRY_FAULT): On NetBSD/sparc, set
660         SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS like on Linux/s390.
662 2017-10-03  Bruno Haible  <bruno@clisp.org>
664         Fix a message.
665         * tests/sigsegv3.c (handler): Fix message.
667 2017-10-01  Bruno Haible  <bruno@clisp.org>
669         Comment.
670         * configure.ac: Add a comment about GNU/Hurd.
672 2017-09-29  Bruno Haible  <bruno@clisp.org>
674         Make stack VMA detection work on GNU/kFreeBSD even without mincore.
675         It needs to use the vma_iterate for Linux combined with the callback
676         for FreeBSD.
677         * src/stackvma-vma-iter.c: New file, extracted from
678         src/stackvma-linux.c, src/stackvma-freebsd.c, src/stackvma-netbsd.c.
679         * src/stackvma-linux.c: Include stackvma-vma-iter.c.
680         (vma_iterate): Moved to src/stackvma-vma-iter.c.
681         * src/stackvma-freebsd.c: Likewise.
682         * src/stackvma-netbsd.c: Likewise.
683         * src/Makefile.am (EXTRA_DIST): Add stackvma-vma-iter.c.
684         * configure.ac (CFG_STACKVMA): Treat GNU/kFreeBSD like FreeBSD.
686 2017-09-28  Bruno Haible  <bruno@clisp.org>
688         Make stack VMA detection code more maintainable.
689         * src/stackvma-linux.c (struct callback_locals): New type.
690         (callback): New function.
691         (vma_iterate): New function, extracted from gnulib's lib/vma-iter.c.
692         (sigsegv_get_vma): Use vma_iterate.
693         * src/stackvma-freebsd.c: Likewise.
694         * src/stackvma-netbsd.c: Likewise.
695         * src/stackvma-beos.c: Likewise.
696         * src/stackvma-procfs.c: Likewise.
697         (sigsegv_get_vma_fallback): Inline and remove function.
699 2017-09-28  Bruno Haible  <bruno@clisp.org>
701         Make stack VMA detection more reliable on Linux, FreeBSD, NetBSD.
702         * src/stackvma-rofile.c (struct rofile, rof_open, rof_peekchar,
703         rof_close): Read the entire file into memory in a single system call.
704         * src/stackvma-linux.c (sigsegv_get_vma): Update.
705         * src/stackvma-freebsd.c (sigsegv_get_vma): Likewise.
706         * src/stackvma-netbsd.c (sigsegv_get_vma): Likewise.
708 2017-07-15  Bruno Haible  <bruno@clisp.org>
710         Get rid of autom4te.cache directory (left over from autoconf, automake).
711         * autogen.sh: Remove autom4te.cache directory.
713 2017-03-10  Bruno Haible  <bruno@clisp.org>
715         Fix a comment.
716         * src/stackvma-mincore.c: Update comment regarding Mac OS X.
718 2017-03-04  Bruno Haible  <bruno@clisp.org>
720         Avoid use of glibc-internal macros.
721         * src/fault-linux-arm.h: Use compiler-defined preprocessor macros,
722         rather than __WORDSIZE.
723         * src/fault-linux-powerpc.h: Likewise.
724         * src/fault-linux-sparc.h: Likewise.
725         * src/fault-linux-sparc-old.h: Likewise.
726         Reported by Andreas Schwab <schwab@linux-m68k.org>.
728 2017-02-21  Bruno Haible  <bruno@clisp.org>
730         Improve Hurd/i386 support.
731         * src/fault-hurd-i386.h: New file.
732         * src/Makefile.am (noinst_HEADERS): Add it.
733         * configure.ac: Use it on Hurd/i386.
734         * NEWS: Document the improvement.
736 2017-02-18  Bruno Haible  <bruno@clisp.org>
738         Prepare for new release.
739         * configure.ac: Bump version number to 2.11.
740         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
741         * README: Likewise.
742         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:4:0.
743         * NEWS: Mention the <stdint.h> requirement.
745 2017-02-18  Bruno Haible  <bruno@clisp.org>
747         Improve cross-compilation guesses.
748         * configure.ac: Include results on kFreeBSD9.0.
749         Treat FreeBSD >= 10 like FreeBSD 4 to 9.
751 2017-02-18  Bruno Haible  <bruno@clisp.org>
753         On Solaris, prefer the newer /proc fs API to the older (deprecated) one.
754         Reported by Roger Faulkner in
755         https://savannah.gnu.org/bugs/?42187 .
756         * configure.ac: Accept <sys/procfs.h> even if it does no longer define
757         PIOCNMAP and PIOCMAP.
758         * src/stackvma-procfs.c: Define _STRUCTURED_PROC before including
759         <sys/procfs.h>.
760         (sigsegv_get_vma_fallback): New function.
761         (sigsegv_get_vma): If PIOCNMAP and PIOCMAP are no longer defined, use
762         the newer /proc interface.
764 2017-02-18  Bruno Haible  <bruno@clisp.org>
766         Override value of SIGSTKSZ on 64-bit AIX and on HP-UX.
767         * src/sigsegv.h.in: On 64-bit AIX, set SIGSTKSZ to 8 KB.
768         On HP-UX, set SIGSTKSZ to 16 KB.
769         * NEWS: Document the improvement.
771 2017-02-18  Bruno Haible  <bruno@clisp.org>
773         Improve Linux/aarch64 support.
774         * src/fault-linux-arm.h: Add code for aarch64.
775         * configure.ac: For aarch64 platforms, use fault-linux-arm.h.
777 2017-02-18  Bruno Haible  <bruno@clisp.org>
779         Make stack overflow detection work on Linux/sparc.
780         * src/fault-linux-sparc.h (SIGSEGV_FAULT_STACKPOINTER): Fix: ucp is a
781         'struct sigcontext *', not an 'ucontext_t *'.
782         (BOGUS_FAULT_ADDRESS_UPON_STACK_OVERFLOW): New macro.
783         * src/handler-unix.c (sigsegv_handler): Handle the
784         BOGUS_FAULT_ADDRESS_UPON_STACK_OVERFLOW case.
785         Handle errno consistently.
786         * NEWS: Document the improvement.
788 2017-02-18  Bruno Haible  <bruno@clisp.org>
790         Fix glibc version determination.
791         * configure.ac (glibcversion): Use postprocessing that works also with
792         gcc 5 or newer.
794 2017-02-18  Bruno Haible  <bruno@clisp.org>
796         Update comments.
797         * src/fault-linux-*.h: Update references to the glibc sources.
799 2017-01-10  Bruno Haible  <bruno@clisp.org>
801         Update README.
802         * README: Prefer https URLs over http or ftp URLs.
804 2016-12-04  Bruno Haible  <bruno@clisp.org>
806         Always use the newest released copies of files brought in from Automake.
807         * autogen.sh: Make sure to get new versions of files brought in by
808         automake.
810 2016-11-27  Bruno Haible  <bruno@clisp.org>
812         Fix compilation error on Cygwin, regression from 2016-10-22.
813         * src/sigsegv.h.in: Include <stddef.h>.
815 2016-11-23  Bruno Haible  <bruno@clisp.org>
817         Update installation instructions for Windows.
818         * README.windows: Assume a 64-bit Windows. Explain both 32-bit and
819         64-bit builds. Revamp instructions for the MS Visual C/C++ tool chain
820         and for Cygwin.
822 2016-11-23  Bruno Haible  <bruno@clisp.org>
824         Drop the nickname "woe32".
825         * README.windows: Renamed from README.woe32.
826         * README: Update.
827         * Makefile.am (EXTRA_DIST): Update.
829 2016-10-22  Bruno Haible  <bruno@clisp.org>
831         Support for platforms with 32-bit 'long' and 64-bit pointers.
832         * src/sigsegv.h.in: Use 'size_t' instead of 'unsigned long'.
833         * src/stackvma.h: Include <stdint.h>. Use 'uintptr_t' instead of
834         'unsigned long'.
835         * src/stackvma-*.c: Use 'uintptr_t' instead of 'unsigned long'.
836         * src/dispatcher.c: Include <stdint.h>. Use 'uintptr_t' or 'size_t'
837         instead of 'unsigned long'.
838         * src/handler-*.c: Likewise.
839         * tests/mmaputil.h: Use 'uintptr_t' or 'size_t' instead of
840         'unsigned long'.
841         * tests/sigsegv1.c: Include <stdint.h>. Use 'uintptr_t' instead of
842         'unsigned long'.
843         * tests/sigsegv2.c: Likewise.
844         * tests/sigsegv3.c: Likewise.
845         * tests/stackoverflow2.c: Likewise.
846         Reported by Nate Sigrist in <https://savannah.gnu.org/bugs/?37604>.
848 2016-10-22  Bruno Haible  <bruno@clisp.org>
850         Switch to libtool 2.4.6.
851         * m4/libtool.m4: Update from libtool-2.4.6.
852         * m4/ltoptions.m4: Likewise.
853         * m4/ltversion.m4: Likewise.
854         * build-aux/ltmain.sh: Likewise.
856 2016-10-22  Bruno Haible  <bruno@clisp.org>
858         Switch to automake 1.15.
859         * autogen.sh: Update comment.
860         * src/Makefile.am (AM_CPPFLAGS): Renamed from INCLUDES.
861         * tests/Makefile.am (AM_CPPFLAGS): Renamed from INCLUDES.
862         * build-aux/.gitignore: Ignore more files.
864 2015-12-03  Waldemar Brodkorb  <wbx@uclibc-ng.org>
866         * src/fault-linux-sparc.h (SIGSEGV_FAULT_STACKPOINTER)
867         <__WORDSIZE == 64>: New macro.
869 2014-12-30  Simon Dawson  <spdawson@gmail.com>  (tiny change)
870             Will Newton  <will.newton@linaro.org>  (tiny change)
871             Spenser Gilliland  <spenser@gillilanding.com>  (tiny change)
872             Thomas Petazzoni  <thomas.petazzoni@free-electrons.com>  (tiny change)
874         * m4/stack-direction.m4: Add stack direction info for various
875         processors.
877 2012-09-09  Bruno Haible  <bruno@clisp.org>
879         Support for OpenBSD 5.2 on m88k and sh processors.
880         * src/fault-openbsd-m88k.h: Update for OpenBSD 5.2.
881         * src/fault-openbsd-sh.h: Likewise.
882         Reported by Brad Smith <brad@comstyle.com>
883         at <https://savannah.gnu.org/bugs/?37288>.
885 2012-04-28  Bruno Haible  <bruno@clisp.org>
887         Allow use of autoconf-2.69 and automake-1.12.
888         * autogen.sh: Update comments.
890 2011-10-18  Bruno Haible  <bruno@clisp.org>
892         * m4/libtool.m4: Update from libtool-2.4.2.
893         * m4/ltoptions.m4: Likewise.
894         * m4/ltversion.m4: Likewise.
895         * build-aux/ltmain.sh: Likewise.
897 2011-09-30  Bruno Haible  <bruno@clisp.org>
899         Update known platforms list.
900         * configure.ac (POSIX): Add Linux/SPARC to the known platforms.
902 2011-09-30  Bruno Haible  <bruno@clisp.org>
904         Work around an mprotect(...,PROT_READ) bug on Linux 2.6.26/SPARC64.
905         * m4/fault.m4 (SV_TRY_FAULT): On Linux/SPARC, use PROT_NONE instead of
906         PROT_READ.
907         * tests/sigsegv1.c (main): Likewise.
908         * tests/sigsegv2.c (main): Likewise.
909         * tests/sigsegv3.c (main): Likewise.
910         * tests/stackoverflow2.c (main): Likewise.
912 2011-09-10  Bruno Haible  <bruno@clisp.org>
914         Adhere to Win32 API.
915         * src/handler-win32.c (main_exception_filter): Use
916         EXCEPTION_STACK_OVERFLOW, not STATUS_STACK_OVERFLOW.
918 2011-05-03  Eric Blake  <eblake@redhat.com>
920         Avoid polluting cygwin namespace.
921         * configure.ac (FAULT_CONTEXT_INCLUDE): Avoid including
922         <windows.h> on cygwin.
923         Reported by Corinna Vinschen, via Aharon Robbins.
925 2011-04-03  Bruno Haible  <bruno@clisp.org>
927         * Version 2.10 released.
929 2011-04-03  Bruno Haible  <bruno@clisp.org>
931         Don't ask for success reports on MacOS X any more.
932         * Makefile.am (check-next): No longer ask for success reports on
933         MacOS X.
935 2011-04-03  Bruno Haible  <bruno@clisp.org>
937         Bump version number.
938         * configure.ac: Bump version number to 2.10.
939         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
940         * README: Likewise. Recommend ftpmirror.gnu.org in the first place.
941         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:3:0.
943 2011-03-13  Bruno Haible  <bruno@clisp.org>
945         Support for Linux/S390.
946         * m4/fault.m4 (SV_TRY_FAULT): Define
947         SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS. On Linux/S390 systems, expect a
948         page-aligned fault address.
949         * src/sigsegv.h.in (SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS): New macro.
950         (sigsegv_register): Mention constraint about address and len arguments.
951         * tests/sigsegv1.c (handler): On Linux/S390 systems, expect a
952         page-aligned fault address.
953         * tests/sigsegv3.c (handler): Likewise.
954         * tests/sigsegv2.c: Add comment.
955         * NEWS: Document the change.
956         Reported by Christoph Egger <christoph@debian.org>.
958 2011-01-29  Bruno Haible  <bruno@clisp.org>
960         Improve OpenBSD support: Allow faster VMA determination.
961         * configure.ac: Check also for mquery.
962         (CFG_STACKVMA): Set to stackvma-mquery.c if mquery() exists.
963         * src/stackvma-mquery.c: New file.
964         * src/Makefile.am (EXTRA_DIST): Add it.
965         * NEWS: Document the improvement.
967 2011-01-23  Bruno Haible  <bruno@clisp.org>
969         Improve NetBSD support: Allow VMA determination with fewer system calls.
970         * src/stackvma-netbsd.c: New file, based on src/stackvma-freebsd.c.
971         * src/stackvma-freebsd.c: Add comment.
972         * src/Makefile.am (EXTRA_DIST): Add stackvma-netbsd.c.
973         * configure.ac (CFG_STACKVMA): Set to stackvma-netbsd.c on NetBSD.
975 2010-11-06  Bruno Haible  <bruno@clisp.org>
977         * Version 2.9 released.
979 2010-11-06  Bruno Haible  <bruno@clisp.org>
981         Bump version number.
982         * configure.ac: Bump version number to 2.9.
983         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
984         * README: Likewise.
985         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:2:0.
987 2010-11-06  Bruno Haible  <bruno@clisp.org>
989         Start to use gnulib.
990         * autogen.sh: New option --skip-gnulib. Fetch gnulib if GNULIB_TOOL is
991         not set. Import m4/relocatable-lib.m4.
992         * configure.ac: Invoke gl_RELOCATABLE_NOP instead of
993         AC_RELOCATABLE_NOP.
994         * m4/relocatable.m4: Remove file.
996 2010-11-06  Bruno Haible  <bruno@clisp.org>
998         Modernize autoconf macro style.
999         * configure.ac: Surround all macro arguments in brackets.
1000         * m4/getpagesize.m4: Likewise.
1001         * m4/mmap-anon.m4: Likewise.
1002         * m4/sigaltstack.m4: Likewise.
1004 2010-11-06  Bruno Haible  <bruno@clisp.org>
1006         Don't list files in .gitignore that are absent after "make distclean".
1007         * .gitignore: Complete the list of files that are created by "make" and
1008         removed by "make distclean". But comment them out, since they belong in
1009         .git/info/exclude. Also remove /autom4te.cache because "make distclean"
1010         does not remove it.
1012 2010-10-25  Eric Blake  <eblake@redhat.com>
1014         Fix powerpc64-unknown-linux-gnu implementation.
1015         * src/stackvma-rofile.c (struct rofile): Reduce size, to avoid
1016         overflowing alternate stack when compiled under -O2.
1017         * src/stackvma-mincore.c (mapped_range_start, mapped_range_end):
1018         Likewise.
1019         * NEWS: Document the fix.
1021 2010-10-24  Eric Blake  <eblake@redhat.com>
1022             Bruno Haible  <bruno@clisp.org>
1024         Enhance the tests to detect overflow of the alternate stack.
1025         * tests/altstack.h: New file.
1026         * tests/Makefile.am (EXTRA_DIST): Add altstack.h.
1027         * configure.ac: Invoke AC_TYPE_UINTPTR_T.
1028         * tests/stackoverflow1.c: Include altstack.h.
1029         (SIGSTKSZ): Remove definition.
1030         (mystack): Remove definition.
1031         (main): Invoke prepare_alternate_stack and
1032         check_alternate_stack_no_overflow.
1033         * tests/stackoverflow2.c: Likewise.
1034         * tests/efault2.c: Likewise.
1035         * tests/efault3.c: Likewise.
1037 2010-10-21  Eric Blake  <eblake@redhat.com>
1039         * .gitignore: Ignore more files.
1041 2010-09-23  Bruno Haible  <bruno@clisp.org>
1043         * m4/libtool.m4: Update from libtool-2.4.
1044         * m4/ltversion.m4: Likewise.
1045         * build-aux/ltmain.sh: Likewise.
1047 2010-06-04  Bruno Haible  <bruno@clisp.org>
1049         * m4/libtool.m4: Update from libtool-2.2.8.
1050         * m4/ltoptions.m4: Likewise.
1051         * m4/ltversion.m4: Likewise.
1052         * m4/lt~obsolete.m4: Likewise.
1053         * build-aux/ltmain.sh: Likewise.
1055 2010-04-06  Eric Blake  <eblake@redhat.com>
1057         * AUTHORS: Add myself.
1059 2010-03-30  Bruno Haible  <bruno@clisp.org>
1061         * README.woe32: Update for Cygwin 1.7.x.
1063 2010-02-18  Bruno Haible  <bruno@clisp.org>
1065         Fix 64-bit builds with --enable-shared on MacOS X.
1066         * src/stackvma-mach.c (sigsegv_get_vma): On 64-bit MacOS X, use
1067         vm_region_64 instead of vm_region.
1068         * NEWS: Mention the fix.
1069         Reported by Rudá Moura <ruda@rudix.org>.
1071 2010-01-31  Bruno Haible  <bruno@clisp.org>
1073         * README: Add more homepage links. Add bug report address.
1075 2010-01-07  Bruno Haible  <bruno@clisp.org>
1077         Improve support for OpenBSD.
1078         * src/fault-openbsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Define
1079         differently in 64-bit mode.
1080         * src/fault-openbsd-alpha.h: New file.
1081         * src/fault-openbsd-arm.h: New file.
1082         * src/fault-openbsd-hppa.h: New file.
1083         * src/fault-openbsd-m68k.h: New file.
1084         * src/fault-openbsd-m88k.h: New file.
1085         * src/fault-openbsd-mips.h: New file.
1086         * src/fault-openbsd-powerpc.h: New file.
1087         * src/fault-openbsd-sh.h: New file.
1088         * src/fault-openbsd-sparc.h: New file.
1089         * src/fault-openbsd-vax.h: New file.
1090         * src/Makefile.am (noinst_HEADERS): Add the new files.
1091         * configure.ac (CFG_FAULT): Use these files on OpenBSD.
1092         Reported by Paul Irofti <bulibuta@sdf.lonestar.org>.
1094 2009-12-11  Bruno Haible  <bruno@clisp.org>
1096         * Version 2.8 released.
1098 2009-12-11  Bruno Haible  <bruno@clisp.org>
1100         * configure.ac: Bump version number to 2.8.
1101         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
1102         * README: Likewise.
1103         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:1:0.
1105 2009-12-11  Bruno Haible  <bruno@clisp.org>
1107         Remove configuration option --enable-EFAULT.
1108         * configure.ac (enable_EFAULT): Set to yes on Cygwin, to no otherwise.
1109         * README, NEWS: Don't mention --enable-EFAULT.
1110         Reported by Eric Blake.
1112 2009-12-11  Bruno Haible  <bruno@clisp.org>
1114         New test for Cygwin.
1115         * tests/cygwin1.c: New file, based on code by Eric Blake.
1116         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add it.
1117         * configure.ac (CYGWIN): New conditional.
1119 2009-11-21  Eric Blake  <ebb9@byu.net>
1120             Bruno Haible  <bruno@clisp.org>
1122         New configuration option --enable-EFAULT.
1123         * configure.ac: Accept option --enable-EFAULT. Set and define
1124         ENABLE_EFAULT. Invoke SV_SYSCALLS_EFAULT.
1125         For Cygwin, use the CFG_FAULT that was already determined, or
1126         fault-cygwin-old.h if none. In the latter case, define
1127         OLD_CYGWIN_WORKAROUND.
1128         * m4/efault.m4: New file.
1129         * src/handler-win32.c [CYGWIN && ENABLE_EFAULT]: Include
1130         handler-unix.c.
1131         (MIXING_UNIX_SIGSEGV_AND_WIN32_STACKOVERFLOW_HANDLING): New macro.
1132         (last_seen_fault_address): New variable.
1133         (main_exception_filter): Store the fault address for the Unix signal
1134         handler.
1135         (sigsegv_install_handler): Redefine.
1136         (sigsegv_deinstall_handler, sigsegv_leave_handler): Don't define.
1137         * src/handler-unix.c (stackoverflow_install_handler,
1138         stackoverflow_deinstall_handler): Don't define if
1139         MIXING_UNIX_SIGSEGV_AND_WIN32_STACKOVERFLOW_HANDLING is set.
1140         * src/fault-cygwin-old.h: New file.
1141         * src/Makefile.am (noinst_HEADERS): Add it.
1142         * tests/efault1.c: New file.
1143         * tests/efault2.c: New file.
1144         * tests/efault3.c: New file.
1145         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add efault1, efault2,
1146         efault3.
1147         * README, NEWS: Mention the new option.
1149 2009-11-21  Bruno Haible  <bruno@clisp.org>
1151         Support for Cygwin 1.7.
1152         * configure.ac: For Cygwin and mingw, choose FAULT_CONTEXT in a way
1153         that is consistent with CFD_HANDLER.
1154         Reported by Eric Blake <ebb9@byu.net>
1156 2009-11-21  Bruno Haible  <bruno@clisp.org>
1158         * configure.ac: Add comments and structure.
1160 2009-11-21  Bruno Haible  <bruno@clisp.org>
1162         Reduce size of configure.ac.
1163         * m4/stack-direction.m4: New file, extracted from configure.ac.
1164         * configure.ac: Simply invoke SV_STACK_DIRECTION.
1166 2009-11-21  Eric Blake  <ebb9@byu.net>
1167             Bruno Haible  <bruno@clisp.org>
1169         Avoid a gcc warning.
1170         * src/handler-win32.c (debug_get_except_list): Mark as unused.
1172 2009-11-21  Bruno Haible  <bruno@clisp.org>
1174         Fix compilation error on newer versions of HP-UX 11.31 on ia64.
1175         * configure.ac: Set sv_cv_have_stack_overflow_recovery to 'no' if it is
1176         not possible to longjmp out of the signal handler. On HP-UX 11.31 on
1177         ia64 it is only possible with siglongjmp (as far as we know).
1178         Reported by Bill Glessner <bill.glessner@cwu.edu>.
1180         * configure.ac: Move determination of CFG_LEAVE before the
1181         determination of sv_cv_have_stack_overflow_recovery.
1183 2009-10-17  Bruno Haible  <bruno@clisp.org>
1185         * README: Mention danger of longjmping back to a central point.
1186         Reported by Angelo Borsotti <angelo.borsotti@gmail.com>.
1188 2009-09-22  Paolo Bonzini  <bonzini@gnu.org>
1190         Move more declarations of alternate stacks to global scope.
1191         * m4/sigaltstack-longjmp.m4: Make mystack global.
1192         * m4/sigaltstack-siglongjmp.m4: Make mystack global.
1193         * m4/sigaltstack.m4: Make mystack global.
1195 2009-09-22  Paolo Bonzini  <bonzini@gnu.org>
1197         Fix crash of stackoverflow2 on x86_64-linux.
1198         * tests/stackoverflow1.c: Make mystack global.
1199         * tests/stackoverflow2.c: Likewise.
1200         * src/sigsegv.h.in: Warn against placing the alternate stack
1201         on the main stack.
1203 2009-08-16  Bruno Haible  <bruno@clisp.org>
1205         Avoid a gcc warning on Solaris.
1206         * src/stackvma-procfs.c: Include <string.h>.
1208 2009-08-14  Bruno Haible  <bruno@clisp.org>
1210         Remove config.guess, config.sub from from version control.
1211         * autogen.sh: Fetch config.guess, config.sub.
1212         * build-aux/config.guess: Remove file.
1213         * build-aux/config.sub: Remove file.
1215 2009-08-14  Bruno Haible  <bruno@clisp.org>
1217         Remove autogenerated files from version control.
1218         * autogen.sh: New file.
1219         * aclocal.m4: Remove file.
1220         * configure: Remove file.
1221         * config.h.in: Remove file.
1222         * Makefile.in: Remove file.
1223         * src/Makefile.in: Remove file.
1224         * tests/Makefile.in: Remove file.
1225         * build-aux/install-sh: Remove file.
1226         * build-aux/missing: Remove file.
1227         * config.h.msvc: Remove file.
1228         * src/sigsegv.h.msvc: Remove file.
1230 2009-08-14  Bruno Haible  <bruno@clisp.org>
1232         Override automake's tar command used for creating distributions.
1233         * configure.ac (am__tar): New variable.
1235 2009-08-09  Bruno Haible  <bruno@clisp.org>
1237         * Version 2.7 released.
1239 2009-08-09  Bruno Haible  <bruno@clisp.org>
1241         * configure.ac: Bump version number to 2.7.
1242         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
1243         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:0:0.
1245 2009-08-09  Bruno Haible  <bruno@clisp.org>
1247         * src/fault-linux-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Fix mistake.
1249 2009-08-09  Bruno Haible  <bruno@clisp.org>
1251         Avoid warnings on glibc systems.
1252         * src/stackvma-mincore.c (pageinfo_t): New type.
1253         (is_mapped, mapped_range_start, mapped_range_end): Use it.
1255 2009-08-01  Bruno Haible  <bruno@clisp.org>
1257         Prefer the POSIX way over the traditional one, on Linux.
1258         * configure.ac: Use the traditional Linux way only if the POSIX way
1259         does not work.
1260         * NEWS: Mention the change.
1262 2009-08-01  Bruno Haible  <bruno@clisp.org>
1264         Add knowledge where to find the stack pointer on Linux platforms.
1265         * src/fault-linux-alpha.h: New file.
1266         * src/fault-linux-arm.h: New file.
1267         * src/fault-linux-cris.h: New file.
1268         * src/fault-linux-hppa.h: New file.
1269         * src/fault-linux-i386.h: New file.
1270         * src/fault-linux-ia64.h: New file.
1271         * src/fault-linux-m68k.h: New file.
1272         * src/fault-linux-mips.h: New file.
1273         * src/fault-linux-powerpc.h: New file.
1274         * src/fault-linux-s390.h: New file.
1275         * src/fault-linux-sh.h: New file.
1276         * src/fault-linux-sparc.h: New file.
1277         * src/Makefile.am (noinst_HEADERS): Add them.
1278         * src/handler-unix.c (_GNU_SOURCE): Define.
1279         * src/fault-linux-hppa-old.h: Add alternative code, commented.
1280         * src/fault-linux-sparc-old.h: Likewise.
1281         * configure.ac (CFG_FAULT): Use these files on Linux when the POSIX way
1282         of catching page faults works.
1284 2009-08-01  Bruno Haible  <bruno@clisp.org>
1286         * src/fault-linux-i386-old.h: Renamed from src/fault-linux-i386.h.
1287         * src/Makefile.am (noinst_HEADERS): Update.
1288         * configure.ac: Update.
1290         * src/fault-linux-i386-oldold.h: Renamed from
1291         src/fault-linux-i386-old.h.
1292         * src/Makefile.am (noinst_HEADERS): Update.
1293         * configure.ac: Update.
1295         * src/fault-linux-alpha-old.h: Renamed from src/fault-linux-alpha.h.
1296         * src/fault-linux-arm-old.h: Renamed from src/fault-linux-arm.h.
1297         * src/fault-linux-cris-old.h: Renamed from src/fault-linux-cris.h.
1298         * src/fault-linux-hppa-old.h: Renamed from src/fault-linux-hppa.h.
1299         * src/fault-linux-ia64-old.h: Renamed from src/fault-linux-ia64.h.
1300         * src/fault-linux-m68k-old.c: Renamed from src/fault-linux-m68k.c.
1301         * src/fault-linux-m68k-old.h: Renamed from src/fault-linux-m68k.h.
1302         Update.
1303         * src/fault-linux-mips-old.h: Renamed from src/fault-linux-mips.h.
1304         * src/fault-linux-powerpc-old.h: Renamed from src/fault-linux-powerpc.h.
1305         * src/fault-linux-s390-old.h: Renamed from src/fault-linux-s390.h.
1306         * src/fault-linux-sh-old.h: Renamed from src/fault-linux-sh.h.
1307         * src/fault-linux-sparc-old.h: Renamed from src/fault-linux-sparc.h.
1308         * src/fault-linux-x86_64-old.h: Renamed from src/fault-linux-x86_64.h.
1309         * src/Makefile.am (noinst_HEADERS): Update.
1310         * configure.ac: Update.
1312 2009-06-23  Bruno Haible  <bruno@clisp.org>
1314         * Makefile.am (check-next): No longer ask for copies of config.log.
1316 2009-06-23  Bruno Haible  <bruno@clisp.org>
1318         Improve support for MirBSD 10.
1319         * configure.ac (CFG_FAULT, FAULT_CONTEXT): Treat MirBSD/i386 like
1320         OpenBSD/i386.
1322 2009-06-23  Bruno Haible  <bruno@clisp.org>
1324         Add support for platforms that follow POSIX:2008, not POSIX:2001.
1325         * configure.ac (POSIX): Add MirBSD to known list.
1326         (CFG_FAULT, FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE): Define appropriately
1327         when <ucontext.h> does not exist.
1328         * src/fault-posix-ucontext.h: Renamed from src/fault-posix.h.
1329         * src/fault-posix.h: New file.
1330         * src/fault-aix5.h: Update.
1331         * src/fault-hpux-hppa.h: Update.
1332         * src/fault-netbsd.h: Update.
1333         * src/fault-solaris.h: Update.
1334         * src/Makefile.am (noinst_HEADERS): Add fault-posix-ucontext.h.
1336 2009-06-23  Bruno Haible  <bruno@clisp.org>
1338         * configure.ac (FAULT_CONTEXT_INCLUDE): Reinstall the AC_SUBST
1339         invocation.
1341 2009-05-21  Bruno Haible  <bruno@clisp.org>
1343         * configure.ac (FAULT_CONTEXT_INCLUDE): Don't substitute into
1344         Makefiles.
1346 2009-05-21  Bruno Haible  <bruno@clisp.org>
1348         * tests/Makefile.am (AUTOMAKE_OPTIONS): Assume automake >= 1.11.
1349         Use color-tests option.
1351 2009-01-14  Bruno Haible  <bruno@clisp.org>
1353         * configure.ac: More consistent m4 quoting.
1355 2008-09-27  Bruno Haible  <bruno@clisp.org>
1357         * build-aux/config.sub: Update to GNU version 2008-09-08.
1359 2008-09-23  Eric Blake  <ebb9@byu.net>
1361         Use 2 * SIGSTKSZ consistently in configuration checks.
1362         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Work around IRIX sigaltstack bug.
1363         * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
1364         * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
1365         Likewise.
1367 2008-09-21  Bruno Haible  <bruno@clisp.org>
1369         * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): New variable.
1370         (libsigsegv_la_LDFLAGS): Pass -rpath and -version-info option.
1371         Reported by Thomas Klausner <tk@giga.or.at>.
1373 2008-09-21  Eric Blake  <ebb9@byu.net>
1374             Bruno Haible  <bruno@clisp.org>
1376         Detect and work around bug in Irix 5.3 sigaltstack.
1377         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Test for broken stack_t direction
1378         in sigaltstack.
1379         * src/handler-unix.c (stackoverflow_install_handler): Adjust stack
1380         accordingly.
1381         * tests/stackoverflow1.c (stack_lower_bound, stack_upper_bound): New
1382         variables.
1383         (stackoverflow_handler): Use them to expose IRIX bug.
1384         (main): Initialize them.
1386 2008-09-07  Bruno Haible  <bruno@clisp.org>
1388         * m4/libtool.m4: Update from libtool-2.2.6.
1389         * m4/ltoptions.m4: Likewise.
1390         * m4/ltsugar.m4: Likewise.
1391         * m4/ltversion.m4: Likewise.
1392         * build-aux/ltmain.sh: Likewise.
1394 2008-08-25  Bruno Haible  <bruno@clisp.org>
1396         * Version 2.6 released.
1398 2008-08-24  Bruno Haible  <bruno@clisp.org>
1400         * configure.ac: Treat Dragonfly BSD platforms like FreeBSD.
1401         Reported by Thomas Klausner <tk@giga.or.at>.
1403 2008-08-24  Bruno Haible  <bruno@clisp.org>
1405         * src/stackvma-mincore.c (mincore_is_near_this): Improve logic. Needed
1406         for reliable NULL pointer access classification as SIGSEGV on AIX 4.3.
1408 2008-08-24  Bruno Haible  <bruno@clisp.org>
1410         * m4/sigaltstack.m4: Change 'volatile int' return type to 'int'. Needed
1411         for AIX 4.3 xlc.
1412         * m4/sigaltstack-longjmp.m4: Likewise.
1413         * m4/sigaltstack-siglongjmp.m4: Likewise.
1414         * tests/stackoverflow1.c (recurse): Likewise.
1415         * tests/stackoverflow2.c (recurse): Likewise.
1417 2008-08-24  Bruno Haible  <bruno@clisp.org>
1419         * tests/sigsegv1.c: Include <config.h>.
1420         * tests/sigsegv2.c: Likewise.
1421         * tests/sigsegv3.c: Include <config.h> before all other headers.
1422         * tests/stackoverflow1.c: Likewise.
1423         * tests/stackoverflow2.c: Likewise.
1425 2008-08-24  Bruno Haible  <bruno@clisp.org>
1427         Fix the sigsegv3 test on MacOS X.
1428         * src/sigsegv.h.in (sigsegv_leave_handler): Take 4 arguments.
1429         * NEWS: Mention the change.
1430         * src/handler-macos.c (our_exception_thread, signalled_thread): New
1431         variables.
1432         (catch_exception_raise): Set signalled_thread during the user_handler
1433         invocation.
1434         (mach_exception_thread): Initialize our_exception_thread.
1435         (sigsegv_leave_handler): Take 4 arguments. When called from within
1436         the exception thread, let the signalled thread do a hyperjump.
1437         * src/handler-unix.c (sigsegv_leave_handler): Take 4 arguments.
1438         * src/handler-win32.c (sigsegv_leave_handler): Likewise.
1439         * src/handler-none.c (sigsegv_leave_handler): Likewise.
1440         * src/machfault-macos.h (SIGSEGV_INTEGER_ARGUMENT_1,
1441         SIGSEGV_INTEGER_ARGUMENT_2, SIGSEGV_INTEGER_ARGUMENT_3,
1442         SIGSEGV_FRAME_POINTER): New macros.
1443         * tests/sigsegv3.c (handler_continuation): New function.
1444         (handler): Update to new API.
1445         * tests/stackoverflow1.c (stackoverflow_handler_continuation): New
1446         function.
1447         (stackoverflow_handler): Update to new API.
1448         * tests/stackoverflow2.c (stackoverflow_handler_continuation): New
1449         function.
1450         (stackoverflow_handler, sigsegv_handler): Update to new API.
1452 2008-08-24  Bruno Haible  <bruno@clisp.org>
1454         Test the use of sigsegv_leave_handler from within a SIGSEGV handler.
1455         * tests/sigsegv3.c: New file.
1456         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add sigsegv3.
1458 2008-08-23  Eric Blake  <ebb9@byu.net>
1460         * src/Makefile.am (noinst_HEADERS): Remove machfault-macos-powerpc.h
1461         and machfault-macos-i386.h. Add machfault-macos.h.
1463 2008-08-17  Bruno Haible  <bruno@clisp.org>
1465         Allow building universal binaries on MacOS X.
1466         * src/machfault-macos.h: New file, combining
1467         src/machfault-macos-powerpc.h and src/machfault-macos-i386.h.
1468         * src/machfault-macos-powerpc.h: Remove file.
1469         * src/machfault-macos-i386.h: Remove file.
1470         * configure.ac (CFG_MACHFAULT): Set to machfault-macos.h.
1471         (FAULT_CONTEXT_INCLUDE) [MacOSX]: Set to #ifdefs for all four possible
1472         architectures.
1474 2008-07-20  Bruno Haible  <bruno@clisp.org>
1476         Make sigsegv_get_vma async-safe.
1477         * src/sigsegv.h.in (sigsegv_handler_t, stackoverflow_handler_t):
1478         Mention async-safety constraints.
1479         + src/stackvma-rofile.c: New file.
1480         * src/stackvma-freebsd.c: Include stackvma-rofile.c.
1481         (sigsegv_get_vma): Use struct rofile instead of FILE.
1482         * src/stackvma-linux.c: Include stackvma-rofile.c.
1483         (sigsegv_get_vma): Use struct rofile instead of FILE.
1484         * src/stackvma-procfs.c: Include <sys/mman.h> instead of <stdlib.h> and
1485         <stdio.h>.
1486         (sigsegv_get_vma): Avoid using sprintf. Ensure pagesize is initialized.
1487         Use mmap/munmap instead of malloc/free.
1488         * src/Makefile.am (EXTRA_DIST): Add stackvma-rofile.c.
1489         Reported by Eric Blake <ebb9@byu.net>.
1491 2008-07-20  Bruno Haible  <bruno@clisp.org>
1493         * src/handler-unix.c (sigsegv_handler): Preserve errno.
1495 2008-07-20  Eric Blake  <ebb9@byu.net>
1497         * src/stackvma-mincore.c (mincore_is_near_this): Fix logic.
1499 2008-07-20  Bruno Haible  <bruno@clisp.org>
1501         * tests/stackoverflow2.c (main): Test also a NULL pointer access.
1502         Reported by Eric Blake <ebb9@byu.net>.
1504 2008-06-23  Bruno Haible  <bruno@clisp.org>
1506         * build-aux/config.guess: Update to GNU version 2008-06-16.
1507         * build-aux/config.sub: Likewise.
1509 2008-05-31  Bruno Haible  <bruno@clisp.org>
1511         Make cross-compile from MacOS X 10.5 to MacOS X 10.4 work.
1512         * src/handler-macos.c (MacOS_X_10_5_HEADERS): New macro.
1513         * src/machfault-macos-i386.h: Use it.
1514         * src/machfault-macos-powerpc.h: Likewise.
1515         Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
1517 2008-05-31  Bruno Haible  <bruno@clisp.org>
1519         * m4/mmap-anon.m4 (SV_MMAP_ANON): Add known cross-compile results for
1520         MacOS X.
1521         Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
1523 2008-05-27  Bruno Haible  <bruno@clisp.org>
1525         * configure.ac: Require at least autoconf 2.62. Merge
1526         FAULT_CONTEXT_INCLUDE2 variable into FAULT_CONTEXT_INCLUDE.
1527         * src/sigsegv.h.in: Remove FAULT_CONTEXT_INCLUDE2 substitution.
1528         * src/Makefile.am (sigsegv.h.msvc): Update.
1530 2008-05-27  Bruno Haible  <bruno@clisp.org>
1532         * configure.ac: Bump version number to 2.6.
1533         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
1535 2008-05-27  Bruno Haible  <bruno@clisp.org>
1537         Support for 64-bit mode on MacOS X 10.5.
1538         * src/handler-macos.c (catch_exception_raise): Align the stack pointer
1539         also on x86_64. Needed for MMX instructions.
1540         * src/machfault-macos-i386.h: Choose among 64-bit and 32-bit flavours.
1541         Use new names for the 32-bit flavour when possible.
1542         * src/machfault-macos-powerpc.h: Choose among 64-bit and 32-bit
1543         flavours.
1544         * configure.ac (FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE2): Choose
1545         right flavour (ppc_thread_state_t/ppc_thread_state64_t or
1546         i386_thread_state_t/x86_thread_state32_t/x86_thread_state64_t) at
1547         compile time.
1549 2008-05-18  Bruno Haible  <bruno@clisp.org>
1551         * m4/libtool.m4: Update from libtool-2.2.4.
1552         * m4/ltoptions.m4: Likewise.
1553         * m4/ltversion.m4: Likewise.
1554         * m4/lt~obsolete.m4: Likewise.
1555         * build-aux/ltmain.sh: Likewise.
1557 2008-04-06  Bruno Haible  <bruno@clisp.org>
1559         * m4/libtool.m4: Update from libtool-2.2.2.
1560         * m4/ltoptions.m4: New file, from libtool-2.2.2.
1561         * m4/ltsugar.m4: New file, from libtool-2.2.2.
1562         * m4/ltversion.m4: New file, from libtool-2.2.2.
1563         * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
1564         * build-aux/ltmain.sh: New file, from libtool-2.2.2.
1565         * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
1567 2007-11-16  Bruno Haible  <bruno@clisp.org>
1569         * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Use sc_rsp
1570         also on x86_64-freebsd platform.
1571         Reported by Dmitri Hrapof <hrapof@common-lisp.ru> and
1572         Petr Salinger <Petr.Salinger@seznam.cz>.
1574 2007-11-15  Bruno Haible  <bruno@clisp.org>
1576         * configure.ac (CFG_SIGNALS, CFG_FAULT): Port to i586-kfreebsd-gnu
1577         and x86_64-kfreebsd-gnu.
1578         * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Likewise.
1579         Based on patch by Petr Salinger <Petr.Salinger@seznam.cz>.
1581 2007-11-11  Bruno Haible  <bruno@clisp.org>
1583         * Version 2.5 released.
1585 2007-11-11  Bruno Haible  <bruno@clisp.org>
1587         * configure.ac: Bump version number to 2.5.
1588         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
1590 2007-10-28  Bruno Haible  <bruno@clisp.org>
1592         * src/handler-macos.c (catch_exception_raise): Align the new stack
1593         pointer on a 16-byte boundary.
1594         * src/handler-win32.c (main_exception_filter): Correct alignment:
1595         %esp must be aligned to == -4 mod 16 upon function entry.
1597 2007-10-28  Bruno Haible  <bruno@clisp.org>
1599         * src/sigsegv.h.in (stackoverflow_install_handler): Avoid comment
1600         inside comment.
1601         Reported by Chris Willmore <willmc@rpi.edu>.
1603 2007-10-28  Bruno Haible  <bruno@clisp.org>
1605         * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS,
1606         SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Add __DARWIN_UNIX03
1607         conditional.
1608         * src/machfault-macos-i386.h (SIGSEGV_FAULT_ADDRESS,
1609         SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Likewise.
1610         * src/fault-macosdarwin7-powerpc.h (SIGSEGV_FAULT_STACKPOINTER):
1611         Likewise.
1612         * src/fault-macosdarwin7-powerpc.c (get_fault_addr): Likewise.
1613         Reported by Chris Willmore <willmc@rpi.edu>.
1615 2007-01-12  Bruno Haible  <bruno@clisp.org>
1617         * Makefile.am (check-next): Don't ask for reports from x86_64-*-linux*
1618         platforms.
1620 2006-07-14  Bruno Haible  <bruno@clisp.org>
1622         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Use SIGSTKSZ instead of
1623         hardcoding 16384.
1624         * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
1625         * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
1626         Likewise.
1627         * tests/stackoverflow1.c (main): Likewise.
1628         * tests/stackoverflow2.c (main): Likewise.
1629         * src/sigsegv.h.in (stackoverflow_install_handler): Update
1630         recommendation for extra_stack_size.
1631         Needed for ia64.
1632         Reported by Peter Van Eynde <pvaneynd@users.sourceforge.net>.
1634 2006-06-23  Bruno Haible  <bruno@clisp.org>
1636         * Version 2.4 released.
1638 2006-06-23  Bruno Haible  <bruno@clisp.org>
1640         * configure.ac: Bump version number to 2.4.
1641         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
1643 2006-06-17  Bruno Haible  <bruno@clisp.org>
1645         * src/Makefile.am (noinst_HEADERS): Add fault-netbsd.h.
1647 2006-06-17  Bruno Haible  <bruno@clisp.org>
1649         * m4/sigaltstack.m4: Insert 'volatile' and pass a pointer, to defeat
1650         GCC 4 optimizations.
1651         * m4/sigaltstack-longjmp.m4: Likewise.
1652         * m4/sigaltstack-siglongjmp.m4: Likewise.
1654 2006-06-17  Bruno Haible  <bruno@clisp.org>
1656         * tests/stackoverflow1.c (recurse): Remove useless cast.
1657         * tests/stackoverflow2.c (recurse): Likewise.
1659 2006-06-17  Bruno Haible  <bruno@clisp.org>
1661         * src/stackvma-freebsd.c (sigsegv_get_vma): Test whether mincore()
1662         works as expected before using it.
1664 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1666         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
1667         "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
1669 2006-06-13  Bruno Haible  <bruno@clisp.org>
1671         Make NetBSD/i386 stack overflow detection work even without mincore.
1672         * src/fault-netbsd.h: New file.
1673         * configure.ac (CFG_FAULT): Choose it when appropriate.
1675 2006-05-16  Bruno Haible  <bruno@clisp.org>
1677         Don't allow the compiler to reorder instructions in the tests.
1678         * tests/sigsegv1.c (crashes): Use volatile in pointer access.
1679         * tests/sigsegv2.c (main): Likewise.
1680         * tests/stackoverflow2.c (main): Likewise.
1682 2006-05-14  Bruno Haible  <bruno@clisp.org>
1684         Exploit the mincore() system call where available.
1685         * src/stackvma-mincore.c: New file.
1686         * src/Makefile.am (EXTRA_DIST): Add it.
1687         * src/stackvma.h: Add double-inclusion guard.
1688         * src/stackvma-freebsd.c: If mincore() is available, include also
1689         stackvma-mincore.c.
1690         (sigsegv_get_vma): If mincore() is available, use it as fallback.
1691         * src/stackvma-linux.c: If mincore() is available, include also
1692         stackvma-mincore.c.
1693         (sigsegv_get_vma): If mincore() is available, use it as fallback.
1694         * src/stackvma-procfs.c: If mincore() is available, include also
1695         stackvma-mincore.c.
1696         (sigsegv_get_vma): If mincore() is available, use it as fallback.
1697         * configure.ac: Test for mincore.
1698         (CFG_STACKVMA): Set to stackvma-mincore.c if nothing else is available.
1700 2006-05-14  Bruno Haible  <bruno@clisp.org>
1702         * src/stackvma-simple.c: New file, extracted from handler-unix.c.
1703         * src/Makefile.am (EXTRA_DIST): Add it.
1704         * src/stackvma-beos.c: Include stackvma-simple.c.
1705         (sigsegv_get_vma): Fill the vma's is_near_this field.
1706         * src/stackvma-freebsd.c: Include stackvma-simple.c.
1707         (sigsegv_get_vma): Fill the vma's is_near_this field.
1708         * src/stackvma-linux.c: Include stackvma-simple.c.
1709         (sigsegv_get_vma): Fill the vma's is_near_this field.
1710         * src/stackvma-mach.c: Include stackvma-simple.c.
1711         (sigsegv_get_vma): Fill the vma's is_near_this field.
1712         * src/stackvma-procfs.c: Include stackvma-simple.c.
1713         (sigsegv_get_vma): Fill the vma's is_near_this field.
1714         * src/stackvma.h (vma_struct): Add is_near_this field.
1715         * src/handler-unix.c (sigsegv_handler): Use the vma's is_near_this
1716         function.
1718 2006-04-28  Bruno Haible  <bruno@clisp.org>
1720         * Version 2.3 released.
1722 2006-04-28  Bruno Haible  <bruno@clisp.org>
1724         * configure.ac: Bump version number to 2.3.
1725         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
1727         * build-aux/config.guess, build-aux/config.sub: Update to GNU version
1728         2006-04-26.
1730         * build-aux/install-sh: Update from automake-1.9.6.
1731         * build-aux/missing: Likewise.
1733         * build-aux/ltmain.sh: Update from libtool-1.5.22.
1734         * m4/libtool.m4: Likewise.
1736 2006-04-28  Bruno Haible  <bruno@clisp.org>
1738         * build-aux: Renamed from autoconf.
1739         * configure.ac (AC_CONFIG_AUX_DIR): Set to build-aux.
1741 2006-04-22  Bruno Haible  <bruno@clisp.org>
1743         * configure.ac: Renamed from configure.in.
1745 2006-04-21  Bruno Haible  <bruno@clisp.org>
1747         * src/machfault-macos-i386.h: Rewritten for Darwin 8.6.1.
1748         * configure.in: Change FAULT_CONTEXT for i?86-darwin.
1750 2005-06-21  Paolo Bonzini  <bonzini@gnu.org>
1752         * configure.in: For handler-macos.c, include mach/thread_status.h.
1753         * configure: Regenerate.
1755 2005-06-21  Paolo Bonzini  <bonzini@gnu.org>
1757         * tests/stackoverflow1.c (recurse): Make more resilient to compiler
1758         optimization.
1759         (recurse_1): New.
1760         * tests/stackoverflow2.c: Likewise.
1762 2005-05-24  Bruno Haible  <bruno@clisp.org>
1764         * src/handler-win32.c (main_exception_filter): Copy CONTEXT structure
1765         to safe area on the stack.
1766         Based on patch by Doug Currie <e@flavors.com>.
1768         * src/handler-win32.c (main_exception_filter): Swap arguments passed
1769         to stack_overflow_handler.
1770         Patch by Doug Currie <e@flavors.com>.
1772         * src/handler-win32.c (main_exception_filter): Align %esp on a 16-byte
1773         boundary.
1775 2005-03-02  Bruno Haible  <bruno@clisp.org>
1777         * Version 2.2 released.
1779 2005-03-02  Bruno Haible  <bruno@clisp.org>
1781         * autoconf/config.guess: Update.
1782         * autoconf/config.sub: Update.
1783         * autoconf/missing: Update from automake-1.9.5.
1785         * m4/libtool.m4: Upgrade to libtool-1.5.14 with gettext modifications.
1786         * autoconf/ltmain.sh: Likewise.
1788 2005-03-02  Bruno Haible  <bruno@clisp.org>
1790         * src/fault-aix5.h: New file.
1791         * src/fault-aix5-powerpc.h: New file.
1792         * src/Makefile.am (noinst_HEADERS): Add them.
1793         * configure.in: Choose them when the POSIX test succeeds on AIX.
1795         * src/fault-aix3-powerpc.h: Renamed from src/fault-aix-powerpc.h.
1796         * src/fault-aix3.h: Renamed from src/fault-aix.h.
1797         * src/Makefile.am (noinst_HEADERS): Update.
1798         * configure.in: Update. When cross-compiling, assume the AIX test
1799         succeeds only on AIX 3 and AIX 4.
1801 2005-03-01  Bruno Haible  <bruno@clisp.org>
1803         * configure.in: Fix test of CFG_MACHFAULT.
1805 2005-02-27  Bruno Haible  <bruno@clisp.org>
1807         * configure.in: Skip tests that are not needed on MacOS X >= 10.2.
1808         * m4/sigaltstack.m4 (SV_SIGALTSTACK): Don't perform the test on
1809         MacOS X >= 10.2.
1811 2005-02-18  Bruno Haible  <bruno@clisp.org>
1813         * tests/sigsegv1.c (handler_called): Declare as volatile.
1814         * tests/sigsegv2.c (logcount, logdata): Likewise.
1815         * tests/stackoverflow1.c (pass): Likewise.
1816         * tests/stackoverflow2.c (pass): Likewise.
1818 2005-01-29  Bruno Haible  <bruno@clisp.org>
1820         * src/sigsegv.h.in (LIBSIGSEGV_VERSION): New macro.
1821         (libsigsegv_version): New declaration.
1822         * src/version.c: New file.
1823         * src/Makefile.am (libsigsegv_la_SOURCES): Add version.c.
1824         * Makefile.msvc (OBJECTS): Add version.obj.
1825         (version.obj): New rule.
1826         Suggested by Sam Steingold.
1828 2004-08-25  Bruno Haible  <bruno@clisp.org>
1830         * m4/libtool.m4: Upgrade to libtool-1.5.6.
1831         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
1833 2004-08-18  Bruno Haible  <bruno@clisp.org>
1835         * configure.in: Bump version number to 2.2.
1837 2004-08-17  Bruno Haible  <bruno@clisp.org>
1839         Finish the Mach-based MacOS X support.
1840         * src/handler-macos.c: Don't include mach/vm_map.h.
1841         Include machfault.h instead of fault.h.
1842         (save_exc_state): Remove variable.
1843         (save_thread_state): New variable.
1844         (terminating_handler): New function.
1845         (altstack_handler): Pass the save_thread_state, not the save_exc_state,
1846         to the user's handler.
1847         (catch_exception_raise): Make it work also for platforms which don't
1848         have an exc_state type. Call SIGSEGV_FAULT_ADDRESS with 2 arguments.
1849         Don't clobber the exc_state; instead set the thread's program counter
1850         to terminating_handler or altstack_handler, depending on the case.
1851         Return KERN_SUCCESS at the end.
1852         * src/machfault.h: New file.
1853         * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS): Add a second
1854         argument.
1855         * src/machfault-macos-i386.h: New file.
1856         * src/Makefile.am (EXTRA_DIST): Add handler-macos.c.
1857         (NOINST_HEADERS): Add machfault.h, machfault-macos-i386.h,
1858         machfault-macos-powerpc.h.
1859         * configure.in (CFG_HANDLER): Initialize to empty.
1860         (CFG_MACHFAULT): New substituted variable.
1861         On MacOS X PowerPC+i386, use CFG_HANDLER=handler-macos.c
1862         unconditionally.
1863         (sv_cv_fault_include, sv_cv_have_stack_overflow_recovery): Set
1864         correctly also in the handler-macos.c case.
1866 2004-08-16  Bruno Haible  <bruno@clisp.org>
1868         Support for MacOS X 10.3 on PowerPC.
1869         * src/fault-macosdarwin5-powerpc.h: Renamed from
1870         src/fault-macos-powerpc.h.
1871         * src/fault-macosdarwin5-powerpc.c: Renamed from
1872         src/fault-macos-powerpc.c.
1873         * src/fault-macosdarwin7-powerpc.h: New file.
1874         * src/fault-macosdarwin7-powerpc.c: New file.
1875         * src/Makefile.am (noinst_HEADERS): Update.
1876         * configure.in: Test the method for MacOSX/Darwin5 PowerPC only after
1877         the method for MacOSX/Darwin7 PowerPC failed.
1878         Substitute FAULT_CONTEXT_INCLUDE2.
1879         * src/sigsegv.h.in: Insert @FAULT_CONTEXT_INCLUDE2@.
1880         * src/Makefile.am (sigsegv.h.msvc): Replace @FAULT_CONTEXT_INCLUDE2@.
1882 2003-12-09  Paolo Bonzini  <bonzini@gnu.org>
1884         * src/handler-macos.c: Completed; removed dependency on
1885         signals.
1886         * src/machfault-macos-powerpc.h: Reorganized.
1888 2003-12-08  Paolo Bonzini  <bonzini@gnu.org>
1889             Bruno Haible  <bruno@clisp.org>
1891         * src/handler-macos.c: New file.
1892         * src/machfault.h: New file.
1893         * src/machfault-macos-powerpc.h: New file.
1895 2003-12-05  Bruno Haible  <bruno@clisp.org>
1897         * m4/fault.m4: Tweak indentation. Bump serial number.
1898         * m4/getpagesize.m4: Likewise.
1899         * m4/mmap-anon.m4: Likewise.
1900         * m4/sigaltstack.m4: Likewise.
1901         * m4/sigaltstack-longjmp.m4: Likewise.
1902         * m4/sigaltstack-siglongjmp.m4: Likewise.
1904 2003-12-05  Paolo Bonzini  <bonzini@gnu.org>
1906         * aclocal.m4: Regenerate with Automake 1.7h.
1907         * configure.in: Drop m4/Makefile from list of generated files.
1908         * configure: Regenerate.
1909         * Makefile.am (install-data-hook): New name of the install-am
1910         target, for Automake 1.8 compatibility.  Other -am targets
1911         are not affected because Automake does not have anything to
1912         do to make them.
1913         (AUTOMAKE_OPTIONS): Bump minimum Automake requirement to 1.7h.
1914         (SUBDIRS): Remove m4.
1915         ($(srcdir)/config.h.msvc): New target for config.h.msvc.
1916         * Makefile.in: Regenerate with Automake 1.7h.
1917         * m4/Makefile.am: Delete, Automake 1.7h takes care of it.
1918         * m4/Makefile.in: Delete.
1919         * src/Makefile.am (installdirs): Delete, Automake 1.7h adds it.
1920         * src/Makefile.in: Regenerate with Automake 1.7h.
1921         * tests/Makefile.in: Regenerate with Automake 1.7h.
1923         * autoconf/config.guess: Update from automake-1.7h.
1924         * autoconf/config.sub: Likewise.
1925         * autoconf/install.sh: Likewise.
1926         * autoconf/missing: Likewise.
1927         * autoconf/mkinstalldirs: Delete.
1928         * m4/fault.m4: autoupdate and manually tweak.
1929         * m4/sigaltstack.m4: Likewise.
1930         * m4/sigaltstack-longjmp.m4: Likewise.
1931         * m4/sigaltstack-siglongjmp.m4: Likewise.
1932         * m4/mmap-anon.m4: Likewise.
1933         * m4/getpagesize.m4: Likewise.
1935 2003-10-29  Bruno Haible  <bruno@clisp.org>
1937         * tests/sigsegv1.c (main): Add a check whether mprotect with
1938         PROT_READ_WRITE really works.
1939         * tests/sigsegv2.c (main): Likewise.
1940         Reported by Ullal Devappa Kini <wmbfqj@vsnl.net>.
1942 2003-08-21  Bruno Haible  <bruno@clisp.org>
1944         * Version 2.1 released.
1946 2003-06-24  Paolo Bonzini  <bonzini@gnu.org>
1948         * m4/fault.m4: Exit if we detect an infinite loop.
1949         * aclocal.m4: Regenerate.
1950         * configure: Regenerate.
1952 2003-06-18  Bruno Haible  <bruno@clisp.org>
1954         * autoconf/install-sh: Update from automake-1.7.5.
1956 2003-05-14  Paolo Bonzini  <bonzini@gnu.org>
1958         * configure.in: Use signals-bsd.h for OpenBSD and NetBSD too.
1959         Support instruction decoding to get fault address for Alphas.
1960         * src/fault-netbsd-alpha.h: New file.
1961         * src/fault-netbsd-alpha.c: New file.
1962         * src/Makefile.am (noinst_HEADERS): Add them.
1964 2003-05-14  Paolo Bonzini  <bonzini@gnu.org>
1966         * src/dispatcher.c (insert): Fix lossage in 64-bit environments
1967         (cast from void* to unsigned int).
1969 2003-05-10  Bruno Haible  <bruno@clisp.org>
1971         * tests/Makefile.am (../src/libsigsegv.la): New rule.
1973         * Makefile.msvc (handler.obj): Complete the dependencies.
1974         (stackoverflow2.exe): New rule.
1975         (check): Depend on it.
1976         (clean): Remove it.
1978 2003-05-10  Paolo Bonzini  <bonzini@gnu.org>
1979             Bruno Haible  <bruno@clisp.org>
1981         * configure.in: AC_SUBST of CFG_STACKVMA, CFG_LEAVE, CFG_HANDLER.
1982         * src/Makefile.am: Add dependencies for the object files.
1984 2003-05-08  Paolo Bonzini  <bonzini@gnu.org>
1986         * configure.in: Add $srcdir/ to #include statements. Needed when
1987         builddir != srcdir.
1989         * src/signals-macos.h (SIGSEGV_FOR_ALL_SIGNALS): Add SIGSEGV.
1991 2003-05-03  Paolo Bonzini  <bonzini@gnu.org>
1993         * configure.in: Tweak 2003-04-26 patch so that it works on mingw32 and
1994         Cygwin.
1996 2003-05-02  Bruno Haible  <bruno@clisp.org>
1998         * src/handler-unix.c: Add special case for stack handling on IA-64.
1999         * src/fault-linux-ia64.h: Complete the port.
2000         * configure.in: Improve Linux/IA-64 support.
2002 2003-05-01  Bruno Haible  <bruno@clisp.org>
2004         * configure.in: Don't use fault-hurd.h on NetBSD/alpha. It does not
2005         work.
2007 2003-05-01  Bruno Haible  <bruno@clisp.org>
2009         Support for Linux/HPPA.
2010         * fault-linux-hppa.h: Don't include <siginfo.h>.
2011         (SIGSEGV_FAULT_ADDRESS): Change.
2012         (SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO): Define it, otherwise the value
2013         passed for sip is 0.
2014         (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): Remove macros.
2015         * configure.in: Improve Linux/HPPA support.
2017 2003-05-01  Bruno Haible  <bruno@clisp.org>
2019         Support for OpenBSD/i386.
2020         * src/fault-openbsd.h: New file.
2021         * src/fault-openbsd-i386.h: New file.
2022         * src/Makefile.am (noinst_HEADERS): Add them.
2023         * configure.in: If the POSIX test works and the OS is OpenBSD, use
2024         fault-openbsd.h instead of fault-posix.h.
2026 2003-05-01  Bruno Haible  <bruno@clisp.org>
2028         * src/fault-hpux-hppa.h: Make it work on machines with 64-bit registers
2029         as well.
2030         * configure.in: Likewise.
2032 2003-04-29  Bruno Haible  <bruno@clisp.org>
2034         * configure.in: Define HAVE_STACKVMA if CFG_STACKVMA is nontrivial.
2035         * src/handler-unix.c: Test HAVE_STACKVMA instead of CFG_STACKVMA.
2037         * m4/fault.m4 (SV_TRY_FAULT): On HP-UX, always pass 0 as first argument
2038         of mmap().
2039         * tests/mmaputil.h (mmap_zeromap): Likewise.
2041 2003-04-28  Bruno Haible  <bruno@clisp.org>
2043         * src/stackvma-freebsd.c (sigsegv_get_vma): Fix logic error.
2045 2002-04-17  Paolo Bonzini  <bonzini@gnu.org>
2047         Support for Cygwin.
2048         * configure.in: Treat cygwin* like mingw*.
2049         * src/handler-win32.c [CYGWIN] (exception_list, _except_list,
2050         debug_get_except_list, cygwin_exception_handler,
2051         libsigsegv_exception_handler, do_install_main_exception_filter): New
2052         definitions.
2053         (install_main_exception_filter): New function.
2054         (sigsegv_install_handler, stackoverflow_install_handler): Call it.
2056 2003-04-26  Bruno Haible  <bruno@clisp.org>
2058         * configure.in: Don't set sv_cv_have_stack_overflow_recovery=yes if
2059         not all of the fault-*.h and stackvma-*.h premises are fulfilled.
2060         Reported by Paolo Bonzini <bonzini@gnu.org> for NetBSD/Alpha.
2062 2003-04-03  Bruno Haible  <bruno@clisp.org>
2064         * configure.in: Add --enable-relocatable option.
2065         * m4/relocatable.m4: New file, from GNU gettext.
2066         * m4/Makefile.am (EXTRA_DIST): Add it.
2068         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.4.3.
2069         * autoconf/ltmain.sh: Likewise.
2071 2003-04-02  Bruno Haible  <bruno@clisp.org>
2073         * configure.in: Bump version number to 2.1.
2075         * tests/stackoverflow2.c: New file, based on code by Paolo Bonzini.
2076         * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add stackoverflow2.
2078 2003-04-02  Paolo Bonzini  <bonzini@gnu.org>
2079             Bruno Haible  <bruno@clisp.org>
2081         Complete the port to MacOS X (Darwin).
2082         * m4/fault.m4: Include sys/signal.h. Have an exit status of 3 instead
2083         of 1 if fault_address is misdetected.
2084         * m4/sigaltstack.m4: Define stack_t to struct sigaltstack if absent.
2085         Include <sys/signal.h>.
2086         * configure.in: Add check for sys/signal.h.
2087         Add support for catching stack overflow on MacOSX.
2088         Add support for MacOSX on i386.
2089         Provide a fallback for SS_ONSTACK before using it.
2090         * src/fault-macos-i386.h: New file.
2091         * src/stackvma-mach.c: New file.
2092         * src/fault-macos-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Change.
2093         * src/handler-unix.c: Include <sys/signal.h>.
2094         (SS_DISABLE): Provide a fallback.
2095         * src/leave-sigaltstack.c: Include sys/signal.h.
2096         (SS_ONSTACK): Provide a fallback.
2097         * src/Makefile.am (noinst_HEADERS): Add fault-macos-i386.h.
2098         (EXTRA_DIST): Add stackvma-mach.c.
2099         * tests/sigsegv1.c: Abort after 10 handler invocations.
2100         (main): Drop SKIP message, now emitted by automake 1.7.x.
2101         * tests/sigsegv2.c: Abort after 10 handler invocations.
2102         (main): Drop SKIP message, now emitted by automake 1.7.x.
2103         * tests/stackoverflow1.c (main): Drop SKIP message, now emitted by
2104         automake 1.7.x.
2106 2002-10-14  Bruno Haible  <bruno@clisp.org>
2108         * src/fault-none.h: New file.
2109         * src/fault.h: Include CFG_FAULT unconditionally.
2110         * src/leave-none.c: New file.
2111         * src/leave.c: Include CFG_LEAVE unconditionally.
2112         * src/stackvma.c: Include CFG_STACKVMA unconditionally.
2113         * configure.in (CFG_LEAVE, CFG_STACKVMA): Define always.
2114         * src/Makefile.am (noinst_HEADERS): Add fault-none.h.
2115         (EXTRA_DIST): Add leave-none.c.
2116         Reported by Paolo Bonzini <bonzini@gnu.org>.
2118 2002-09-30  Bruno Haible  <bruno@clisp.org>
2120         * src/Makefile.am (noinst_HEADERS): Add fault-hurd.h,
2121         fault-linux-m68k.c, fault-macos-powerpc.h, fault-macos-powerpc.c,
2122         signals-hurd.h, signals-macos.h.
2124 2002-09-30  Bruno Haible  <bruno@clisp.org>
2126         * Makefile.am (check-next): Don't ask for reports from i?86-*-linux*
2127         platforms.
2129 2002-09-30  Bruno Haible  <bruno@clisp.org>
2131         Better Linux/PowerPC support.
2132         * configure.in: Change Linux/PowerPC support.
2133         * src/fault-linux-powerpc.h (SIGSEGV_FAULT_ADDRESS): New macro.
2135 2002-09-30  Bruno Haible  <bruno@clisp.org>
2137         Better Linux/m68k support.
2138         * configure.in: Change Linux/m68k support.
2139         * src/fault-linux-m68k.c: New file.
2140         * src/fault-linux-m68k.h: Use it.
2142 2002-09-30  Bruno Haible  <bruno@clisp.org>
2144         Tentative Hurd support.
2145         * configure.in: Add Hurd support.
2146         * src/signals-hurd.h: New file.
2147         * src/fault-hurd.h: New file.
2149 2002-09-30  Bruno Haible  <bruno@clisp.org>
2151         MacOSX/PowerPC support.
2152         * configure.in: Add MacOSX/PowerPC support.
2153         * src/signals-macos.h: New file.
2154         * src/fault-macos-powerpc.c: New file.
2155         * src/fault-macos-powerpc.h: New file.
2157 2002-09-16  Bruno Haible  <bruno@clisp.org>
2159         * src/fault-posix.h: Don't include <siginfo.h>. Needed for hppa-linux.
2160         Reported by Will Newton <will@misconception.org.uk>.
2162 2002-08-28  Bruno Haible  <bruno@clisp.org>
2164         * Version 2.0 released.
2166 2002-07-28  Bruno Haible  <bruno@clisp.org>
2168         Big reorganization and rewrite. Every file changed.