This patch is a revised and updated version of
<https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html>.
In order to generate overall summaries of the results of all tests in
the glibc testsuite, we need to identify and concatenate the files
with the results of individual tests.
Tomas Dohnalek's patch used $(common-objpfx)*/*.test-result for this.
However, the normal glibc approach is explicit enumeration of the
expected set of files with a given property, rather than all files
matching some pattern like that. Furthermore, we would like to be
able to mark tests as UNRESOLVED if the file with their results is for
some reason missing, and in future we would like to be able to mark
tests as UNSUPPORTED if they are disabled for a particular
configuration (rather than simply having them missing from the list of
tests as at present). Such handling of tests that were not run or did
not record results requires an explicit enumeration of tests.
For the tests following the default makefile rules, $(tests) (and
$(xtests)) provides such an enumeration. Others, however, are added
directly as dependencies of the "tests" and "xtests" makefile
targets. This patch changes the makefiles to put them in variables
tests-special and xtests-special, with appropriate dependencies on the
tests listed there then being added centrally.
Those variables are used in Rules and so need to be set before Rules
is included in a subdirectory makefile, which is often earlier in the
makefile than the dependencies were present before. We previously
discussed the question of where to include Rules; see the question at
<https://sourceware.org/ml/libc-alpha/2012-11/msg00798.html>, and a
discussion in
<https://sourceware.org/ml/libc-alpha/2013-01/msg00337.html> of why
Rules is included early rather than late in subdirectory makefiles.
It was necessary to avoid an indirection through the check-abi target
and get the check-abi-* targets for individual libraries into the
tests-special variable. The intl/ test $(objpfx)tst-gettext.out,
previously built only because of dependencies from other tests, was
also added to tests-special for the same reason.
The entries in tests-special are the full makefile targets, complete
with $(objpfx) and .out. If a future change causes tests to be named
consistently with a .out suffix, this can be changed to include just
the path relative to $(objpfx), without .out.
Tested x86_64, including that the same set of files is generated in
the build directory by a build and testsuite run both before and after
the patch (except for changes to the
elf/tst-null-argv.debug.out.<number> file name), and a build with
run-built-tests=no to verify there aren't any more obvious instances
of the issue Marcus Shawcroft reported with a previous version in
<https://sourceware.org/ml/libc-alpha/2014-01/msg00462.html>.
* Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(tests): Depend on $(tests-special).
* Makerules (check-abi-list): New variable.
(check-abi): Depend on $(check-abi-list).
[$(subdir) = elf] (tests-special): Add
$(objpfx)check-abi-libc.out.
[$(build-shared) = yes && subdir] (tests-special): Add
$(check-abi-list).
[$(build-shared) = yes && subdir] (tests): Do not depend on
check-abi.
* Rules (tests): Depend on $(tests-special).
(xtests): Depend on $(xtests-special).
* catgets/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* conform/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* elf/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* grp/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* iconv/Makefile (xtests): Change dependencies to ....
(xtests-special): ... additions to this variable.
* iconvdata/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* intl/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable. Also add
$(objpfx)tst-gettext.out.
* io/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* libio/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* malloc/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* misc/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* nptl/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* nptl_db/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* posix/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(xtests): Change dependencies to ....
(xtests-special): ... additions to this variable.
* resolv/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(xtests): Change dependencies to ....
(xtests-special): ... additions to this variable.
* stdio-common/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
(do-tst-unbputc): Remove target.
(do-tst-printf): Likewise.
* stdlib/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* string/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
* sysdeps/x86/Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
localedata:
* Makefile (tests): Change dependencies to ....
(tests-special): ... additions to this variable.
In <https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html> I
noted it was necessary to add includes of Makeconfig early in various
subdirectory makefiles for the tests-special variable settings added
by that patch to be conditional on configuration information. No-one
commented on the general question there of whether Makeconfig should
always be included immediately after the definition of subdir.
This patch implements that early inclusion of Makeconfig in each
directory (which is a lot easier than consistent placement of includes
of Rules). Includes are added if needed, or moved up if already
present. Subdirectory "all:" targets are removed, since Makeconfig
provides one.
There is potential for further cleanups I haven't done. Rules and
Makerules have code such as
ifneq "$(findstring env,$(origin headers))" ""
headers :=
endif
to override to empty any value of various variables that came from the
environment. I think there is a case for Makeconfig setting all the
subdirectory variables (other than subdir) to empty to ensure no
outside value is going to take effect if a subdirectory fails to
define a variable. (A list of such variables, possibly out of date
and incomplete, is in manual/maint.texi.) Rules and Makerules would
give errors if Makeconfig hadn't already been included, instead of
including it themselves. The special code to override values coming
from the environment would then be obsolete and could be removed.
Tested x86_64, including that installed binaries are identical before
and after the patch.
* argp/Makefile: Include Makeconfig immediately after defining
subdir.
* assert/Makefile: Likewise.
* benchtests/Makefile: Likewise.
* catgets/Makefile: Likewise.
* conform/Makefile: Likewise.
* crypt/Makefile: Likewise.
* csu/Makefile: Likewise.
(all): Remove target.
* ctype/Makefile: Include Makeconfig immediately after defining
subdir.
* debug/Makefile: Likewise.
* dirent/Makefile: Likewise.
* dlfcn/Makefile: Likewise.
* gmon/Makefile: Likewise.
* gnulib/Makefile: Likewise.
* grp/Makefile: Likewise.
* gshadow/Makefile: Likewise.
* hesiod/Makefile: Likewise.
* hurd/Makefile: Likewise.
(all): Remove target.
* iconvdata/Makefile: Include Makeconfig immediately after
defining subdir.
* inet/Makefile: Likewise.
* intl/Makefile: Likewise.
* io/Makefile: Likewise.
* libio/Makefile: Likewise.
(all): Remove target.
* locale/Makefile: Include Makeconfig immediately after defining
subdir.
* login/Makefile: Likewise.
* mach/Makefile: Likewise.
(all): Remove target.
* malloc/Makefile: Include Makeconfig immediately after defining
subdir.
(all): Remove target.
* manual/Makefile: Include Makeconfig immediately after defining
subdir.
* math/Makefile: Likewise.
* misc/Makefile: Likewise.
* nis/Makefile: Likewise.
* nss/Makefile: Likewise.
* po/Makefile: Likewise.
(all): Remove target.
* posix/Makefile: Include Makeconfig immediately after defining
subdir.
* pwd/Makefile: Likewise.
* resolv/Makefile: Likewise.
* resource/Makefile: Likewise.
* rt/Makefile: Likewise.
* setjmp/Makefile: Likewise.
* shadow/Makefile: Likewise.
* signal/Makefile: Likewise.
* socket/Makefile: Likewise.
* soft-fp/Makefile: Likewise.
* stdio-common/Makefile: Likewise.
* stdlib/Makefile: Likewise.
* streams/Makefile: Likewise.
* string/Makefile: Likewise.
* sunrpc/Makefile: Likewise.
(all): Remove target.
* sysvipc/Makefile: Include Makeconfig immediately after defining
subdir.
* termios/Makefile: Likewise.
* time/Makefile: Likewise.
* timezone/Makefile: Likewise.
(all): Remove target.
* wcsmbs/Makefile: Include Makeconfig immediately after defining
subdir.
* wctype/Makefile: Likewise.
libidn/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
localedata/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
(all): Remove target.
nptl/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
nptl_db/ChangeLog:
* Makefile: Include Makeconfig immediately after defining subdir.
These prototypes are duplicated in many places. Add a dedicated
header for holding prototypes for program-specific functions to
avoid that.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
More cancellation handling fixups.
* sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
* sysdeps/generic/not-cancel.h: Likewise.
* catgets/open_catalog.c: Use not-cancelable syscalls.
* time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
* sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
* sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
* dlfcn/dlfcn.h: Mark dlopen with __THROW again.
* io/fcntl.h: Don't mark posix_fallocate with __THROW.
* libio/fileops.c: Use not-cancelable syscalls for fclose.
* libio/iopopen.c: Use no-cancelable syscalls.
* libio/stdio.h: Mark popen and pclose with __THROW again.
* misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
* misc/syslog.c: Fix locking and cancellation cleanup handling.
* posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
* stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
CFLAGS-tempname.c): Add -fexceptions.
* stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
* string/string.h: Mark strerror and strerror_r with _THROW again.
* sysdeps/generic/unwind.inc: New file. Copied from gcc.
* sysdeps/generic/unwind-dw2.c: Update from gcc version. Remove
#ifs since we now need all the code compiled.
* sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
* sysdeps/unix/closedir.c: Use not-cancelable syscalls.
* sysdeps/unix/opendir.c: Likewise.
2003-04-05 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
below the stack pointer even if switching to the same context we are
running right now.
* catgets/gencat.c (read_input_file): Make sure that \n is not
alone on the line before testing for continuation.
* math/test-tgmath.c (compile_test): Initialize c.
* catgets/gencat.c (read_input_file): Collision between
auto-assigned numbers and user-defined nubmers is not fatal.
Handle it.
Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
* catgets/gencat.c (main): Return 1 if messages have been printed.
2002-06-29 Ulrich Drepper <drepper@redhat.com>
* catgets/gencat.c (read_input_file): Handle more than one slash
at end of line correctly [PR libc/3926].
Based on a patch by Steven Kim <steven.kim@peregrine.com>.
* catgets/sample.SJIS: Add test case for above bug.
* catgets/test-gencat.c: Adjust test code.
* catgets/test-gencat.sh: Adjust expected results.
* elf/do-rel.h (elf_dynamic_do_rel): Avoid overflow in computation
to skip relative relocations.
Patch by Geoff Keating <geoffk@redhat.com>.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/testdata/EUC-JISX0213: New file.
* iconvdata/testdata/EUC-JISX0213..UTF8: New file.
* iconvdata/testdata/SHIFT_JISX0213: New file.
* iconvdata/testdata/SHIFT_JISX0213..UTF8: New file.
* iconvdata/testdata/ISO-2022-JP-3: New file.
* iconvdata/testdata/ISO-2022-JP-3..UTF8: New file.
* iconvdata/TESTS: Add EUC-JISX0213, SHIFT_JISX0213, ISO-2022-JP-3.
* iconvdata/run-iconv-test.sh: Skip the charmap test if the charmap
contains comments indicating precomposed characters.
2002-04-21 Bruno Haible <bruno@clisp.org>
* iconvdata/iso-2022-jp-3.c: New file.
* iconvdata/gconv-modules (ISO-2022-JP-3): New module.
* iconvdata/Makefile (modules): Add ISO-2022-JP-3.
(LDFLAGS-ISO-2022-JP-3.so): New variable.
(ISO-2022-JP-3.so): Depend on libJIS.so and libJISX0213.so.
(distribute): Add iso-2022-jp-3.c.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/tst-table-to.c (main): Restore handling of
transliterations, broken by last patch.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/TESTS: Add IBM922, IBM1124, IBM1129.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/euc-jisx0213.c (BODY for FROM_LOOP): Don't advance inptr
when there is not enough room in the output buffer.
* iconvdata/shift_jisx0213.c (BODY for FROM_LOOP): Likewise.
2002-04-20 Bruno Haible <bruno@clisp.org>
* iconv/skeleton.c ({FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}): New
macros.
(RESET_INPUT_BUFFER): Use them instead of {MIN,MAX}_NEEDED_{FROM,TO}.
Also make this macro work if FROM_DIRECTION evaluates to 0.
(gconv_init): Use the new macros instead of {MIN,MAX}_NEEDED_{FROM,TO}.
(FUNCTION_NAME): Likewise, in the handling of unaligned accesses and
of consume_incomplete.
* iconvdata/cp1255.c: Define {FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}
instead of {MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_TO to
4, not 8.
* iconvdata/cp1258.c: Likewise.
* iconvdata/ibm930.c: Define {FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}
instead of {MIN,MAX}_NEEDED_{FROM,TO}. Set TO_LOOP_MAX_NEEDED_TO to 3,
not 2.
* iconvdata/ibm933.c: Likewise.
* iconvdata/ibm935.c: Likewise.
* iconvdata/ibm937.c: Likewise.
* iconvdata/ibm939.c: Likewise.
* iconvdata/iso-2022-cn.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}. Set TO_LOOP_MAX_NEEDED_TO to 6, not 4.
* iconvdata/iso-2022-cn-ext.c: Likewise.
* iconvdata/iso-2022-jp.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}.
* iconvdata/tcvn5712-1.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_FROM to 1, not 2.
* iconvdata/euc-jisx0213.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_TO to 8, not 4.
* iconvdata/shift_jisx0213.c: Likewise.
2002-05-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/powerpc/Makefile (sysdeps_routines): Add divdi3, cmpdi2,
shdi3, fixdfdi, fixsfdi in csu dir.
(shared-only-routines): Likewise.
* sysdeps/wordsize-32/cmpdi2.c: New file.
* sysdeps/wordsize-32/shdi3.c: New file.
* sysdeps/wordsize-32/fixdfdi.c: New file.
* sysdeps/wordsize-32/fixsfdi.c: New file.
* sysdeps/powerpc/Versions (__divdi3, __moddi3, __udivdi3, __umoddi3,
__ashldi3, __ashrdi3, __lshrdi3, __cmpdi2, __ucmpdi2, __fixdfdi,
__fixsfdi, __fixunsdfdi, __fixunssfdi): Export at GLIBC_2.0.
* sysdeps/unix/sysv/linux/semctl.c (__old_semctl, __new_semctl):
Only use va_arg if the argument will be used [PR libc/3259].
2002-05-06 Michael A. Schmidt <mmaass@us.ibm.com>
* catgets/catgets.c (catopen): Free buffer if internal catalog
open fails.
2002-05-14 Ulrich Drepper <drepper@redhat.com>
* debug/xtrace.sh: Make more robust. For realtime tracking use
non-buffering methods.
* debug/pcprofiledump.c: Implement -u option.
Patch by Roger Luethi <rl@hellgate.ch>.
2002-02-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_load_address, RTLD_START):
Work around an Alpha gas bug.
2002-02-27 Ulrich Drepper <drepper@redhat.com>
* catgets/open_catalog.c (__open_catalog): Fix typo in code which
uses read to load the catalog.
Patch by Andy Isaacson <adi@unlimitedscale.com> [PR libc/3011].
inside libc itself. Use INTDEF and INTDEF2 to define appropriate
2001-08-09 Jakub Jelinek <jakub@redhat.com>
* catgets/catgets.c (catclose): Be liberal about catalog_desc in
catclose too.
* time/tst-strptime.c: Add test case for %U and %W handling.
* catgets/open_catalog.c: Rewrite code to assume that the function
is called at catopen time and not delayed in catgets.
* catgets/catgets.c (catopen): Call __open_catalog and fail if that
function failed.
(catgets): Remove code for delayed opening of catalog.
* catgets/catgetsinfo.h: Remove now unnecessary information from
struct catalog_info. Change __open_catalog prototype.
* catgets/gencat.c: Adjust __open_catalog call.
* catgets/test-gencat.c: Stop program if catopen failed.
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2000-12-16 Jakub Jelinek <jakub@redhat.com>
* catgets/gencat.c (read_input_file): Avoid calling obstack_free
with a pointer not returned by obstack_ functions.
* sysdeps/unix/sysv/aix/bits/stat.h (struct stat): Align with AIX
version.
(struct stat64): Likewise.
Reported by Michael Keezer <mkeezer@redhat.com>.
2000-11-28 Ulrich Drepper <drepper@redhat.com>
* catgets/gencat.c (normalize_line): Take extra parameter with escape
character. Change callers.
(open_conversion): Determine mapping of 0x5c as wchar_t value.
* catgets/Makefile: Add rules to build and run test-gencat.
* catgets/sample.SJIS: New file.
* catgets/test-gencat.c: New file.
* catgets/test-gencat.sh: New file.
Report and test case by Shinya Hanataka <hanataka@abyss.rim.or.jp>.
2000-11-27 Ulrich Drepper <drepper@redhat.com>
* catgets/Makefile (test1.cat): Set LC_ALL, LOCPATH, and GCONV_PATH
for gencat run.
(libc.cat): Likewise.
* catgets/gencat.c: Implement handling of message catalogs encoded
with stateful character sets.
Based on a patch by Shinya Hanataka <hanataka@abyss.rim.or.jp>.
* stdlib/Makefile (headers): Add bits/wchar.h.
* sysdeps/unix/sysv/linux/i386/bits/wchar.h: New file.
* sysdeps/generic/bits/wchar.h: New file.
* sysdeps/generic/stdint.h: Include <bits/wchar.h>. Use values in this
file to define WCHAR_MIN and WCHAR_MAX.
Change UINT*8_MAX and UIN*16_MAX value to type int.
* wcsmbs/wchar.h: Include <bits/wchar.h>. Use values in this
file to define WCHAR_MIN and WCHAR_MAX.
* sysdeps/alpha/fpu/bits/mathdef.h: Make FP_ILOGB0 and FP_ILOGBNAN
int values.
* sysdeps/arm/fpu/bits/mathdef.h: Likewise.
* sysdeps/generic/bits/mathdef.h: Likewise.
* sysdeps/i386/fpu/bits/mathdef.h: Likewise.
* sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
* sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
* sysdeps/sparc/fpu/bits/mathdef.h: Likewise.
* locale/locale.h (struct lconv): Add __ prefix to the new members
if not C99.
* sysdeps/generic/inttypes.h: Remove unnecessary imaxabs and
imaxdiv optimizations.
* sysdeps/wordsize-32/lldiv.c: Add hack to make alias work.
* sysdeps/wordsize-64/ldiv.c: Likewise.
* sysdeps/alpha/fpu/bits/fenv.h: Change type of FE_*_ENV macros to
const fenv_t*.
* sysdeps/generic/bits/fenv.h: Likewise.
* sysdeps/i386/fpu/bits/fenv.h: Likewise.
* sysdeps/ia64/bits/fenv.h: Likewise.
* sysdeps/m68k/fpu/bits/fenv.h: Likewise.
* sysdeps/mips/bits/fenv.h: Likewise.
* sysdeps/s390/fpu/bits/fenv.h: Likewise.
* sysdeps/sparc/fpu/bits/fenv.h: Likewise.
Reported by Joseph S. Myers <jsm28@cam.ac.uk>.
* catgets/open_catalog.c: Likewise.
* sysdeps/i370/Implies: Removed.
* sysdeps/mvs/Implies: Removed.
* catgets/catgets.c (catopen): Filter out env_var values with / if
necessary.
* locale/findlocale.c (_nl_find_locale): Move test for unusable
locale name after all getenvs.
2000-05-07 Ulrich Drepper <drepper@redhat.com>
* locale/Makefile (locale-CPPFLAGS): Renamed from CPPFLAGS. It's
only needed for locale.
* catgets/Makefile (catgets-CPPFLAGS): Renamed from CPPFLAGS.
It's only needed for catgets.
Patches by Greg McGary <gkm@eng.ascend.com>.
* libio/stdio.h: Make fseeko and ftello prototypes available is
__USE_LARGEFILE. Patch by Paul Eggert <eggert@twinsun.com>.
* sysdeps/generic/dl-environ.c (unsetenv): Follow change to the
real unsetenv implementation from 1999-07-29 [PR libc/1714].
2000-05-03 Bruno Haible <haible@clisp.cons.org>
* intl/dcigettext.c (dcigettext): Do the defaulting of 'domainname'
before calling tfind.
2000-03-05 Jakub Jelinek <jakub@redhat.com>
* resolv/resolv.h (res_querydomain): Remove redefinition to
__res_querydomain (reported by Owen Taylor <otaylor@redhat.com>).
2000-05-03 Ulrich Drepper <drepper@redhat.com>
* po/gl.po: Update from translation team.
* manual/intro.texi (Program Basics): Change section title.
* manual/process.texi: Fix reference.
(Executing a File): Add reference exec in other section.
* manual/signal.texi: Fix reference.
* manual/startup.texi: Document syscall function.
Patches by Bryan Henderson <bryanh@giraffe-data.com>.
2000-04-29 Bruno Haible <haible@clisp.cons.org>
* intl/libintl.h (bind_textdomain_codeset): New declaration.
* intl/bindtextdom.c (set_binding_values): New function.
(bindtextdomain): Call it.
(bind_textdomain_codeset): New function.
* intl/dcigettext.c (dcigettext): Pass binding to _nl_find_domain.
(free_mem): Free each binding's codeset.
* intl/gettextP.h (struct binding): Add codeset field.
(_nl_find_domain): Add domainbinding argument.
* intl/finddomain.c (_nl_find_domain): Add domainbinding argument.
Pass it to _nl_make_l10nflist.
* intl/loadinfo.h (struct loaded_l10nfile): Add domainbinding field.
(_nl_make_l10nflist): Add domainbinding argument.
* intl/l10nflist.c (_nl_make_l10nflist): Add domainbinding argument.
* intl/loadmsgcat.c (_nl_load_domain): Look at the domainbinding's
codeset when determining outcharset. If !_LIBC && HAVE_ICONV, call
locale_charset().
* manual/message.texi: New node "Charset conversion in gettext".
2000-04-30 Bruno Haible <haible@clisp.cons.org>
* catgets/open_catalog.c (__open_catalog): Use __builtin_expect where
appropriate. Handle possible __read error.
2000-04-29 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h (__builtin_expect): Define as empty if not a
compiler builtin.
* intl/loadinfo.h (__builtin_expect): Likewise.
* intl/dcigettext.c (dcigettext, _nl_find_msg): Use
__builtin_expect where appropriate.
* intl/loadmsgcat.c (_nl_load_domain): Likewise.
* intl/localealias.c (extend_alias_table): Return an error indicator.
(read_alias_file): Bail out if extend_alias_table fails.
2000-04-29 Bruno Haible <haible@clisp.cons.org>
* intl/loadmsgcat.c: Define _GNU_SOURCE as early as possible.
* intl/localealias.c: Likewise.
2000-05-01 Bruno Haible <haible@clisp.cons.org>
* intl/loadmsgcat.c (_nl_load_domain): Initialize domain->conv_tab.
Initialize domain->plural and domain->nplurals even if there is no
nullentry.
2000-05-01 Bruno Haible <haible@clisp.cons.org>
* intl/dcigettext.c (_nl_find_msg): Terminate __gconv loop if return
value is == __GCONV_OK or == __GCONV_EMPTY_INPUT, not != __GCONV_OK.
In case of failure, goto converted.
2000-05-01 Bruno Haible <haible@clisp.cons.org>
* wcsmbs/wcsmbsload.c (norm_add_slashes): Move away.
* iconv/gconv_int.h (norm_add_slashes): Move to here.
* intl/loadmsgcat.c (_nl_load_domain): Normalize strings passed to
__gconv_open.
2000-04-29 Bruno Haible <haible@clisp.cons.org>
* intl/dcigettext.c (transcmp): Compare the domains as well.
(dcigettext): Call strlen (msgid1) after testing msgid1 against NULL,
not before.
* intl/loadmsgcat.c (_nl_load_domain): Deal with EINTR. Include
<errno.h>.
2000-05-03 Ulrich Drepper <drepper@redhat.com>
1999-05-02 H.J. Lu <hjl@gnu.org>
* timezone/zic.c (dolink): Remove the symlink destination first.
* catgets/open_catalog.c (__open_catalog): Set catalog->status
to "nonexisting" if failed to open the file.
1999-04-15 Ulrich Drepper <drepper@cygnus.com>
* catgets/gencat.c (read_input_file): Don't drop white spaces
between number/identifier and string.
Patch by Dima Barsky <dima@pwd.hp.com>.
If no white space at all follows number/identifier remove existing
message with the number/ientifier.
1999-01-04 Ulrich Drepper <drepper@cygnus.com>
* catgets/gencat.c: Update year in copyright message text.
* db2/makedb.c: Likewise.
* debug/catchsegv.sh: Likewise.
* elf/ldd.bash.in: Likewise.
* iconv/iconv_prog.c: Likewise.
* locale/programs/locale.c: Likewise.
* locale/programs/localedef.c: Likewise.
* malloc/mtrace.pl: Likewise.
* nscd/nscd.c: Likewise.
1999-01-02 Philip Blundell <philb@gnu.org>
* sunrpc/Makefile: Ensure that we really use the right path for cpp.
1999-01-03 Philip Blundell <philb@gnu.org>
* Makefile (tests-clean): New test output files.
* Makerules (do-tests-clean): New rule to support the above.
* Rules (subdir_testclean): Likewise.
1999-01-03 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* iconv/Makefile: Use install-others instead of explicit
dependency on subdir_install.
1999-01-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* iconv/gconv_db.c (find_derivation): Release lock before
returning.
(__gconv_find_transform): Likewise.
1999-01-01 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* inet/ether_ntoa.c (ether_ntoa): Make `asc' static since that's
what we return.
1999-01-01 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* Makerules: Remove all references to obsolete variables
tests-static and test-srcs-static.
* Make-dist: Likewise.
* Rules: Likewise. Remove rules to generate obsolete
empty.{c,o*}.
1999-01-03 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/pread.c: Use the i386 implementation.
* sysdeps/unix/sysv/linux/arm/pread64.c: Likewise.
* sysdeps/unix/sysv/linux/arm/pwrite.c: Likewise.
* sysdeps/unix/sysv/linux/arm/pwrite64.c: Likewise.
1998-08-31 Ulrich Drepper <drepper@cygnus.com>
* io/sys/stat.h (ALLPERMS): Fix type (S_ISTXT -> S_ISVTX).
Reported by Rob.Hagopian@vu.union.edu [PR libc/763].
* nscd/nscd.init: Make it work in RedHat systems.
Patch by Christian Gafton.
1998-08-29 Philip Blundell <philb@gnu.org>
* catgets/Makefile: Don't try to run test programs when
cross-compiling.
1998-08-31 Ulrich Drepper <drepper@cygnus.com>
* signal/signal.h: Include bits/sigthread.h only if __USE_POSIX.
Reported by Zack Weinberg.
1998-08-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Dist: Add umount.S and umount2.S.
* elf/Makefile (distribute): Remove ldd.sh.in.
1998-08-31 11:46 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/dl-origin.h (get_origin): Remove unused
variable.
1998-08-03 16:36 Ulrich Drepper <drepper@cygnus.com>
* catgets/catgets.c: Use mmap/munmap only is _POSIX_MAPPED_FILES
is defined.
* catgets/open_catalog.c: Likewise.
* iconv/iconv_prog.c: Likewise.
* intl/loadmsgcat.c: Likewise.
* locale/findlocale.c: Likewise.
* locale/loadlocale.c: Likewise.
* locale/programs/localedef.c: Likewise.
* malloc/malloc.c: Likewise.
* elf/elf.h: Fix typo.
* math/Makefile: Use $(LN_S) instead of ln.
* sysdeps/generic/getpgid.c: Fix return type.
1998-08-01 02:49 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* sysdeps/posix/tempname.c (__stdio_gen_tempname): Rename to
__gen_tempname and simplify the interface. Strip out the
code to do path search and create FILE objects. This function
now takes a mktemp() style template and returns either a name
or a file descriptor.
(__path_search): New function; searches for directories for
temp files.
* sysdeps/generic/tempname.c: Stub out __gen_tempname and
__path_search, not __stdio_gen_tempname.
* libio/stdio.h: Prototype __gen_tempname and __path_search,
not __stdio_gen_tempname.
* stdio/stdio.h: Likewise.
* stdio-common/tempnam.c: Use __path_search and __gen_tempname.
* stdio-common/tmpfile.c: Likewise.
* stdio-common/tmpfile64.c: Likewise.
* stdio-common/tmpnam.c: Likewise.
* stdio-common/tmpnam_r.c: Likewise.
* misc/mkstemp.c: New file. Use __gen_tempname.
* misc/mktemp.c: Likewise.
* sysdeps/posix/mkstemp.c: Removed.
* sysdeps/posix/mktemp.c: Removed.
* sysdeps/generic/mkstemp.c: Removed.
* sysdeps/generic/mktemp.c: Removed.
1998-08-02 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* configure.in: Check, if door add-on is installed.
* config.make.in: Add have_doors.
* sunrpc/Makefile: Add HAVE_DOOR define.
* sunrpc/key_call.c: Add keyserv/door interface.
* sunrpc/svc_unix.c: Call setsockopt only if SO_PASSCRED is defined.
* sunrpc/clnt_unix.c: Likewise.
1998-08-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/netinet/in.h (IN_CLASSC): Correct mask.
Reported by Ian Staniforth <I.Staniforth@sheffield.ac.uk> [fixes
PR libc/727].
1998-08-03 10:23 Ulrich Drepper <drepper@cygnus.com>
* misc/Makefile: Fix installation problem with --disable-shared.
* posix/Makefile: Likewise.
1998-08-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/regex.c (re_search_2): Optimize searching for anchored
pattern if '^' cannot match at embedded newlines.
(regerror): Renamed from __regerror, which it should only be
called if _LIBC.
1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sunrpc/svc_unix.c (__msgread): Check setsockopt return value.
1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/glob.c: Remove obsolete cast.
1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Rules (tests): Fix last change.
1998-07-02 21:51 Ulrich Drepper <drepper@cygnus.com>
* Makeconfig: Define list of subdirs as all-subdirs and make subdirs
a copy.
* Makefile: Add rules to generate map files.
(distribute): Remove libc.map, add Versions.def and versions.awk.
* Makerules: Change rules to find map files on common-objpfx.
* elf/Makefile: Likewise.
* md5-crypt/Makefile: Likewise.
* nis/Makefile (libnsl-map): Remove.
* Versions.def: New file.
* versions.awk: New file.
* argp/Versions: New file.
* assert/Versions: New file.
* catgets/Versions: New file.
* csu/Versions: New file.
* ctype/Versions: New file.
* db/Versions: New file.
* debug/Versions: New file.
* dirent/Versions: New file.
* elf/Versions: New file.
* gmon/Versions: New file.
* grp/Versions: New file.
* hesiod/Versions: New file.
* hurd/Versions: New file.
* iconv/Versions: New file.
* inet/Versions: New file.
* intl/Versions: New file.
* io/Versions: New file.
* libio/Versions: New file.
* linuxthreads/Versions: New file.
* locale/Versions: New file.
* login/Versions: New file.
* malloc/Versions: New file.
* math/Versions: New file.
* md5-crypt/Versions: New file.
* misc/Versions: New file.
* nis/Versions: New file.
* nss/Versions: New file.
* posix/Versions: New file.
* pwd/Versions: New file.
* resolv/Versions: New file.
* resource/Versions: New file.
* rt/Versions: New file.
* setjmp/Versions: New file.
* shadow/Versions: New file.
* signal/Versions: New file.
* socket/Versions: New file.
* stdio/Versions: New file.
* stdio-common/Versions: New file.
* stdlib/Versions: New file.
* streams/Versions: New file.
* string/Versions: New file.
* sunrpc/Versions: New file.
* sysdeps/alpha/Versions: New file.
* sysdeps/alpha/fpu/Versions: New file.
* sysdeps/i386/Versions: New file.
* sysdeps/sparc/Versions: New file.
* sysdeps/unix/sysv/Versions: New file.
* sysdeps/unix/sysv/linux/Versions: New file.
* sysdeps/unix/sysv/linux/alpha/Versions: New file.
* sysdeps/unix/sysv/linux/i386/Versions: New file.
* sysdeps/unix/sysv/linux/mips/Versions: New file.
* sysvipc/Versions: New file.
* termios/Versions: New file.
* time/Versions: New file.
* wcsmbs/Versions: New file.
* wctype/Versions: New file.
* libc.map: Removed.
* db/libdb.map: Removed.
* elf/libdl.map: Removed.
* hesiod/libnss_hesiod.map: Removed.
* hurd/libhurduser.map: Removed.
* hurd/libmachuser.map: Removed.
* linuxthreads/libpthread.map: Removed.
* locale/libBrokenLocale.map: Removed.
* login/libutil.map: Removed.
* math/libm.map: Removed.
* md5-crypt/libcrypt.map: Removed.
* nis/libnsl.map: Removed.
* nis/libnsl_compat.map: Removed.
* nis/libnss_nis.map: Removed.
* nis/libnss_nisplus.map: Removed.
* nss/libnss_db.map: Removed.
* nss/libnss_files.map: Removed.
* resolv/libnss_dns.map: Removed.
* resolv/libresolv.map: Removed.
* rt/librt.map: Removed.
* elf/dl-load.c (fillin_rpath): Fix test for trusted directory.
Fix typos.
* elf/rtld.c (process_dl_debug): Recognize 'all'.
(process_envvars): LD_BIND_NOW must be followed by y, Y, or 1.
* sysdeps/generic/elf/backtracesyms.c: Allocate string memory of
correct size.
* sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Fix typo
in comment.
1998-05-25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* catgets/Makefile ($(objpfx)de.cat): Renamed from
do-gencat-test. Use automatic variables.
($(objpfx)de.msg): Fix reference to po file.
1998-05-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use
$(move-if-change).
1998-05-25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* intl/dcgettext.c: Fix typo.
1998-05-22 Ulrich Drepper <drepper@cygnus.com>
* catgets/open_catalog.c (__open_catalog): Use byteswap.h
functions. Optimize filename creation a bit.
1998-05-22 09:29 Ulrich Drepper <drepper@cygnus.com>
* stdlib/random_r.c: Help gcc to optimize the code.
Patch by Joe Keane <jgk@jgk.org>.