Line 382... |
Line 382... |
einfo ("%F%P: can not open script: %E\n");
|
einfo ("%F%P: can not open script: %E\n");
|
}
|
}
|
return script;
|
return script;
|
}
|
}
|
|
|
|
#include
|
|
|
static void
|
static void
|
spu_elf_relink (void)
|
spu_elf_relink (void)
|
{
|
{
|
|
const char *pex_return;
|
|
int status;
|
char **argv = xmalloc ((my_argc + 4) * sizeof (*argv));
|
char **argv = xmalloc ((my_argc + 4) * sizeof (*argv));
|
|
|
memcpy (argv, my_argv, my_argc * sizeof (*argv));
|
memcpy (argv, my_argv, my_argc * sizeof (*argv));
|
argv[my_argc++] = "--no-auto-overlay";
|
argv[my_argc++] = "--no-auto-overlay";
|
if (tmp_file_list->name == auto_overlay_file)
|
if (tmp_file_list->name == auto_overlay_file)
|
argv[my_argc - 1] = concat (argv[my_argc - 1], "=",
|
argv[my_argc - 1] = concat (argv[my_argc - 1], "=",
|
auto_overlay_file, (const char *) NULL);
|
auto_overlay_file, (const char *) NULL);
|
argv[my_argc++] = "-T";
|
argv[my_argc++] = "-T";
|
argv[my_argc++] = auto_overlay_file;
|
argv[my_argc++] = auto_overlay_file;
|
argv[my_argc] = 0;
|
argv[my_argc] = 0;
|
execvp (argv[0], (char *const *) argv);
|
|
perror (argv[0]);
|
pex_return = pex_one (PEX_SEARCH | PEX_LAST, (const char *) argv[0],
|
|
(char * const *) argv, (const char *) argv[0],
|
|
NULL, NULL, & status, & errno);
|
|
if (pex_return != NULL)
|
|
{
|
|
perror (pex_return);
|
_exit (127);
|
_exit (127);
|
}
|
}
|
|
exit (status);
|
|
}
|
|
|
/* Final emulation specific call. */
|
/* Final emulation specific call. */
|
|
|
static void
|
static void
|
gld${EMULATION_NAME}_finish (void)
|
gld${EMULATION_NAME}_finish (void)
|