summaryrefslogtreecommitdiffstats
path: root/src/libr-bfd.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libr-bfd.c')
-rw-r--r--src/libr-bfd.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/libr-bfd.c b/src/libr-bfd.c
index 9d72cce..b472543 100644
--- a/src/libr-bfd.c
+++ b/src/libr-bfd.c
@@ -320,12 +320,22 @@ int build_output(libr_file *file_handle)
oscn = iscn->output_section;
reloc_size = bfd_get_reloc_upper_bound(ihandle, iscn);
if(reloc_size == 0)
+ {
+ #ifdef HAVE_BFD_2_46
+ bfd_finalize_section_relocs(ohandle, oscn, NULL, 0);
+ #else
bfd_set_reloc(ohandle, oscn, NULL, 0);
+ #endif
+ }
else
{
reloc_buffer = malloc(reloc_size);
reloc_count = bfd_canonicalize_reloc(ihandle, iscn, reloc_buffer, symtab_buffer);
+ #ifdef HAVE_BFD_2_46
+ bfd_finalize_section_relocs(ohandle, oscn, reloc_buffer, reloc_count);
+ #else
bfd_set_reloc(ohandle, oscn, reloc_buffer, reloc_count);
+ #endif
}
if(