perror: Recognize when test program crashes.
[gnulib.git] / ChangeLog
index 7ca4425..7f591a2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,314 @@
+2011-10-22  Bruno Haible  <bruno@clisp.org>
+
+       perror: Recognize when test program crashes.
+       * m4/perror.m4 (gl_FUNC_PERROR): If the test program crashes due to
+       strerror, set gl_cv_func_perror_works to no.
+       Reported by Daniel Richard G. <skunk@iskunk.org>.
+
+       perror: Fix indentation.
+       * m4/perror.m4 (gl_FUNC_PERROR): Fix indentation.
+
+2011-10-22  Bruno Haible  <bruno@clisp.org>
+
+       isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
+       * lib/math.in.h (_GL_MATH_CXX_REAL_FLOATING_DECL_1,
+       _GL_MATH_CXX_REAL_FLOATING_DECL_2): nEW MACROS.
+       (isfinite, isinf, isnan, signbit): In C++, define as overloaded
+       functions, not as a macro.
+       * tests/test-math-c++.cc (REAL_FLOATING_CHECK, OVERLOADED_CHECK): New
+       macros.
+       (isfinite, isinf, isnan, signbit): Check overloaded functions and
+       absence of macro.
+       Suggested by Eric Blake.
+       Reported by Michael Goffioul <michael.goffioul@gmail.com>.
+
+2011-10-21  Bruno Haible  <bruno@clisp.org>
+
+       relocatable-prog-wrapper: Don't leave object files behind.
+       * build-aux/install-reloc: Re-synchronize list of .o files to be
+       removed with list of compilation units.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       openpty, posix_openpt: Remove code duplication.
+       * lib/posix_openpt.c: Add comments about platforms, from lib/openpty.c.
+       * lib/openpty.c: Include <stdlib.h>.
+       (openpty): Use posix_openpt on all platforms except IRIX.
+       * modules/openpty (Depends-on): Add posix_openpt. Add conditions.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       unlockpt: Detect invalid argument.
+       * lib/unlockpt.c: Include <fcntl.h>.
+       (unlockpt): Check whether fd is valid, using fcntl().
+       * modules/unlockpt (Depends-on): Add fcntl-h.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       openpty: Avoid compilation error on AIX 6.1.
+       * lib/pty.in.h [AIX]: Include <sys/ioctl.h>, for 'struct winsize'.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       posix_openpt: Support for OpenBSD.
+       * lib/posix_openpt.c [OpenBSD]: Include <sys/ioctl.h>, <sys/tty.h>.
+       (posix_openpt) [OpenBSD]: New code.
+       * lib/grantpt.c: Include <fcntl.h>.
+       (grantpt) [OpenBSD]: Only test whether fd is valid, nothing else.
+       * modules/grantpt (Depends-on): Add fcntl-h.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       posix_openpt test: Coding style.
+       * tests/test-posix_openpt.c: Use GNU coding style.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       grantpt: Support --avoid=pt_chown.
+       * modules/grantpt (Files): Add lib/pty-private.h.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       posix_openpt: Fix autoconf macro.
+       * m4/posix_openpt.m4 (gl_FUNC_POSIX_OPENPT): Fix variable name. Remove
+       unneeded check for _getpty.
+
+2011-10-20  Bruno Haible  <bruno@clisp.org>
+
+       openpty: Update comments.
+       * lib/openpty.c: Add comments about Minix.
+
+2011-10-19  Eric Blake  <eblake@redhat.com>
+
+       openpty: relax license
+       * modules/openpty (License): Change from LGPLv3+ to LGPLv2+.
+
+       pt_chown: use configmake to simplify build
+       * modules/pt_chown (Makefile.am): Drop line guaranteed by configmake.
+
+       ptsname and others: relax license
+       * modules/grantpt (License): Change from LGPLv3+ to LGPLv2+.
+       * modules/unlockpt (License): Likewise.
+       * modules/pt_chown (License): Likewise.
+       * modules/ptsname (License): Likewise.
+       * modules/ttyname_r (License): Likewise.
+
+2011-10-19  Jim Meyering  <meyering@redhat.com>
+
+       posix_openpt: remove spurious #endif
+       * lib/posix_openpt.c (posix_openpt): Remove spurious #endif.
+
+2011-10-19  Gary V. Vaughan  <gary@gnu.org>
+
+       maint.mk: Respect $(build_aux) in web-manual rule.
+       * top/maint.mk (web-manual): Find gen-announce script in user's
+       $(build_aux) directory instead of hard-coding 'build-aux'.
+
+2011-10-19  Bruno Haible  <bruno@clisp.org>
+
+       posix_openpt: Fix compilation error.
+       * lib/posix_openpt.c (posix_openpt): Renamed from posix_openpty.
+       * doc/posix-functions/posix_openpt.texi: Mention ENOENT error code.
+       Mention the openpty module as an alternative.
+
+2011-10-19  Bruno Haible  <bruno@clisp.org>
+
+       Support for old NeXTstep 3.3 frexp().
+       * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Check for alarm. Limit the
+       execution time of the test to 5 seconds.
+       Reported by Daniel Richard G. <skunk@iskunk.org>.
+
+2011-10-19  Bruno Haible  <bruno@clisp.org>
+
+       Support for old NeXTstep 3.3 sed.
+       * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER_ONE): In the sed address
+       part, use /.../, not \|...|. Escape periods in the header file name.
+       * m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): Likewise.
+       Reported by Daniel Richard G. <skunk@iskunk.org>.
+
+2011-10-18  Daniel Richard G.  <skunk@iskunk.org>  (tiny change)
+
+       Support for old NeXTstep 3.3 gcc.
+       * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Write
+       'defined __STRICT_ANSI__', not '__STRICT_ANSI__'.
+       * lib/math.in.h (_GL_NUM_UINT_WORDS etc.): Likewise.
+       * lib/spawn.in.h (_Restrict_arr_): Likewise.
+       * lib/regex.h (_Restrict_arr_): Likewise.
+       * lib/regex_internal.h (re_token_t): Likewise.
+       * lib/regexec.c (check_node_accept_bytes): Likewise.
+       * tests/test-printf-posix.c (func1, func2, func3, func4): Likewise.
+
+2011-10-18  Eric Blake  <eblake@redhat.com>
+
+       posix_openpt: new module
+       * modules/posix_openpt: New module.
+       * m4/posix_openpt.m4: New file.
+       * lib/posix_openpt.c: Likewise.
+       * m4/stdlib_h.m4 (gl_STDLIB_H): Check for decl.
+       (gl_STDLIB_H_DEFAULTS): Set defaults.
+       * modules/stdlib (Makefile.am): Substitute macros.
+       * lib/stdlib.in.h (posix_openpt): Declare.
+       * MODULES.html.sh (systems lacking POSIX:2008): Document it.
+       * doc/posix-functions/posix_openpt.texi (posix_openpt): Likewise.
+       * modules/posix_openpt-tests: New test module.
+       * tests/test-posix_openpt.c: New test.
+
+2011-10-15  Bruno Haible  <bruno@clisp.org>
+
+       xstrtoll: Fix compilation failure.
+       * lib/xstrtol.c (ULLONG_MAX, LLONG_MAX, LLONG_MIN): New macros, taken
+       from lib/strtol.c.
+       * doc/posix-headers/limits.texi: Mention missing numerical limits on
+       some platforms.
+       Reported by Tom G. Christensen <tgc@jupiterrise.com>.
+
+2011-10-15  Bruno Haible  <bruno@clisp.org>
+
+       vasnprintf: Optimize bit search operation.
+       * lib/vasnprintf.c (divide): Use optimizations from integer_length.c.
+       * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Require
+       gl_DOUBLE_EXPONENT_LOCATION.
+       * modules/vasnprintf (Files): Add m4/exponentd.m4.
+       * modules/unistdio/u8-vasnprintf (Files): Likewise.
+       * modules/unistdio/u8-u8-vasnprintf (Files): Likewise.
+       * modules/unistdio/u16-vasnprintf (Files): Likewise.
+       * modules/unistdio/u16-u16-vasnprintf (Files): Likewise.
+       * modules/unistdio/u32-vasnprintf (Files): Likewise.
+       * modules/unistdio/u32-u32-vasnprintf (Files): Likewise.
+       * modules/unistdio/ulc-vasnprintf (Files): Likewise.
+       * m4/isnand.m4 (gl_PREREQ_ISNAND): Use AC_REQUIRE.
+
+2011-10-15  Bruno Haible  <bruno@clisp.org>
+
+       vasnprintf: Fix comments.
+       * lib/vasnprintf.c (decode_long_double, decode_double): Fix comments.
+
+2011-10-14  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'integer_length_ll'.
+       * modules/integer_length_ll-tests: New file.
+       * tests/test-integer_length_ll.c: New file.
+
+       New module 'integer_length_ll'.
+       * lib/integer_length_ll.c: New file.
+       * modules/integer_length_ll: New file.
+
+2011-10-14  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'integer_length_l'.
+       * modules/integer_length_l-tests: New file.
+       * tests/test-integer_length_l.c: New file.
+
+       New module 'integer_length_l'.
+       * lib/integer_length_l.c: New file.
+       * modules/integer_length_l: New file.
+
+2011-10-14  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'integer_length'.
+       * modules/integer_length-tests: New file.
+       * tests/test-integer_length.c: New file.
+
+       New module 'integer_length'.
+       * lib/integer_length.h: New file.
+       * lib/integer_length.c: New file.
+       * modules/integer_length: New file.
+
+2011-10-14  Daniel Richard G.  <skunk@iskunk.org>  (tiny change)
+
+       popen: Fix dependency conditions.
+       * modules/popen (Depends-on, configure.ac): Fix shell syntax error.
+
+2011-10-14  Daniel Richard G.  <skunk@iskunk.org>  (tiny change)
+
+       perror: Fix autoconf test.
+       * m4/perror.m4 (gl_FUNC_PERROR): In the test program, include
+       <stdlib.h> and <string.h>.
+
+2011-10-14  Bruno Haible  <bruno@clisp.org>
+
+       ffsl: Optimize on 64-bit platforms.
+       * lib/ffsl.h (FUNC): Omit a test from the last loop round. Do loop
+       unrolling.
+
+2011-10-13  Bruno Haible  <bruno@clisp.org>
+
+       ffsl: Optimize on 32-bit platforms.
+       * lib/ffsl.h (FUNC): If TYPE has the same representation as 'int', just
+       use ffs() without a loop.
+
+       ffsl, ffsll: Optimize for GCC.
+       * lib/ffsl.h (FUNC): Use GCC_BUILTIN if defined.
+       * lib/ffsl.c (GCC_BUILTIN): New macro.
+       * lib/ffsll.c (GCC_BUILTIN): Likewise.
+
+2011-10-13  Bruno Haible  <bruno@clisp.org>
+
+       ffs, bcopy, memset: Support symbol renaming via config.h.
+       * lib/ffs.c: Include <config.h>.
+       * lib/bcopy.c: Likewise.
+       * lib/memset.c: Likewise.
+
+2011-10-10  Bruno Haible  <bruno@clisp.org>
+
+       atanl: Simplify for platforms where 'long double' == 'double'.
+       * lib/atanl.c (atanl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+       alternative implementation.
+       * m4/atanl.m4 (gl_FUNC_ATANL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+       Determine ATANL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+       * modules/atanl (Depends-on): Add atan. Update conditions.
+
+2011-10-10  Bruno Haible  <bruno@clisp.org>
+
+       acosl: Simplify for platforms where 'long double' == 'double'.
+       * lib/acosl.c (acosl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+       alternative implementation.
+       * m4/acosl.m4 (gl_FUNC_ACOSL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+       Determine ACOSL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+       * modules/acosl (Depends-on): Add acos. Update conditions.
+
+2011-10-10  Bruno Haible  <bruno@clisp.org>
+
+       asinl: Simplify for platforms where 'long double' == 'double'.
+       * lib/asinl.c (asinl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+       alternative implementation.
+       * m4/asinl.m4 (gl_FUNC_ASINL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+       Determine ASINL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+       * modules/asinl (Depends-on): Add asin. Update conditions.
+
+2011-10-10  Bruno Haible  <bruno@clisp.org>
+
+       tanl: Simplify for platforms where 'long double' == 'double'.
+       * lib/tanl.c (tanl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+       implementation.
+       * m4/tanl.m4 (gl_FUNC_TANL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+       Determine TANL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+       * modules/tanl (Depends-on): Add tan. Update conditions.
+       (configure.ac): Don't compile trigl.c if
+       HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+
+2011-10-10  Bruno Haible  <bruno@clisp.org>
+
+       cosl: Simplify for platforms where 'long double' == 'double'.
+       * lib/cosl.c (cosl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+       implementation.
+       * m4/cosl.m4 (gl_FUNC_COSL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+       Determine COSL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+       * modules/cosl (Depends-on): Add cos. Update conditions.
+       (configure.ac): Don't compile sincosl.c and trigl.c if
+       HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+
+2011-10-10  Bruno Haible  <bruno@clisp.org>
+
+       sinl: Simplify for platforms where 'long double' == 'double'.
+       * lib/sinl.c (sinl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+       implementation.
+       * m4/sinl.m4 (gl_FUNC_SINL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+       Determine SINL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+       * modules/sinl (Depends-on): Add sin. Update conditions.
+       (configure.ac): Don't compile sincosl.c and trigl.c if
+       HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+
 2011-10-10  Bruno Haible  <bruno@clisp.org>
 
        logl: Simplify for platforms where 'long double' == 'double'.