aboutsummaryrefslogtreecommitdiff
path: root/sim/ppc
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2014-08-19 21:59:56 +0930
committerAlan Modra <amodra@gmail.com>2014-08-19 21:59:56 +0930
commit2974be626b5e40033b9a259a072b2fe123469126 (patch)
tree19b66509831df8a875ed0ccbc466faead3a70fb3 /sim/ppc
parent180eb0634cd876d759f3cbd5bdce24d363f9f2f1 (diff)
downloadgdb-2974be626b5e40033b9a259a072b2fe123469126.zip
gdb-2974be626b5e40033b9a259a072b2fe123469126.tar.gz
gdb-2974be626b5e40033b9a259a072b2fe123469126.tar.bz2
Fix --diable-shared --enable-plugins build breakage
Directories that don't use libtool need to add -ldl (on most *nix hosts) to provide dlopen for libbfd. config/ * plugins.m4 (AC_PLUGINS): If plugins are enabled, add -ldl to LIBS via AC_SEARCH_LIBS. gdb/ * acinclude.m4 (GDB_AC_CHECK_BFD): Don't add -ldl. * config.in: Regenerate. sim/ppc/ * configure.ac: Invoke AC_PLUGINS. * config.in: Regenerate. and regen lots of configure files.
Diffstat (limited to 'sim/ppc')
-rw-r--r--sim/ppc/ChangeLog6
-rw-r--r--sim/ppc/config.in6
-rwxr-xr-xsim/ppc/configure106
-rw-r--r--sim/ppc/configure.ac3
4 files changed, 121 insertions, 0 deletions
diff --git a/sim/ppc/ChangeLog b/sim/ppc/ChangeLog
index 3ec45a5..0ee34ef 100644
--- a/sim/ppc/ChangeLog
+++ b/sim/ppc/ChangeLog
@@ -1,3 +1,9 @@
+2014-08-19 Alan Modra <amodra@gmail.com>
+
+ * configure.ac: Invoke AC_PLUGINS.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+
2014-03-10 Mike Frysinger <vapier@gentoo.org>
* sim_calls.c (sim_do_command): Add const to cmd.
diff --git a/sim/ppc/config.in b/sim/ppc/config.in
index 86a6825..b0c9e6f 100644
--- a/sim/ppc/config.in
+++ b/sim/ppc/config.in
@@ -43,6 +43,9 @@
*/
#undef HAVE_DIRENT_H
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
/* Define to 1 if you have the `dup' function. */
#undef HAVE_DUP
@@ -281,6 +284,9 @@
/* Define to 1 if you have the `unlink' function. */
#undef HAVE_UNLINK
+/* Define to 1 if you have the <windows.h> header file. */
+#undef HAVE_WINDOWS_H
+
/* Define to 1 if you have the <zlib.h> header file. */
#undef HAVE_ZLIB_H
diff --git a/sim/ppc/configure b/sim/ppc/configure
index 50a16c9..5044383 100755
--- a/sim/ppc/configure
+++ b/sim/ppc/configure
@@ -767,6 +767,7 @@ enable_sim_xor_endian
with_pkgversion
with_bugurl
with_zlib
+enable_plugins
'
ac_precious_vars='build_alias
host_alias
@@ -1430,6 +1431,7 @@ Optional Features:
--enable-sim-trace Specify whether tracing is supported.
--enable-sim-warnings=opts Extra CFLAGS for turning on compiler warnings except for idecode.o, semantics.o and psim.o
--enable-sim-xor-endian=n Specify number bytes involved in PowerPC XOR bi-endian mode (default 8).
+ --enable-plugins Enable support for plugins
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -6899,6 +6901,110 @@ fi
fi
+# BFD uses libdl when when plugins enabled.
+
+ maybe_plugins=no
+ for ac_header in dlfcn.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_dlfcn_h" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_DLFCN_H 1
+_ACEOF
+ maybe_plugins=yes
+fi
+
+done
+
+ for ac_header in windows.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "windows.h" "ac_cv_header_windows_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_windows_h" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_WINDOWS_H 1
+_ACEOF
+ maybe_plugins=yes
+fi
+
+done
+
+
+ # Check whether --enable-plugins was given.
+if test "${enable_plugins+set}" = set; then :
+ enableval=$enable_plugins; case "${enableval}" in
+ no) plugins=no ;;
+ *) plugins=yes
+ if test "$maybe_plugins" != "yes" ; then
+ as_fn_error "Building with plugin support requires a host that supports dlopen." "$LINENO" 5
+ fi ;;
+ esac
+else
+ plugins=$maybe_plugins
+
+fi
+
+ if test "$plugins" = "yes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5
+$as_echo_n "checking for library containing dlopen... " >&6; }
+if test "${ac_cv_search_dlopen+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' dl; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_dlopen=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if test "${ac_cv_search_dlopen+set}" = set; then :
+ break
+fi
+done
+if test "${ac_cv_search_dlopen+set}" = set; then :
+
+else
+ ac_cv_search_dlopen=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5
+$as_echo "$ac_cv_search_dlopen" >&6; }
+ac_res=$ac_cv_search_dlopen
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+ fi
+
+
. ${srcdir}/../../bfd/configure.host
case ${host} in
diff --git a/sim/ppc/configure.ac b/sim/ppc/configure.ac
index 9c3fa54..f1a7e06 100644
--- a/sim/ppc/configure.ac
+++ b/sim/ppc/configure.ac
@@ -670,6 +670,9 @@ AC_ARG_PROGRAM
# using the same condition.
AM_ZLIB
+# BFD uses libdl when when plugins enabled.
+AC_PLUGINS
+
. ${srcdir}/../../bfd/configure.host
case ${host} in