Commit Graph

701 Commits

Author SHA1 Message Date
Joseph Myers
a4ecc9eb9b Use -Werror by default, add --disable-werror.
As discussed starting at
<https://sourceware.org/ml/libc-alpha/2014-11/msg00323.html>, this
patch makes the glibc build use -Werror by default to avoid
accidentally adding new warnings to the build.  The configure option
--disable-werror can be used to disable this.

-Wno-error=undef is temporarily used because the build isn't clean
regarding -Wundef warnings.  The idea is that once the remaining
-Wundef warnings have been cleaned up (in at least one configuration),
-Wno-error=undef will be removed.

I get a clean build and test on x86_64 (GCC 4.9 branch) with this
patch.  The expectation is that this may well break the build for some
other configurations, and people seeing such breakage should make
appropriate fixes to fix or suppress the warnings for their
configurations.  In some cases that may involve using pragmas as the
right fix (I think that will be right for the -Wno-inline issue for
MIPS I referred to in
<https://sourceware.org/ml/libc-alpha/2012-11/msg00798.html>, for
example), in some cases -Wno-error in sysdeps makefiles (__restore_rt
in MIPS sigaction, for example), in some cases substantive fixes for
the warnings.

Note that if, with a view to listing all the warnings then fixing them
all, you just look for "warning:" in output from building and testing
with --disable-werror, you'll see lots of warnings from the linker
about functions such as tmpnam.  Those warnings can be ignored - only
compiler warnings are relevant to -Werror, not linker warnings.

	* configure.ac (--disable-werror): New configure option.
	(enable_werror): New AC_SUBST.
	* configure: Regenerated.
	* config.make.in (enable-werror): New variable.
	* Makeconfig [$(enable-werror) = yes] (+gccwarn): Add -Werror
	-Wno-error=undef.
	(+gccwarn-c): Do not use -Werror=implicit-function-declaration.
	* manual/install.texi (Configuring and compiling): Document
	--disable-werror.
	* INSTALL: Regenerated.
	* debug/Makefile (CFLAGS-tst-chk1.c): Add -Wno-error.
	(CFLAGS-tst-chk2.c): Likewise.
	(CFLAGS-tst-chk3.c): Likewise.
	(CFLAGS-tst-chk4.cc): Likewise.
	(CFLAGS-tst-chk5.cc): Likewise.
	(CFLAGS-tst-chk6.cc): Likewise.
	(CFLAGS-tst-lfschk1.c): Likewise.
	(CFLAGS-tst-lfschk2.c): Likewise.
	(CFLAGS-tst-lfschk3.c): Likewise.
	(CFLAGS-tst-lfschk4.cc): Likewise.
	(CFLAGS-tst-lfschk5.cc): Likewise.
	(CFLAGS-tst-lfschk6.cc): Likewise.
2014-12-10 01:14:48 +00:00
Joseph Myers
4863355ad5 Require GCC 4.6 or later to build glibc.
As discussed in the thread starting at
<https://sourceware.org/ml/libc-alpha/2014-10/msg00792.html>, and
continuing into November, this patch increases the minimum GCC version
for building glibc to 4.6 (there seemed to be no clear consensus for
4.7).  In particular, this allows us to use #pragma GCC diagnostic for
fine-grained warning control with -Werror (subject to establishing a
suitable policy for that use).  The documentation has a statement, as
requested, about the most recent GCC version tested for building
glibc, and I've updated <https://sourceware.org/glibc/wiki/Release> to
refer to updating that statement.  A NEWS entry is added for this
change, although previous such changes didn't get them.

Tested for x86_64 (testsuite, and that installed shared libraries are
unchanged by this patch).

	* configure.ac (libc_cv_compiler_ok): Require GCC 4.6 or later.
	* configure: Regenerated.
	* manual/install.texi (Tools for Compilation): Document a
	requirement of GCC 4.6 or later and that GCC 4.9 is the newest
	compiler verified to work.
	* INSTALL: Regenerated.
2014-11-14 18:00:34 +00:00
Andrew Senkevich
bd80507166 Update minimal required bunutils version to 2.22 2014-11-10 11:16:46 -08:00
Roland McGrath
461a7b1e45 Rework compiler version check in configure. 2014-10-24 14:45:47 -07:00
H.J. Lu
f4a58f0d35 Require autoconf 2.69
* aclocal.m4: Require autoconf 2.69.
	* configure: Regenerated.
	* sysdeps/aarch64/configure: Likewise.
	* sysdeps/alpha/configure: Likewise.
	* sysdeps/arm/armv7/configure: Likewise.
	* sysdeps/arm/configure: Likewise.
	* sysdeps/ia64/configure: Likewise.
	* sysdeps/mach/configure: Likewise.
	* sysdeps/mips/configure: Likewise.
	* sysdeps/s390/configure: Likewise.
	* sysdeps/unix/sysv/linux/mips/configure: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/configure: Likewise.

	* sysdeps/alpha/configure.ac: Avoid empty lines at the end of
	file.
	* sysdeps/ia64/configure.ac: Likewise.
2014-09-29 07:53:36 -07:00
Joseph Myers
af296fcdab Remove bitrotten --enable-oldest-abi (bug 6652).
This patch removes the --enable-oldest-abi configure option, which has
long been bitrotten (as reported in bug 6652).  The principle of
removing this option was agreed in the thread starting at
<https://sourceware.org/ml/libc-alpha/2013-07/msg00174.html>.

