From: Nick Clifton Date: Fri, 19 Aug 2016 08:27:52 +0000 (+0100) Subject: Enable relro by default for AArch64, ARM and SCORE. X-Git-Tag: users/ARM/embedded-binutils-master-2016q4~890 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=576438f0fa3ecbe0b49b3bcc2f028d586d198247;p=external%2Fbinutils.git Enable relro by default for AArch64, ARM and SCORE. ld * emultempl/aarch64elf.em (before_parse): Initialise the relro field in the link_info structure. * emultempl/armelf.em (before_parse): Likewise. * emultempl/linux.em (before_parse): Likewise. * emultempl/scoreelf.em (before_parse): Likewise. --- diff --git a/ld/ChangeLog b/ld/ChangeLog index f75c42c..34cdf77 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,11 @@ 2016-08-19 Nick Clifton + * emultempl/aarch64elf.em (before_parse): Initialise the relro + field in the link_info structure. + * emultempl/armelf.em (before_parse): Likewise. + * emultempl/linux.em (before_parse): Likewise. + * emultempl/scoreelf.em (before_parse): Likewise. + * testsuite/ld-alpha/tlsbin.rd: Adjust expected ordering of sections. * testsuite/ld-alpha/tlsbinr.rd: Likewise. * testsuite/ld-alpha/tlspic.rd: Likewise. diff --git a/ld/emultempl/aarch64elf.em b/ld/emultempl/aarch64elf.em index a17553a..9f2c349 100644 --- a/ld/emultempl/aarch64elf.em +++ b/ld/emultempl/aarch64elf.em @@ -43,6 +43,7 @@ gld${EMULATION_NAME}_before_parse (void) input_flags.dynamic = ${DYNAMIC_LINK-TRUE}; config.has_shared = `if test -n "$GENERATE_SHLIB_SCRIPT" ; then echo TRUE ; else echo FALSE ; fi`; config.separate_code = `if test "x${SEPARATE_CODE}" = xyes ; then echo TRUE ; else echo FALSE ; fi`; + link_info.relro = DEFAULT_LD_Z_RELRO; } static void diff --git a/ld/emultempl/armelf.em b/ld/emultempl/armelf.em index c21f6a8..2678740 100644 --- a/ld/emultempl/armelf.em +++ b/ld/emultempl/armelf.em @@ -53,6 +53,7 @@ gld${EMULATION_NAME}_before_parse (void) input_flags.dynamic = ${DYNAMIC_LINK-TRUE}; config.has_shared = `if test -n "$GENERATE_SHLIB_SCRIPT" ; then echo TRUE ; else echo FALSE ; fi`; config.separate_code = `if test "x${SEPARATE_CODE}" = xyes ; then echo TRUE ; else echo FALSE ; fi`; + link_info.relro = DEFAULT_LD_Z_RELRO; } static void diff --git a/ld/emultempl/linux.em b/ld/emultempl/linux.em index c28e978..64a9130 100644 --- a/ld/emultempl/linux.em +++ b/ld/emultempl/linux.em @@ -50,6 +50,7 @@ gld${EMULATION_NAME}_before_parse (void) ldfile_set_output_arch ("${OUTPUT_ARCH}", bfd_arch_`echo ${ARCH} | sed -e 's/:.*//'`); input_flags.dynamic = TRUE; config.has_shared = TRUE; + link_info.relro = DEFAULT_LD_Z_RELRO; } /* Try to open a dynamic archive. This is where we know that Linux diff --git a/ld/emultempl/scoreelf.em b/ld/emultempl/scoreelf.em index 6433365..7df7f5f 100644 --- a/ld/emultempl/scoreelf.em +++ b/ld/emultempl/scoreelf.em @@ -39,6 +39,7 @@ gld${EMULATION_NAME}_before_parse (void) input_flags.dynamic = ${DYNAMIC_LINK-TRUE}; config.has_shared = `if test -n "$GENERATE_SHLIB_SCRIPT" ; then echo TRUE ; else echo FALSE ; fi`; config.separate_code = `if test "x${SEPARATE_CODE}" = xyes ; then echo TRUE ; else echo FALSE ; fi`; + link_info.relro = DEFAULT_LD_Z_RELRO; } static void