[PATCH] disas: Fix build against Capstone v6

Gustavo Romero posted 1 patch 4 months, 1 week ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20240715213943.1210355-1-gustavo.romero@linaro.org
include/disas/capstone.h | 1 +
1 file changed, 1 insertion(+)
[PATCH] disas: Fix build against Capstone v6
Posted by Gustavo Romero 4 months, 1 week ago
Capstone v6 made major changes, such as renaming for AArch64, which
broke programs using the old headers, like QEMU. However, Capstone v6
provides the CAPSTONE_AARCH64_COMPAT_HEADER compatibility definition
allowing to build against v6 with the old definitions, so fix the QEMU
build using it.

We can lift that definition and switch to the new naming once our
supported distros have Capstone v6 in place.

Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
Suggested-by: Peter Maydell <peter.maydell@linaro.org>
---
 include/disas/capstone.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/disas/capstone.h b/include/disas/capstone.h
index e29068dd97..a11985151d 100644
--- a/include/disas/capstone.h
+++ b/include/disas/capstone.h
@@ -3,6 +3,7 @@
 
 #ifdef CONFIG_CAPSTONE
 
+#define CAPSTONE_AARCH64_COMPAT_HEADER
 #include <capstone.h>
 
 #else
-- 
2.34.1
Re: [PATCH] disas: Fix build against Capstone v6
Posted by Paolo Bonzini 4 months, 1 week ago
Queued, thanks.

Paolo
Re: [PATCH] disas: Fix build against Capstone v6
Posted by Peter Maydell 4 months, 1 week ago
On Tue, 16 Jul 2024 at 09:48, Paolo Bonzini <pbonzini@redhat.com> wrote:
>
> Queued, thanks.

Could you add

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2438

to the commit message?

thanks
-- PMM
Re: [PATCH] disas: Fix build against Capstone v6
Posted by Richard Henderson 4 months, 1 week ago
On 7/16/24 07:39, Gustavo Romero wrote:
> Capstone v6 made major changes, such as renaming for AArch64, which
> broke programs using the old headers, like QEMU. However, Capstone v6
> provides the CAPSTONE_AARCH64_COMPAT_HEADER compatibility definition
> allowing to build against v6 with the old definitions, so fix the QEMU
> build using it.
> 
> We can lift that definition and switch to the new naming once our
> supported distros have Capstone v6 in place.
> 
> Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>   include/disas/capstone.h | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/include/disas/capstone.h b/include/disas/capstone.h
> index e29068dd97..a11985151d 100644
> --- a/include/disas/capstone.h
> +++ b/include/disas/capstone.h
> @@ -3,6 +3,7 @@
>   
>   #ifdef CONFIG_CAPSTONE
>   
> +#define CAPSTONE_AARCH64_COMPAT_HEADER
>   #include <capstone.h>
>   
>   #else

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


r~