binutils/binutils-2.22.52.0.1-relro-on-by-default.patch
2012-11-27 10:16:31 +00:00

93 lines
3.1 KiB
Diff

diff -cpr ../binutils-2.22.52.0.1.orig/ld/testsuite/config/default.exp ld/testsuite/config/default.exp
*** ../binutils-2.22.52.0.1.orig/ld/testsuite/config/default.exp 2012-03-06 14:00:31.141957656 +0000
--- ld/testsuite/config/default.exp 2012-03-06 14:09:33.492940503 +0000
***************
*** 23,29 ****
#
if ![info exists ld] then {
! set ld [findfile $base_dir/ld-new $base_dir/ld-new [transform ld]]
}
if ![info exists as] then {
--- 23,29 ----
#
if ![info exists ld] then {
! set ld "[findfile $base_dir/ld-new $base_dir/ld-new [transform ld]] -znorelro"
}
if ![info exists as] then {
*************** if {![file isdirectory tmpdir/ld]} then
*** 69,75 ****
catch "exec ln -s ../../ld-new tmpdir/ld/ld" status
catch "exec ln -s ld tmpdir/ld/collect-ld" status
}
! set gcc_ld_flag "-B[pwd]/tmpdir/ld/"
# load the linker path
if {[file exists tmpdir/libpath.exp]} {
--- 69,75 ----
catch "exec ln -s ../../ld-new tmpdir/ld/ld" status
catch "exec ln -s ld tmpdir/ld/collect-ld" status
}
! set gcc_ld_flag "-B[pwd]/tmpdir/ld/ -Wl,-z,norelro"
# load the linker path
if {[file exists tmpdir/libpath.exp]} {
*************** if ![info exists READELFFLAGS] then {
*** 279,285 ****
}
if ![info exists LD] then {
! set LD [findfile $base_dir/ld-new ./ld-new [transform ld]]
}
if ![info exists LDFLAGS] then {
--- 279,285 ----
}
if ![info exists LD] then {
! set LD "[findfile $base_dir/ld-new ./ld-new [transform ld]] -znorelro"
}
if ![info exists LDFLAGS] then {
diff -cpr ../binutils-2.22.52.0.1.orig/ld/testsuite/ld-bootstrap/bootstrap.exp ld/testsuite/ld-bootstrap/bootstrap.exp
*** ../binutils-2.22.52.0.1.orig/ld/testsuite/ld-bootstrap/bootstrap.exp 2012-03-06 14:00:30.503957676 +0000
--- ld/testsuite/ld-bootstrap/bootstrap.exp 2012-03-06 15:03:33.949837926 +0000
*************** foreach flags {"" "strip" "--static" "--
*** 71,77 ****
# This test can only be run if we have the ld build directory,
# since we need the object files.
! if {$ld != "$objdir/ld-new"} {
untested $testname
continue
}
--- 71,83 ----
# This test can only be run if we have the ld build directory,
# since we need the object files.
! set ldexe $ld
! set ldparm [string first " " $ld]
! if { $ldparm > 0 } then {
! set ldparm [expr $ldparm - 1]
! set ldexe [string range $ld 0 $ldparm]
! }
! if {$ldexe != "$objdir/ld-new"} {
untested $testname
continue
}
*** ../binutils-2.22.52.0.2.orig/ld/emultempl/elf32.em 2012-04-30 16:12:52.642766221 +0100
--- ld/emultempl/elf32.em 2012-04-30 16:13:13.869766905 +0100
*************** gld${EMULATION_NAME}_before_parse (void)
*** 106,111 ****
--- 106,112 ----
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.sharable_sections = `if test "$SHARABLE_SECTIONS" = "yes" ; then echo TRUE ; else echo FALSE ; fi`;
+ link_info.relro = TRUE;
}
EOF