[igt-dev] [PATCH i-g-t] meson: Explicitly require libcurl for chamelium

Petri Latvala petri.latvala at intel.com
Thu May 9 10:58:21 UTC 2019


On Thu, May 09, 2019 at 10:56:00AM +0300, Arkadiusz Hiler wrote:
> Chamelium uses xmlrpc client which:
> 
>   $ xmlrpc-c-config client --libs
>   -L/usr/lib/x86_64-linux-gnu   -lxmlrpc_client -lxmlrpc  -lxmlrpc_xmlparse -lxmlrpc_xmltok -lxmlrpc_util -lcurl
> 
> Debian/Ubuntu (and perhaps others) lack dependency on libcurl-dev:
> 
>   $ apt depends libxmlrpc-core-c3-dev
>   Depends: libxmlrpc-core-c3 (= 1.33.14-4)
>   Suggests: xmlrpc-api-utils
> 
>   $ apt depends libxmlrpc-core-c3
>   libxmlrpc-core-c3
>   Depends: libc6 (>= 2.14)
>   Depends: libcurl3 (>= 7.16.2)

I don't see us installing libcurl-dev explicitly in gitlab-CI. Does
kms_chamelium build there properly?

There was a case reported earlier of missing a dependency to
liblzma-dev from libdw-dev in Ubuntu 16.04, fixed in later
releases. Just wanted to leave a comment here that the difference in
that case was that libdw is a required dependency and explicitly
checking liblzma in meson doesn't lead to a working build, just
different error messages.

Reviewed-by: Petri Latvala <petri.latvala at intel.com>



> 
> Which causes:
> 
>   /usr/bin/ld: cannot find -lcurl
>   collect2: error: ld returned 1 exit status
>   [14/711] Compiling C object 'tests/59830eb@@kms_atomic at exe/kms_atomic.c.o'.
>   ninja: build stopped: subcommand failed.
> 
> Debian's `reportbug` was used to report this issue.
> Meanwhile we can explicitly ask for libcurl.
> 
> Cc: Petri Latvala <petri.latvala at intel.com>
> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler at intel.com>
> ---
>  meson.build | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/meson.build b/meson.build
> index 8196ab63..cbc37f7e 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -196,6 +196,7 @@ chameliuminfo = 'No'
>  if _build_chamelium
>  	gsl = dependency('gsl', required : _chamelium_required)
>  	alsa = dependency('alsa', required : _chamelium_required)
> +	libcurl = dependency('libcurl', required : _chamelium_required)
>  	chamelium = declare_dependency(dependencies : [
>  		xmlrpc,
>  		xmlrpc_util,
> @@ -203,7 +204,7 @@ if _build_chamelium
>  		gsl,
>  		alsa,
>  	], required : _chamelium_required)
> -	if xmlrpc.found() and xmlrpc_util.found() and xmlrpc_client.found() and gsl.found() and alsa.found()
> +	if xmlrpc.found() and xmlrpc_util.found() and xmlrpc_client.found() and gsl.found() and alsa.found() and libcurl.found()
>  		config.set('HAVE_CHAMELIUM', 1)
>  		chameliuminfo = 'Yes'
>  		chamelium_found = true
> -- 
> 2.20.1
> 


More information about the igt-dev mailing list