diff options
Diffstat (limited to 'bfd/configure.in')
-rw-r--r-- | bfd/configure.in | 35 |
1 files changed, 32 insertions, 3 deletions
diff --git a/bfd/configure.in b/bfd/configure.in index 81255dd..c7dd581 100644 --- a/bfd/configure.in +++ b/bfd/configure.in @@ -23,6 +23,27 @@ AC_PROG_CC AC_GNU_SOURCE AC_USE_SYSTEM_EXTENSIONS +LT_INIT([dlopen]) + +AC_ARG_ENABLE([plugins], +AS_HELP_STRING([--enable-plugins], [linker plugins (defaults no)]), +[case "${enableval}" in + yes | "") plugins=yes ;; + no) plugins=no ;; + *) plugins=yes ;; + esac], +[plugins=no]) + +AM_CONDITIONAL(PLUGINS, test "$plugins" = "yes") + +if test "$plugins" = "yes"; then + if test "$enable_dlopen" != "yes" ; then + AC_MSG_ERROR([ + Building BFD with plugin support requires a host that supports -ldl.]) + fi + enable_targets="$enable_targets plugin" +fi + case "${target}" in changequote(,)dnl sparc-*-solaris*|i[3-7]86-*-solaris*) @@ -34,15 +55,15 @@ changequote([,])dnl # large-file support through the --enable-largefile switch, disable # large-file support in favor of procfs support. if test "${target}" = "${host}" -a "$enable_largefile" != 'yes'; then - enable_largefile="no" + if test "$plugins" = "no"; then + enable_largefile="no" + fi fi ;; esac AC_SYS_LARGEFILE -LT_INIT - AC_ARG_ENABLE(64-bit-bfd, [ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)], [case "${enableval}" in @@ -871,6 +892,7 @@ do pef_vec) tb="$tb pef.lo" ;; pef_xlib_vec) tb="$tb pef.lo" ;; pdp11_aout_vec) tb="$tb pdp11.lo" ;; + plugin_vec) tb="$tb plugin.lo" ;; pmac_xcoff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;; ppcboot_vec) tb="$tb ppcboot.lo" ;; riscix_vec) tb="$tb aout32.lo riscix.lo" ;; @@ -1018,6 +1040,13 @@ AC_SUBST(bfd_backends) AC_SUBST(bfd_machines) AC_SUBST(bfd_default_target_size) +if test "$plugins" = "yes"; then + supports_plugins=1 +else + supports_plugins=0 +fi +AC_SUBST(supports_plugins) + # Determine the host dependant file_ptr a.k.a. off_t type. In order # prefer: off64_t - if ftello64 and fseeko64, off_t - if ftello and # fseeko, long. This assumes that sizeof off_t is .ge. sizeof long. |