Tested for x86_64 and x86 that the installed shared libraries other
than libc.so are unchanged by this patch and that libc.so disassembly
and symbol versions are unchanged (debug info changes because of
changed line numbers in csu/version.c).

	[BZ #6652]
	* Makeconfig (soversions-default-setname): Remove variable.
	($(common-objpfx)soversions.i): Don't pass default_setname to
	soversions.awk.
	* Makerules ($(common-objpfx)abi-versions.h): Don't pass
	oldest_abi to abi-versions.awk.
	* config.h.in (GLIBC_OLDEST_ABI): Remove macro undefine.
	* config.make.in (oldest-abi): Remove variable.
	* configure.ac (--enable-oldest-abi): Remove configure option.
	* configure: Regenerated.
	* csu/version.c (banner) [GLIBC_OLDEST_ABI]: Remove conditional
	text.
	* scripts/abi-versions.awk: Do not handle oldest_abi variable.
	* scripts/soversions.awk: Do not handle default_setname variable.
	* sysdeps/mach/hurd/configure.ac: Do not handle oldest_abi
	variable.
	* sysdeps/mach/hurd/configure: Regenerated.
	* sysdeps/unix/sysv/linux/configure.ac: Do not handle oldest_abi
	variable.
	* sysdeps/unix/sysv/linux/configure: Regenerated.
2014-09-16 17:45:03 +00:00
Joseph Myers
ba90e05052 Remove configuration name patterns from shlib-versions.
This patch removes the first column (patterns matching configuration
names) from shlib-versions, leaving shlib-versions entry selection
based purely on sysdeps directories.

An implication of this removal is that the default for any non-Linux
ports using NPTL will be the same SONAMEs for NPTL libraries as for
Linux (as those defaults, previously limited to .*-.*-linux.*, are
left in nptl/shlib-versions and nptl_db/shlib-versions).

Special host_os handling in configure.ac that was purely for
shlib-versions is removed.  (The host_os setting is still used for
libc-abis - see
<https://sourceware.org/ml/libc-alpha/2014-01/msg00375.html> regarding
that - but no entries there are affected by this change.)

Tested on x86_64 and x86 that the installed shared libraries are
unchanged by this patch.

	* scripts/soversions.awk: Do not handle configuration names.
	* Makeconfig ($(common-objpfx)soversions.i): Do not pass cpu,
	vendor and os variables to soversions.awk.
	* configure.ac: Do not modify gnu-* host_os.
	* configure: Regenerated
	* shlib-versions: Remove first column with configuration names.
	* nptl/shlib-versions: Likewise.
	* nptl_db/shlib-versions: Likewise.
	* sysdeps/hppa/shlib-versions: Likewise.
	* sysdeps/m68k/shlib-versions: Likewise.
	* sysdeps/mach/hurd/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/aarch64/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/alpha/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/arm/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/hppa/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/ia64/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/microblaze/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/mips/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions:
	Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/sh/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/tile/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/64/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions: Likewise.

libidn/ChangeLog:
	* shlib-versions: Remove first column with configuration names.
2014-09-12 12:28:47 +00:00
Mike Frysinger
61b1ef6e7c detect broken linker handling of __ehdr_start
Older versions of ld on ia64 support __ehdr_start, but generate relocs
when they shouldn't.  This causes the ld.so to not run because it tries
to resolve the __ehdr_start symbol (but it's not exported).
2014-08-12 19:54:02 -04:00
Roland McGrath
9fe7e787ad Use __builtin_trap for ABORT_INSTRUCTION. 2014-07-31 13:07:19 -07:00
Joseph Myers
cb403c34c6 Remove relro configure test.
This patch removes the configure test for working -z relro.

The use of -z relro in Makeconfig became unconditional with

commit 2e6ab1df44c412bb9d30b26a4d8a679150a7e375
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Sat Oct 28 06:44:04 2006 +0000

    Remove conditional code which now is unnecessary.

(commit reference from git://repo.or.cz/glibc/history), so since then
the configure test has not controlled anything about how glibc is
built - simply about whether configure succeeds and allows a build to
be attempted.  The test for whether the option did something useful
(as opposed to whether it exists - which we can certainly just assume
by now) was originally added in
<https://sourceware.org/ml/libc-hacker/2004-09/msg00069.html> to
disable the option in a case when it did nothing useful on ia64 (as a
result of something deliberate in the linker on ia64).  Since 2006
that disabling has been of no effect, and given that the current test
does not set libc_relro_required for ia64, it does nothing whatever
useful for the original motivating case.  Also at around the same time
in 2006 the test was made to give an error for missing or broken -z
relro support on various architectures.

So effectively all the test does now is verify that, on certain
architectures, the linker has not been changed deliberately to make
the option ineffective.  I see no apparent reason why such a change
should be expected, or why the build should be stopped if it were to
be made (any more than we disallow build on ia64); I think we can
trust binutils patch review to point out the consequences of any
change to COMMONPAGESIZE setting.  The only thing that might now make
sense would be disabling the -z relro use on an architecture-specific
basis if there were an architecture-specific reason to consider that
to make sense; it would be for the ia64 maintainer to decide if that
makes sense for ia64 at present, but I think that could be done
through sysdeps Makefiles - no special configure tests needed.

Tested for x86_64 that this patch makes no change to the installed
shared libraries.

Together with
<https://sourceware.org/ml/libc-alpha/2014-06/msg00788.html> (pending
review) this substantially eliminates architecture-specific cases from
architecture-independent configure.ac files.  There remains an i386
case in sysdeps/mach/hurd/configure.ac that should properly move to
the i386 subdirectory.  (There are also OS-specific cases outside
OS-specific directories; in principle I think should should also
move.)

	* configure.ac (libc_commonpagesize): Remove variable.
	(libc_relro_required): Likewise.
	(libc_cv_z_relro): Remove configure test.
	* configure: Regenerated.
	* sysdeps/aarch64/preconfigure (libc_commonpagesize): Do not set
	variable.
	(libc_relro_required): Likewise.
	* sysdeps/alpha/preconfigure (libc_commonpagesize): Likewise.
	(libc_relro_required): Likewise.
	* sysdeps/arm/preconfigure.ac (libc_commonpagesize): Likewise.
	(libc_relro_required): Likewise.
	* sysdeps/arm/preconfigure: Regenerated.
	* sysdeps/ia64/preconfigure: Remove file.
	* sysdeps/tile/preconfigure (libc_commonpagesize): Do not set
	variable.
	(libc_relro_required): Likewise.
2014-06-27 16:51:22 +00:00
Joseph Myers
e64708de36 Remove powerpc special cases in configure.ac.
This patch removes two powerpc special cases in the main configure.ac.
The test for rs6000 is irrelevant to currently supported
configurations (config.guess reports rs6000 for some OSes, of which
the only one currently supported by GCC is AIX, but not for Linux).
There's no need either for a special case for powerpc*-*soft;
--without-fp suffices, and GCC doesn't have any special handling of
such a triplet.

Not tested.

	* configure.ac: Do not test for machine being rs6000.  Do not test
	for powerpc*-*soft.
	* configure: Regenerated.
2014-06-26 17:34:27 +00:00
Joseph Myers
a8779c28a8 Remove configure tests for assembler CFI support.
This patch removes configure tests for assembler CFI support (and
thereby eliminates an architecture-specific case in the main
configure.ac), instead assuming that support is present
unconditionally.

The main test was added in 2003 around the time CFI support was added
to the assembler.  cfi_personality and cfi_lsda support were added to
the assembler in 2006.  cfi_sections support was added in 2009, a few
weeks before binutils 2.20 was released; it's in 2.20, the minimum
supported version, so even that configure test is obsolete.

Tested x86_64 that the installed shared libraries are unchanged by
this patch.

	* configure.ac (libc_cv_asm_cfi_directives): Remove configure
	test.
	* configure: Regenerated.
	* config.h.in (HAVE_ASM_CFI_DIRECTIVES): Remove macro undefine.
	* sysdeps/arm/configure.ac (libc_cv_asm_cfi_directive_sections):
	Remove configure test.
	* sysdeps/arm/configure: Regenerated.
	* sysdeps/nptl/configure.ac: Do not check
	libc_cv_asm_cfi_directives.
	* sysdeps/nptl/configure: Regenerated.
	* sysdeps/x86_64/nptl/configure.ac: Remove file.
	* sysdeps/x86_64/nptl/configure: Remove generated file.
	* b/sysdeps/generic/sysdep.h [HAVE_ASM_CFI_DIRECTIVES]: Make code
	unconditional.
	[!HAVE_ASM_CFI_DIRECTIVES]: Remove conditional code.
2014-06-26 17:33:32 +00:00
Joseph Myers
c2570a0b35 Move USE_REGPARMS define to sysdeps/i386/configure.ac.
This patch moves the USE_REGPARMS define from the toplevel
configure.ac to sysdeps/i386/configure.ac.

Tested x86 that the disassembly of installed shared libraries is
unchanged by this patch.

	* configure.ac (USE_REGPARMS): Don't define here.
	* configure: Regenerated.
	* sysdeps/i386/configure.ac (USE_REGPARMS): Define here.
	* sysdeps/i386/configure: Regenerated.
2014-06-25 20:26:14 +00:00
Joseph Myers
92072d57c6 Remove BROKEN_PPC_ASM_CR0 configure test.
One piece of architecture-specific code in the main configure.ac is
the powerpc test that can define BROKEN_PPC_ASM_CR0.  There's no need
to move this to a sysdeps configure script, or to work out what bug it
was testing in May 1998 to see if it's still relevant, since nothing
in the source tree now uses the results of this test.  Thus, this
patch just removes the test in question.

Not tested.

	* configure.ac (libc_cv_c_asmcr0_bug): Remove configure test.
	* configure: Regenerated.
	* config.h.in (BROKEN_PPC_ASM_CR0): Remove macro.
2014-06-25 17:54:44 +00:00
Joseph Myers
3e239be647 Move base_machine and machine settings from configure.ac to sysdeps preconfigure fragments.
This patch makes non-ex-ports architectures set base_machine and
machine based on the original configured machine value in preconfigure
fragments, like ex-ports architectures, rather than in the toplevel
configure.ac.

Tested x86 that the disassembly of installed shared libraries is
unchanged by the patch.

	* configure.ac (base_machine): Do not set specially for particular
	machines here.
	* configure: Regenerated.
	* sysdeps/powerpc/preconfigure: Move machine and base_machine
	settings from configure.ac.
	* sysdeps/i386/preconfigure: New file.
	* sysdeps/s390/preconfigure: Likewise.
	* sysdeps/sh/preconfigure: Likewise.
	* sysdeps/sparc/preconfigure: Likewise.
2014-06-25 17:52:56 +00:00
Dominik Vogt
5a414ff70c S/390: Port of lock elision to System/z
Added support for TX lock elision of pthread mutexes on s390 and
s390x.  This may improve lock scaling of existing programs on TX
capable systems.  The lock elision code is only built with
--enable-lock-elision=yes and then requires a GCC version supporting
the TX builtins.  With lock elision default mutexes are elided via
__builtin_tbegin, if the cpu supports transactions. By default lock
elision is not enabled and the elision code is not built.
2014-05-09 16:58:46 +02:00
Carlos O'Donell
0699f766b1 nscd: Make SELinux checks dynamic.
The SELinux team has indicated to me that glibc's SELinux checks
in nscd are not being carried out as they would expect the API
to be used today. They would like to move away from static header
defines for class and permissions and instead use dynamic checks
at runtime that provide an answer which is dependent on the runtime
status of SELinux i.e. more dynamic.

The following patch is a minimal change that moves us forward in
this direction.

It does the following:

* Stop checking for SELinux headers that define NSCD__SHMEMHOST.
  Check only for the presence or absence of the library.

* Don't encode the specific SELinux permission constants into a
  table at build time, and instead use the symbolic name for the
  permission as expected.

* Lookup the "What do we do if we don't know this permission?"
  policy and use that if we find SELinux's policy is older than
  the glibc policy e.g. we make a request for a permission that
  SELinux doesn't know about.

* Lastly, translate the class and permission and then make
  the permission check. This is done every time we lookup
  a permission, and this is the expected way to use the API.
  SELinux will optimize this for us, and we expect the network
  latencies to hide these extra library calls.

Tested on x86, x86-64, and via Fedora Rawhide since November 2013.

See:
https://sourceware.org/ml/libc-alpha/2014-04/msg00179.html
2014-04-14 04:10:39 -04:00
Adhemerval Zanella
7ffa942302 PowerPC: define _CALL_ELF if compiler does not
This patch makes the configure adds -D_CALL_ELF=1 when compiler does
not define _CALL_ELF (versions before powerpc64le support).  It cleans
up compiler warnings on old compiler where _CALL_ELF is not defined
on powerpc64(be) builds.

It does by add a new config.make variable for configure-deduced
CPPFLAGS and accumulate into that (confix-extra-cppflags).  It also
generalizes libc_extra_cflags so it accumulates in sysdeps configure
fragmenets.
2014-04-06 16:48:08 -05:00
Mike Frysinger
43ca83ecc4 stop supporting bash-1.x
We've stopped supporting toolchain packages older than 2009, so punting
bash-1.x is reasonable when bash-2 was released almost 20 years ago.
2014-03-13 20:20:12 -04:00
Mike Frysinger
c66e48b4a7 delete ksh checks
Nothing in the tree uses ksh anymore, so punt these checks.
2014-03-13 20:03:31 -04:00
Roland McGrath
44c4e5d598 Use __ehdr_start, when available, for rtld to get its own headers. 2014-03-13 10:38:27 -07:00
Allan McRae
9e8ac24ba3 Set AUTOCONF variable when maintainer-mode is not used
Fixes build issue introduced in 8894bad3 when configure.ac is altered
and maintainer-mode is not enabled.
2013-12-16 21:45:27 +10:00
Allan McRae
8894bad34c Add --enable-maintainer-mode configure option
Autoconf is tested for and run if needed only when --enable-maintainer-mode
is used on configure.  This results in the autom4te.cache directory only
being written in the source directory during configure if automatic
autoconf usage is requested.

Fixes BZ #14120.
2013-12-16 11:26:49 +10:00
Marc-Antoine Perennou
28d708c44b Accept make versions 4.0 and greater 2013-10-31 12:38:36 +10:00
Mike Frysinger
cb8a6dbd17 rename configure.in to configure.ac
Autoconf has been deprecating configure.in for quite a long time.
Rename all our configure.in and preconfigure.in files to .ac.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-10-30 17:32:08 +10:00
Alan Modra
8f9ebb08af PowerPC LE configury
http://sourceware.org/ml/libc-alpha/2013-08/msg00096.html

This adds the basic configury bits for powerpc64le and powerpcle.

	* configure.in: Map powerpc64le and powerpcle to base_machine/machine.
	* configure: Regenerate.
	* nptl/shlib-versions: Powerpc*le starts at 2.18.
	* shlib-versions: Likewise.
2013-10-04 10:42:27 +09:30
Joseph Myers
3f2e46a494 Remove --disable-versioning. 2013-09-04 15:25:42 +00:00
Mike Frysinger
8c12f01d07 configure: add missing quotes in $build_pt_chown test
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-08-25 16:02:09 -04:00
Carlos O'Donell
e4608715e6 CVE-2013-2207, BZ #15755: Disable pt_chown.
The helper binary pt_chown tricked into granting access to another
user's pseudo-terminal.

Pre-conditions for the attack:

 * Attacker with local user account
 * Kernel with FUSE support
 * "user_allow_other" in /etc/fuse.conf
 * Victim with allocated slave in /dev/pts

Using the setuid installed pt_chown and a weak check on whether a file
descriptor is a tty, an attacker could fake a pty check using FUSE and
trick pt_chown to grant ownership of a pty descriptor that the current
user does not own.  It cannot access /dev/pts/ptmx however.

In most modern distributions pt_chown is not needed because devpts
is enabled by default. The fix for this CVE is to disable building
and using pt_chown by default. We still provide a configure option
to enable hte use of pt_chown but distributions do so at their own
risk.
2013-07-21 15:39:55 -04:00
Siddhesh Poyarekar
52dfbe137e Fix lock elision help text in INSTALL and configure 2013-07-04 20:33:03 +05:30
Andi Kleen
1717da59ae Add a configure option to enable lock elision and disable by default
Can be enabled with --enable-lock-elision=yes at configure time.
2013-07-02 08:46:55 -07:00
Joseph Myers
cbe7d24bb4 Require GCC 4.4 or later to build glibc. 2013-06-26 23:10:48 +00:00
Adhemerval Zanella
85c2e6110c Fix loop construction to functions calls
Check wheter the compiler has the option -fno-tree-loop-distribute-patterns
to inhibit loop transformation to library calls and uses it on memset
and memmove default implementation to avoid recursive calls.
2013-06-20 19:42:05 -05:00
Roland McGrath
12086fb483 Sort sysd-rules-patterns by descending pattern length. 2013-06-17 09:55:49 -07:00
Carlos O'Donell
0f122b8d12 Configuring for i386 is no longer supported.
We no longer support configuring for i386, nor do we
elide such a configuration to i686. Configuring with
i386-* is a failure, and we provide an example of
how to fix that.

---

2013-04-17  Carlos O'Donell  <carlos@redhat.com>

	* configure.in: Remove i386 configure warning. Remove i386 case.
	* configure: Regenerate.
	* sysdeps/i386/configure.in: Raise error if config_machine is i386.
	Add example to error message.
	* sysdeps/i386/configure: Regenerate.
2013-04-17 17:13:20 -07:00
Carlos O'Donell
a01f19c8fb i386: Fail at configure time for i386 builds.
This change does two things:

* Treats a target i386-* as if it were i686.
* Fails configure if the user is generating code
  for i386.

We no longer support i386 code-generation because the i386
lacks the atomic operations we need in glibc.

You can still configure for i386-*, but you get i686 code.

You can't build with --march=i386, --mtune=i386 or a compiler
that defaults to i386 code-generation.

I've added two i386 entries in the master todo list to discuss
merging and renaming:
http://sourceware.org/glibc/wiki/Development_Todo/Master#i386

The failure modes are fail-safe here. You compile for i386,
get i686, and try to run on i386 and it fails. The configure
log has a warning saying we elided to i686. There is no situation
that I can see where we run into any serious problems.

The patch makes the current state better in that we get less
confused users and we build successfully in more default
configurations.

The next enhancement would be to add --march=i?86
as suggested in #c20 of BZ#10062 for any i?86-* builds, which
would solve the problem of a 32-bit compiler that defaults to
i386 code-gen and glibc configured for i686-* target. Which
previously failed at build time, and now will fail at configure
time (requires adding --march=i686).

Updated NEWS with BZ #10060 and #10062.

No regressions.

---

2013-04-06  Carlos O'Donell  <carlos@redhat.com>

	[BZ #10060, #10062]
	* aclocal.m4 (LIBC_COMPILER_BUILTIN_INLINED): New macro.
	* sysdeps/i386/configure.in: Use LIBC_COMPILER_BUILTIN_INLINED and
	fail configure if __sync_val_compare_and_swap is not inlined.
	* sysdeps/i386/configure: Regenerate.
	* configure.in: Build for i686 when configured for i386.
	* configure: Regenerate.
	* README: Remove i386 reference.
2013-04-06 12:00:35 -04:00
Joseph Myers
bef0b50749 Move system-specific settings out of toplevel configure.in and config.make.in. 2013-03-20 22:37:06 +00:00
Andreas Schwab
aaa8cb4b43 Add support for rtld directory different from slib directory 2013-03-19 12:07:26 +01:00
Thomas Schwinge
b5a5da2376 Don't bother checking for $CC option to accept ISO C89. 2013-01-25 12:44:45 +01:00
Thomas Schwinge
bb931195fe configure: Default to CPP="$CC -E" unless overridden. 2013-01-25 12:33:19 +01:00
Roland McGrath
6270516e15 Fix multiarch handling in sysdeps generation. 2013-01-11 16:00:49 -08:00
H.J. Lu
740b3dbee8 Add --enable-hardcoded-path-in-tests configure option 2013-01-11 07:14:18 -08:00
Roland McGrath
1c9f1a028a Remove some old cruft variables from configure. 2013-01-10 16:22:45 -08:00
Adam Conrad
6706074627 Fix C++ header directory detection for non-standard paths.
Stop assuming specific path layouts for C++ headers, and instead
use an autodetection method that looks for paths with '/[cg]++'
in the g++ include list.
2012-11-24 23:58:38 -07:00
H.J. Lu
6bfea97493 Properly check linker -z XXX support 2012-11-21 12:34:32 -08:00
Andreas Schwab
786b0b67a3 Fix ifunc configure check for 64-bit targets 2012-11-18 16:30:16 +01:00
Joseph Myers
8b748aed2a Support --with-pkgversion and --with-bugurl. 2012-11-09 22:13:45 +00:00
Roland McGrath
6e6249d0b4 BZ#14743: Move clock_* symbols from librt to libc. 2012-10-24 14:50:46 -07:00
Mike Frysinger
0cae3f4b03 change ifunc assembly test to a link test
The test currently tests the binutils frontend support which passes for
all versions of binutils we currently require (2.20+).  It doesn't test
the backend which is required for ifunc to actually work, and which most
targets don't yet support.

Change the assembly code so that when we link it, we get a file that has
ifunc relocations if the backend supports it.  That way we can test to
see if binutils supports everything we need.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-10-24 17:01:13 -04:00
Mike Frysinger
8175a2532b drop -q flag when using grep
We don't currently want to rely on the -q option to grep.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-10-24 13:00:48 -04:00
Joseph Myers
728e272aec Remove relics of support for configuring in the source directory. 2012-10-19 20:03:12 +00:00
Joseph Myers
1e4a95361c Use $CXX not cc1plus to locate C++ headers. 2012-10-10 22:07:36 +00:00
Roland McGrath
f57f805541 Clean up conditionalize of ld.so.cache support. 2012-10-03 16:13:14 -07:00
H.J. Lu
6551399088 Remove $(have-cpp-asm-debuginfo) check 2012-09-15 13:08:45 -07:00
Allan McRae
c4e85184d2 Improve C++ header location detection (bug 13966) 2012-09-06 00:16:24 +10:00
Allan McRae
0786794f3a Check for gawk >= 3.0 (bug 13412) 2012-09-02 09:30:18 +10:00
Roland McGrath
c53d909c80 Add --disable-build-nscd configure option. 2012-08-22 13:35:55 -07:00
Roland McGrath
3cc3ef96d6 BZ#13696: Add --disable-nscd configure option. 2012-08-22 13:31:12 -07:00
Dmitry V. Levin
07e5155066 Fix sed configure check for newer sed --version output. 2012-08-22 12:58:18 -07:00
Roland McGrath
c91c505f22 Make sysheaders available in config.make. 2012-08-17 14:05:53 -07:00
Marek Polacek
b67e9372b2 Get rid of ASM_TYPE_DIRECTIVE{,_PREFIX}. 2012-08-02 21:04:29 +02:00
Thomas Schwinge
576338111a configure.in <sysdeps resolving>: Correct printing Implies_before. 2012-07-23 12:27:12 +02:00
Marek Polacek
7b8e0d49cb Get rid of ASM_GLOBAL_DIRECTIVE. 2012-07-10 14:30:24 +02:00
Roland McGrath
4248b1b1cf Respect --localstatedir for /var/db parent directory. 2012-06-22 10:11:07 -07:00
Joseph Myers
4da0431d5f Weaken PIE configure test to a compile test. 2012-05-30 09:50:40 +00:00
H.J. Lu
918b56067a Don't use header files in glibc configure 2012-05-25 14:16:19 -07:00
Roland McGrath
3a097cc7a1 Add --enable-systemtap configuration to define static probe points. 2012-05-25 13:40:20 -07:00
Joseph Myers
59f0c22ed2 Filter out unknown symbols in stack-protector test. 2012-05-21 23:26:27 +00:00
Roland McGrath
30b99d798f BZ#10375: Configure magic to use -fno-stack-protector if needed. 2012-05-16 16:22:50 -07:00
Roland McGrath
61653dfb81 BZ#10375: Configure magic to use -U_FORTIFY_SOURCE if needed. 2012-05-16 16:20:59 -07:00
Joseph Myers
6a3951a036 Update Texinfo version requirement. 2012-05-16 18:50:39 +00:00
Roland McGrath
ba75122dd9 configure change to handle Implies-{before,after} files 2012-05-15 11:04:22 -07:00
Andreas Jaeger
021db4be6f Make sunrpc code usable again
New configure option --enable-obsolete-rpc makes the deprecated RPC
  headers and functions available at compile time as they were before
  version 2.14.  This option will be removed at some time in the future
  after the TI-RPC library becomes fully sufficient for the needs of
  existing applications.
2012-05-10 20:19:53 +02:00
Andreas Jaeger
ecf0ebfb04 Always run check-abi
Remove the configure options for running of check-abi and always
run it as part of the testsuite
2012-04-29 06:36:30 +02:00
Joseph Myers
2ce4f01533 Don't handle unsupported OSes in configure (base_os settings). 2012-04-26 18:42:42 +00:00
Joseph Myers
a3cc4f48e9 Remove --as-needed configure test. 2012-04-25 17:02:33 +00:00
Joseph Myers
3a533ca370 Don't handle libgcc_s suffixes. 2012-04-24 10:22:45 +00:00
Andreas Jaeger
51d8bb8f3b Regenerate configure files 2012-03-28 09:37:58 +02:00
Andreas Schwab
7998fa7899 Disable use of FMA instructions in branred 2012-03-21 23:58:50 +01:00
Thomas Schwinge
1722813295 Weaken -fstack-protector configure test to a compile test. 2012-03-21 17:51:08 +00:00
Joseph Myers
40b601fbb7 Use autoconf macro for testing compiler options with empty input. 2012-03-21 16:33:57 +00:00
Roland McGrath
10a803e0a2 Use sysdeps/*/preconfigure fragments from main source tree. 2012-03-16 11:12:50 -07:00
David S. Miller
eae47a3618 Add framework for using sparc VIS3 instructions, use it for copysign/signbit.
* sysdeps/sparc/configure.in: New file.
	* sysdeps/sparc/configure: Generate.
	* configure.in (libc_cv_sparc_as_vis3): Substitute.
	* configure: Regenerate.
	* config.h.in (HAVE_AS_VIS3_SUPPORT): New.
	* config.make.in (have-as-vis3): New.
	* sysdeps/sparc/sparc32/sparcv9/Makefile (ASFLAGS-*): If VIS3 is
	available use -Av9d instead of -Av9a.
	* sysdeps/sparc/sparc64/Makefile: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S: New file.
2012-03-14 16:43:09 -07:00
Joseph Myers
07037eeb43 Fix .ctors/.dtors header configure test for bootstrapping. 2012-03-08 00:17:27 +00:00
Joseph Myers
bec039bcef Require binutils 2.20 or later. 2012-03-01 21:23:57 +00:00
Joseph Myers
0e7727f71d Require GCC 4.3 or later. 2012-02-27 23:07:59 +00:00
Joseph Myers
6b1d1d46b9 Fix configure logic for disabling multi-arch. 2012-02-25 00:29:19 +00:00
Andreas Schwab
26ecc33a02 Remove have-initfini and need-nopic-initfini 2012-02-08 20:31:55 +01:00
Joseph Myers
3b1004624e Fix makefile/configure problems with sse2avx changes. 2012-01-30 19:55:15 +00:00
Ulrich Drepper
15cfed3f93 Regenerated 2012-01-08 11:48:44 -05:00
Ulrich Drepper
121766a9d6 Remove pwd tst from configure 2012-01-08 09:31:02 -05:00
Ulrich Drepper
3857022a76 No need for test for __builtin_expect 2012-01-08 09:21:09 -05:00
Ulrich Drepper
5c8e36b478 Forgot to remove AC_SUBST(bonuded) 2012-01-08 07:51:27 -05:00
Ulrich Drepper
215f4bdc5f Remove more unnecessary Alpha and IA-64 configury 2012-01-08 07:47:38 -05:00
Ulrich Drepper
8720d06638 gcc better don't use a signed type for size_t 2012-01-08 07:44:18 -05:00
Ulrich Drepper
51a1d39ce3 Remove last remnants of RANLIB 2012-01-08 07:31:58 -05:00
Ulrich Drepper
a0da5fe1e4 More fallout from supporting only ELF 2012-01-08 00:45:01 -05:00
Ulrich Drepper
0269750ca6 Remove non-ELF support 2012-01-07 20:30:26 -05:00
Ulrich Drepper
bdeba1354b Remove --enable-omitfp support 2012-01-07 11:29:31 -05:00
Ulrich Drepper
dcc9756b5b Remove support in configure for unsupported architectures 2012-01-07 11:13:30 -05:00
Ulrich Drepper
9d65ea3a9b Remove handling of VCs other then git 2011-11-17 12:33:33 -05:00
Ulrich Drepper
af968f62f2 Optimize accurate 64-bit routines for FMA4 on x86-64 2011-10-24 20:19:17 -04:00
Andreas Schwab
7872cfb09f Fix searching for C++ system headers for cross compilers 2011-10-15 20:44:10 +02:00
Ulrich Drepper
83cd142045 Remove --wth-tls option, TLS support is required 2011-09-11 15:02:01 -04:00
Ulrich Drepper
f318beb800 Fix use of AC_INIT 2011-09-11 12:14:48 -04:00
Ulrich Drepper
3ce1f29594 Cleanup of configuration options
Make several tool features mandatory and simplify the code.
2011-09-10 14:34:15 -04:00
Ulrich Drepper
5f69cd2f94 Regenerated 2011-09-08 23:20:47 -04:00
Roland McGrath
fd5e21c75d Default to --with-default-link=yes if configure check finds good -shared layout. 2011-07-14 20:50:18 -07:00
Roland McGrath
5c55070081 Use linker --print-output-format option if available. 2011-07-14 20:50:17 -07:00
Roland McGrath
9fa2c03227 Adjust relro test to work around GNU ld limitations. 2011-07-14 19:09:27 -07:00
Roland McGrath
defe906180 Fix a braino in new relro configure test. 2011-07-11 18:38:13 -07:00
Roland McGrath
113ddea447 Use an empirical check for .ctors/.dtors -> .init_array/.fini_array magic. 2011-07-09 14:41:39 -07:00
Roland McGrath
574920b446 Rewrite -z relro configure check to be empirical. 2011-07-09 13:55:24 -07:00
Roland McGrath
d30cf5bb00 Find readelf with AC_CHECK_TOOL for use in configure tests. 2011-07-09 04:06:34 -07:00
Roland McGrath
1b74661a6b Explicitly remove .gnu.glibc-stub sections with objcopy when not using
linker script.
2011-07-02 15:21:27 -07:00
Roland McGrath
f781ef4015 Add --with-default-link configure option. 2011-07-02 15:19:52 -07:00
Ulrich Drepper
9113ea1f3f Remove the --experimental-malloc option
It's well tested, make it the default.
2011-06-28 16:53:01 -04:00
Roland McGrath
62bede1313 Distinguish configure check for .ctors/.dtors header/trailers. 2011-06-27 20:39:05 -07:00
Roland McGrath
b68e08db76 Use AC_LANG_PROGRAM in nss-crypt check. 2011-06-10 11:09:12 -07:00
Ulrich Drepper
f7d82dc9e0 Fix configure visibility tests 2011-05-21 08:00:14 -04:00
Ulrich Drepper
e943389325 Remove use of ranlib. 2011-02-15 14:52:29 -05:00
H.J. Lu
091023f58f Add missing configure patch. 2011-02-02 23:02:50 -05:00
Andreas Schwab
77e8bddff3 Don't override --enable-multi-arch. 2011-01-16 21:29:41 -05:00
H.J. Lu
4a531bb0b3 Remove .ctors' and .dtors' output sections 2010-12-24 20:14:37 -05:00
Roland McGrath
090555538d Rejigger header generation for default uname implementation. 2010-08-24 11:56:52 -07:00
Mike Frysinger
84b9230c40 Remove multiarch dirs when gnu indirect is not supported 2010-08-23 07:51:49 -07:00
Roland McGrath
1c7570ff36 BZ #11840: Fix config.cache usage for -fgnu89-inline check. 2010-07-26 12:45:17 -07:00
Ulrich Drepper
b08c89d9f3 Use newer autoconf. 2010-07-09 19:25:39 -07:00
H.J. Lu
01f1f5ee8b Pass -mtune=i686 to assembler when compiling for i686 2010-03-04 21:30:17 -08:00
H.J. Lu
6f89d2f30f Enable multiarch whenever possible. 2009-12-23 20:22:46 -08:00
H.J. Lu
f450806e22 Handle future binutils versions correctly. 2009-09-28 04:18:09 -07:00
Roland McGrath
7967983fd4 configure tweaks, support $libc_add_on_config_subdirs 2009-09-15 14:14:42 -07:00
H.J. Lu
0549ce8ec1 Support binutils 2.100 and 3.0. 2009-09-08 16:04:30 -07:00
H.J. Lu
4c14c8c348 Support binutils 2.20. 2009-09-05 07:06:19 -07:00
H.J. Lu
b0ecde3a63 Add AVX support to ld.so auditing for x86-64. 2009-07-10 12:04:14 -07:00
Ulrich Drepper
415ac3df9b Implement STB_GNU_UNIQUE handling.
Some symbols have to be identified process-wide by their name.  This is
particularly important for some C++ features (e.g., class local static data
and static variables in inline functions).  This cannot completely be
implemented with ELF functionality so far.  The STB_GNU_UNIQUE binding
helps by ensuring the dynamic linker will always use the same definition for
all symbols with the same name and this binding.
2009-07-09 23:52:22 -07:00
H.J. Lu
06e51c8f3d Add SSE4.2 support for strcspn, strpbrk, and strspn on x86-64. 2009-07-03 02:48:56 -07:00
Andreas Schwab
c16a054d5e Move AC_CANONICAL_HOST before first use of $host and $build. 2009-05-31 16:54:28 -07:00
Ulrich Drepper
322e23db24 * sysdeps/x86_64/memchr.S: New file. 2009-04-07 06:36:33 +00:00
Ulrich Drepper
a152f366dc * sysdeps/x86_64/strlen.S: Optimize by using SSE2 instructions. 2009-04-05 18:49:28 +00:00
Ulrich Drepper
ff886b82a2 * configure.in: Recognize --enable-nss-crypt.
* config.make.in: Add nss-crypt entry.
	* crypt/Makefile: If nss-crypt==yes, don't build md5.c, sha256.c,
	sha512.c.  Don't run md5test, sha256test, sha512test.  Pass -DUSE_NSS
	and include path for NSS directory to compiler for md5-crypt,
	sha256-crypt, sha512-crypt.  Link libcrypt.so with -lfreebl3.
	* crypt/md5-crypt.c: If USE_NSS is defined, don't use local hash
	function implementation, use NSS.  Introduce wrappers around the
	hash function calls.  Little code size optimization.
	* crypt/sha256-crypt.c: Likewise.
	* crypt/sha512-crypt.c: Likewise.
	* scripts/check-local-headers.sh: Ignore nss3 directory.

	* configure.in: Rename pic_default to libc_cv_pic_default.
	* config.make.in: Likewise.
2009-04-02 17:00:46 +00:00
Ulrich Drepper
425ce2edb9 * config.h.in (USE_MULTIARCH): Define.
* configure.in: Handle --enable-multi-arch.
	* elf/dl-runtime.c (_dl_fixup): Handle STT_GNU_IFUNC.
	(_dl_fixup_profile): Likewise.
	* elf/do-lookup.c (dl_lookup_x): Likewise.
	* sysdeps/x86_64/dl-machine.h: Handle STT_GNU_IFUNC.
	* elf/elf.h (STT_GNU_IFUNC): Define.
	* include/libc-symbols.h (libc_ifunc): Define.
	* sysdeps/x86_64/cacheinfo.c: If USE_MULTIARCH is defined, use the
	framework in init-arch.h to get CPUID values.
	* sysdeps/x86_64/multiarch/Makefile: New file.
	* sysdeps/x86_64/multiarch/init-arch.c: New file.
	* sysdeps/x86_64/multiarch/init-arch.h: New file.
	* sysdeps/x86_64/multiarch/sched_cpucount.c: New file.

	* config.make.in (experimental-malloc): Define.
	* configure.in: Handle --enable-experimental-malloc.
	* malloc/Makefile: Handle experimental-malloc flag.
	* malloc/malloc.c: Implement PER_THREAD and ATOMIC_FASTBINS features.
	* malloc/arena.c: Likewise.
	* malloc/hooks.c: Likewise.
	* malloc/malloc.h: Define M_ARENA_TEST and M_ARENA_MAX.
2009-03-13 23:53:18 +00:00
Ulrich Drepper
d6c9ebb777 Regenerated: autoconf configure.in 2008-11-26 23:09:12 +00:00
Roland McGrath
58a4b51ae0 * sysdeps/x86_64/configure: New file.
* configure.in: Add AC_SUBST(libc_cv_cpp_asm_debuginfo).
	* configure: Regenerated.
2008-11-11 09:50:20 +00:00
Roland McGrath
2cf9ad5752 2008-08-18 Roland McGrath <roland@redhat.com>
* configure.in (--with-cpu): Check compiler support for -march/-mcpu.
	* configure: Regenerated.
	* config.make.in (cflags-cpu): New substituted variable.
	(with-cpu): Variable removed.
	* Makeconfig (+cflags): Use $(cflags-cpu), not $(with-cpu).
2008-08-18 09:42:17 +00:00
Ulrich Drepper
a40fbc8dca [BZ #5814]
2008-06-25  Ulrich Drepper  <drepper@redhat.com>
	[BZ #5814]
	* locales/fi_FI: Fix separator for hours, minutes, and seconds.
2008-06-25 19:33:49 +00:00
Ulrich Drepper
215a87451d [BZ #6428]
* configure.in: Don't use $CFLAGS when assembling, use $ASFLAGS.
2008-05-15 02:58:18 +00:00
Ulrich Drepper
22dca1ea77 * configure.in: Check for -fno-section-anchors in addition to
-fno-toplevel-reorder.
2008-04-11 17:53:44 +00:00
Roland McGrath
67fbfa5ca1 [BZ #5442]
* configure.in: Use -print-file-name if it yields a directory,
	for each of include and include-fixed.
	* configure: Regenerated.
2008-02-01 00:20:11 +00:00
Roland McGrath
b22d21b3d3 2008-01-24 Roland McGrath <roland@redhat.com>
* configure.in: Let configure fragments set base_os.
	* configure: Regenerated.
2008-01-24 20:21:23 +00:00
Jakub Jelinek
46ae88502d 2007-10-06 David S. Miller <davem@davemloft.net>
* configure.in: Add sparcv9v2 and sparc64v2.
	* scripts/config.sub: Likewise.
	* configure: Regenerate.
	* elf/elf.h (HWCAP_SPARC_N2): New.
	* sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8.
	* sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'.
	(HWCAP_IMPORTANT): Add HWCAP_SPARC_N2.
	* sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file.
	* sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file.
	* sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
2007-10-06  David S. Miller  <davem@davemloft.net>

	* configure.in: Add sparcv9v2 and sparc64v2.
	* scripts/config.sub: Likewise.
	* configure: Regenerate.
	* elf/elf.h (HWCAP_SPARC_N2): New.
	* sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8.
	* sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'.
	(HWCAP_IMPORTANT): Add HWCAP_SPARC_N2.
	* sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file.
	* sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file.
	* sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
2007-10-19 06:59:33 +00:00
Ulrich Drepper
26f56c1c0e * configure.in: Avoid variable named BASH.
Patch in part by Mike Frysinger.
2007-06-06  Jakub Jelinek  <jakub@redhat.com>
2007-06-08 03:17:15 +00:00
Jakub Jelinek
371f84a4dc * configure.in (libc_cv_gnu89_inline): Only do compile test.
* configure: Rebuilt.
	* configure.in (libc_cv_gnu89_inline): Only do compile test.
	* configure: Rebuilt.
2007-03-20 12:11:23 +00:00
Ulrich Drepper
965cba048c * elf/dl-open.c (dl_open_worker): Declare l in 2 different
smaller scopes.
	* elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
	(DL_DST_REQUIRED): Adjust user.

	* include/dlfcn.h (struct link_map): New forward decl.

	* inet/getnameinfo.c: Include stddef.h.
	(getnameinfo): Use offsetof.

	* time/tst-mktime2.c (do_test): Don't rely on signed wrap.

	* stdio-common/vfprintf.c (_itoa): Undef before redefining.

	* string/strerror_l.c: Include stdlib.h.
2007-03-17 17:09:13 +00:00
Ulrich Drepper
11bf311edc [BZ #2510, BZ #2830, BZ #3137, BZ #3313, BZ #3426, BZ #3465, BZ #3480, BZ #3483, BZ #3493, BZ #3514, BZ #3515, BZ #3664, BZ #3673, BZ #3674]
2007-01-11  Jakub Jelinek  <jakub@redhat.com>
	* sysdeps/i386/soft-fp/sfp-machine.h: Remove.
	* sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
2007-01-10  Ulrich Drepper  <drepper@redhat.com>
	* io/fts.c: Make sure fts_cur is always valid after return from
	fts_read.
	Patch by Miloslav Trmac <mitr@redhat.com>.
2006-10-27  Richard Sandiford  <richard@codesourcery.com>
	* elf/elf.h (R_MIPS_GLOB_DAT): Define.
	(R_MIPS_NUM): Bump by 1.
2007-01-03  Jakub Jelinek  <jakub@redhat.com>
	* posix/execvp.c: Include alloca.h.
	(allocate_scripts_argv): Renamed to...
	(scripts_argv): ... this.  Don't allocate buffer here nor count
	arguments.
	(execvp): Use alloca if possible.
	* posix/Makefile: Add rules to build and run tst-vfork3 test.
	* posix/tst-vfork3.c: New test.
	* stdlib/Makefile (tst-strtod3-ENV): Define.
2007-01-02  Ulrich Drepper  <drepper@redhat.com>
	* posix/getconf.c: Update copyright year.
	* nss/getent.c: Likewise.
	* iconv/iconvconfig.c: Likewise.
	* iconv/iconv_prog.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* catgets/gencat.c: Likewise.
	* csu/version.c: Likewise.
	* elf/ldd.bash.in: Likewise.
	* elf/sprof.c (print_version): Likewise.
	* locale/programs/locale.c: Likewise.
	* locale/programs/localedef.c: Likewise.
	* nscd/nscd.c (print_version): Likewise.
	* debug/xtrace.sh: Likewise.
	* malloc/memusage.sh: Likewise.
	* malloc/mtrace.pl: Likewise.
	* debug/catchsegv.sh: Likewise.
2006-12-24  Ulrich Drepper  <drepper@redhat.com>
	* malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
	attempts.
2006-12-23  Ulrich Drepper  <drepper@redhat.com>
	* posix/wordexp.c: Remove some unnecessary tests.
2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>

	* sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.

	* nss/getXXbyYY_r.c: Include atomic.h.
	(INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
	add atomic_write_barrier () in between.

2006-11-28  Jakub Jelinek  <jakub@redhat.com>
	* elf/dl-support.c: Include dl-procinfo.h.
	* sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
	PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
	PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
	Define.
	(_dl_string_platform): Use PPC_PLATFORM_* macros instead of
	hardcoded constants.
	* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
	PPC_PLATFORM_* macros for array designators.
2006-11-11  Steven Munroe  <sjmunroe@us.ibm.com>
	* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
	names to the beginning.
	(_dl_powerpc_platforms): Add "power6x".
	* sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
	(HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
	(_DL_PLATFORMS_COUNT): Increase.
	(_dl_string_platform): Handle power6x case.
	* sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
	PPC_FEATURE_POWER6_EXT): Define.
	(PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
	[-2^31 .. 2^31) range.
	* sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
	* sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
	Handle relatime mount option.

2006-12-13  Jakub Jelinek  <jakub@redhat.com>
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include
	kernel-features.h.

2006-12-11  Ulrich Drepper  <drepper@redhat.com>

	* stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand
	separators also if no non-zero digits found.
	* stdlib/Makefile (tests): Add tst-strtod3.
	[BZ #3664]
	* stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize
	empty parsed strings.
	* stdlib/Makefile (tests): Add tst-strtod2.
	* stdlib/tst-strtod2.c: New file.

	[BZ #3673]
	* stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit
	computation.
	* stdlib/Makefile (tests): Add tst-atof2.
	* stdlib/tst-atof2.c: New file.

	[BZ #3674]
	* stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
	correctly if removing trailing zero of hex-float.
	* stdlib/Makefile (tests): Add tst-atof1.
	* stdlib/tst-atof1.c: New file.

	* misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
	Start searching for next comma at p rather than rest.
	* misc/Makefile (tests): Add tst-mntent2.
	* misc/tst-mntent2.c: New test.

2006-12-08  Ulrich Drepper  <drepper@redhat.com>
	* malloc/memusage.c: Handle realloc with new size of zero and
	non-NULL pointer correctly.
	(me): Really write first record twice.
	(struct entry): Make format bi-arch safe.
	(dest): Write out more realloc statistics.
	* malloc/memusagestat.c (struct entry): Make format bi-arch safe.
2006-12-05  Jakub Jelinek  <jakub@redhat.com>
	* nis/nis_subr.c (nis_getnames): Revert last change.
2006-12-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
	* sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>
	* sysdeps/i386/i686/memcmp.S: Use jump table as the base of
	jump table entries.

2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
	`clone' function to ensure proper unwinding stop of gdb.
	* sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.

2006-12-01  Ulrich Drepper  <drepper@redhat.com>

	* nscd/nscd.init: Remove obsolete and commented-out -S option
	handling.

2006-11-23  Jakub Jelinek  <jakub@redhat.com>

	[BZ #3514]
	* manual/string.texi (strncmp): Fix pastos from wcscmp description.

	[BZ #3515]
	* manual/string.texi (strtok): Remove duplicate paragraph.

2006-12-01  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with
	libgcc not supporting `rflags' unwinding (register # >= 17).

2006-11-30  Jakub Jelinek  <jakub@redhat.com>

	* sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc
	succeeded.

2006-11-29  Daniel Jacobowitz  <dan@codesourcery.com>
	    Jakub Jelinek  <jakub@redhat.com>
	    Jan Kratochvil  <jan.kratochvil@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct
	unwind information.
	* sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for
	'restore_rt' even in the 'signal' directory.
	* sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list.
	malloc crashed.  Don't allocate memory unnecessarily in each
	loop.
2006-10-21  Jakub Jelinek  <jakub@redhat.com>
	* resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
2006-11-20  Ulrich Drepper  <drepper@redhat.com>
	* resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
2006-11-18  Bruno Haible  <bruno@clisp.org>
	* sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
	__sysconf only after having tried to call getgroups32.
2006-11-19  Ulrich Drepper  <drepper@redhat.com>
	* nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
	addresses for IPv4 queries if they can be mapped.
2006-11-16  Jakub Jelinek  <jakub@redhat.com>
	* sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
	* sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
	(signmask): Add .size directive.
	(othermask): Add .type directive.
2006-11-14  Ulrich Drepper  <drepper@redhat.com>
	* po/nl.po: Update from translation team.
	* timezone/zdump.c: Redo fix for BZ #3137.
2006-11-14  Jakub Jelinek  <jakub@redhat.com>
	* nss/nss_files/files-alias.c (get_next_alias): Set line back
	to first_unused after parsing :include: file.
	* timezone/africa: Update from tzdata2006o.
	* timezone/antarctica: Likewise.
	* timezone/asia: Likewise.
	* timezone/australasia: Likewise.
	* timezone/backward: Likewise.
	* timezone/europe: Likewise.
	* timezone/iso3166.tab: Likewise.
	* timezone/northamerica: Likewise.
	* timezone/southamerica: Likewise.
	* timezone/zone.tab: Likewise.

	* time/tzfile.c (__tzfile_read): Extend to handle new file format
	on machines with 64-bit time_t.

	* timezone/checktab.awk: Update from tzcode2006o.
	* timezone/ialloc.c: Likewise.
	* timezone/private.h: Likewise.
	* timezone/scheck.c: Likewise.
	* timezone/tzfile.h: Likewise.
	* timezone/tzselect.ksh: Likewise.
	* timezone/zdump.c: Likewise.
	* timezone/zic.c: Likewise.

	[BZ #3483]
	* elf/ldconfig.c (main): Call setlocale and textdomain.
	Patch mostly by Benno Schulenberg <bensberg@justemail.net>.

	[BZ #3480]
	* manual/argp.texi: Fix typos.
	* manual/charset.texi: Likewise.
	* manual/errno.texi: Likewise.
	* manual/filesys.texi: Likewise.
	* manual/lang.texi: Likewise.
	* manual/maint.texi: Likewise.
	* manual/memory.texi: Likewise.
	* manual/message.texi: Likewise.
	* manual/resource.texi: Likewise.
	* manual/search.texi: Likewise.
	* manual/signal.texi: Likewise.
	* manual/startup.texi: Likewise.
	* manual/stdio.texi: Likewise.
	* manual/sysinfo.texi: Likewise.
	* manual/syslog.texi: Likewise.
	* manual/time.texi: Likewise.
	Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.

	[BZ #3465]
	* sunrpc/clnt_raw.c: Minimal message improvements.
	* sunrpc/pm_getmaps.c: Likewise.
	* nis/nss_nisplus/nisplus-publickey.c: Likewise.
	* nis/nis_print_group_entry.c: Likewise.
	* locale/programs/repertoire.c: Likewise.
	* locale/programs/charmap.c: Likewise.
	* malloc/memusage.sh: Likewise.
	* elf/dl-deps.c: Likewise.
	* locale/programs/ld-collate.c: Likewise.
	* libio/vswprintf.c: Likewise.
	* malloc/memusagestat.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/rpc_main.c: Likewise.
	* nscd/cache.c: Likewise.
	* locale/programs/repertoire.c: Unify output messages.
	* locale/programs/charmap.c: Likewise.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-monetary.c: Likewise.
	* locale/programs/ld-numeric.c: Likewise.
	* locale/programs/ld-time.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* nscd/selinux.c: Likewise.
	* elf/cache.c: Likewise.
	Patch mostly by Benno Schulenberg <bensberg@justemail.net>.

2006-11-10  Jakub Jelinek  <jakub@redhat.com>

	* string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
	if N is one bigger than return value.
	* string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
	and l1 last arguments, if buf is defined, verify the return value
	equals to strlen (buf) and verify no byte beyond passed length
	is modified.

2006-11-10  Ulrich Drepper  <drepper@redhat.com>

	* po/sv.po: Update from translation team.

	* sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
	Use __new_sys_siglist instead of _sys_siglist_internal as
	second macro argument.
	(_old_sys_siglist): Use declare_symbol_alias macro instead of
	strong_alias.
2006-11-09  Ulrich Drepper  <drepper@redhat.com>

	[BZ #3493]
	* posix/unistd.h (sysconf): Remove const attribute.

	* sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
	temporary or deprecated addresses.
	Patch by Sridhar Samudrala <sri@us.ibm.com>.

	* string/Makefile (tests): Add tst-strxfrm2.
	* string/tst-strxfrm2.c: New file.

2006-10-09  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
	rather than r->r_brk.
	* string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
	optimization even if needed > n.

2006-11-07  Jakub Jelinek  <jakub@redhat.com>

	* include/libc-symbols.h (declare_symbol): Rename to...
	(declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
	strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
	.size directive.
	* sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
	changes.
	* sysdeps/gnu/siglist.c: Likewise.

2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>

	* sysdeps/powerpc/fpu/bits/mathinline.h
	[__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
	* sysdeps/powerpc/fpu/math_private.h: ...here.  New file.

2006-11-05  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
	Update handling of cache descriptor 0x49 for new models.
	* sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
	Likewise.

2006-11-02  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Work around ld --help change and avoid -z relro
	test completely if the architecture doesn't care about security.

2006-11-01  Ulrich Drepper  <drepper@redhat.com>

	* po/sv.po: Update from translation team.

2006-10-31  Ulrich Drepper  <drepper@redhat.com>

	* stdlib/atexit.c (atexit): Don't mark as hidden when used to
	generate compatibility version.

2006-10-29  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Relax -z relro requirement a bit.

	* po/sv.po: Update from translation team.

2006-10-29  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
	* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
	* elf/dl-close.c (_dl_close_worker): Likewise.
	* elf/dl-open.c (_dl_open_worker): Likewise.
	* sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.

	* configure.in: Require assembler support for visibility, compiler
	support for visibility and aliases, linker support for various -z
	options.
	* Makeconfig: Remove conditional code which now is unnecessary.
	* config.h.in: Likewise.
	* config.make.in: Likewise.
	* dlfcn/Makefile: Likewise.
	* elf/Makefile: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/rtld.c: Likewise.
	* include/libc-symbols.h: Likewise.
	* include/stdio.h: Likewise.
	* io/Makefile: Likewise.
	* io/fstat.c: Likewise.
	* io/fstat64.c: Likewise.
	* io/fstatat.c: Likewise.
	* io/fstatat64.c: Likewise.
	* io/lstat.c: Likewise.
	* io/lstat64.c: Likewise.
	* io/mknod.c: Likewise.
	* io/mknodat.c: Likewise.
	* io/stat.c: Likewise.
	* io/stat64.c: Likewise.
	* libio/stdio.c: Likewise.
	* nscd/Makefile: Likewise.
	* stdlib/Makefile: Likewise.
	* stdlib/atexit.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/i386/sysdep.h: Likewise.
	* sysdeps/i386/i686/memcmp.S: Likewise.
	* sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.

	* Makerules: USE_TLS support is now default.
	* tls.make.c: Likewise.
	* csu/Versions: Likewise.
	* csu/libc-start.c: Likewise.
	* csu/libc-tls.c: Likewise.
	* csu/version.c: Likewise.
	* dlfcn/dlinfo.c: Likewise.
	* elf/dl-addr.c: Likewise.
	* elf/dl-cache.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-iteratephdr.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-sysdep.c: Likewise.
	* elf/dl-tls.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* elf/rtld.c: Likewise.
	* elf/tst-tls-dlinfo.c: Likewise.
	* elf/tst-tls1.c: Likewise.
	* elf/tst-tls10.h: Likewise.
	* elf/tst-tls14.c: Likewise.
	* elf/tst-tls2.c: Likewise.
	* elf/tst-tls3.c: Likewise.
	* elf/tst-tls4.c: Likewise.
	* elf/tst-tls5.c: Likewise.
	* elf/tst-tls6.c: Likewise.
	* elf/tst-tls7.c: Likewise.
	* elf/tst-tls8.c: Likewise.
	* elf/tst-tls9.c: Likewise.
	* elf/tst-tlsmod1.c: Likewise.
	* elf/tst-tlsmod13.c: Likewise.
	* elf/tst-tlsmod13a.c: Likewise.
	* elf/tst-tlsmod14a.c: Likewise.
	* elf/tst-tlsmod2.c: Likewise.
	* elf/tst-tlsmod3.c: Likewise.
	* elf/tst-tlsmod4.c: Likewise.
	* elf/tst-tlsmod5.c: Likewise.
	* elf/tst-tlsmod6.c: Likewise.
	* include/errno.h: Likewise.
	* include/link.h: Likewise.
	* include/tls.h: Likewise.
	* locale/global-locale.c: Likewise.
	* locale/localeinfo.h: Likewise.
	* malloc/arena.c: Likewise.
	* malloc/hooks.c: Likewise.
	* malloc/malloc.c: Likewise.
	* resolv/Versions: Likewise.
	* sysdeps/alpha/dl-machine.h: Likewise.
	* sysdeps/alpha/libc-tls.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
	* sysdeps/generic/tls.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/ia64/libc-tls.c: Likewise.
	* sysdeps/mach/hurd/fork.c: Likewise.
	* sysdeps/mach/hurd/i386/tls.h: Likewise.
	* sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
	* sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
	* sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
	* sysdeps/s390/libc-tls.c: Likewise.
	* sysdeps/s390/s390-32/dl-machine.h: Likewise.
	* sysdeps/s390/s390-64/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/x86_64/dl-machine.h: Likewise.

	[BZ #3426]
	* stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
	reality.

2006-10-27  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
	argument.
	(_dl_lookup_symbol_x): Adjust caller.

	* sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
	_ns_global_scope.
	* elf/rtld.c (dl_main): Don't initialize _ns_global_scope.

	* elf/dl-libc.c: Revert l_scope name changes.
	* elf/dl-load.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/rtld.c: Likewise.
	* elf/dl-close.c (_dl_close): Likewise.
	* elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
	always use __rtld_mrlock_{change,done}.  Always free old scope list
	here if not l_scope_mem.
	* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
	change.  Never free scope list here.  Just __rtld_mrlock_lock before
	the lookup and __rtld_mrlock_unlock it after the lookup.
	* elf/dl-sym.c: Likewise.
	* include/link.h (struct r_scoperec): Remove.
	(struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
	with l_scope_mem and l_scoperec_lock with l_scope_lock.

2006-10-25  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.

2006-10-18  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Disable building profile libraries by default.

2006-10-18  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
	_dl_lookup_symbol_x code.

2006-10-17  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-runtime.c: Include sysdep-cancel.h.
	(_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
	scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
	instead of catomic_* macros.
	* elf/dl-sym.c: Include sysdep-cancel.h.
	(do_sym): Use __rtld_mrlock_* and scoperec->nusers only
	if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
	* elf/dl-close.c: Include sysdep-cancel.h.
	(_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
	if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
	* elf/dl-open.c: Include sysdep-cancel.h.
	(dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
	if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.

2006-10-17  Jakub Jelinek  <jakub@redhat.com>

	[BZ #3313]
	* malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
	fastbin rather than end of fastbin array.

2006-10-18  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
	body macro.
	* sysdeps/x86_64/bits/atomic.h
	(__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
	(catomic_decrement): Use correct body macro.

2006-10-17  Jakub Jelinek  <jakub@redhat.com>

	* include/atomic.h: Add a unique prefix to all local variables
	in macros.
	* csu/tst-atomic.c (do_test): Test also catomic_* macros.

2006-10-14  Ulrich Drepper  <drepper@redhat.com>

	* resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.

	[BZ #3313]
	* malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
	determine highest fast bin to consolidate, always look into all of
	them.
	(do_check_malloc_state): Only require for empty bins for large
	sizes in main arena.

	* libio/stdio.h: Add more __wur attributes.

2006-11-12  Andreas Jaeger  <aj@suse.de>

	[BZ #2510]
	* manual/search.texi (Hash Search Function): Clarify.
	(Array Search Function): Clarify.

2006-11-12  Joseph Myers  <joseph@codesourcery.com>

	[BZ #2830]
	* math/atest-exp.c (main): Cast hex value to mp_limb_t before
	shifting.
	* math/atest-exp2.c (read_mpn_hex): Likewise.
	* math/atest-sincos.c (main): Likewise.

	* sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
	* sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
	* sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
	version GLIBC_2.6.
	* Versions.def: Add GLIBC_2.6 for libc.

	* sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.

2006-10-11  Jakub Jelinek  <jakub@redhat.com>

	* malloc/malloc.c (_int_malloc): Remove unused any_larger variable.

	* nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.

	* nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
	* sysdeps/generic/unsecvars.h: Add NIS_PATH.

2006-10-11  Ulrich Drepper  <drepper@redhat.com>

	* include/atomic.c: Define catomic_* operations.
	* sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
	* stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
	* malloc/memusage.c: Likewise.
	* gmon/mcount.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-fptr.c: Likewise.
	* resolv/res_libc.c: Likewise.

2006-10-10  Roland McGrath  <roland@frob.com>
	* sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
	* sysdeps/mach/hurd/futimes.c: Likewise.
	* sysdeps/mach/hurd/lutimes.c: Likewise.

2006-10-09  Ulrich Drepper  <drepper@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>

	Implement reference counting of scope records.
	* elf/dl-close.c (_dl_close): Remove all scopes from removed objects
	from the list in objects which remain.  Always allocate new scope
	record.
	* elf/dl-open.c (dl_open_worker): When growing array for scopes,
	don't resize, allocate a new one.
	* elf/dl-runtime.c: Update reference counters before using a scope
	array.
	* elf/dl-sym.c: Likewise.
	* elf/dl-libc.c: Adjust for l_scope name change.
	* elf/dl-load.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/rtld.c: Likewise.
	* include/link.h: Include <rtld-lowlevel.h>.  Define struct
	r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
	Add l_scoperec_lock.
	* sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
	* sysdeps/generic/rtld-lowlevel.h: New file.

	* include/atomic.h: Rename atomic_and to atomic_and_val and
	atomic_or to atomic_or_val.  Define new macros atomic_and and
	atomic_or which do not return values.
	* sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
	Various cleanups.
	* sysdeps/i386/i486/bits/atomic.h: Likewise.

	* po/sv.po: Update from translation team.

2006-10-07  Ulrich Drepper  <drepper@redhat.com>

	* Versions.def: Add GLIBC_2.6 to libpthread.

	* include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
	(versioned_symbol): Likewise.
	(compat_symbol): Likewise.

	* po/tr.po: Update from translation team.
	* nis/Banner: Removed.  It's been integral part forever and the
	author info is incomplete anyway.
	* libio/Banner: Likewise.

2006-10-06  Ulrich Drepper  <drepper@redhat.com>

	* version.h (VERSION): Bump to 2.5.90 for new development tree.
2007-01-11 21:51:07 +00:00
Jakub Jelinek
32c075e1f0 . 2007-07-31 13:33:18 +00:00
Ulrich Drepper
a0e3159152 * locales/mai_IN: New file.
Provided by Rajesh Ranjan <rajeshkajha@yahoo.com>.

	* SUPPORTED: Add mai_IN/UTF-8.
2006-11-03 04:26:27 +00:00
Ulrich Drepper
edece8f101 * sysdeps/ia64/pthread_spin_unlock.c (pthread_spin_unlock): Use
__sync_lock_release instead of __sync_lock_release_si.
2006-10-30 00:41:07 +00:00
Ulrich Drepper
536e40e287 * configure.in: Relax -z relro requirement a bit. 2006-10-29 22:41:06 +00:00
Ulrich Drepper
78fbd00f39 * configure.in: Require assembler support for visibility, compiler
support for visibility and aliases, linker support for various -z
	options.
	* Makeconfig: Remove conditional code which now is unnecessary.
	* config.h.in: Likewise.
	* config.make.in: Likewise.
	* dlfcn/Makefile: Likewise.
	* elf/Makefile: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/rtld.c: Likewise.
	* include/libc-symbols.h: Likewise.
	* include/stdio.h: Likewise.
	* io/Makefile: Likewise.
	* io/fstat.c: Likewise.
	* io/fstat64.c: Likewise.
	* io/fstatat.c: Likewise.
	* io/fstatat64.c: Likewise.
	* io/lstat.c: Likewise.
	* io/lstat64.c: Likewise.
	* io/mknod.c: Likewise.
	* io/mknodat.c: Likewise.
	* io/stat.c: Likewise.
	* io/stat64.c: Likewise.
	* libio/stdio.c: Likewise.
	* nscd/Makefile: Likewise.
	* stdlib/Makefile: Likewise.
	* stdlib/atexit.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/i386/sysdep.h: Likewise.
	* sysdeps/i386/i686/memcmp.S: Likewise.
	* sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
2006-10-28 06:44:41 +00:00
Ulrich Drepper
ade0c15da8 * configure.in: Disable building profile libraries by default. 2006-10-18 21:21:02 +00:00
Ulrich Drepper
871b91589b * elf/dl-lookup.c (dl_new_hash): New functions.
(_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
	value here.  Compute new-style hash value.  Pass new hash value
	and reference to variable with the old value to do_lookup_x.
	(_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
	old-style hash table.
	(_dl_debug_bindings): Pass new hash value and reference to variable
	with the old value to do_lookup_x.
	* elf/do-lookup.h (do_lookup_x): Accept additional parameter with
	new-style hash value and change old-style hash value parameter to
	be a reference.  Reoganize functions to determine whether
	new-style hash table is available.  Only fall back on old-style
	table.  If old-style hash value is needed, compute it here.
	* elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
	entry.
	* elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
	DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
	* include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
	l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
	* Makeconfig: If linker supports --hash-style option add it to all
	linker command lines to build DSOs.
	* config.make.in: Define have-hash-style.
	* configure.in: Test whether linker supports --hash-style option.

	* elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
	* sysdeps/generic/ldsodefs.h: Adjust prototype.
2006-07-10 21:59:43 +00:00
Ulrich Drepper
1f063dcadb 2006-04-26 James Antill <james.antill@redhat.com>
Ulrich Drepper  <drepper@redhat.com>

	* config.make.in: Add have-libcap.
	* configure.in: Check for libcap.
	* nscd/Makefile (selinux-LIBS): Add -lcap if possible.
	* nscd/connections.c (finish_drop_privileges): When libcap is available
	call preserve_capabilities and install_real_capabilities.
	* nscd/selinux.c: Define preserve_capabilities and
	install_real_capabilities.
	* nscd/selinux.h: Declare preserve_capabilities and
	install_real_capabilities.
2006-04-26 16:29:29 +00:00
Roland McGrath
2d73656bd3 * configure.in (machine): Match sparcv9v and sparc64v.
* configure: Regenerated.
	* sysdeps/sparc/sparc32/sparcv9v/memcpy.S: New file.
	* sysdeps/sparc/sparc32/sparcv9v/memset.S: New file.
	* sysdeps/sparc/sparc64/sparcv9v/memcpy.S: New file.
	* sysdeps/sparc/sparc64/sparcv9v/memset.S: New file.
2006-03-01 09:17:48 +00:00
Roland McGrath
14d44b191f * sysdeps/hppa: Directory removed, saved in ports repository.
* sysdeps/mach/hppa: Likewise.
	* sysdeps/mach/hurd/hppa: Likewise.
	* sysdeps/unix/sysv/linux/hppa: Likewise.
	* configure.in (machine): Remove hppa* cases.
	* configure: Regenerated.
	* shlib-versions: Remove hppa cases.

	* sysdeps/m68k: Directory removed, saved in ports repository.
	* sysdeps/unix/bsd/m68k: Likewise.
	* sysdeps/unix/sysv/linux/m68k: Likewise.
	* configure.in (machine): Remove m68* cases.
	* configure: Regenerated.
2006-02-28 10:18:39 +00:00
Roland McGrath
e0a3ed4ff9 * Makefile (subdir-target-args): New variable.
($(all-subdirs-targets)): Use it in place of -C option.
	* Rules: Use $(..) instead of ../ if it's already defined.
	* Makeconfig (subdir-srcdirs): New variable.
	* csu/Makefile (all-Banner-files): Use it.

	* configure.in (--enable-add-ons): Set to "yes" by default.
	Handle absolute add-on directory names when looking for configure
	fragments.  Also look for sysdeps/*/preconfigure fragments in add-ons.
	Require add-on configure to set $libc_add_on_canonical, use
	that in $add_ons_sfx.  Substitute add_on_subdirs with computed list
	of subdir names each add-on configure set in libc_add_on_subdirs.
	* configure: Regenerated.
	* Makefile (%/preconfigure: %/preconfigure.in): New pattern rule.
	* config.make.in (add-on-subdirs): New substituted variable.
	* Makeconfig (all-subdirs): Include $(add-on-subdirs).
	Remove $(add-ons), $(sysdep-subdirs).
	Don't filter out $(sysdep-inhibit-subdirs).
	($(common-objpfx)sysd-dirs): Target removed.  Don't include it.
	($(common-objpfx)sysd-sorted): Rewritten to feed Depend and Subdirs
	files together to gen-sorted.awk, and $(subdirs) via -v.
	(subdirs): Remove magic reordering for mach and hurd.
	* scripts/gen-sorted.awk: Use subdirs from command line.
	Process Subdirs and Depend files directly.
	Let Subdirs files use "first dir" and "inhibit dir".
	Always move elf to the end of the list.
	* hurd/Depend: New file.
	* sysdeps/mach/Subdirs: Use "first mach".

	* Makefile (dist-separate): Remove linuxthreads.
	(dist-separate-linuxthreads): Variable removed.
	(glibc-%.tar rule): Use $(sysdeps-add-ons).

	* Makerules ($(common-objpfx)Versions.v.i): Use $(subdirs),
	not $(all-subdirs).
	(sysdep-makefiles): Use $(sysdirs).
	(sysdirs): Remove export.
	($(+sysdir_pfx)sysd-rules): Handle absolute directory names in
	$(config-sysdirs).
	(+sysdir_pfx): Variable removed.
	(sysd-rules): Use $(common-objpfx) in place of it.
	(sysdirs): Variable moved to ...
	* Makeconfig (sysdirs): ... here.
	Handle absolute directory names in $(config-sysdirs).
	(full_config_sysdirs): Variable removed.
	* csu/Makefile: Use $(sysdirs) in vpath directive.
	* math/Makefile (ulps-file): Use $(sysdirs).
	* sysdeps/gnu/Makefile (errlist-c): Likewise.
	($(objpfx)errlist-compat.c): Likewise.
	* Makeconfig (all-Subdirs-files): Likewise.
	($(common-objpfx)config.status): Likewise.

	* configure.in (sysnames): Handle absolute add-on directory names.
	(sysdeps_add_ons): New variable, AC_SUBST it.
	Compute which add-ons contributed sysdeps directories.
	* configure: Regenerated.
	* config.make.in (sysdeps-add-ons): New substituted variable.
	* Makerules (+sysdep_dirs, +sysdep-includes): Variables moved ...
	* Makeconfig: ... to here.
	(+sysdep_dirs): Append $(sysdeps-add-ons) here.
	(+includes): Remove $(objpfx) include, already in $(+sysdep_dirs).
	Remove $(includes).
	(sysdep-makeconfigs): Use $(+sysdep_dirs).
	($(common-objpfx)shlib-versions.v.i): Likewise.

	* Makeconfig: Remove hair to set Makeconfig-add-on.

	* sysdeps/unix/Makefile (sysdirs): Remove export.
	(asm_CPP): Variable removed.
	($(common-objpfx)sysd-syscalls): Pass them directly for the script.

	* sysdeps/posix/Makefile: New file.
	* Makerules (L_tmpnam, TMP_MAX, L_ctermid, L_cuserid): Set non-posix
	values here with ?=.

	* stdlib/gen-mpn-copy: File removed.
	* stdlib/Makefile (distribute): Remove it.
	* configure.in: Don't grok --with-gmp.
	* configure: Regenerated.

	* configure.in (libc_cv_idn): Don't check it; libidn/configure does it.
	* configure: Regenerated.

	* bare: Directory removed, saved in ports repository.
2006-02-28 07:11:04 +00:00
Roland McGrath
10c6e7097f * configure.in: Use sparc/sparc32/sparcv9/sparcv9b in place
of sparc/sparc32/sparcv9b.
	* configure: Regenerated.
	* sysdeps/sparc/sparc32/sparcv9b/Implies: File removed.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9b/Implies: File removed.
2006-02-25 03:37:24 +00:00
Roland McGrath
7d93246124 * configure.in (libc_cv_gcc_dwarf2_unwind_info): Delete.
(HAVE_DWARF2_UNWIND_INFO{,_STATIC}): Remove AC_DEFINEs.
	* configure: Regenerate.
	* config.h.in (HAVE_DWARF2_UNWIND_INFO{,_STATIC}): Remove undefs.
	* elf/soinit.c: Don't include gccframe.h.
	(__EH_FRAME_BEGIN__): Define unconditionally.
	(__register_frame_info, __deregister_frame_info)
	(__register_frame_info_bases, __deregister_frame_info_bases)
	(__register_frame, __deregister_frame): Remove declarations.
	(__libc_global_ctors, __libc_fini): Don't call registry functions.
	* elf/sofini.c (__EH_FRAME_END__): Define unconditionally.
2006-02-22 02:09:08 +00:00
Roland McGrath
18e2ac6dbb 2006-01-30 Alexandre Oliva <aoliva@redhat.com>
Roland McGrath  <roland@redhat.com>

	* configure.in (fno_unit_at_a_time): Set to
	-fno-toplevel-reorder if the compiler supports it.
	Otherwise use -fno-unit-at-a-time unconditionally.
	* configure: Regenerated.
2006-01-30 22:41:14 +00:00
Ulrich Drepper
ced368f7dc * scripts/check-c++-types.sh: Add more pthread types.
* scripts/data//c++-types-i386-linux-gnu.data: Adjust.
	* scripts/data//c++-types-ia64-linux-gnu.data: Likewise.
	* scripts/data//c++-types-powerpc-linux-gnu.data: Likewise.
	* scripts/data//c++-types-powerpc64-linux-gnu.data: Likewise.
	* scripts/data//c++-types-s390-linux-gnu.data: Likewise.
	* scripts/data//c++-types-s390x-linux-gnu.data: Likewise.
	* scripts/data//c++-types-x86_64-linux-gnu.data: Likewise.
2006-01-06 22:58:39 +00:00
Ulrich Drepper
b2f97341c5 Regenerated: autoconf configure.in 2006-01-04 06:26:49 +00:00
Roland McGrath
ef226fecbe * config.make.in (c++-sysincludes): New substituted variable.
* configure.in (CXX_SYSINCLUDES): New substituted variable.
	* configure: Regenerated.
	* Makeconfig (CXXFLAGS): Prepend $(c++-sysincludes) here.
2005-12-28 06:53:43 +00:00
Roland McGrath
2ceaa76abd * configure.in: Grok --with-cpu=CPU option. If given, search for
sysdeps/.../machine/CPU subdirs, and give error if none are found.
	* configure: Regenerated.
	* config.make.in (with-cpu): New substituted variable.
	* Makeconfig (+cflags): Add -mcpu=$(with-cpu) if set.
2005-11-08 01:21:32 +00:00
Ulrich Drepper
8e635611c9 * malloc/malloc.c (munmap_chunk): Add sanity checks.
* sysdeps/pthread/configure: Fix comment.
2005-11-06 17:08:48 +00:00
Ulrich Drepper
4520d7aac8 * configure.in: Remove test for support for subtracting local labels.
* stdio-common/vfprintf.c: Remove test of
	HAVE_SUBTRACT_LOCAL_LABELS.
2005-11-05 21:49:48 +00:00
Ulrich Drepper
ce33ee7caa * configure.in: If init_array/fini_array support is not available,
bail out.
	* config.h.in: Remove trace of optional init_array/fini_array support.
	* config.make.in: Likewise.
	* csu/elf-init.c: Likewise.
	* dlfcn/dlfcn.c: Likewise.
	* elf/soinit.c: Likewise.
	* sysdeps/ia64/elf/initfinit.c: Likewise.
2005-11-05 17:46:24 +00:00
Roland McGrath
4b69abad2c [BZ #1089]
2005-11-04  Roland McGrath  <roland@redhat.com>
	[BZ #1089]
	* configure.in: Change order of add-on sysdeps directories,
	so they are interleaved with main sysdeps directories.
	* configure: Regenerated.
2005-11-05 02:00:22 +00:00
Ulrich Drepper
dbc92dc6cb * configure.in: Compile source test file with -fPIC for -shared.
2005-09-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/unix/sysv/linux/sh/lowlevellock.S (__lll_mutex_lock_wait):
	Fix typo in register name.
2005-09-06 01:18:13 +00:00
Ulrich Drepper
10ffcd52f0 * stdio-common/Makefile (aux): Add fxprintf.
* stdio-common/fxprintf.c: New file.
	* include/stdio.h: Add declaration for stdio.h.
	* argp/argp-fmtstream.c: Use __fxprintf instead of inline stream
	orientation test and two separate function calls.
	* argp/argp-help.c: Likewise.
	* assert/assert-perr.c: Likewise.
	* assert/assert.c: Likewise.
	* gmon/gmon.c: Likewise.
	* inet/rcmd.c: Likewise.
	* malloc/obstack.c: Likewise.
	* misc/error.c: Likewise.
	* misc/getpass.c: Likewise.
	* posix/getopt.c: Likewise.
	* resolv/res_hconf.c: Likewise.
	* stdio-common/perror.c: Likewise.
	* stdio-common/psignal.c: Likewise.
	* stdlib/fmtmsg.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/clnt_perr.c: Likewise.
	* sunrpc/clnt_tcp.c: Likewise.
	* sunrpc/clnt_udp.c: Likewise.
	* sunrpc/clnt_unix.c: Likewise.
	* sunrpc/svc_simple.c: Likewise.
	* sunrpc/svc_tcp.c: Likewise.
	* sunrpc/svc_udp.c: Likewise.
	* sunrpc/svc_unix.c: Likewise.
	* sunrpc/xdr.c: Likewise.
	* sunrpc/xdr_array.c: Likewise.
	* sunrpc/xdr_rec.c: Likewise.
	* sunrpc/xdr_ref.c: Likewise.
	* sysdeps/generic/wordexp.c: Likewise.

	* misc/Makefile: Add rules to build and run tst-error1.
	* misc/tst-error1.c: New file.
	* misc/error.c: Fix memory leak and possibly endless loop.
2005-07-19 23:46:55 +00:00
Ulrich Drepper
35f1e82763 * Versions.def (ld): Add GLIBC_2.4.
* configure.in: Add --enable-stackguard-randomization option.
	(ENABLE_STACKGUARD_RANDOMIZE): New define.
	* config.h.in (ENABLE_STACKGUARD_RANDOMIZE): Add.
	* sysdeps/unix/sysv/linux/dl-osinfo.h: Include stdint.h.
	(_dl_setup_stack_chk_guard): New inline function.
	* sysdeps/generic/dl-osinfo.h: Include stdint.h.
	(_dl_setup_stack_chk_guard): New inline function.
	* elf/rtld.c (__stack_chk_guard): New variable.
	(dl_main): Remove all traces of TLS_INIT_TP_EXPENSIVE.
	Set __stack_chk_guard to _dl_setup_stack_chk_guard (),
	use THREAD_SET_STACK_GUARD if defined.
	* elf/Versions (ld): Export __stack_chk_guard@@GLIBC_2.4.
	* sysdeps/generic/libc-start.c (__stack_chk_guard): New variable.
	(__libc_start_main): Set __stack_chk_guard to
	_dl_setup_stack_chk_guard (), use THREAD_SET_STACK_GUARD if defined.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Remove all
	traces of TLS_INIT_TP_EXPENSIVE.
	* debug/Versions (libc): Export __stack_chk_fail@@GLIBC_2.4.
	* debug/Makefile (routines): Add stack_chk_fail.
	(static-only-routines): Add stack_chk_fail_local.
	* debug/stack_chk_fail_local.c: New file.
	* debug/stack_chk_fail.c: New file.
	* elf/Makefile: Add rules to build and run tst-stackguard1{,-static}
	tests.
	* elf/tst-stackguard1.c: New file.
	* elf/tst-stackguard1-static.c: New file.
	* elf/stackguard-macros.h: New file.
2005-06-26 18:14:26 +00:00
Ulrich Drepper
b399a0c2e2 * hesiod/hesiod_p.h (struct hesiod_p): Add classes array.
* hesiod/hesiod.c (hesiod_init): Initialize classes.  Fail if no
	valid classes were given or if both are equal.
	(hesiod_resolve): Use ctx->classes instead of hardcoded C_IN
	and C_HS order.
	(parse_config_file): Handle classes keyword.
	* hesiod/README.hesiod: Mention addition of the classes keyword.
2005-06-15 04:14:52 +00:00
Ulrich Drepper
7427c5defa [BZ #954]
2005-05-26  Andreas Schwab  <schwab@suse.de>
	* locale/Makefile (CFLAGS-loadlocale.c): Don't define.

2005-05-26  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_DIRECT): Fix value.
	Reported by Colin Gibbs <colin@gibbsonline.net>.  [BZ #954]

2005-05-17  Alan Modra  <amodra@bigpond.net.au>

	* sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): Corrent
	_dl_hwcap access in PIC && !SHARED case.
	* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
2005-05-26 19:08:49 +00:00
Ulrich Drepper
62d01985e9 * sysdeps/i386/sysdep.h: Add cfi instrumentation to asm fragments.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/socket.S: Remove now duplicate
	cfi_startproc and cfi_endproc.
2005-04-28 21:11:47 +00:00
Roland McGrath
d0868826c3 2005-03-18 Daniel Jacobowitz <dan@codesourcery.com>
* configure.in: Use %function instead of @function.
	* configure: Regenerated.
2005-03-18 22:23:14 +00:00
Ulrich Drepper
3cc4a09733 * wcsmbs/wctob.c (wctob): Make buf array of unsigned char.
* sysdeps/generic/strchrnul.c: Add cast to avoid warning.
	* libio/iofwide.c: Add casts to avoid warnings.
	* stdio-common/printf-prs.c (parse_printf_format): Introduce new
	variable f to avoid warnings.
	* sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
	Fix a few casts to avoid warnings.
	* iconv/gconv_simple.c (internal_utf8_loop): Make start unsigned
	to avoid warning.
2005-03-06 04:51:37 +00:00
Roland McGrath
2103c260f9 * sysdeps/generic/ldsodefs.h (_dl_out_of_memory_internal): Remove decl.
(_dl_out_of_memory): Use rtld_hidden_proto.
	* elf/dl-error.c (_dl_out_of_memory): Use rtld_hidden_data_def.
	(_dl_signal_error): Don't use INTUSE on _dl_out_of_memory.
	* elf/dl-open.c (_dl_open): Likewise.
	* elf/dl-deps.c (_dl_map_object_deps): Likewise.

	* sunrpc/des_impl.c (des_set_key): Make first argument unsigned char *.

	* elf/dl-addr.c (_dl_addr): Add a cast.

	* elf/unload3mod4.c: Declare foo.
	* elf/testobj2.c: Include <stdio.h>.

	* sysdeps/gnu/errlist.awk: Emit NERR macro for _sys_nerr_internal
	value constant, and use it in the defn.
	* sysdeps/gnu/errlist-compat.awk: Use NERR in array decl.
	Use actual size for compat array decls.

	* config.make.in (cc-mtune): New substituted variable.
	* configure.in (libc_cv_cc_mtune): New test for -mtune= switch,
	done only if libc_mtune_example is defined.
	* configure: Regenerated.
	* sysdeps/i386/configure.in (libc_mtune_example): Set it.
	* sysdeps/i386/configure: Regenerated.
	* sysdeps/i386/Makefile (CFLAGS-initfini.s): Use $(cc-mtune).
2005-03-06 00:08:10 +00:00
Roland McGrath
75df54b7c8 * configure.in (sysnames): Append sysdeps/generic for each add-on.
* configure: Regenerated.
2005-02-06 20:15:22 +00:00
Roland McGrath
78d04074a1 2005-01-05 Roland McGrath <roland@redhat.com>
* configure.in (libc_cv_cpp_asm_debuginfo): Checked moved ...
	* sysdeps/i386/configure.in: ... here.  New file.
	* sysdeps/i386/configure: New generated file.
	* configure: Regenerated.
2005-01-05 09:39:54 +00:00
Ulrich Drepper
a334319f65 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Jakub Jelinek
0ecb606cb6 2.5-18.1 2007-07-12 18:26:36 +00:00
Ulrich Drepper
cbdb12dec1 Update.
2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>

	* Makeconfig (libunwind): New.
	(libgcc_eh): Add $(libunwind).
	(gnulib): Always set to -lgcc $(libgcc_eh).
	(static-gnulib): Always set to -lgcc -lgcc_eh $(libunwind).
	(libc.so-gnulib): New.
	* Makerules (LDLIBS-c.so): Use $(libc.so-gnulib) instead of
	$(static-gnulib).
	* configure.in (libc_cv_cc_with_libunwind): Set to yes if gcc
	uses -lunwind for static binaries.
2004-12-15 18:54:41 +00:00
Roland McGrath
62facdf7c5 2004-10-25 Roland McGrath <roland@frob.com>
* configure.in (ASM_LINE_SEP): Move this setting to ...
	* sysdeps/hppa/configure.in: ... here, new file.
	* sysdeps/hppa/configure: New generated file.
	* configure: Regenerated.
2004-10-26 01:35:54 +00:00
Ulrich Drepper
8f1913a918 Update.
2004-09-23  Thorsten Kukuk  <kukuk@suse.de>

	* sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
	and BLK* ioctls with linux kernel headers.
2004-09-23 14:07:48 +00:00
Ulrich Drepper
54beacabbe Update.
2004-09-20  Jakub Jelinek  <jakub@redhat.com>

	* configure.in (libc_cv_z_relro): Only set to yes if linker script
	contains DATA_SEGMENT_RELRO_END.
2004-09-20 14:47:18 +00:00
Ulrich Drepper
74a30a5851 Update.
2004-09-16  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Add test for required SELinux features.
	* config.make.in: Add have-selinux entry.
	* config.h.in: Add HAVE_SELINUX entry.
	* nscd/Makefile (nscd-modules): Add selinux.
	(CFLAGS-selinux.c): Add -fpie.
	Define selinux-LIBS and use in link line.
	* nscd/connections.c (handle_request): Check access SELinux permissions
	before processing request.
	* nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
	* nscd/nscd_stat.c: Transmit and print AVC statistics.
	* nscd/selinux.c: New file.
	* nscd/selinux.h: New file.

2004-09-16  Jakub Jelinek  <jakub@redhat.com>

	* nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
	instead of munmap.

	* nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.

2004-09-16  Thorsten Kukuk  <kukuk@suse.de>

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Check
	__nss_not_use_nscd_hosts variable if nscd should be used or not.

2004-09-16  Ulrich Drepper  <drepper@redhat.com>

	* nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
	Add __nscd_getai prototype.
	* nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
	* nscd/nscd-client.h: Remove __nscd_getai prototype.
	* nscd/nscd_getai.c: Include nscd_proto.h.

	* elf/ldd.bash.in: Add support for SELinux environments.
	Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
2004-09-17 00:04:18 +00:00
Roland McGrath
3d6ce23a90 2004-09-16 Roland McGrath <roland@redhat.com>
* configure.in (--with-headers): Let argument contain a : separated
	list of directories to use, not just one.
	* configure: Regenerated.
2004-09-16 23:22:05 +00:00
Ulrich Drepper
79937577d1 Update.
2004-09-13  Ulrich Drepper  <drepper@redhat.com>

	* misc/sys/cdefs.h: Restore old definition of __P.
	* csu/munch.awk: Remove uses of __P and __PMT.
	* gmon/gmon.c: Likewise.
	* hesiod/hesiod.h: Likewise.
	* include/stdio.h: Likewise.
	* io/fts.c: Likewise.
	* libio/genops.c: Likewise.
	* libio/libioP.h: Likewise.
	* libio/fileops.c: Likewise.
	* libio/iolibio.h: Likewise.
	* libio/libio.h: Likewise.
	* libio/memstream.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/oldstdfiles.c: Likewise.
	* libio/iopopen.c: Likewise.
	* libio/vsnprintf.c: Likewise.
	* libio/vswprintf.c: Likewise.
	* libio/wgenops.c: Likewise.
	* libio/oldiopopen.c: Likewise.
	* locale/programs/xmalloc.c: Likewise.
	* locale/programs/xstrdup.c: Likewise.
	* malloc/mtrace.c: Likewise.
	* misc/getttyent.c: Likewise.
	* misc/getusershell.c: Likewise.
	* nis/rpcsvc/ypupd.h: Likewise.
	* posix/fnmatch.h: Likewise.
	* posix/glob.h: Likewise.
	* resolv/arpa/nameser.h: Likewise.
	* resolv/gethnamaddr.c: Likewise.
	* resolv/resolv.h: Likewise.
	* resolv/inet_net_ntop.c: Likewise.
	* resolv/inet_net_pton.c: Likewise.
	* resolv/res_init.c: Likewise.
	* resolv/nss_dns/dns-network.c: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* stdio-common/reg-printf.c: Likewise.
	* sysdeps/generic/chflags.c: Likewise.
	* sysdeps/generic/fchflags.c: Likewise.
	* sysdeps/generic/glob.c: Likewise.
	* sysdeps/generic/printf_fphex.c: Likewise.
	* sysdeps/generic/memcmp.c: Likewise.
	* sysdeps/generic/memcopy.h: Likewise.
	* sysdeps/generic/morecore.c: Likewise.
	* sysdeps/generic/sstk.c: Likewise.
	* sysdeps/posix/sigvec.c: Likewise.
	* sysdeps/posix/ttyname_r.c: Likewise.
	* sysdeps/standalone/arm/bits/errno.h: Likewise.
	* sysdeps/standalone/standalone.h: Likewise.
	* sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
	* sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
	* sysdeps/unix/arm/start.c: Likewise.
	* sysdeps/unix/bsd/sigaction.c: Likewise.
	* sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
	* sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
	* sysdeps/unix/sparc/start.c: Likewise.
	* sysdeps/unix/sysv/getdents.c: Likewise.
	* sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
	* sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
	* sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
	* sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
	* sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
	* sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
	* sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
	* sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
	* sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
	* time/tzset.c: Likewise.
	* time/strftime_l.c: Likewise.
	* time/strptime_l.c: Likewise.
	* crypt/md5.h: Likewise.
2004-09-14 04:41:35 +00:00
Ulrich Drepper
61a807d07c Regenerated: autoconf configure.in 2004-09-14 00:41:16 +00:00
Roland McGrath
acd250cb97 2004-09-13 Andreas Jaeger <aj@suse.de>
* configure.in: Support GCC 4.x.
	* configure: Regenerated.
2004-09-13 19:47:43 +00:00
Ulrich Drepper
590b40f7ec Update.
2004-09-07  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/powerpc/powerpc64/configure.in: New file.
	* config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
	* configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
	* sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
	(OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
	BODY_PREFIX): Define.
	(ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
	HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
	USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
	* sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
	(TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
2004-09-08 07:02:28 +00:00