aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2011-09-21 13:27:50 -0700
committerRoland McGrath <mcgrathr@chromium.org>2011-09-21 13:27:50 -0700
commite057a1b5930ec538c2b8abbba700a436ef2c81d5 (patch)
tree8792ce79da59c83ffddecbf5a2e4a5fd5ce69c01
parentecb1482ffd85fd3279642b1dc045aa867ad4d415 (diff)
downloadglibc-e057a1b5930ec538c2b8abbba700a436ef2c81d5.zip
glibc-e057a1b5930ec538c2b8abbba700a436ef2c81d5.tar.gz
glibc-e057a1b5930ec538c2b8abbba700a436ef2c81d5.tar.bz2
Link libresolv.so with ld.so for __stack_chk_guard.
-rw-r--r--ChangeLog7
-rw-r--r--resolv/Makefile8
2 files changed, 14 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 3aa91f5..693745f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-09-21 Chung-Lin Tang <cltang@codesourcery.com>
+ Maxim Kuvyrkov <maxim@codesourcery.com>
+ Joseph Myers <joseph@codesourcery.com>
+
+ * resolv/Makefile (LDLIBS-resolv.so): Link in $(elfobjdir)/ld.so
+ if needed for __stack_chk_guard.
+
2011-09-19 Roland McGrath <roland@hack.frob.com>
* sysdeps/posix/spawni.c (script_execute): Always define it.
diff --git a/resolv/Makefile b/resolv/Makefile
index ec3788f..b4287de 100644
--- a/resolv/Makefile
+++ b/resolv/Makefile
@@ -1,4 +1,5 @@
-# Copyright (C) 1994-2001,2003,2004,2007,2008 Free Software Foundation, Inc.
+# Copyright (C) 1994-2001,2003,2004,2007,2008,2011
+# 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
@@ -88,6 +89,11 @@ CFLAGS-res_hconf.c = -fexceptions
# This ensures they will load libc.so for needed symbols if loaded by
# a statically-linked program that hasn't already loaded it.
$(objpfx)libresolv.so: $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a
+# Some hosts need '__stack_chk_guard', so pull in the definition from
+# ld.so if required.
+ifeq (yesyes,$(have-ssp)$(elf))
+LDLIBS-resolv.so += $(as-needed) $(elfobjdir)/ld.so $(no-as-needed)
+endif
# The DNS NSS modules needs the resolver.
$(objpfx)libnss_dns.so: $(objpfx)libresolv.so $(common-objpfx)libc.so \