mirror of
git://sourceware.org/git/glibc.git
synced 2025-04-24 14:41:06 +08:00
Updated to fedora-glibc-20051219T1003
This commit is contained in:
parent
3ccb96cd41
commit
2c6cfe6853
19
Makeconfig
19
Makeconfig
@ -557,6 +557,10 @@ else
|
||||
+gccwarn := -Wall -Wwrite-strings -Winline -Wstrict-prototypes
|
||||
endif
|
||||
|
||||
# We do not depend on the address of constants in different files to be
|
||||
# actually different, so allow the compiler to merge them all.
|
||||
+merge-constants = -fmerge-all-constants
|
||||
|
||||
# This is the program that generates makefile dependencies from C source files.
|
||||
# The -MP flag tells GCC >= 3.2 (which we now require) to produce dummy
|
||||
# targets for headers so that removed headers don't break the build.
|
||||
@ -611,21 +615,22 @@ ifeq "$(strip $(+cflags))" ""
|
||||
+cflags := $(default_cflags)
|
||||
endif # $(+cflags) == ""
|
||||
|
||||
+cflags := $(+cflags) $(addprefix -mcpu=,$(with-cpu)) $(+gccwarn)
|
||||
+cflags += $(addprefix -mcpu=,$(with-cpu)) $(+gccwarn) $(+merge-constants)
|
||||
+gcc-nowarn := -w
|
||||
|
||||
# Don't duplicate options if we inherited variables from the parent.
|
||||
+cflags := $(sort $(+cflags))
|
||||
|
||||
|
||||
# These are flags given to the C compiler to tell it to look for include
|
||||
# files (including ones given in angle brackets) in the current directory,
|
||||
# in the parent library source directory and in the include directory.
|
||||
# These are flags given to the C compiler to tell it to look for
|
||||
# include files (including ones given in angle brackets) in the parent
|
||||
# library source directory, in the include directory, and in the
|
||||
# current directory.
|
||||
# `+sysdep-includes' will be defined by Makerules.
|
||||
+includes = -I$(..)include -I. \
|
||||
$(patsubst %/,-I%,$(objpfx)) $(patsubst %/,-I%,$(..)) \
|
||||
+includes = -I$(..)include $(patsubst %/,-I%,$(..)) \
|
||||
$(libio-include) $(includes) \
|
||||
$(+sysdep-includes) $(sysincludes)
|
||||
$(+sysdep-includes) $(sysincludes) -I. \
|
||||
$(patsubst %/,-I%,$(objpfx))
|
||||
|
||||
# Since libio has several internal header files, we use a -I instead
|
||||
# of many little headers in the include directory.
|
||||
|
5
Makefile
5
Makefile
@ -235,7 +235,7 @@ mostlyclean: parent-mostlyclean
|
||||
tests-clean:
|
||||
@$(MAKE) subdir_testclean no_deps=t
|
||||
|
||||
tests: $(objpfx)c++-types-check.out
|
||||
tests: $(objpfx)c++-types-check.out $(objpfx)check-local-headers.out
|
||||
ifneq ($(CXX),no)
|
||||
check-data := $(firstword $(wildcard \
|
||||
$(foreach M,$(config-machine) $(base-machine),\
|
||||
@ -250,6 +250,9 @@ $(objpfx)c++-types-check.out:
|
||||
endif
|
||||
endif
|
||||
|
||||
$(objpfx)check-local-headers.out: scripts/check-local-headers.sh
|
||||
scripts/check-local-headers.sh "$(includedir)" "$(objpfx)" > $@
|
||||
|
||||
ifneq ($(PERL),no)
|
||||
installed-headers = argp/argp.h assert/assert.h catgets/nl_types.h \
|
||||
crypt/crypt.h ctype/ctype.h debug/execinfo.h \
|
||||
|
@ -1,5 +1,3 @@
|
||||
# Generated from $Id$.
|
||||
|
||||
srcdir = @srcdir@
|
||||
|
||||
# Uncomment the line below if you want to do parallel build.
|
||||
|
95
Makerules
95
Makerules
@ -208,53 +208,6 @@ before-compile += $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
|
||||
# later directory would be chosen over a .c file in an earlier directory,
|
||||
# which does not preserve the desired sysdeps ordering behavior.
|
||||
|
||||
# It matters that this set of rules, for compiling from sources in
|
||||
# the current directory (the $srcdir/$subdir) come before the
|
||||
# generated sysdep rules in included from sysd-rules below. When
|
||||
# compiling in the source tree, generated sources go into the current
|
||||
# directory, and those should be chosen before any sources in sysdeps.
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: %.S $(before-compile); $$(compile-command.S)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: %.s $(before-compile); $$(compile-command.s)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: %.c $(before-compile); $$(compile-command.c)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
# Omit the objpfx rules when building in the source tree, because
|
||||
# objpfx is empty and so these rules just override the ones above.
|
||||
ifdef objpfx
|
||||
# Define first rules to find the source files in $(objpfx).
|
||||
# Generated source files will end up there.
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: $(objpfx)%.S $(before-compile); $$(compile-command.S)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: $(objpfx)%.s $(before-compile); $$(compile-command.s)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: $(objpfx)%.c $(before-compile); $$(compile-command.c)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
endif
|
||||
|
||||
# System-dependent makefiles can put in `inhibit-sysdep-asm' wildcard
|
||||
# patterns matching sysdep directories whose assembly source files should
|
||||
# be suppressed.
|
||||
@ -304,6 +257,7 @@ $(+sysdir_pfx)sysd-rules: $(+sysdir_pfx)config.make $(..)Makerules \
|
||||
echo "\$$(objpfx)m_%.S: $$dir/s_%.S; \$$(+make-include-of-dep)"; \
|
||||
echo "\$$(objpfx)m_%.c: $$dir/s_%.c; \$$(+make-include-of-dep)"; \
|
||||
done; \
|
||||
echo "\$$(objpfx)m_%.c: s_%.c; \$$(+make-include-of-dep)"; \
|
||||
echo 'sysd-rules-done = t') > $@T
|
||||
mv -f $@T $@
|
||||
|
||||
@ -318,6 +272,53 @@ echo '#include <$<>' > $@T
|
||||
mv -f $@T $@
|
||||
endef
|
||||
|
||||
# It matters that this set of rules, for compiling from sources in
|
||||
# the current directory (the $srcdir/$subdir) come before the
|
||||
# generated sysdep rules in included from sysd-rules below. When
|
||||
# compiling in the source tree, generated sources go into the current
|
||||
# directory, and those should be chosen before any sources in sysdeps.
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: %.S $(before-compile); $$(compile-command.S)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: %.s $(before-compile); $$(compile-command.s)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: %.c $(before-compile); $$(compile-command.c)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
# Omit the objpfx rules when building in the source tree, because
|
||||
# objpfx is empty and so these rules just override the ones above.
|
||||
ifdef objpfx
|
||||
# Define first rules to find the source files in $(objpfx).
|
||||
# Generated source files will end up there.
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: $(objpfx)%.S $(before-compile); $$(compile-command.S)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: $(objpfx)%.s $(before-compile); $$(compile-command.s)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
|
||||
define o-iterator-doit
|
||||
$(objpfx)%$o: $(objpfx)%.c $(before-compile); $$(compile-command.c)
|
||||
endef
|
||||
object-suffixes-left := $(all-object-suffixes)
|
||||
include $(o-iterator)
|
||||
endif
|
||||
|
||||
# Generate version maps, but wait until sysdep-subdirs is known
|
||||
ifeq ($(sysd-sorted-done),t)
|
||||
ifeq ($(versioning),yes)
|
||||
|
4
NEWS
4
NEWS
@ -1,4 +1,4 @@
|
||||
GNU C Library NEWS -- history of user-visible changes. 2005-11-11
|
||||
GNU C Library NEWS -- history of user-visible changes. 2005-12-15
|
||||
Copyright (C) 1992-2002,2003,2004,2005 Free Software Foundation, Inc.
|
||||
See the end for copying conditions.
|
||||
|
||||
@ -28,7 +28,7 @@ Version 2.4
|
||||
recommend using the stable 2.3 branch.
|
||||
|
||||
* New interfaces: fdopendir, openat, fstatat, fchownat, futimesat, renameat,
|
||||
unlinkat.
|
||||
unlinkat, mkdirat, mkfifoat, mknodat, linkat, symlinkat, readlinkat.
|
||||
|
||||
Version 2.3.6
|
||||
|
||||
|
@ -2,23 +2,21 @@
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 1996.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
# include "config.h"
|
||||
#endif
|
||||
|
||||
#include <argp.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
/* @configure_input@ -*- C -*-
|
||||
Generated from $Id$.
|
||||
|
||||
This is used only by the generic `uname' function for systems with no real
|
||||
`uname' call. If this data is not correct, it does not matter much. */
|
||||
|
@ -1,5 +1,4 @@
|
||||
# @configure_input@
|
||||
# From $Id$.
|
||||
# Don't edit this file. Put configuration parameters in configparms instead.
|
||||
|
||||
version = @VERSION@
|
||||
|
@ -60,5 +60,7 @@ ld {
|
||||
_dl_make_stack_executable;
|
||||
# Only here for gdb while a better method is developed.
|
||||
_dl_debug_state;
|
||||
# Pointer protection.
|
||||
__pointer_chk_guard;
|
||||
}
|
||||
}
|
||||
|
20
elf/cache.c
20
elf/cache.c
@ -3,20 +3,18 @@
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Andreas Jaeger <aj@suse.de>, 1999.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <error.h>
|
||||
|
@ -1,22 +1,20 @@
|
||||
/* Return the canonical absolute name of a given file inside chroot.
|
||||
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2004
|
||||
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005
|
||||
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
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
@ -112,7 +112,8 @@ _dl_signal_error (int errcode, const char *objname, const char *occation,
|
||||
lcatch->errstring = _dl_out_of_memory;
|
||||
lcatch->malloced = false;
|
||||
}
|
||||
longjmp (lcatch->env, errcode ?: -1);
|
||||
/* We do not restore the signal mask because none was saved. */
|
||||
__longjmp (lcatch->env, errcode ?: -1);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -169,7 +170,8 @@ _dl_catch_error (const char **objname, const char **errstring,
|
||||
|
||||
struct catch **const catchp = &CATCH_HOOK;
|
||||
old = *catchp;
|
||||
errcode = setjmp (c.env);
|
||||
/* Do not save the signal mask. */
|
||||
errcode = __sigsetjmp (c.env, 0);
|
||||
if (__builtin_expect (errcode, 0) == 0)
|
||||
{
|
||||
*catchp = &c;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Minimal replacements for basic facilities used in the dynamic linker.
|
||||
Copyright (C) 1995-1998,2000-2002,2004 Free Software Foundation, Inc.
|
||||
Copyright (C) 1995-1998,2000-2002,2004,2005 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
|
||||
@ -148,12 +148,6 @@ __sigjmp_save (sigjmp_buf env, int savemask __attribute__ ((unused)))
|
||||
env[0].__mask_was_saved = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
void weak_function
|
||||
longjmp (jmp_buf env, int val)
|
||||
{
|
||||
__longjmp (env[0].__jmpbuf, val);
|
||||
}
|
||||
|
||||
/* Define our own version of the internal function used by strerror. We
|
||||
only provide the messages for some common errors. This avoids pulling
|
||||
|
@ -2,20 +2,18 @@
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Andreas Jaeger <aj@suse.de>, 1999.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#define PROCINFO_CLASS static
|
||||
#include <alloca.h>
|
||||
|
@ -1,22 +1,20 @@
|
||||
/* Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1999-2003, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Andreas Jaeger <aj@suse.de>, 1999 and
|
||||
Jakub Jelinek <jakub@redhat.com>, 1999.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* The code in this file and in readelflib is a heavily simplified
|
||||
version of the readelf program that's part of the current binutils
|
||||
|
34
elf/rtld.c
34
elf/rtld.c
@ -90,6 +90,15 @@ INTDEF(_dl_argv)
|
||||
uintptr_t __stack_chk_guard attribute_relro;
|
||||
#endif
|
||||
|
||||
/* Only exported for architectures that don't store the pointer guard
|
||||
value in thread local area. */
|
||||
uintptr_t __pointer_chk_guard_local
|
||||
attribute_relro attribute_hidden __attribute__ ((nocommon));
|
||||
#ifndef THREAD_SET_POINTER_GUARD
|
||||
strong_alias (__pointer_chk_guard_local, __pointer_chk_guard)
|
||||
#endif
|
||||
|
||||
|
||||
/* List of auditing DSOs. */
|
||||
static struct audit_list
|
||||
{
|
||||
@ -142,6 +151,7 @@ struct rtld_global_ro _rtld_global_ro attribute_relro =
|
||||
._dl_hwcap_mask = HWCAP_IMPORTANT,
|
||||
._dl_lazy = 1,
|
||||
._dl_fpu_control = _FPU_DEFAULT,
|
||||
._dl_pointer_guard = 1,
|
||||
|
||||
/* Function pointers. */
|
||||
._dl_debug_printf = _dl_debug_printf,
|
||||
@ -1823,6 +1833,22 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n",
|
||||
__stack_chk_guard = stack_chk_guard;
|
||||
#endif
|
||||
|
||||
/* Set up the pointer guard as well, if necessary. */
|
||||
if (GLRO(dl_pointer_guard))
|
||||
{
|
||||
// XXX If it is cheap, we should use a separate value.
|
||||
uintptr_t pointer_chk_guard = stack_chk_guard;
|
||||
#ifndef HP_TIMING_NONAVAIL
|
||||
hp_timing_t now;
|
||||
HP_TIMING_NOW (now);
|
||||
pointer_chk_guard ^= now;
|
||||
#endif
|
||||
#ifdef THREAD_SET_POINTER_GUARD
|
||||
THREAD_SET_POINTER_GUARD (pointer_chk_guard);
|
||||
#endif
|
||||
__pointer_chk_guard_local = pointer_chk_guard;
|
||||
}
|
||||
|
||||
if (__builtin_expect (mode, normal) != normal)
|
||||
{
|
||||
/* We were run just to list the shared libraries. It is
|
||||
@ -2575,7 +2601,13 @@ process_envvars (enum mode *modep)
|
||||
#endif
|
||||
if (!INTUSE(__libc_enable_secure)
|
||||
&& memcmp (envline, "USE_LOAD_BIAS", 13) == 0)
|
||||
GLRO(dl_use_load_bias) = envline[14] == '1' ? -1 : 0;
|
||||
{
|
||||
GLRO(dl_use_load_bias) = envline[14] == '1' ? -1 : 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (memcmp (envline, "POINTER_GUARD", 13) == 0)
|
||||
GLRO(dl_pointer_guard) = envline[14] == '0';
|
||||
break;
|
||||
|
||||
case 14:
|
||||
|
@ -3,5 +3,5 @@ glibc-branch := fedora
|
||||
glibc-base := HEAD
|
||||
DIST_BRANCH := devel
|
||||
COLLECTION := dist-fc4
|
||||
fedora-sync-date := 2005-11-19 19:59 UTC
|
||||
fedora-sync-tag := fedora-glibc-20051119T1959
|
||||
fedora-sync-date := 2005-12-19 10:03 UTC
|
||||
fedora-sync-tag := fedora-glibc-20051219T1003
|
||||
|
@ -1,4 +1,4 @@
|
||||
%define glibcrelease 18
|
||||
%define glibcrelease 19
|
||||
%define auxarches i586 i686 athlon sparcv9 alphaev6
|
||||
%define prelinkarches noarch
|
||||
%define xenarches i686 athlon
|
||||
@ -30,7 +30,7 @@ Patch1: %{name}-ppc-assume.patch
|
||||
Patch2: %{name}-ia64-lib64.patch
|
||||
Buildroot: %{_tmppath}/glibc-%{PACKAGE_VERSION}-root
|
||||
Obsoletes: zoneinfo, libc-static, libc-devel, libc-profile, libc-headers,
|
||||
Obsoletes: gencat, locale, ldconfig, locale-ja
|
||||
Obsoletes: gencat, locale, ldconfig, locale-ja, glibc-profile
|
||||
Provides: ldconfig
|
||||
Autoreq: false
|
||||
Requires: glibc-common = %{version}-%{release}
|
||||
@ -150,24 +150,6 @@ executables.
|
||||
Install glibc-headers if you are going to develop programs which will
|
||||
use the standard C libraries.
|
||||
|
||||
%package profile
|
||||
Summary: The GNU libc libraries, including support for gprof profiling.
|
||||
Group: Development/Libraries
|
||||
Obsoletes: libc-profile
|
||||
Autoreq: true
|
||||
|
||||
%description profile
|
||||
The glibc-profile package includes the GNU libc libraries and support
|
||||
for profiling using the gprof program. Profiling is analyzing a
|
||||
program's functions to see how much CPU time they use and determining
|
||||
which functions are calling other functions during execution. To use
|
||||
gprof to profile a program, your program needs to use the GNU libc
|
||||
libraries included in glibc-profile (instead of the standard GNU libc
|
||||
libraries included in the glibc package).
|
||||
|
||||
If you are going to use the gprof program to profile a program, you'll
|
||||
need to install the glibc-profile package.
|
||||
|
||||
%package common
|
||||
Summary: Common binaries and locale data for glibc
|
||||
Conflicts: %{name} < %{version}
|
||||
@ -503,7 +485,8 @@ CC="$GCC" CFLAGS="$build_CFLAGS" ../configure --prefix=%{_prefix} \
|
||||
--enable-add-ons=nptl$AddOns --without-cvs $EnableKernel \
|
||||
--with-headers=%{_prefix}/include --enable-bind-now \
|
||||
--with-tls --with-__thread --build %{nptl_target_cpu}-redhat-linux \
|
||||
--host %{nptl_target_cpu}-redhat-linux
|
||||
--host %{nptl_target_cpu}-redhat-linux \
|
||||
--disable-profile
|
||||
make %{?_smp_mflags} -r CFLAGS="$build_CFLAGS" PARALLELMFLAGS=-s
|
||||
|
||||
cd ..
|
||||
@ -512,7 +495,6 @@ cd ..
|
||||
build_nptl linuxnptl
|
||||
|
||||
%if %{buildxen}
|
||||
EnableKernel="$EnableKernel --disable-profile"
|
||||
build_nptl linuxnptl-nosegneg -mno-tls-direct-seg-refs
|
||||
%endif
|
||||
|
||||
@ -691,7 +673,6 @@ for i in $RPM_BUILD_ROOT%{_prefix}/bin/{xtrace,memusage}; do
|
||||
chmod 755 $i; rm -f $i.tmp
|
||||
done
|
||||
|
||||
grep '%{_prefix}/%{_lib}/lib.*_p\.a' < rpm.filelist > profile.filelist || :
|
||||
grep '%{_infodir}' < rpm.filelist | grep -v '%{_infodir}/dir' > devel.filelist
|
||||
grep '%{_prefix}/include/gnu/stubs-[32164]\+\.h' < rpm.filelist >> devel.filelist || :
|
||||
|
||||
@ -934,7 +915,7 @@ case "$-" in *x*) save_trace=yes;; esac
|
||||
set +x
|
||||
echo Cutting down the list of unpackaged files
|
||||
for i in `sed '/%%dir/d;/%%config/d;/%%verify/d;s/%%lang([^)]*) //' \
|
||||
common.filelist devel.filelist headers.filelist profile.filelist \
|
||||
common.filelist devel.filelist headers.filelist \
|
||||
utils.filelist nscd.filelist`; do
|
||||
[ -f "$RPM_BUILD_ROOT$i" ] && rm -f "$RPM_BUILD_ROOT$i" || :
|
||||
done
|
||||
@ -1051,9 +1032,6 @@ rm -f *.filelist*
|
||||
%files -f headers.filelist headers
|
||||
%defattr(-,root,root)
|
||||
|
||||
%files -f profile.filelist profile
|
||||
%defattr(-,root,root)
|
||||
|
||||
%files -f utils.filelist utils
|
||||
%defattr(-,root,root)
|
||||
|
||||
@ -1095,6 +1073,14 @@ rm -f *.filelist*
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Dec 19 2005 Jakub Jelinek <jakub@redhat.com> 2.3.90-19
|
||||
- update from CVS
|
||||
- sysdeps/generic reorg
|
||||
- setjmp/longjmp jump pointer mangling
|
||||
- rebuilt with GCC 4.1-RH prerelease, worked around broken _Pragma ()
|
||||
handling in it
|
||||
- remove glibc-profile subpackage
|
||||
|
||||
* Sat Nov 19 2005 Jakub Jelinek <jakub@redhat.com> 2.3.90-18
|
||||
- update from CVS
|
||||
- change <sys/stat.h> for broken apps that #define const /**/,
|
||||
|
@ -33,63 +33,7 @@
|
||||
* the rights to redistribute these changes.
|
||||
*/
|
||||
/*
|
||||
* HISTORY
|
||||
* $Log$
|
||||
* Revision 1.15 2001/09/19 03:04:09 drepper
|
||||
* (bcopy): Removed.
|
||||
* (realloc): Replace bcopy with memcpy.
|
||||
*
|
||||
* Revision 1.14 2001/04/01 05:03:14 roland
|
||||
* 2001-03-11 Roland McGrath <roland@frob.com>
|
||||
*
|
||||
* * mach/mach_error.h: Fix ancient #endif syntax.
|
||||
* * hurd/hurdmalloc.c: Likewise.
|
||||
*
|
||||
* Revision 1.13 1996/12/20 01:32:01 drepper
|
||||
* Update from main archive 961219
|
||||
*
|
||||
* Revision 1.12 1996/11/15 19:44:13 thomas
|
||||
* Tue Nov 12 16:58:41 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
|
||||
*
|
||||
* * mach/msg-destroy.c (mach_msg_destroy_port,
|
||||
* mach_msg_destroy_memory): Use prototype syntax.
|
||||
* * hurd/hurdmalloc.c (more_memory, malloc_fork_prepare,
|
||||
* malloc_fork_parent, malloc_fork_child): Likewise.
|
||||
*
|
||||
* Revision 1.11 1996/06/06 15:13:47 miles
|
||||
* Changes to bring in line with the hurd libthreads/malloc.c:
|
||||
* (more_memory): Use assert_perror instead of MACH_CALL.
|
||||
* "cthread_internals.h": Include removed.
|
||||
* (realloc): Use LOG2_MIN_SIZE.
|
||||
* (LOG2_MIN_SIZE): New macro.
|
||||
* (realloc): Don't bother allocating a new block if the
|
||||
* new size request fits in the old one and doesn't waste any space.
|
||||
* Only free the old block if we successfully got a new one.
|
||||
* [MCHECK] (struct header): New type.
|
||||
* (union header): Only define if !MCHECK.
|
||||
* (HEADER_SIZE, HEADER_NEXT, HEADER_FREE, HEADER_CHECK): New macros.
|
||||
* [MCHECK] (MIN_SIZE): Add correct definition for this case.
|
||||
* (more_memory, malloc, free, realloc): Use above macros, and add
|
||||
* appropriate checks & frobs in MCHECK case.
|
||||
*
|
||||
* Revision 1.6 1996/03/07 21:13:08 miles
|
||||
* (realloc):
|
||||
* Use LOG2_MIN_SIZE.
|
||||
* Don't bother allocating a new block if the new size request fits in the old
|
||||
* one and doesn't waste any space.
|
||||
* Only free the old block if we successfully got a new one.
|
||||
* (LOG2_MIN_SIZE): New macro.
|
||||
*
|
||||
* Revision 1.5 1996/03/06 23:51:04 miles
|
||||
* [MCHECK] (struct header): New type.
|
||||
* (union header): Only define if !MCHECK.
|
||||
* (HEADER_SIZE, HEADER_NEXT, HEADER_FREE, HEADER_CHECK): New macros.
|
||||
* [MCHECK] (MIN_SIZE): Add correct definition for this case.
|
||||
* (more_memory, malloc, free, realloc):
|
||||
* Use above macros, and add appropriate checks & frobs in MCHECK case.
|
||||
*
|
||||
* Revision 1.4 1994/05/05 11:21:42 roland
|
||||
* entered into RCS
|
||||
* (pre-GNU) HISTORY
|
||||
*
|
||||
* Revision 2.7 91/05/14 17:57:34 mrt
|
||||
* Correcting copyright
|
||||
|
@ -1,21 +1,19 @@
|
||||
/* Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2001, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* For iconv we don't have to handle repertoire maps. Provide dummy
|
||||
definitions to allow the use of linereader.c unchanged. */
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Convert characters in input buffer using conversion descriptor to
|
||||
output buffer.
|
||||
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997-2001, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||
|
||||
@ -20,10 +20,13 @@
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <assert.h>
|
||||
#include <gconv_int.h>
|
||||
#include <sys/param.h>
|
||||
#include <dlfcn.h>
|
||||
#include <stddef.h>
|
||||
#include <sys/param.h>
|
||||
|
||||
#include <gconv_int.h>
|
||||
#include <sysdep.h>
|
||||
|
||||
|
||||
int
|
||||
internal_function
|
||||
@ -45,9 +48,15 @@ __gconv (__gconv_t cd, const unsigned char **inbuf,
|
||||
cd->__data[last_step].__outbuf = outbuf != NULL ? *outbuf : NULL;
|
||||
cd->__data[last_step].__outbufend = outbufend;
|
||||
|
||||
__gconv_fct fct = cd->__steps->__fct;
|
||||
#ifdef PTR_DEMANGLE
|
||||
if (cd->__steps->__shlib_handle != NULL)
|
||||
PTR_DEMANGLE (fct);
|
||||
#endif
|
||||
|
||||
if (inbuf == NULL || *inbuf == NULL)
|
||||
/* We just flush. */
|
||||
result = DL_CALL_FCT (cd->__steps->__fct,
|
||||
result = DL_CALL_FCT (fct,
|
||||
(cd->__steps, cd->__data, NULL, NULL, NULL,
|
||||
irreversible,
|
||||
cd->__data[last_step].__outbuf == NULL ? 2 : 1, 0));
|
||||
@ -60,7 +69,7 @@ __gconv (__gconv_t cd, const unsigned char **inbuf,
|
||||
do
|
||||
{
|
||||
last_start = *inbuf;
|
||||
result = DL_CALL_FCT (cd->__steps->__fct,
|
||||
result = DL_CALL_FCT (fct,
|
||||
(cd->__steps, cd->__data, inbuf, inbufend,
|
||||
NULL, irreversible, 0, 0));
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Table for builtin transformation mapping.
|
||||
Copyright (C) 1997-1999, 2000-2002 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997-1999, 2000-2002, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||
|
||||
@ -20,6 +20,7 @@
|
||||
|
||||
#include <endian.h>
|
||||
#include <limits.h>
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <gconv_int.h>
|
||||
@ -27,16 +28,16 @@
|
||||
#include <assert.h>
|
||||
|
||||
|
||||
static struct builtin_map
|
||||
static const struct builtin_map
|
||||
{
|
||||
const char *name;
|
||||
__gconv_fct fct;
|
||||
__gconv_btowc_fct btowc_fct;
|
||||
|
||||
int min_needed_from;
|
||||
int max_needed_from;
|
||||
int min_needed_to;
|
||||
int max_needed_to;
|
||||
int8_t min_needed_from;
|
||||
int8_t max_needed_from;
|
||||
int8_t min_needed_to;
|
||||
int8_t max_needed_to;
|
||||
|
||||
} map[] =
|
||||
{
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Provide access to the collection of available transformation modules.
|
||||
Copyright (C) 1997-2003, 2004 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997-2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||
|
||||
@ -18,6 +18,7 @@
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <assert.h>
|
||||
#include <limits.h>
|
||||
#include <search.h>
|
||||
#include <stdlib.h>
|
||||
@ -28,6 +29,7 @@
|
||||
|
||||
#include <dlfcn.h>
|
||||
#include <gconv_int.h>
|
||||
#include <sysdep.h>
|
||||
|
||||
|
||||
/* Simple data structure for alias mapping. We have two names, `from'
|
||||
@ -180,7 +182,15 @@ free_derivation (void *p)
|
||||
for (cnt = 0; cnt < deriv->nsteps; ++cnt)
|
||||
if (deriv->steps[cnt].__counter > 0
|
||||
&& deriv->steps[cnt].__end_fct != NULL)
|
||||
DL_CALL_FCT (deriv->steps[cnt].__end_fct, (&deriv->steps[cnt]));
|
||||
{
|
||||
assert (deriv->steps[cnt].__shlib_handle != NULL);
|
||||
|
||||
__gconv_end_fct end_fct = deriv->steps[cnt].__end_fct;
|
||||
#ifdef PTR_DEMANGLE
|
||||
PTR_DEMANGLE (end_fct);
|
||||
#endif
|
||||
DL_CALL_FCT (end_fct, (&deriv->steps[cnt]));
|
||||
}
|
||||
|
||||
/* Free the name strings. */
|
||||
free ((char *) deriv->steps[0].__from_name);
|
||||
@ -196,22 +206,30 @@ void
|
||||
internal_function
|
||||
__gconv_release_step (struct __gconv_step *step)
|
||||
{
|
||||
if (--step->__counter == 0)
|
||||
/* Skip builtin modules; they are not reference counted. */
|
||||
if (step->__shlib_handle != NULL && --step->__counter == 0)
|
||||
{
|
||||
/* Call the destructor. */
|
||||
if (step->__end_fct != NULL)
|
||||
DL_CALL_FCT (step->__end_fct, (step));
|
||||
{
|
||||
assert (step->__shlib_handle != NULL);
|
||||
|
||||
__gconv_end_fct end_fct = step->__end_fct;
|
||||
#ifdef PTR_DEMANGLE
|
||||
PTR_DEMANGLE (end_fct);
|
||||
#endif
|
||||
DL_CALL_FCT (end_fct, (step));
|
||||
}
|
||||
|
||||
#ifndef STATIC_GCONV
|
||||
/* Skip builtin modules; they are not reference counted. */
|
||||
if (step->__shlib_handle != NULL)
|
||||
{
|
||||
/* Release the loaded module. */
|
||||
__gconv_release_shlib (step->__shlib_handle);
|
||||
step->__shlib_handle = NULL;
|
||||
}
|
||||
/* Release the loaded module. */
|
||||
__gconv_release_shlib (step->__shlib_handle);
|
||||
step->__shlib_handle = NULL;
|
||||
#endif
|
||||
}
|
||||
else
|
||||
/* Builtin modules should not have end functions. */
|
||||
assert (step->__end_fct == NULL);
|
||||
}
|
||||
|
||||
static int
|
||||
@ -272,10 +290,15 @@ gen_steps (struct derivation_step *best, const char *toset,
|
||||
result[step_cnt].__btowc_fct = NULL;
|
||||
|
||||
/* Call the init function. */
|
||||
if (result[step_cnt].__init_fct != NULL)
|
||||
__gconv_init_fct init_fct = result[step_cnt].__init_fct;
|
||||
if (init_fct != NULL)
|
||||
{
|
||||
status = DL_CALL_FCT (result[step_cnt].__init_fct,
|
||||
(&result[step_cnt]));
|
||||
assert (result[step_cnt].__shlib_handle != NULL);
|
||||
|
||||
# ifdef PTR_DEMANGLE
|
||||
PTR_DEMANGLE (init_fct);
|
||||
# endif
|
||||
status = DL_CALL_FCT (init_fct, (&result[step_cnt]));
|
||||
|
||||
if (__builtin_expect (status, __GCONV_OK) != __GCONV_OK)
|
||||
{
|
||||
@ -285,6 +308,11 @@ gen_steps (struct derivation_step *best, const char *toset,
|
||||
result[step_cnt].__end_fct = NULL;
|
||||
break;
|
||||
}
|
||||
|
||||
# ifdef PTR_MANGLE
|
||||
if (result[step_cnt].__btowc_fct != NULL)
|
||||
PTR_MANGLE (result[step_cnt].__btowc_fct);
|
||||
# endif
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -362,8 +390,19 @@ increment_counter (struct __gconv_step *steps, size_t nsteps)
|
||||
}
|
||||
|
||||
/* Call the init function. */
|
||||
if (step->__init_fct != NULL)
|
||||
DL_CALL_FCT (step->__init_fct, (step));
|
||||
__gconv_init_fct init_fct = step->__init_fct;
|
||||
if (init_fct != NULL)
|
||||
{
|
||||
#ifdef PTR_DEMANGLE
|
||||
PTR_DEMANGLE (init_fct);
|
||||
#endif
|
||||
DL_CALL_FCT (init_fct, (step));
|
||||
|
||||
#ifdef PTR_MANGLE
|
||||
if (step->__btowc_fct != NULL)
|
||||
PTR_MANGLE (step->__btowc_fct);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Handle loading/unloading of shared object for transformation.
|
||||
Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
|
||||
Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||
@ -29,6 +29,7 @@
|
||||
#include <sys/param.h>
|
||||
|
||||
#include <gconv_int.h>
|
||||
#include <sysdep.h>
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
@ -130,6 +131,14 @@ __gconv_find_shlib (const char *name)
|
||||
found->init_fct = __libc_dlsym (found->handle, "gconv_init");
|
||||
found->end_fct = __libc_dlsym (found->handle, "gconv_end");
|
||||
|
||||
#ifdef PTR_MANGLE
|
||||
PTR_MANGLE (found->fct);
|
||||
if (found->init_fct != NULL)
|
||||
PTR_MANGLE (found->init_fct);
|
||||
if (found->end_fct != NULL)
|
||||
PTR_MANGLE (found->end_fct);
|
||||
#endif
|
||||
|
||||
/* We have succeeded in loading the shared object. */
|
||||
found->counter = 1;
|
||||
}
|
||||
|
@ -1,22 +1,20 @@
|
||||
/* Convert using charmaps and possibly iconv().
|
||||
Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
|
@ -3,20 +3,18 @@
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <argp.h>
|
||||
#include <assert.h>
|
||||
|
@ -3,20 +3,18 @@
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2000.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <argp.h>
|
||||
#include <assert.h>
|
||||
|
@ -144,6 +144,8 @@
|
||||
# include <dlfcn.h>
|
||||
#endif
|
||||
|
||||
#include <sysdep.h>
|
||||
|
||||
#ifndef DL_CALL_FCT
|
||||
# define DL_CALL_FCT(fct, args) fct args
|
||||
#endif
|
||||
@ -393,10 +395,17 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
||||
{
|
||||
struct __gconv_step *next_step = step + 1;
|
||||
struct __gconv_step_data *next_data = data + 1;
|
||||
__gconv_fct fct;
|
||||
__gconv_fct fct = NULL;
|
||||
int status;
|
||||
|
||||
fct = (data->__flags & __GCONV_IS_LAST) ? NULL : next_step->__fct;
|
||||
if ((data->__flags & __GCONV_IS_LAST) == 0)
|
||||
{
|
||||
fct = next_step->__fct;
|
||||
#ifdef PTR_DEMANGLE
|
||||
if (next_step->__shlib_handle != NULL)
|
||||
PTR_DEMANGLE (fct);
|
||||
#endif
|
||||
}
|
||||
|
||||
/* If the function is called with no input this means we have to reset
|
||||
to the initial state. The possibly partly converted input is
|
||||
|
@ -25,6 +25,6 @@ extern int __alphasort64 (const void *a, const void *b)
|
||||
__attribute_pure__;
|
||||
extern int __versionsort64 (const void *a, const void *b)
|
||||
__attribute_pure__;
|
||||
extern DIR *__alloc_dir (int fd, bool close_fd, struct stat64 *statp)
|
||||
extern DIR *__alloc_dir (int fd, bool close_fd, const struct stat64 *statp)
|
||||
internal_function;
|
||||
#endif
|
||||
|
@ -21,5 +21,8 @@ libc_hidden_proto (__fcntl)
|
||||
/* Helper functions for the various *at functions. For Linux. */
|
||||
extern void __atfct_seterrno (int errval, int fd, const char *buf)
|
||||
attribute_hidden;
|
||||
extern void __atfct_seterrno_2 (int errval, int fd1, const char *buf1,
|
||||
int fd2, const char *buf2)
|
||||
attribute_hidden;
|
||||
|
||||
#endif
|
||||
|
1
include/sys/sendfile.h
Normal file
1
include/sys/sendfile.h
Normal file
@ -0,0 +1 @@
|
||||
#include <io/sys/sendfile.h>
|
@ -29,6 +29,7 @@ extern __inline__ int __mknod (__const char *__path, __mode_t __mode,
|
||||
{
|
||||
return __xmknod (_MKNOD_VER, __path, __mode, &__dev);
|
||||
}
|
||||
libc_hidden_proto (__xmknodat)
|
||||
|
||||
|
||||
/* The `stat', `fstat', `lstat' functions have to be handled special since
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user