-diff -uNr binutils-2.15.94.0.2.2.orig/bfd/elf-bfd.h binutils-2.15.94.0.2.2/bfd/elf-bfd.h
--- binutils-2.15.94.0.2.2.orig/bfd/elf-bfd.h 2005-02-07 20:42:44.000000000 +0100
+++ binutils-2.15.94.0.2.2/bfd/elf-bfd.h 2005-02-20 13:13:17.362558200 +0100
@@ -1266,6 +1266,9 @@
&& (segment->p_type != PT_TLS \
|| (section->flags & SEC_THREAD_LOCAL)) \
&& (segment->p_type == PT_LOAD \
-diff -uNr binutils-2.15.94.0.2.2.orig/bfd/elflink.c binutils-2.15.94.0.2.2/bfd/elflink.c
---- binutils-2.15.94.0.2.2.orig/bfd/elflink.c 2005-02-07 20:42:44.000000000 +0100
-+++ binutils-2.15.94.0.2.2/bfd/elflink.c 2005-02-20 13:13:17.432547560 +0100
-@@ -5286,16 +5286,30 @@
- if (!is_elf_hash_table (info->hash))
+--- binutils-2.17.50.0.13/bfd/elflink.c.orig 2007-03-16 20:44:46.377789106 +0100
++++ binutils-2.17.50.0.13/bfd/elflink.c 2007-03-16 20:45:24.781816352 +0100
+@@ -5296,16 +5296,30 @@
return TRUE;
+ bed = get_elf_backend_data (output_bfd);
+ elf_tdata (output_bfd)->pax_flags = PF_NORANDEXEC;
+
+ if (info->execheap)
for (inputobj = info->input_bfds;
inputobj;
inputobj = inputobj->link_next)
-@@ -5308,7 +5322,11 @@
+@@ -5318,7 +5332,11 @@
if (s)
{
if (s->flags & SEC_CODE)
+ }
notesec = s;
}
- else
-diff -uNr binutils-2.15.94.0.2.2.orig/binutils/readelf.c binutils-2.15.94.0.2.2/binutils/readelf.c
+ else if (bed->default_execstack)
--- binutils-2.15.94.0.2.2.orig/binutils/readelf.c 2005-02-18 07:14:30.000000000 +0100
+++ binutils-2.15.94.0.2.2/binutils/readelf.c 2005-02-20 13:13:17.470541784 +0100
@@ -2293,6 +2293,7 @@
default:
if ((p_type >= PT_LOPROC) && (p_type <= PT_HIPROC))
-diff -uNr binutils-2.15.94.0.2.2.orig/include/bfdlink.h binutils-2.15.94.0.2.2/include/bfdlink.h
--- binutils-2.15.94.0.2.2.orig/include/bfdlink.h 2004-11-22 21:33:32.000000000 +0100
+++ binutils-2.15.94.0.2.2/include/bfdlink.h 2005-02-20 13:13:17.476540872 +0100
@@ -313,6 +313,14 @@
/* TRUE if PT_GNU_RELRO segment should be created. */
unsigned int relro: 1;
-diff -uNr binutils-2.15.94.0.2.2.orig/include/elf/common.h binutils-2.15.94.0.2.2/include/elf/common.h
--- binutils-2.15.94.0.2.2.orig/include/elf/common.h 2004-11-22 21:33:32.000000000 +0100
+++ binutils-2.15.94.0.2.2/include/elf/common.h 2005-02-20 13:13:17.482539960 +0100
@@ -307,12 +307,27 @@
/* #define PF_MASKOS 0x0F000000 *//* OS-specific reserved bits */
#define PF_MASKOS 0x0FF00000 /* New value, Oct 4, 1999 Draft */
#define PF_MASKPROC 0xF0000000 /* Processor-specific reserved bits */
-diff -uNr binutils-2.15.94.0.2.2.orig/ld/emultempl/elf32.em binutils-2.15.94.0.2.2/ld/emultempl/elf32.em
--- binutils-2.15.94.0.2.2.orig/ld/emultempl/elf32.em 2004-11-22 21:33:33.000000000 +0100
+++ binutils-2.15.94.0.2.2/ld/emultempl/elf32.em 2005-02-20 13:13:17.492538440 +0100
@@ -1859,6 +1859,16 @@
fprintf (file, _(" -z noexecstack\tMark executable as not requiring executable stack\n"));
EOF
-diff -uNr binutils-2.15.94.0.2.2.orig/ld/ldgram.y binutils-2.15.94.0.2.2/ld/ldgram.y
--- binutils-2.15.94.0.2.2.orig/ld/ldgram.y 2004-11-22 21:33:32.000000000 +0100
+++ binutils-2.15.94.0.2.2/ld/ldgram.y 2005-02-20 13:13:17.499537376 +0100
@@ -1073,6 +1073,8 @@