summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2008-06-04 07:08:01 +0000
committerAlan Modra <amodra@bigpond.net.au>2008-06-04 07:08:01 +0000
commit6c23ba7b28811dfe5ffaef0e2f138b52c7a99997 (patch)
treeeff2128f58509980b9acec1a5624fb748ca8dfc6
parent5e98c6533d47cd4d6c1067f7203327a4bf76e85d (diff)
downloadbinutils-redhat-6c23ba7b28811dfe5ffaef0e2f138b52c7a99997.tar.gz
* emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg.
-rw-r--r--ld/ChangeLog4
-rw-r--r--ld/emultempl/spuelf.em5
2 files changed, 7 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index e8e7c461b3..ccfaca8341 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,7 @@
+2008-06-04 Alan Modra <amodra@bigpond.net.au>
+
+ * emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg.
+
2008-06-02 Nathan Sidwell <nathan@codesourcery.com>
* ldlang.c (closest_target_match): Skip generic big and little
diff --git a/ld/emultempl/spuelf.em b/ld/emultempl/spuelf.em
index ebaecdba3d..a56d78f419 100644
--- a/ld/emultempl/spuelf.em
+++ b/ld/emultempl/spuelf.em
@@ -295,12 +295,13 @@ spu_elf_open_overlay_script (void)
static void
spu_elf_relink (void)
{
- char **argv = xmalloc ((my_argc + 5) * sizeof (*argv));
+ char **argv = xmalloc ((my_argc + 4) * sizeof (*argv));
memcpy (argv, my_argv, my_argc * sizeof (*argv));
argv[my_argc++] = "--no-auto-overlay";
if (tmp_file_list->name == auto_overlay_file)
- argv[my_argc++] = auto_overlay_file;
+ argv[my_argc - 1] = concat (argv[my_argc - 1], "=",
+ auto_overlay_file, (const char *) NULL);
argv[my_argc++] = "-T";
argv[my_argc++] = auto_overlay_file;
argv[my_argc] = 0;