PR26132, ar creates invalid libraries for some targets with plugins enabled

Alan Modra amodra@gmail.com
Sun Jun 21 12:49:51 GMT 2020


	PR 26132
	* configure.ac: Disable plugins by default for some targets.
	* plugin.c: Comment typo fix.
	* configure: Regenerate.

diff --git a/bfd/configure.ac b/bfd/configure.ac
index 755633bdd9..1b67cb6cac 100644
--- a/bfd/configure.ac
+++ b/bfd/configure.ac
@@ -44,6 +44,30 @@ LT_INIT([dlopen])
 # AC_PLUGINS setting $plugins is called by ACX_LARGEFILE.
 ACX_LARGEFILE
 
+changequote(,)dnl
+case "${target}" in
+    vax-*-netbsdelf*) ;;
+    *-*-*aout* | i[3-7]86-*-bsd* | i[3-7]86-*-msdos* | ns32k-*-* | \
+    pdp11-*-* | vax-*-*bsd*)
+changequote([,])dnl
+	if test "$plugins" = "yes"; then
+	    if test "${enable_plugins+set}" = set; then
+		AC_MSG_WARN(Enabling plugins for AOUT is experimental)
+	    else
+		plugins=no
+	    fi
+	fi ;;
+    *-*-*vms* | \
+    powerpc*-*-aix* | powerpc-*-beos* | powerpc-*-macos* | rs6000-*-*)
+	if test "$plugins" = "yes"; then
+	    if test "${enable_plugins+set}" = set; then
+		AC_MSG_WARN(Enabling plugins may result in ar creating non-standard archives for ${target})
+	    else
+		plugins=no
+	    fi
+	fi ;;
+esac
+
 AM_CONDITIONAL(PLUGINS, test "$plugins" = "yes")
 
 AC_ARG_ENABLE(64-bit-bfd,
diff --git a/bfd/plugin.c b/bfd/plugin.c
index 5ed8757809..593e277747 100644
--- a/bfd/plugin.c
+++ b/bfd/plugin.c
@@ -762,4 +762,4 @@ const bfd_target plugin_vec =
 
   NULL				/* backend_data.  */
 };
-#endif /* BFD_SUPPORTS_PLUGIN */
+#endif /* BFD_SUPPORTS_PLUGINS */

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Binutils mailing list