From 443caceb354d06724019625ebde083b5151c3fed Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 5 Jun 2009 09:42:32 -0700 Subject: [PATCH] Fix build problems with old binutils. Old binutils don't provide IFUNC and don't generate the section start/end symbols we expect. At least for now only add the initializer code for static IFUNC relocations if multi-arch support is requested. --- ChangeLog | 5 +++++ csu/elf-init.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7d99a207fe..cc03bb36d9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-06-05 Ulrich Drepper + + * csu/elf-init.c: Only compile in IFUNC functionality if USE_MULTIARCH + is defined. + 2009-06-04 Ulrich Drepper * sysdeps/x86_64/strlen.S: Minor optimizations. diff --git a/csu/elf-init.c b/csu/elf-init.c index 5a99a3a400..d5ec912cba 100644 --- a/csu/elf-init.c +++ b/csu/elf-init.c @@ -1,5 +1,5 @@ /* Startup support for ELF initializers/finalizers in the main executable. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2009 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 @@ -36,7 +36,7 @@ #include -#ifndef LIBC_NONSHARED +#if defined USE_MULTIARCH && !defined LIBC_NONSHARED # include # include @@ -80,7 +80,7 @@ __libc_csu_init (int argc, char **argv, char **envp) /* For dynamically linked executables the preinit array is executed by the dynamic linker (before initializing any shared object. */ -#ifndef LIBC_NONSHARED +#if defined USE_MULTIARCH && !defined LIBC_NONSHARED # ifdef ELF_MACHINE_IRELA { const size_t size = __rela_iplt_end - __rela_iplt_start; -- 2.11.4.GIT