From 63811a4b06067489f9d8b7551c516b0b202d022f Mon Sep 17 00:00:00 2001 From: Dave Murphy Date: Tue, 3 Apr 2012 17:41:34 +0100 Subject: [PATCH] patches for canadian cross --- dkppc/patches/binutils-2.22.patch | 149 ++++++++++++++++++++++++++++++ 1 file changed, 149 insertions(+) create mode 100644 dkppc/patches/binutils-2.22.patch diff --git a/dkppc/patches/binutils-2.22.patch b/dkppc/patches/binutils-2.22.patch new file mode 100644 index 0000000..291c9d6 --- /dev/null +++ b/dkppc/patches/binutils-2.22.patch @@ -0,0 +1,149 @@ +diff -Nbaur binutils-2.22/bfd/bfd-in2.h binutils-2.22-ppc/bfd/bfd-in2.h +--- binutils-2.22/bfd/bfd-in2.h 2011-09-16 02:15:18.000000000 +0100 ++++ binutils-2.22-ppc/bfd/bfd-in2.h 2012-04-03 15:06:10.000000000 +0100 +@@ -38,6 +38,8 @@ + + #include "ansidecl.h" + #include "symcat.h" ++#include ++ + #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE) + #ifndef SABER + /* This hack is to avoid a problem with some strict ANSI C preprocessors. +@@ -308,8 +310,6 @@ + && (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \ + && (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS) + +-/* Forward define. */ +-struct stat; + + typedef enum bfd_print_symbol + { +diff -Nbaur binutils-2.22/bfd/bfd-in.h binutils-2.22-ppc/bfd/bfd-in.h +--- binutils-2.22/bfd/bfd-in.h 2011-09-16 02:15:18.000000000 +0100 ++++ binutils-2.22-ppc/bfd/bfd-in.h 2012-04-03 15:06:10.000000000 +0100 +@@ -31,6 +31,8 @@ + + #include "ansidecl.h" + #include "symcat.h" ++#include ++ + #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE) + #ifndef SABER + /* This hack is to avoid a problem with some strict ANSI C preprocessors. +@@ -301,8 +303,6 @@ + && (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \ + && (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS) + +-/* Forward define. */ +-struct stat; + + typedef enum bfd_print_symbol + { +diff -Nbaur binutils-2.22/bfd/config.in binutils-2.22-ppc/bfd/config.in +--- binutils-2.22/bfd/config.in 2011-05-12 08:41:40.000000000 +0100 ++++ binutils-2.22-ppc/bfd/config.in 2012-04-03 14:50:51.000000000 +0100 +@@ -245,6 +245,9 @@ + /* Define if has win32_pstatus_t. */ + #undef HAVE_WIN32_PSTATUS_T + ++/* Define to 1 if you have the header file. */ ++#undef HAVE_WINDOWS_H ++ + /* Define to 1 if you have the header file. */ + #undef HAVE_ZLIB_H + +diff -Nbaur binutils-2.22/bfd/configure binutils-2.22-ppc/bfd/configure +--- binutils-2.22/bfd/configure 2011-11-21 11:55:48.000000000 +0000 ++++ binutils-2.22-ppc/bfd/configure 2012-04-03 14:50:59.000000000 +0100 +@@ -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 : +diff -Nbaur binutils-2.22/bfd/configure.in binutils-2.22-ppc/bfd/configure.in +--- binutils-2.22/bfd/configure.in 2011-11-21 11:55:46.000000000 +0000 ++++ binutils-2.22-ppc/bfd/configure.in 2012-04-03 14:51:23.000000000 +0100 +@@ -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) +diff -Nbaur binutils-2.22/bfd/plugin.c binutils-2.22-ppc/bfd/plugin.c +--- binutils-2.22/bfd/plugin.c 2011-07-11 16:03:07.000000000 +0100 ++++ binutils-2.22-ppc/bfd/plugin.c 2012-04-03 14:51:32.000000000 +0100 +@@ -25,7 +25,13 @@ + #if BFD_SUPPORTS_PLUGINS + + #include ++#ifdef HAVE_DLFCN_H + #include ++#elif defined (HAVE_WINDOWS_H) ++#include ++#else ++#error Unknown how to handle dynamic-load-libraries. ++#endif + #include + #include "plugin-api.h" + #include "sysdep.h" +@@ -34,6 +40,37 @@ + #include "libiberty.h" + #include + ++#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