arm: Force non-executable stack (#10369)
authorErik de Castro Lopo <erikd@mega-nerd.com>
Fri, 1 May 2015 10:33:03 +0000 (20:33 +1000)
committerErik de Castro Lopo <erikd@mega-nerd.com>
Mon, 4 May 2015 21:34:34 +0000 (07:34 +1000)
Test `T703` was found to be failing on arm/linux. The solution
was to add a linker flag to explicitly set the stack to
non-executable.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Test Plan: validate on x86_64 and arm linux

Reviewers: ezyang, rwbarton, austin

Subscribers: bgamari, thomie

Differential Revision: https://phabricator.haskell.org/D875

GHC Trac Issues: #10369

aclocal.m4

index d6352cf..bb46fda 100644 (file)
@@ -570,7 +570,8 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS],
         # On arm/linux, aarch64/linux, arm/android and aarch64/android, tell
         # gcc to link using the gold linker.
         # Forcing LD to be ld.gold is done in FIND_LD m4 macro.
-        $3="$$3 -fuse-ld=gold"
+        $3="$$3 -fuse-ld=gold -Wl,-z,noexecstack"
+        $4="$$4 -z,noexecstack"
         ;;
     esac