Date: Tue, 1 Nov 2005 20:25:10 +0100
authorSam Lantinga <slouken@libsdl.org>
Tue, 01 Nov 2005 23:19:59 +0000
changeset 1166 da33b7e6d181
parent 1165 4fa705cdecb9
child 1167 435c2e481299
Date: Tue, 1 Nov 2005 20:25:10 +0100 From: Dirk Mueller Subject: [PATCH] build SDL with nonexecutable stack libSDL is by default marked with an executable stack, which it doesn't actually need. the reason for this is that there are assembler files in the source tree not properly annotated with the "noexec stack" section. As such the linker does a safe-fallback and marks the whole lib as "requires executable stack". the patch below removes this by adding annotations. As far as I can see it shouldn't break anything.
src/hermes/mmx_main.asm
src/hermes/mmxp2_32.asm
src/hermes/x86_main.asm
src/hermes/x86p_16.asm
src/hermes/x86p_32.asm
--- a/src/hermes/mmx_main.asm	Tue Nov 01 04:18:08 2005 +0000
+++ b/src/hermes/mmx_main.asm	Tue Nov 01 23:19:59 2005 +0000
@@ -13,6 +13,7 @@
 GLOBAL _mmxreturn
 
 
+SECTION .note.GNU-stack noalloc progbits noexec nowrite
 SECTION .text
 		
 ;; _ConvertMMX:	 
--- a/src/hermes/mmxp2_32.asm	Tue Nov 01 04:18:08 2005 +0000
+++ b/src/hermes/mmxp2_32.asm	Tue Nov 01 23:19:59 2005 +0000
@@ -29,6 +29,7 @@
 
 EXTERN _mmxreturn
  
+SECTION .note.GNU-stack noalloc progbits noexec nowrite
 SECTION .data
 	
 ALIGN 8
--- a/src/hermes/x86_main.asm	Tue Nov 01 04:18:08 2005 +0000
+++ b/src/hermes/x86_main.asm	Tue Nov 01 23:19:59 2005 +0000
@@ -16,7 +16,7 @@
 	
 GLOBAL _Hermes_X86_CPU
 
-
+SECTION .note.GNU-stack noalloc progbits noexec nowrite
 SECTION .data
 	
 cpu_flags dd 0
--- a/src/hermes/x86p_16.asm	Tue Nov 01 04:18:08 2005 +0000
+++ b/src/hermes/x86p_16.asm	Tue Nov 01 23:19:59 2005 +0000
@@ -27,7 +27,7 @@
 EXTERN _ConvertX86
 EXTERN _x86return
 
-
+SECTION .note.GNU-stack noalloc progbits noexec nowrite
 SECTION .text
 
 
--- a/src/hermes/x86p_32.asm	Tue Nov 01 04:18:08 2005 +0000
+++ b/src/hermes/x86p_32.asm	Tue Nov 01 23:19:59 2005 +0000
@@ -24,7 +24,8 @@
 GLOBAL _ConvertX86p32_8RGB332
 
 EXTERN _x86return
-		
+	
+SECTION .note.GNU-stack noalloc progbits noexec nowrite
 SECTION .text