patches/gcc/4.3.2/210-noteGNUstack-00.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 17:54:21 2011 +0200 (2011-07-17)
changeset 2888 dd71df95903a
parent 747 d3e603e7c17c
permissions -rw-r--r--
cc/gcc: pass the companion libs prefix to cc_core

In case of canadian-cross, the companion libraries are not the same for
the core cc (they run on 'build') as they are for the final cc (they run
on 'host').

Prepare for this differentiation (coming later), while retaining the
current behavior (to use the same compblibs).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@552
     1
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/61_all_gcc4-ia64-noteGNUstack.patch
yann@552
     2
2004-09-20  Jakub Jelinek  <jakub@redhat.com>
yann@552
     3
yann@552
     4
	* config/rs6000/ppc-asm.h: Add .note.GNU-stack section also
yann@552
     5
	on ppc64-linux.
yann@552
     6
yann@552
     7
	* config/ia64/lib1funcs.asm: Add .note.GNU-stack section on
yann@552
     8
	ia64-linux.
yann@552
     9
	* config/ia64/crtbegin.asm: Likewise.
yann@552
    10
	* config/ia64/crtend.asm: Likewise.
yann@552
    11
	* config/ia64/crti.asm: Likewise.
yann@552
    12
	* config/ia64/crtn.asm: Likewise.
yann@552
    13
yann@552
    14
2004-05-14  Jakub Jelinek  <jakub@redhat.com>
yann@552
    15
yann@552
    16
	* config/ia64/linux.h (TARGET_ASM_FILE_END): Define.
yann@552
    17
yann@552
    18
diff -durN gcc-4.3.1.orig/gcc/config/ia64/crtbegin.asm gcc-4.3.1/gcc/config/ia64/crtbegin.asm
yann@552
    19
--- gcc-4.3.1.orig/gcc/config/ia64/crtbegin.asm	2005-09-27 02:52:24.000000000 +0200
yann@552
    20
+++ gcc-4.3.1/gcc/config/ia64/crtbegin.asm	2008-06-10 14:58:17.000000000 +0200
yann@552
    21
@@ -255,3 +255,7 @@
yann@552
    22
 .weak __cxa_finalize
yann@552
    23
 #endif
yann@552
    24
 .weak _Jv_RegisterClasses
yann@552
    25
+
yann@552
    26
+#ifdef __linux__
yann@552
    27
+.section .note.GNU-stack; .previous
yann@552
    28
+#endif
yann@552
    29
diff -durN gcc-4.3.1.orig/gcc/config/ia64/crtend.asm gcc-4.3.1/gcc/config/ia64/crtend.asm
yann@552
    30
--- gcc-4.3.1.orig/gcc/config/ia64/crtend.asm	2005-09-27 02:52:24.000000000 +0200
yann@552
    31
+++ gcc-4.3.1/gcc/config/ia64/crtend.asm	2008-06-10 14:58:17.000000000 +0200
yann@552
    32
@@ -122,3 +122,7 @@
yann@552
    33
 
yann@552
    34
 	br.ret.sptk.many rp
yann@552
    35
 	.endp __do_global_ctors_aux
yann@552
    36
+
yann@552
    37
+#ifdef __linux__
yann@552
    38
+.section .note.GNU-stack; .previous
yann@552
    39
+#endif
yann@552
    40
diff -durN gcc-4.3.1.orig/gcc/config/ia64/crti.asm gcc-4.3.1/gcc/config/ia64/crti.asm
yann@552
    41
--- gcc-4.3.1.orig/gcc/config/ia64/crti.asm	2005-06-25 03:22:41.000000000 +0200
yann@552
    42
+++ gcc-4.3.1/gcc/config/ia64/crti.asm	2008-06-10 14:58:17.000000000 +0200
yann@552
    43
@@ -64,3 +64,7 @@
yann@552
    44
 	.body
yann@552
    45
 
yann@552
    46
 # end of crti.asm
yann@552
    47
+
yann@552
    48
+#ifdef __linux__
yann@552
    49
+.section .note.GNU-stack; .previous
yann@552
    50
+#endif
yann@552
    51
diff -durN gcc-4.3.1.orig/gcc/config/ia64/crtn.asm gcc-4.3.1/gcc/config/ia64/crtn.asm
yann@552
    52
--- gcc-4.3.1.orig/gcc/config/ia64/crtn.asm	2005-06-25 03:22:41.000000000 +0200
yann@552
    53
+++ gcc-4.3.1/gcc/config/ia64/crtn.asm	2008-06-10 14:58:17.000000000 +0200
yann@552
    54
@@ -54,3 +54,7 @@
yann@552
    55
 	br.ret.sptk.many b0
yann@552
    56
 
yann@552
    57
 # end of crtn.asm
yann@552
    58
+
yann@552
    59
+#ifdef __linux__
yann@552
    60
+.section .note.GNU-stack; .previous
yann@552
    61
+#endif
yann@552
    62
diff -durN gcc-4.3.1.orig/gcc/config/ia64/lib1funcs.asm gcc-4.3.1/gcc/config/ia64/lib1funcs.asm
yann@552
    63
--- gcc-4.3.1.orig/gcc/config/ia64/lib1funcs.asm	2005-09-27 02:52:24.000000000 +0200
yann@552
    64
+++ gcc-4.3.1/gcc/config/ia64/lib1funcs.asm	2008-06-10 14:58:17.000000000 +0200
yann@552
    65
@@ -792,3 +792,7 @@
yann@552
    66
 	}
yann@552
    67
 	.endp __floattitf
yann@552
    68
 #endif
yann@552
    69
+
yann@552
    70
+#ifdef __linux__
yann@552
    71
+.section .note.GNU-stack; .previous
yann@552
    72
+#endif
yann@552
    73
diff -durN gcc-4.3.1.orig/gcc/config/ia64/linux.h gcc-4.3.1/gcc/config/ia64/linux.h
yann@552
    74
--- gcc-4.3.1.orig/gcc/config/ia64/linux.h	2006-12-12 16:15:19.000000000 +0100
yann@552
    75
+++ gcc-4.3.1/gcc/config/ia64/linux.h	2008-06-10 14:58:17.000000000 +0200
yann@552
    76
@@ -5,6 +5,8 @@
yann@552
    77
 
yann@552
    78
 #define TARGET_VERSION fprintf (stderr, " (IA-64) Linux");
yann@552
    79
 
yann@552
    80
+#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
yann@552
    81
+
yann@552
    82
 /* This is for -profile to use -lc_p instead of -lc.  */
yann@552
    83
 #undef CC1_SPEC
yann@552
    84
 #define CC1_SPEC "%{profile:-p} %{G*}"
yann@552
    85
diff -durN gcc-4.3.1.orig/gcc/config/rs6000/ppc-asm.h gcc-4.3.1/gcc/config/rs6000/ppc-asm.h
yann@552
    86
--- gcc-4.3.1.orig/gcc/config/rs6000/ppc-asm.h	2003-06-04 18:44:51.000000000 +0200
yann@552
    87
+++ gcc-4.3.1/gcc/config/rs6000/ppc-asm.h	2008-06-10 14:58:17.000000000 +0200
yann@552
    88
@@ -158,7 +158,7 @@
yann@552
    89
 	.size FUNC_NAME(name),GLUE(.L,name)-FUNC_NAME(name)
yann@552
    90
 #endif
yann@552
    91
 
yann@552
    92
-#if defined __linux__ && !defined __powerpc64__
yann@552
    93
+#if defined __linux__
yann@552
    94
 	.section .note.GNU-stack
yann@552
    95
 	.previous
yann@552
    96
 #endif