qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 01/11] capstone: Convert Makefile bits to meson bits


From: Paolo Bonzini
Subject: Re: [PATCH 01/11] capstone: Convert Makefile bits to meson bits
Date: Mon, 14 Sep 2020 18:43:45 +0200



Il lun 14 set 2020, 18:23 Richard Henderson <richard.henderson@linaro.org> ha scritto:
Do we really need to keep testing $source/.git and $git_update?
Surely we can accumulate git_submodules and then do (or not do) something with
that at the end without all of the tests?

Possibly, but I don't mind going through that separately.

> and in meson.build:
>
> capstone = not_found
> build_internal_capstone = false
> if get_option('capstone') != 'no'
>   if get_option('capstone') != 'internal'
>     capstone = dependency('capstone',
>                           required: get_option('capstone') == 'system',
>                           method: 'pkg-config',
>                           static: enable_static)
>   endif
>   build_internal_capstone = not capstone.found()
> endif
> ...
> if build_internal_capstone
>   ...
>   capstone = declare_dependency(...)
> endif

This doesn't seem like it would do the right thing for capstone=auto,
--disable-git-update, and no system library.  In that case auto should resolve to no.

Indeed, that would require some filesystem check like

fs = import('fs')
build_internal_capstone = not capstone.found() and \
  (get_option('capstone') == 'internal' or \
   fs.exists('capstone/Makefile'))

I don't think we can move this detection to meson until the definition of
CONFIG_CAPSTONE is under control of meson.

Yep, that's another part that needs to be moved to meson.build in this patch with config_host_data.set. But this patch is the right one to do this.

Paolo


> +option('capstone', type: 'combo', value: 'auto',
> +       choices: ['auto', 'system', 'internal', 'no'],
> +       description: 'How to find the capstone library')

I can certainly change this.  I presume this validates that the -Dcapstone=foo
value passed to meson is correct?


r~


reply via email to

[Prev in Thread] Current Thread [Next in Thread]