From 58de646be2108bbe30facd7a294fc45df7b46065 Mon Sep 17 00:00:00 2001 From: Martin Storsj? Date: Sat, 22 Jan 2022 14:31:22 +0000 Subject: [PATCH] Allow inferring tmp_prefix from the dll name from a def file. --- binutils/ChangeLog | 5 +++++ binutils/dlltool.c | 34 +++++++++++++++++----------------- 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index d8f370dfd65..09f392091e8 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2022-01-22 Martin Storsjö + + * dlltool.c (main): Allow inferring tmp_prefix from the dll name + from a def file. + 2022-01-22 Nick Clifton * configure: Regenerate. diff --git a/binutils/dlltool.c b/binutils/dlltool.c index a1e2b484328..d95bf3f5470 100644 --- a/binutils/dlltool.c +++ b/binutils/dlltool.c @@ -3930,23 +3930,6 @@ main (int ac, char **av) } } - if (tmp_prefix == NULL) - { - /* If possible use a deterministic prefix. */ - if (dll_name) - { - tmp_prefix = xmalloc (strlen (dll_name) + 2); - sprintf (tmp_prefix, "%s_", dll_name); - for (i = 0; tmp_prefix[i]; i++) - if (!ISALNUM (tmp_prefix[i])) - tmp_prefix[i] = '_'; - } - else - { - tmp_prefix = prefix_encode ("d", getpid ()); - } - } - for (i = 0; mtable[i].type; i++) if (strcmp (mtable[i].type, mname) == 0) break; @@ -4006,6 +3989,23 @@ main (int ac, char **av) optind++; } + if (tmp_prefix == NULL) + { + /* If possible use a deterministic prefix. */ + if (dll_name) + { + tmp_prefix = xmalloc (strlen (dll_name) + 2); + sprintf (tmp_prefix, "%s_", dll_name); + for (i = 0; tmp_prefix[i]; i++) + if (!ISALNUM (tmp_prefix[i])) + tmp_prefix[i] = '_'; + } + else + { + tmp_prefix = prefix_encode ("d", getpid ()); + } + } + mangle_defs (); if (exp_name) -- 2.30.2