From 361caf28545aa0c2b2ab8d1cbd334fbdd952f373 Mon Sep 17 00:00:00 2001
From: Paulo Andrade <pcpa@gnu.org>
Date: Thu, 15 Jan 2015 14:56:38 -0200
Subject: [PATCH 4/4] PPC: Only call binutils function if it is available

	* configure.ac, lib/jit_disasm.c: Rewrite workaround
	to apparent problem to initialize powerpc disassembler.
---
diff --git a/configure.ac b/configure.ac
index 749659b..d26e777 100644
--- a/configure.ac
+++ b/configure.ac
@@ -230,6 +230,13 @@ elif test $cpu = arm; then
 	return 1;
     }
     ]])],[ac_cv_test_arm_swf=yes],[],[ac_cv_test_arm_swf=no])
+elif test $cpu = ppc; then
+    if test "x$DISASSEMBLER" != "xno"; then
+	save_LIBS="$LIBS"
+	LIBS="$LIBS $SHLIB"
+	AC_CHECK_FUNCS(disassemble_init_for_target disassemble_init_powerpc)
+	LIBS="$save_LIBS"
+    fi
 fi
 CFLAGS=$save_CFLAGS
 
diff --git a/lib/jit_disasm.c b/lib/jit_disasm.c
index 01158de..86e5441 100644
--- a/lib/jit_disasm.c
+++ b/lib/jit_disasm.c
@@ -91,11 +91,19 @@ jit_init_debug(const char *progname)
 #  if defined(__powerpc__)
     disasm_info.arch = bfd_arch_powerpc;
     disasm_info.mach = bfd_mach_ppc64;
+#    if HAVE_DISASSEMBLE_INIT_FOR_TARGET
+    disassemble_init_for_target(&disasm_info);
+#    elif HAVE_DISASSEMBLE_INIT_POWERPC
     disassemble_init_powerpc(&disasm_info);
+#    endif
 #    if defined(__powerpc64__)
     disasm_info.disassembler_options = "64";
 #    endif
+#    if HAVE_DISASSEMBLE_INIT_FOR_TARGET
+    disassemble_init_for_target(&disasm_info);
+#    elif HAVE_DISASSEMBLE_INIT_POWERPC
     disassemble_init_powerpc(&disasm_info);
+#    endif
 #  endif
 #  if defined(__sparc__)
     disasm_info.endian = disasm_info.display_endian = BFD_ENDIAN_BIG;
-- 
2.1.4

