[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
binutils compile error under x86_64-pc-mingw32 platform
From: |
zhou drangon |
Subject: |
binutils compile error under x86_64-pc-mingw32 platform |
Date: |
Tue, 11 Sep 2007 17:14:58 +0800 |
hi,
binutils compile error under x86_64-pc-mingw32,
because it defines BFD_HOST_64BIT_LONG_LONG , but not use in some env,
the following patch may fix it
Index: bfd/elf.c
===================================================================
RCS file: /cvs/src/src/bfd/elf.c,v
retrieving revision 1.414
diff -u -r1.414 elf.c
--- bfd/elf.c 8 Sep 2007 11:03:31 -0000 1.414
+++ bfd/elf.c 11 Sep 2007 09:07:21 -0000
@@ -8430,6 +8430,9 @@
{
#if BFD_HOST_64BIT_LONG
sprintf (buf, "%016lx", value);
+
+#elif BFD_HOST_64BIT_LONG_LONG
+ sprintf (buf, "%016llx", value);
#else
sprintf (buf, "%08lx%08lx", _bfd_int64_high (value),
_bfd_int64_low (value));
@@ -8458,6 +8461,9 @@
{
#if BFD_HOST_64BIT_LONG
fprintf ((FILE *) stream, "%016lx", value);
+
+#elif BFD_HOST_64BIT_LONG_LONG
+ fprintf ((FILE *) stream, "%016llx", value);
#else
fprintf ((FILE *) stream, "%08lx%08lx",
_bfd_int64_high (value), _bfd_int64_low (value));
cvs diff: Diffing bfd/doc
cvs diff: Diffing bfd/hosts
cvs diff: Diffing bfd/po
cvs diff: Diffing binutils
Index: binutils/readelf.c
===================================================================
RCS file: /cvs/src/src/binutils/readelf.c,v
retrieving revision 1.377
diff -u -r1.377 readelf.c
--- binutils/readelf.c 10 Sep 2007 09:05:23 -0000 1.377
+++ binutils/readelf.c 11 Sep 2007 09:07:58 -0000
@@ -508,6 +508,11 @@
return printf ("%5ld", vma);
else
return printf ("%#lx", vma);
+#elif BFD_HOST_64BIT_LONG_LONG
+ if (vma <= 99999)
+ return printf ("%5lld", vma);
+ else
+ return printf ("%#llx", vma);
#else
if (vma <= 99999)
return printf ("%5ld", _bfd_int64_low (vma));
@@ -955,6 +960,8 @@
{
#ifdef _bfd_int64_low
printf ("%8.8lx %8.8lx ", _bfd_int64_low (offset),
_bfd_int64_low (info));
+#elif defined(BFD_HOST_64BIT_LONG_LONG)
+ printf ("%8.8llx %8.8llx ", offset, info);
#else
printf ("%8.8lx %8.8lx ", offset, info);
#endif
@@ -969,6 +976,11 @@
_bfd_int64_low (offset),
_bfd_int64_high (info),
_bfd_int64_low (info));
+#elif defined(BFD_HOST_64BIT_LONG_LONG)
+ printf (do_wide
+ ? "%16.16llx %16.16llx "
+ : "%12.12llx %12.12llx ",
+ offset, info);
#else
printf (do_wide
? "%16.16lx %16.16lx "
@@ -1205,6 +1217,8 @@
if (rtype == NULL)
#ifdef _bfd_int64_low
printf (_("unrecognized: %-7lx"), _bfd_int64_low (type));
+#elif defined(BFD_HOST_64BIT_LONG_LONG)
+ printf (_("unrecognized: %-7llx"), type);
#else
printf (_("unrecognized: %-7lx"), type);
#endif
@@ -1325,6 +1339,8 @@
if (rtype2 == NULL)
#ifdef _bfd_int64_low
printf (_("unrecognized: %-7lx"), _bfd_int64_low (type2));
+#elif defined(BFD_HOST_64BIT_LONG_LONG)
+ printf (_("unrecognized: %-7llx"), type2);
#else
printf (_("unrecognized: %-7lx"), type2);
#endif
@@ -1336,6 +1352,8 @@
if (rtype3 == NULL)
#ifdef _bfd_int64_low
printf (_("unrecognized: %-7lx"), _bfd_int64_low (type3));
+#elif defined(BFD_HOST_64BIT_LONG_LONG)
+ printf (_("unrecognized: %-7llx"), type3);
#else
printf (_("unrecognized: %-7lx"), type3);
#endif
- binutils compile error under x86_64-pc-mingw32 platform,
zhou drangon <=