+2002-08-27 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/arm/Dist: Add bits/link.h.
+
+ * sunrpc/Makefile: Distribute thrsvc.
+
+ * stdio-common/Makefile: Remove more left-overs from old stdio.
+
+ * include/linewrap.h: Removed.
+
+ * libio/bug-mmap-fflush.c: Rewrite to not touch source directory.
+
+ * intl/Makefile (distribute): Add plural-eval.c.
+
2002-08-27 Roland McGrath <roland@redhat.com>
* manual/sysinfo.texi (Mount Information): Correct file name to macro
2002-08-27 Ulrich Drepper <drepper@redhat.com>
+ * stdio-common/Makefile (headers): Remove bits/stdio_lim.h. This
+ file isn't distributed. Add special rules to install bits/stdio_lim.h.
+
+ * Make-dist: Remove traces of old stdio.
+ * Makeconfig: Likewise.
+
+ * locale/Makefile (localedef-aux): New variable. Only md5
+ assigned to it. These files are not ddistributed in this directory.
+
+ * sysdeps/unix/sysv/linux/s390/Dist: Add sys/procfs.h.
+ * sysdeps/unix/sysv/linux/s390/s390-64/Dist: Remove sys/procfs.h.
+ * sysdeps/unix/sysv/linux/s390/s390-32/Dist: Likewise.
+
+ * sysdeps/unix/sysv/linux/Dist: Remove sys/sendfile.h.
+
* nss/getXXbyYY_r.c (REENTRANT_NAME): If no service is available
set h_errno to NO_RECOVERY [PR libc/4360].
If you have any questions you think should be answered in this document,
please let me know.
- --drepper@cygnus.com
+ --drepper@redhat.com
\f
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
2.33. The makefiles want to do a CVS commit.
2.34. When compiling C++ programs, I get a compilation error in streambuf.h.
2.35. When recompiling GCC, I get compilation errors in libio.
+2.36. Why shall glibc never get installed on GNU/Linux systems in
+/usr/local?
3. Source and binary incompatibilities, and what to do about them
-----------------------------------------------------------------------
# Change catalog source in Linux specific format to standard XPG format.
-# Ulrich Drepper <drepper@cygnus.com>, 1996.
+# Ulrich Drepper <drepper@redhat.com>, 1996.
#
/^\$ #/ {
h
This version is needed because the fpos_t type and a few libio internals
have changed in glibc 2.2, and gcc 2.95.3 contains a corresponding patch.
+
+2.36. Why shall glibc never get installed on GNU/Linux systems in
+/usr/local?
+
+{AJ} The GNU C compiler treats /usr/local/include and /usr/local/lib in a
+special way, these directories will be searched before the system
+directories. Since on GNU/Linux the system directories /usr/include and
+/usr/lib contain a --- possibly different --- version of glibc and mixing
+certain files from different glibc installations is not supported and will
+break, you risk breaking your complete system. If you want to test a glibc
+installation, use another directory as argument to --prefix. If you like to
+install this glibc version as default version, overriding the existing one,
+use --prefix=/usr and everything will go in the right places.
+
\f
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
-# Copyright (C) 1991-1999,2000,01 Free Software Foundation, Inc.
+# Copyright (C) 1991-2001, 2002 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
# Don't distribute add-on subdirs.
subdirs := $(filter-out $(add-ons),$(subdirs))
-# Make sure both stdio and libio get in, whichever is in use.
-subdirs += stdio libio
-
# Make sure both aout and elf get in, whichever is in use.
subdirs += aout elf
####
-# Set this to the name of the subdirectory that implements stdio.
-# The only option right now is `libio'.
-ifndef stdio
-stdio = libio
-endif
-
# Common prefix for machine-independent installation directories.
ifeq ($(origin prefix),undefined) # ifndef would override explicit empty value.
prefix = /usr/local
# `+sysdep-includes' will be defined by Makerules.
+includes = -I$(..)include -I. \
$(patsubst %/,-I%,$(objpfx)) $(patsubst %/,-I%,$(..)) \
- $($(stdio)-include) $(includes) \
+ $(libio-include) $(includes) \
$(+sysdep-includes) $(last-includes) $(sysincludes)
# Since libio has several internal header files, we use a -I instead
# dependencies. Only the $(binfmt-subdir) should always be kept at the
# end of the list.
all-subdirs = csu assert ctype locale intl catgets math setjmp signal \
- stdlib stdio-common $(stdio) malloc string wcsmbs time dirent \
+ stdlib stdio-common libio malloc string wcsmbs time dirent \
grp pwd posix io termios resource misc socket sysvipc gmon \
gnulib iconv iconvdata wctype manual shadow po argp \
crypt $(add-ons) nss localedata timezone rt conform debug \
+++ /dev/null
-#include "stdio/linewrap.h"
-# Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
+# Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
distribute = gettext.h gettextP.h hash-string.h loadinfo.h locale.alias \
plural.y plural-exp.h po2test.sed tst-gettext.sh tst-translit.sh \
translit.po tst-gettext2.sh tstlang1.po tstlang2.po tstcodeset.po\
- tst-codeset.sh
+ tst-codeset.sh plural-eval.c
test-srcs := tst-gettext tst-translit tst-gettext2 tst-codeset
tests = tst-ngettext
#include <stdlib.h>
#include <string.h>
-int main (void)
+
+static char *fname;
+
+static void prepare (void);
+#define PREPARE(argc, argv) prepare ()
+
+
+#define TEST_FUNCTION do_test ()
+static int do_test (void);
+#include "../test-skeleton.c"
+
+
+static void
+prepare (void)
+{
+ int fd = create_temp_file ("bug-mmap-fflush.", &fname);
+ if (fd == -1)
+ exit (3);
+ /* We don't need the descriptor. */
+ close (fd);
+}
+
+
+static int
+do_test (void)
{
FILE *f;
off_t o;
- char buffer [1024];
+ char buffer[1024];
- system ("echo 'From foo@bar.com' > test");
- f = fopen ("test", "r");
+ snprintf (buffer, sizeof (buffer), "echo 'From foo@bar.com' > %s", fname);
+ system (buffer);
+ f = fopen (fname, "r");
fseek (f, 0, SEEK_END);
o = ftello (f);
fseek (f, 0, SEEK_SET);
fflush (f);
- system ("echo 'From bar@baz.edu' >> test");
+ snprintf (buffer, sizeof (buffer), "echo 'From bar@baz.edu' >> %s", fname);
+ system (buffer);
fseek (f, o, SEEK_SET);
if (fgets (buffer, 1024, f) == NULL)
- abort ();
+ exit (1);
if (strncmp (buffer, "From ", 5) != 0)
- abort ();
+ exit (1);
fclose (f);
exit (0);
}
vpath %.gperf programs
localedef-modules := $(categories:%=ld-%) charmap linereader locfile \
- repertoire md5 locarchive
+ repertoire locarchive
+localedef-aux := md5
locale-modules := locale-spec
lib-modules := charmap-dir simple-hash xmalloc xstrdup
mv -f $@.new $@
$(objpfx)localedef: $(localedef-modules:%=$(objpfx)%.o)
+$(objpfx)localedef: $(localedef-aux:%=$(objpfx)%.o)
$(objpfx)locale: $(locale-modules:%=$(objpfx)%.o)
$(objpfx)localedef $(objpfx)locale: $(lib-modules:%=$(objpfx)%.o)
-# Copyright (C) 1991-1999, 2000, 2001 Free Software Foundation, Inc.
+# Copyright (C) 1991-1999, 2000, 2001, 2002 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
#
subdir := stdio-common
-headers := printf.h stdio_ext.h bits/stdio_lim.h
+headers := printf.h stdio_ext.h
routines := \
ctermid cuserid \
_itoa _itowa itoa-digits itoa-udigits itowa-digits \
vfprintf vprintf printf_fp reg-printf printf-prs printf_fphex \
printf_size fprintf printf snprintf sprintf asprintf dprintf \
- vfscanf \
+ vfwprintf vfscanf vfwscanf \
fscanf scanf sscanf \
perror psignal \
tmpfile tmpfile64 tmpnam tmpnam_r tempnam tempname \
remove rename \
lockfile
-include ../Makeconfig
+install-others = $(inst_includedir)/bits/stdio_lim.h
-ifeq ($(stdio),libio)
-routines += vfwprintf vfwscanf
-endif
+include ../Makeconfig
aux := errlist siglist
distribute := _itoa.h _itowa.h _i18n_number.h \
include ../Rules
+$(inst_includedir)/bits/stdio_lim.h: $(common-objpfx)bits/stdio_lim.f $(+force)
+ $(do-install)
+
ifeq ($(cross-compiling),no)
.PHONY: do-tst-unbputc do-tst-printf
tests: do-tst-unbputc do-tst-printf
ifeq ($(have-thread-library),yes)
xtests += thrsvc
endif
+distribute += thrsvc.c
ifeq (yes,$(build-static-nss))
otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
ldd-rewrite.sed
sys/elf.h
+sys/procfs.h
sys/user.h
setresgid.c
setfsuid.c
setfsgid.c
-sys/procfs.h
ucontext_i.h
clone.S
kernel_stat.h
-sys/procfs.h
ucontext_i.h