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):
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>
23 * m4/fault.m4 (SV_TRY_FAULT): Use 'uintptr_t' instead of
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.
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.
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
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
87 2023-05-14 Bruno Haible <bruno@clisp.org>
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
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
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
122 * src/handler-unix.c (install_for): Add a cast when assigning to
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.
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>
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.
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.
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.
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.
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
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
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
244 2021-05-29 Bruno Haible <bruno@clisp.org>
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
256 * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
257 * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
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,
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
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
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
337 2021-05-15 Bruno Haible <bruno@clisp.org>
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>
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>
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.
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.
396 * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:6:0.
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
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
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
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
489 * src/machfault-macos.h (SIGSEGV_*): Define appropriately for arm64.
490 * src/stackvma-mach.c (sigsegv_get_vma): On arm64, use 64-bit type
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.
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
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
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>
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.
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
642 * tests/sigsegv1.c (SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS): Define based
643 on SIGSEGV_FAULT_ADDRESS_ALIGNMENT.
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]:
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]:
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>
665 * tests/sigsegv3.c (handler): Fix message.
667 2017-10-01 Bruno Haible <bruno@clisp.org>
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
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>
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.
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
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
794 2017-02-18 Bruno Haible <bruno@clisp.org>
797 * src/fault-linux-*.h: Update references to the glibc sources.
799 2017-01-10 Bruno Haible <bruno@clisp.org>
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
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
822 2016-11-23 Bruno Haible <bruno@clisp.org>
824 Drop the nickname "woe32".
825 * README.windows: Renamed from README.woe32.
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
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
841 * tests/sigsegv1.c: Include <stdint.h>. Use 'uintptr_t' instead of
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
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
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>
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
935 2011-04-03 Bruno Haible <bruno@clisp.org>
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>
982 * configure.ac: Bump version number to 2.9.
983 * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
985 * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): Bump to 2:2:0.
987 2010-11-06 Bruno Haible <bruno@clisp.org>
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
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"
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):
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.
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
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
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,
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
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
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.
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
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
1341 2009-05-21 Bruno Haible <bruno@clisp.org>
1343 * configure.ac (FAULT_CONTEXT_INCLUDE): Don't substitute into
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):
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
1379 * src/handler-unix.c (stackoverflow_install_handler): Adjust stack
1381 * tests/stackoverflow1.c (stack_lower_bound, stack_upper_bound): New
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
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
1432 (catch_exception_raise): Set signalled_thread during the user_handler
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
1447 (stackoverflow_handler): Update to new API.
1448 * tests/stackoverflow2.c (stackoverflow_handler_continuation): New
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
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
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
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
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
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
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
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):
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*
1620 2006-07-14 Bruno Haible <bruno@clisp.org>
1622 * m4/sigaltstack.m4 (SV_SIGALTSTACK): Use SIGSTKSZ instead of
1624 * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
1625 * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
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.
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
1690 (sigsegv_get_vma): If mincore() is available, use it as fallback.
1691 * src/stackvma-linux.c: If mincore() is available, include also
1693 (sigsegv_get_vma): If mincore() is available, use it as fallback.
1694 * src/stackvma-procfs.c: If mincore() is available, include also
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
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>
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
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
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*
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.