http://sourceware.org/bugzilla/show_bug.cgi?id=12742
Kai Tietz <ktietz at redhat dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ktietz at redhat dot com --- Comment #2 from Kai Tietz <ktietz at redhat dot com> 2012-02-11 20:07:42 UTC --- Hmm, issue about -ldl is strange. It looks to me that libtool adds this link-library. The code in config/tcl.m4 shouldn't be active for windows-host. Patch for bfd ChangeLog 2012-02-11 Kai Tietz <kti...@redhat.com> * configure.in (windows.h, dlfch.h): Add check for headers. * configure: Regenerated. * plugin.c: Add for windows-native targets dl-api emulation. Index: config.in =================================================================== RCS file: /cvs/src/src/bfd/config.in,v retrieving revision 1.49 diff -u -r1.49 config.in --- config.in 12 May 2011 07:41:40 -0000 1.49 +++ config.in 11 Feb 2012 20:03:46 -0000 @@ -245,6 +245,9 @@ /* Define if <sys/procfs.h> has win32_pstatus_t. */ #undef HAVE_WIN32_PSTATUS_T +/* 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 Index: configure =================================================================== RCS file: /cvs/src/src/bfd/configure,v retrieving revision 1.358 diff -u -r1.358 configure --- configure 31 Jan 2012 17:54:32 -0000 1.358 +++ configure 11 Feb 2012 20:03:48 -0000 @@ -13508,6 +13508,22 @@ fi + +for ac_header in windows.h dlfcn.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +eval as_val=\$$as_ac_Header + if test "x$as_val" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether string.h and strings.h may both be included" >&5 $as_echo_n "checking whether string.h and strings.h may both be included... " >&6; } if test "${gcc_cv_header_string+set}" = set; then : Index: configure.in =================================================================== RCS file: /cvs/src/src/bfd/configure.in,v retrieving revision 1.306 diff -u -r1.306 configure.in --- configure.in 31 Jan 2012 17:54:34 -0000 1.306 +++ configure.in 11 Feb 2012 20:03:48 -0000 @@ -190,6 +190,9 @@ GCC_HEADER_STDINT(bfd_stdint.h) AC_HEADER_TIME AC_HEADER_DIRENT + +AC_CHECK_HEADERS(windows.h dlfcn.h) + ACX_HEADER_STRING AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid fileno) AC_CHECK_FUNCS(strtoull) Index: plugin.c =================================================================== RCS file: /cvs/src/src/bfd/plugin.c,v retrieving revision 1.14 diff -u -r1.14 plugin.c --- plugin.c 11 Jul 2011 15:03:07 -0000 1.14 +++ plugin.c 11 Feb 2012 20:03:49 -0000 @@ -25,7 +25,13 @@ #if BFD_SUPPORTS_PLUGINS #include <assert.h> +#ifdef HAVE_DLFCN_H #include <dlfcn.h> +#elif defined (HAVE_WINDOWS_H) +#include <windows.h> +#else +#error Unknown how to handle dynamic-load-libraries. +#endif #include <stdarg.h> #include "plugin-api.h" #include "sysdep.h" @@ -34,6 +40,37 @@ #include "libiberty.h" #include <dirent.h> +#if !defined (HAVE_DLFCN_H) && defined (HAVE_WINDOWS_H) + +#define RTLD_NOW 0 /* Dummy value. */ + +static void * +dlopen (const char *file, int mode ATTRIBUTE_UNUSED) +{ + return LoadLibrary (file); +} + +static void * +dlsym (void *handle, const char *name) +{ + return GetProcAddress (handle, name); +} + +static int ATTRIBUTE_UNUSED +dlclose (void *handle) +{ + FreeLibrary (handle); + return 0; +} + +static const char * +dlerror (void) +{ + return "Unable to load DLL."; +} + +#endif /* !defined (HAVE_DLFCN_H) && defined (HAVE_WINDOWS_H) */ + #define bfd_plugin_close_and_cleanup _bfd_generic_close_and_cleanup #define bfd_plugin_bfd_free_cached_info _bfd_generic_bfd_free_cached_info #define bfd_plugin_new_section_hook _bfd_generic_new_section_hook -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils