aboutsummaryrefslogtreecommitdiff
path: root/gold
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@google.com>2008-10-02 18:35:51 +0000
committerCary Coutant <ccoutant@google.com>2008-10-02 18:35:51 +0000
commit92f03fcbe1cfff6dcca4a3a5185b56f3a9fa358e (patch)
treebeb2afed10dd9da37bf02080f1c37f944b04c9a7 /gold
parent40debb5a97163147b3e8ddc4540a8ebd6a0c4b39 (diff)
downloadgdb-92f03fcbe1cfff6dcca4a3a5185b56f3a9fa358e.zip
gdb-92f03fcbe1cfff6dcca4a3a5185b56f3a9fa358e.tar.gz
gdb-92f03fcbe1cfff6dcca4a3a5185b56f3a9fa358e.tar.bz2
* plugin.cc (make_sized_plugin_object): Fix conditional
compilation to work when not all targets are enabled.
Diffstat (limited to 'gold')
-rw-r--r--gold/ChangeLog5
-rw-r--r--gold/plugin.cc24
2 files changed, 25 insertions, 4 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index dd60e69..02a007c 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,8 @@
+2008-10-02 Cary Coutant <ccoutant@google.com>
+
+ * plugin.cc (make_sized_plugin_object): Fix conditional
+ compilation to work when not all targets are enabled.
+
2008-09-29 Cary Coutant <ccoutant@google.com>
* archive.cc (Archive::get_file_and_offset): Use filename instead
diff --git a/gold/plugin.cc b/gold/plugin.cc
index 19f7619..a5f7a06 100644
--- a/gold/plugin.cc
+++ b/gold/plugin.cc
@@ -935,28 +935,44 @@ make_sized_plugin_object(Input_file* input_file, off_t offset)
if (target->get_size() == 32)
{
-#ifdef HAVE_TARGET_32_BIG
if (target->is_big_endian())
+#ifdef HAVE_TARGET_32_BIG
obj = new Sized_pluginobj<32, true>(input_file->filename(),
input_file, offset);
+#else
+ gold_error(_("%s: not configured to support "
+ "32-bit big-endian object"),
+ input_file->filename().c_str());
#endif
-#ifdef HAVE_TARGET_32_LITTLE
else
+#ifdef HAVE_TARGET_32_LITTLE
obj = new Sized_pluginobj<32, false>(input_file->filename(),
input_file, offset);
+#else
+ gold_error(_("%s: not configured to support "
+ "32-bit little-endian object"),
+ input_file->filename().c_str());
#endif
}
else if (target->get_size() == 64)
{
-#ifdef HAVE_TARGET_64_BIG
if (target->is_big_endian())
+#ifdef HAVE_TARGET_64_BIG
obj = new Sized_pluginobj<64, true>(input_file->filename(),
input_file, offset);
+#else
+ gold_error(_("%s: not configured to support "
+ "64-bit big-endian object"),
+ input_file->filename().c_str());
#endif
-#ifdef HAVE_TARGET_64_LITTLE
else
+#ifdef HAVE_TARGET_64_LITTLE
obj = new Sized_pluginobj<64, false>(input_file->filename(),
input_file, offset);
+#else
+ gold_error(_("%s: not configured to support "
+ "64-bit little-endian object"),
+ input_file->filename().c_str());
#endif
}