File: //usr/share/doc/libsigsegv/ChangeLog.1
2002-07-15 Bruno Haible <bruno@clisp.org>
* sigsegv.h.in (HAVE_STACK_OVERFLOW_RECOVERY): Define also on FreeBSD.
(stackoverflow_context_t): Define as 'struct sigcontext *' on FreeBSD.
* handler.c (SIGSEGV_ALL_SIGNALS) [FreeBSD]: Add SIGSEGV; this is the
signal that gets sent on stack overflow.
(get_vma) [FreeBSD]: New.
(reset_onstack_flag) [FreeBSD]: New .
2002-05-07 Paolo Bonzini <bonzini@gnu.org>
* sigsegv.h.in [__hpux, hpux]: Define HAVE_SIGSEGV_RECOVERY.
* handler.c (UNIX_HPUX) [__hpux, hpux]: New macro.
Define the hacks to access CR21.
* test1.c (mmap_zeromap): Return the address.
(handler): Don't hardcode the correct fault address.
(main): Set page to the result of mmap_zeromap.
* test2.c (mmap_zeromap): Return the address.
(main): Set area1/area2/area3 to the result of mmap_zeromap.
2002-05-06 Bruno Haible <bruno@clisp.org>
* test1.c: Include <stdlib.h>, for exit().
* test2.c: Likewise.
* test3.c: Likewise.
2002-04-28 Bruno Haible <bruno@clisp.org>
* Makefile.devel (ACLOCAL): Remove variable.
(ACSELECT): Remove variable.
(OTHERMACROS): Remove variable.
(m4/*.m4): New rules.
(autoconf/aclocal.m4): Construct using aclocal instead of acselect.
2001-08-25 Bruno Haible <haible@clisp.cons.org>
Upgrade to autoconf-2.52.
* autoconf/autoconf: Upgrade to autoconf-2.52.
* autoconf/acgeneral.m4: Remove file.
* autoconf/acspecific.m4: Remove file.
* autoconf/autoconf.m4f: New file, from autoconf-2.52.
* autoconf/aclocal.m4: Require autoconf-2.52.
(CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
AC_CANONICAL_HOST does it itself. Add $SHELL in front of
$ac_config_guess and $ac_config_sub.
(CL_SIGACTION_REINSTALL): Include <string.h>, for memset declaration.
* Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
Add autoconf.m4f.
(configure): Use autoconf options -A, -l instead of -m.
* config.h.in: Don't define HAVE_MEMSET.
(MPROTECT_CONST, SETRLIMIT_CONST): Use #undef, not #define, to work
around an autoconf bug.
2001-08-05 Bruno Haible <haible@clisp.cons.org>
* autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
(AC_LANG_EXTERN): Move to aclocal.m4.
* autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
(CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
(CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
2001-06-08 Bruno Haible <haible@clisp.cons.org>
* autoconf/ltmain.sh: Upgrade to libtool-1.4.
* autoconf/ltconfig: Remove file.
2001-06-08 Bruno Haible <haible@clisp.cons.org>
* autoconf/config.guess: Update to GNU version 2001-05-11.
* autoconf/config.sub: Likewise.
2001-05-09 Bruno Haible <haible@clisp.cons.org>
* sigsegv.h.in: Recognize __arm__ as CPU indicator on Linux.
* handler.c: Likewise.
2001-03-19 Bruno Haible <haible@clisp.cons.org>
* autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
ac_config_guess and ac_config_sub. Then ignore requests for
AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
2001-03-19 Bruno Haible <haible@clisp.cons.org>
* ltconfig, ltmain.sh: Upgrade to libtool-1.3.5.
2001-02-20 Bruno Haible <haible@clisp.cons.org>
* Makefile.in (libdir, includedir): Use the autoconf determined value,
in order to respect the configure arguments.
(mandir): Remove unused variable.
* Makefile.msvc (mandir): LIkewise.
* Makefile.in (install, installdirs, uninstall): Support DESTDIR.
2000-12-08 Bruno Haible <haible@clisp.cons.org>
* Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
2000-11-15 Bruno Haible <haible@clisp.cons.org>
* Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
2000-11-12 Bruno Haible <haible@clisp.cons.org>
* autoconf/config.guess, autoconf/config.sub: Upgrade to newest
version from GNU CVS.
2000-11-08 Bruno Haible <haible@clisp.cons.org>
* aclocal.m4 (CL_SIGNAL_UNBLOCK): Enable 'volatile' for gotsig,
wasblocked.
(CL_SIGNAL_BLOCK_OTHERS): Enable 'volatile' for gotsig,
somewereblocked.
(CL_SIGACTION_UNBLOCK): Enable 'volatile' for gotsig, wasblocked.
2000-09-29 Bruno Haible <haible@clisp.cons.org>
* autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
change.
2000-05-29 Bruno Haible <haible@clisp.cons.org>
* autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
2000-05-25 Bruno Haible <haible@clisp.cons.org>
* Makefile.msvc: Use 'copy' and 'ren' instead of 'cp' and 'mv'.
2000-05-23 Bruno Haible <haible@clisp.cons.org>
* autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
host_vendor, host_os correctly if $host has more than two hyphens.
2000-04-02 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
Allow building on filesystems lacking symlinks and hard links.
* Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
CL_PROG_LN_S.
* configure.in: Add CL_PROG_LN_S.
* src/Makefile.in (LN): Remove.
1999-06-18 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* handler.c (user_handler): Define also on WIN32.
1999-06-16 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* sigsegv.h.in (stackoverflow_context_t): More precise definition on
Solaris, Irix, OSF/1.
1999-05-30 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* Makefile.in (install-lib): New target.
1999-05-29 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* Makefile.in (install): Make sure the directories $(prefix) and
$(exec_prefix) exist.
1999-05-16 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
Libtoolify.
* autoconf/ltconfig, autoconf/ltmain.sh: New files, from libtool-1.2.
* Makefile.devel (OTHERMACROS): New macro.
(autoconf/aclocal.m4): Add the contents of $(OTHERMACROS).
* configure.in: Call CL_CANONICAL_HOST and AM_PROG_LIBTOOL.
* Makefile.in (LIBTOOL, LIBTOOL_COMPILE, LIBTOOL_LINK,
LIBTOOL_INSTALL, LIBTOOL_UNINSTALL): New macros.
(top_builddir): New macro.
(OBJECTS): Change .o to .lo.
(all): Change .a to .la.
(handler.lo): Renamed from handler.o. Use $(LIBTOOL_COMPILE).
(dispatcher.lo): Renamed from dispatcher.o. Use $(LIBTOOL_COMPILE).
(libsigsegv.la): Renamed from libsigsegv.a. Use $(LIBTOOL_LINK).
(install): Use $(LIBTOOL_INSTALL). Copy ./sigsegv.h not
$(srcdir)/sigsegv.h.
(uninstall): Use $(LIBTOOL_UNINSTALL).
(test1, test2, test3): Change .a to .la. Use $(LIBTOOL_LINK).
(clean): Also remove *.lo *.la .libs _libs.
(distclean): Also remove libtool.
1999-05-16 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
For Linux 2.0.x with glibc2.0.
* aclocal.m4 (CL_SIGALTSTACK): Define HAVE_SIGALTSTACK only if the
sigaction flags macro SA_ONSTACK is also defined.
1999-05-15 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
For DEC OSF/1 3.2.
* sigsegv.h.in (HAVE_STACK_OVERFLOW_RECOVERY): Undefine if test3
doesn't work.
* Makefile.in (SEDPREPARE0, SEDCOMMAND3): New macros.
(sigsegv.h): Also try running test3.
1999-05-09 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* sigsegv.h.in (HAVE_STACK_OVERFLOW_RECOVERY): Also define on Solaris,
Irix, OSF/1.
* handler.c: Use symbolic UNIX_* macros for various Unix brands.
(SIGSEGV_FAULT_HANDLER_ARGLIST, SIGSEGV_ALL_SIGNALS): Define also
when HAVE_SIGSEGV_RECOVERY is not defined. Add support for
Linux/m68k, Linux/mips, Linux/alpha, Linux/arm.
(SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): New macros.
(get_vma) [UNIX_LINUX]: No need to initialize prev twice.
(reset_onstack_flag) [UNIX_LINUX]: New function.
(get_vma, reset_onstack_flag) [UNIX_SUNOS, UNIX_IRIX, UNIX_OSF]: New
functions.
(sigsegv_leave_handler): If SIGACTION_NEED_UNBLOCK is defined,
unblock the signal itself. Call reset_onstack_flag.
(stackoverflow_deinstall_handler): Print something if sigaltstack
fails.
* aclocal.m4 (CL_SIGNAL_UNBLOCK, CL_SIGNAL_BLOCK_OTHERS,
CL_SIGACTION_UNBLOCK): Perform the test if either POSIX or BSD
signal mask primitives are available. Otherwise,
SIGACTION_NEED_UNBLOCK would not be defined on Solaris.
1999-05-07 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* test3.c (main): Make more verbose.
Avoid a "make check" failure with "cc" on DEC OSF/1 4.0.
* test2.c (barrier): New function.
(main): Call it at the right moment.
* Makefile.in (SEDPREPARE1, SEDCOMMAND2): Don't use # as literal.
Only GNU make understands \#, other `make's don't.
1999-05-02 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
Support for catching stack overflow on Unix, using sigaltstack().
* aclocal.m4 (CL_SIGALTSTACK): New macro.
* configure.in: Add CL_SIGALTSTACK and CL_RLIMIT.
* config.h.in: Add HAVE_SIGALTSTACK, HAVE_SETRLIMIT,
RLIMIT_RESOURCE_T, SETRLIMIT_CONST.
* Makefile.in (SEDPREPARE1, SEDCOMMAND1, SEDCOMMAND2): New macros.
(sigsegv.h): Use them. Depend on config.h.
* sigsegv.h.in: Test __linux__ instead of linux.
Conditionally define HAVE_STACK_OVERFLOW_RECOVERY for Linux.
(sigsegv_handler_t): Add `serious' argument.
(stackoverflow_context_t): New type.
(stackoverflow_handler_t, stackoverflow_install_handler,
stackoverflow_deinstall_handler): Declare unconditionally.
(stackoverflow_handler_t): Add `scp' argument.
(stackoverflow_install_handler): Change return type to `int'.
* handler.c: Test __linux__ instead of linux.
Move Win32 section to the end.
On Unix, install SIGSEGV handler if HAVE_SIGSEGV_RECOVERY or
HAVE_STACK_OVERFLOW_RECOVERY.
(vma_struct): New type.
(get_vma): New function.
(SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): New macros.
(stack_top): New variable.
(remember_stack_top): New function.
(stk_user_handler, stk_extra_stack, stk_extra_stack_size): New
variables.
(no_user_handler): Remove, use NULL instead.
(sigsegv_handler): Extend to support HAVE_STACK_OVERFLOW_RECOVERY.
(install_for): Add SA_ONSTACK to sigaction flags if needed.
(sigsegv_deinstall_handler): Deinstall handlers only if
not needed for stk_user_handler.
(stackoverflow_install_handler, stackoverflow_deinstall_handler):
New functions.
(stack_overflow_handler) [WIN32]: Add context argument.
(main_exception_filter): Pass context argument.
* test1.c (handler): Add `serious' argument.
* test2.c (handler): Likewise.
* test3.c (stackoverflow_handler): Add `scp' argument. Use
sigsegv_leave_handler instead of complicated #ifdef spaghetti.
(main): Call setrlimit, to make sure the recursion doesn't kill the
machine. If stackoverflow_install_handler returns -1, bypass the
test, because it would crash.
1999-03-15 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* configure.in: Add CL_CC_GCC.
* Makefile.in: Use "-x none" option where appropriate.
* dispatcher.c: In C++ mode, don't define a function named `delete'.
1999-02-08 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* sigsegv/sigsegv.h.in: Renamed from sigsegv/sigsegv.h.
Added "#undef HAVE_SIGSEGV_RECOVERY", commented out.
* Makefile.in (sigsegv.h): Try compiling and running test1. If it
fails, like on Solaris 2.5 and 2.5.1, uncomment "#undef
HAVE_SIGSEGV_RECOVERY".
* Makefile.msvc: Update.
1999-01-29 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
* sigsegv.h [linux && sparc]: Disable HAVE_SIGSEGV_RECOVERY. It does
not work any more.