diff options
author | Alan Modra <amodra@gmail.com> | 2002-03-18 02:55:51 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2002-03-18 02:55:51 +0000 |
commit | 862120bdbe9b36aa448b8372b120cd3dada51d14 (patch) | |
tree | e38e5e0a750b72bc64445e6060d832c8df2e4d38 /ld/ldlang.c | |
parent | 1868c04ebae02e64e51631c2614703b4a294be6b (diff) | |
download | gdb-862120bdbe9b36aa448b8372b120cd3dada51d14.zip gdb-862120bdbe9b36aa448b8372b120cd3dada51d14.tar.gz gdb-862120bdbe9b36aa448b8372b120cd3dada51d14.tar.bz2 |
* ldmain.c (main): Move .text readonly flag fudges from here..
* ldlang.c (lang_process): ..to here.
Diffstat (limited to 'ld/ldlang.c')
-rw-r--r-- | ld/ldlang.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/ld/ldlang.c b/ld/ldlang.c index 4c4d880..b176f2d 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -4198,6 +4198,22 @@ lang_process () /* Find any sections not attached explicitly and handle them. */ lang_place_orphans (); + if (! link_info.relocateable) + { + /* Look for a text section and set the readonly attribute in it. */ + asection *found = bfd_get_section_by_name (output_bfd, ".text"); + + if (found != (asection *) NULL) + { + if (config.text_read_only) + found->flags |= SEC_READONLY; + else + found->flags &= ~SEC_READONLY; + } + } + + /* Do anything special before sizing sections. This is where ELF + and other back-ends size dynamic sections. */ ldemul_before_allocation (); /* We must record the program headers before we try to fix the |