Re: [PATCH v2 1/5] meson: fix handling of '-Dcurl=auto'

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

 



Patrick Steinhardt <ps@xxxxxx> writes:

> The "curl" option controls whether or not a couple of features that
> depend on curl shall be included. Most importantly, these features
> include the HTTP remote helpers, which are rather quintessential for a
> well-functioning Git installation. So while the dependency can in theory
> be dropped, most users wouldn't consider the resulting installation to
> be fully functional.
>
> The "curl" option is defined as a feature, which means that it can be
> "enabled", "disabled" or "auto", which has the effect that the feature
> will be enabled if the dependency itself has been found. While most of
> the other features have "auto" as default value, the "curl" option is
> set to "enabled" by default due to it being so important. Consequently,
> autoconfiguration of Git will fail by default if the library cannot be
> found.
>
> There is a bug though with how we handle the option in case the user
> overrides the feature with `meson setup -Dcurl=auto`: while we will try
> to find the library in that case, we won't ever use it because we later
> on check for `get_option('curl').enabled()` when deciding whether or not
> we want to build dependent sources. But `enabled()` only returns true if
> the option has the value "enabled", for "auto" it will return false.
>
> Fix the issue by instead checking for `curl.found()`, which is only true
> if the library has been found. And as we only try to find the library
> when `get_option('curl')` returns "true" or "auto" this is exactly what
> we want.
>
> Signed-off-by: Patrick Steinhardt <ps@xxxxxx>
> ---
>  meson.build | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meson.build b/meson.build
> index efe2871c9db..a8d1e63ccc6 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1686,7 +1686,7 @@ bin_wrappers += executable('scalar',
>    install_dir: get_option('libexecdir') / 'git-core',
>  )
>
> -if get_option('curl').enabled()
> +if curl.found()
>    libgit_curl = declare_dependency(
>      sources: [
>        'http.c',
>

So here, curl is defined as a dependency on 'libcurl'. Ok makes sense.

> --
> 2.49.0.604.gff1f9ca942.dirty

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux