mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: "Andreas Bießmann" <biessmann@corscience.de>
To: ptxdist@pengutronix.de
Cc: oselas@community.pengutronix.de,
	"Andreas Bießmann" <biessmann@corscience.de>
Subject: [ptxdist] [PATCH][OSELAS.Toolchain] binutils-2.21.1a: remove annoying 'warn-on-all-TEXTRELs.patch'
Date: Tue, 20 Mar 2012 09:56:23 +0100	[thread overview]
Message-ID: <1332233783-15999-1-git-send-email-biessmann@corscience.de> (raw)

The 'warn-on-all-TEXTRELs.patch' produces warnings on some embedded projects:

---8<---
arm-v5te-linux-gnueabi-ld: warning: creating a DT_TEXTREL in object.
   text	   data	    bss	    dec	    hex	filename
 423076	   7480	 305016	 735572	  b3954	/tmp/build_arm_at91/u-boot
--->8---

This renders this toolchain nearly un-usable for this use-case. If one will
see these warnings he can always use the '--warn-shared-textrel' switch so
this patch will only revert the 'default to warn' to 'default to ignore
warning' which is in fact the default for GNU linker.

Another point is that even crosstool-ng has switched back and removed this
patch, it seems there are some other users bothered by that warning.

Signed-off-by: Andreas Bießmann <biessmann@corscience.de>
---
 ...1-05-31-Paul-Brook-paul-codesourcery.com.patch} |    0
 .../0002-warn-on-all-TEXTRELs.patch                |   80 --------------------
 patches/binutils-2.21.1a/series                    |    5 +-
 3 files changed, 2 insertions(+), 83 deletions(-)
 rename patches/binutils-2.21.1a/{0003-2011-05-31-Paul-Brook-paul-codesourcery.com.patch => 0002-2011-05-31-Paul-Brook-paul-codesourcery.com.patch} (100%)
 delete mode 100644 patches/binutils-2.21.1a/0002-warn-on-all-TEXTRELs.patch

diff --git a/patches/binutils-2.21.1a/0003-2011-05-31-Paul-Brook-paul-codesourcery.com.patch b/patches/binutils-2.21.1a/0002-2011-05-31-Paul-Brook-paul-codesourcery.com.patch
similarity index 100%
rename from patches/binutils-2.21.1a/0003-2011-05-31-Paul-Brook-paul-codesourcery.com.patch
rename to patches/binutils-2.21.1a/0002-2011-05-31-Paul-Brook-paul-codesourcery.com.patch
diff --git a/patches/binutils-2.21.1a/0002-warn-on-all-TEXTRELs.patch b/patches/binutils-2.21.1a/0002-warn-on-all-TEXTRELs.patch
deleted file mode 100644
index 3be8fae..0000000
--- a/patches/binutils-2.21.1a/0002-warn-on-all-TEXTRELs.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From: unknown author <unknown.author@example.com>
-Date: Tue, 1 Nov 2011 16:44:50 +0100
-Subject: [PATCH] warn on all TEXTRELs
-
-textrels are bad for forcing copy-on-write (this affects everyone),
-and for security/runtime code generation, this affects security ppl.
-But in either case, it doesn't matter who needs textrels, it's
-the very fact that they're needed at all.
-
-2006-06-10  Ned Ludd  <solar@gentoo.org>, Mike Frysinger <vapier@gentoo.org>
-
-	* bfd/elflink.c (bfd_elf_final_link): Check all objects for TEXTRELs.
-	* ld/ldmain.c (main): Change textrel warning default to true.
-	* ld/testsuite/lib/ld-lib.exp (default_ld_simple_link): Scrub TEXTREL
-	warnings from ld output.
-
-Original patch from gentoo. Also used by crosstool-ng (binutils-2.20.1a).
----
- bfd/elflink.c               |    8 +++-----
- ld/ldmain.c                 |    1 +
- ld/testsuite/lib/ld-lib.exp |    4 ++++
- 3 files changed, 8 insertions(+), 5 deletions(-)
-
-diff --git a/bfd/elflink.c b/bfd/elflink.c
-index 9e69ec6..0396659 100644
---- a/bfd/elflink.c
-+++ b/bfd/elflink.c
-@@ -11114,14 +11114,12 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
- 	goto error_return;
- 
-       /* Check for DT_TEXTREL (late, in case the backend removes it).  */
--      if (info->warn_shared_textrel && info->shared)
-+      o = bfd_get_section_by_name (dynobj, ".dynamic");
-+      if (info->warn_shared_textrel && o != NULL)
- 	{
- 	  bfd_byte *dyncon, *dynconend;
- 
- 	  /* Fix up .dynamic entries.  */
--	  o = bfd_get_section_by_name (dynobj, ".dynamic");
--	  BFD_ASSERT (o != NULL);
--
- 	  dyncon = o->contents;
- 	  dynconend = o->contents + o->size;
- 	  for (; dyncon < dynconend; dyncon += bed->s->sizeof_dyn)
-@@ -11133,7 +11131,7 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
- 	      if (dyn.d_tag == DT_TEXTREL)
- 		{
- 		 info->callbacks->einfo
--		    (_("%P: warning: creating a DT_TEXTREL in a shared object.\n"));
-+		    (_("%P: warning: creating a DT_TEXTREL in object.\n"));
- 		  break;
- 		}
- 	    }
-diff --git a/ld/ldmain.c b/ld/ldmain.c
-index 96f3bda..9f88cc4 100644
---- a/ld/ldmain.c
-+++ b/ld/ldmain.c
-@@ -287,6 +287,7 @@ main (int argc, char **argv)
-   emulation = get_emulation (argc, argv);
-   ldemul_choose_mode (emulation);
-   default_target = ldemul_choose_target (argc, argv);
-+  link_info.warn_shared_textrel = TRUE;
-   config.maxpagesize = bfd_emul_get_maxpagesize (default_target);
-   config.commonpagesize = bfd_emul_get_commonpagesize (default_target);
-   lang_init ();
-diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
-index f444da7..f935f12 100644
---- a/ld/testsuite/lib/ld-lib.exp
-+++ b/ld/testsuite/lib/ld-lib.exp
-@@ -206,6 +206,10 @@ proc default_ld_simple_link { ld target objects } {
-     # symbol, since the default linker script might use ENTRY.
-     regsub -all "(^|\n)(\[^\n\]*: warning: cannot find entry symbol\[^\n\]*\n?)" $exec_output "\\1" exec_output
- 
-+    # Gentoo tweak:
-+    # We want to ignore TEXTREL warnings since we force enable them by default
-+    regsub -all "^lt-ld-new: warning: creating a DT_TEXTREL in object\." $exec_output "\\1" exec_output
-+
-     if [string match "" $exec_output] then {
- 	return 1
-     } else {
diff --git a/patches/binutils-2.21.1a/series b/patches/binutils-2.21.1a/series
index bab2133..f0d739a 100644
--- a/patches/binutils-2.21.1a/series
+++ b/patches/binutils-2.21.1a/series
@@ -1,6 +1,5 @@
 # generated by git-ptx-patches
 #tag:base --start-number 1
 0001-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
-0002-warn-on-all-TEXTRELs.patch
-0003-2011-05-31-Paul-Brook-paul-codesourcery.com.patch
-# df7383a34a1fb7245bbcc4a517757b0a  - git-ptx-patches magic
+0002-2011-05-31-Paul-Brook-paul-codesourcery.com.patch
+# ab44a8a2deb9ac0a004704a7638a046e  - git-ptx-patches magic
-- 
1.7.9.1


-- 
ptxdist mailing list
ptxdist@pengutronix.de

             reply	other threads:[~2012-03-20  8:56 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-20  8:56 Andreas Bießmann [this message]
2012-08-13  9:43 ` Andreas Bießmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1332233783-15999-1-git-send-email-biessmann@corscience.de \
    --to=biessmann@corscience.de \
    --cc=oselas@community.pengutronix.de \
    --cc=ptxdist@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox