aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--binutils/ChangeLog7
-rw-r--r--binutils/dlltool.c33
-rw-r--r--binutils/rclex.l9
3 files changed, 38 insertions, 11 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 806c359..f6c232d 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,6 +1,11 @@
+2003-02-19 Christopher Faylor <cgf@redhat.com>
+
+ * rclex.l (handle_quotes): Fix minor formatting problems introduced in
+ previous change.
+
2003-02-19 Mark Blackburn <marklist@fangorn.ca>
- * rclex.l: Handle strings spanning more than one line.
+ * rclex.l (handle_quotes): Handle strings spanning more than one line.
2003-02-12 Bob Wilson <bob.wilson@acm.org>
diff --git a/binutils/dlltool.c b/binutils/dlltool.c
index 19a7e1f..a4e7bfa 100644
--- a/binutils/dlltool.c
+++ b/binutils/dlltool.c
@@ -350,6 +350,8 @@ static iheadtype *import_list = NULL;
static char *as_name = NULL;
static char * as_flags = "";
+static char *tmp_prefix = "d";
+
static int no_idata4;
static int no_idata5;
static char *exp_name;
@@ -431,12 +433,19 @@ static char * mcore_elf_linker_flags = NULL;
#define PATHMAX 250 /* What's the right name for this ? */
-#define TMP_ASM "dc.s"
-#define TMP_HEAD_S "dh.s"
-#define TMP_HEAD_O "dh.o"
-#define TMP_TAIL_S "dt.s"
-#define TMP_TAIL_O "dt.o"
-#define TMP_STUB "ds"
+char *tmp_asm_buf;
+char *tmp_head_s_buf;
+char *tmp_head_o_buf;
+char *tmp_tail_s_buf;
+char *tmp_tail_o_buf;
+char *tmp_stub_buf;
+
+#define TMP_ASM dlltmp (tmp_asm_buf, "%sc.s")
+#define TMP_HEAD_S dlltmp (tmp_head_s_buf, "%sh.s")
+#define TMP_HEAD_O dlltmp (tmp_head_o_buf, "%sh.o")
+#define TMP_TAIL_S dlltmp (tmp_tail_s_buf, "%st.s")
+#define TMP_TAIL_O dlltmp (tmp_tail_o_buf, "%st.o")
+#define TMP_STUB dlltmp (tmp_stub_buf, "%ss")
/* This bit of assemly does jmp * .... */
static const unsigned char i386_jtab[] =
@@ -741,6 +750,14 @@ static void usage
static void inform
PARAMS ((const char *, ...));
+static char *
+dlltmp PARAMS ((char *buf, const char *fmt))
+{
+ if (!buf)
+ buf = malloc (strlen (tmp_prefix) + 17);
+ sprintf (buf, fmt, tmp_prefix);
+ return buf;
+}
static void
inform VPARAMS ((const char * message, ...))
@@ -3263,6 +3280,7 @@ static const struct option long_options[] =
{"as-flags", required_argument, NULL, 'f'},
{"mcore-elf", required_argument, NULL, 'M'},
{"compat-implib", no_argument, NULL, 'C'},
+ {"temp-prefix", required_argument, NULL, 't'},
{NULL,0,NULL,0}
};
@@ -3320,6 +3338,9 @@ main (ac, av)
case 'S':
as_name = optarg;
break;
+ case 't':
+ tmp_prefix = optarg;
+ break;
case 'f':
as_flags = optarg;
break;
diff --git a/binutils/rclex.l b/binutils/rclex.l
index a168b9f..3a4f3e1 100644
--- a/binutils/rclex.l
+++ b/binutils/rclex.l
@@ -425,10 +425,11 @@ handle_quotes (input, len)
++t;
assert (ISSPACE (*t));
while (ISSPACE (*t))
- {
- if ((*t) == '\n') ++rc_lineno;
- ++t;
- }
+ {
+ if ((*t) == '\n')
+ ++rc_lineno;
+ ++t;
+ }
if (*t == '\0')
break;
assert (*t == '"');