On Sun, Apr 26 2020, Charlene Wendling <juliana...@posteo.jp> wrote:
> Hi,
>
> py-unicorn is broken in the current macppc bulk:
>
>> /usr/obj/ports/py-unicorn-1.0.1/unicorn-1.0.1/src/qemu/tcg/ppc/tcg-target.c:
>> 1737:3: error: "Unhandled abi"
>
> The impacted code is based on qemu, and it requires the same fix since
> clang does not define __CALL_*
>
> With the below diff it builds on powerpc [0]. 
>
> Comments/feedback are welcome,

It probably won't help your current bulk, but I'm starting to think
clang should define this.

ok jca@ for the workaround

> Charlène.
>
>
> [0] https://bin.charlenew.xyz/macppc/paths/devel/py-unicorn.log
>
>
> Index: patches/patch-src_qemu_tcg_ppc_tcg-target_c
> ===================================================================
> RCS file: patches/patch-src_qemu_tcg_ppc_tcg-target_c
> diff -N patches/patch-src_qemu_tcg_ppc_tcg-target_c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-src_qemu_tcg_ppc_tcg-target_c       26 Apr 2020 11:51:44 
> -0000
> @@ -0,0 +1,19 @@
> +$OpenBSD$
> +
> +Workaround the lack of _CALL_SYSV with clang on powerpc
> +
> +Index: src/qemu/tcg/ppc/tcg-target.c
> +--- src/qemu/tcg/ppc/tcg-target.c.orig
> ++++ src/qemu/tcg/ppc/tcg-target.c
> +@@ -24,6 +24,11 @@
> + 
> + #include "tcg-be-ldst.h"
> + 
> ++/* clang does not define _CALL_* */
> ++#if defined __clang__ && defined __ELF__
> ++#define _CALL_SYSV 1
> ++#endif
> ++
> + #if defined _CALL_DARWIN || defined __APPLE__
> + #define TCG_TARGET_CALL_DARWIN
> + #endif
>

-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply via email to