[PATCH weston] configure.ac: make use of wayland-scanner.pc

sardemff7+wayland at sardemff7.net sardemff7+wayland at sardemff7.net
Mon Feb 23 06:10:35 PST 2015

On 2015-02-17 16:13, Emil Velikov wrote:
> Currently we use the wayland-scanner executable as found with
> AC_PATH_PROG, and then check the presence of wayland-scanner.pc
> Currently the latter is unused even if AC_PATH_PROG fails to find the
> binary. Rework things to use the pkg-config variable as a fall-back.
> Cc: Andrew Oakley <aoakley at espial.com>
> Cc: Bill Spitzak <spitzak at gmail.com>
> Cc: Daniel Stone <daniel at fooishbar.org>
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
>   configure.ac | 5 ++---
>   1 file changed, 2 insertions(+), 3 deletions(-)
> diff --git a/configure.ac b/configure.ac
> index 1db9f79..b44675f 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -503,11 +503,10 @@ AM_CONDITIONAL(HAVE_LCMS, [test "x$have_lcms" = xyes])
>   AC_PATH_PROG([wayland_scanner], [wayland-scanner])

We should (must) set wayland_scanner as precious with AC_ARG_VAR. 
Probably a good idea to put that in this patch directly. (Ouch, I just 
saw that I did not add it in a patch of mine, shame on me.)

Also, AC_PATH_TOOL (or AC_PATH_TARGET_TOOL) may be a better choice 
considering the usage of wayland-scanner. Would the scanner generate 
*anything* different depending on the host(/target) platform? If so, 
it’s a (target) tool and AC_PATH_TOOL is the best way to go.

By the way, it seems sensible to me to ask for it in the standard PATH 
in all cases, as the C compiler is required, thus making the pkg-config 
check useless. I would consider wayland-scanner as part of the 
cross-compiling toolchain, not a library. You do have to *run* it on the 
compiling machine, right?

I am not fully aware of all the cross compiling stuff, so I just look at 
how Autoconf is telling me to handle that, since it’s one of its goal.

>   if test x$wayland_scanner = x; then
> -	AC_MSG_ERROR([wayland-scanner is needed to compile weston])
> +	wayland_scanner=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`

I guess we cannot require pkg-config 0.28. If we can, PKG_CHECK_VAR is 
your friend.

Anyway, I think PKG_CHECK_EXISTS is better here (if we keep the 
pkg-config check as explained above). The _CFLAGS and _LIBS vars are 
just noise, and the error message should be clearer than the default 
one, imo. I am probably nitpicking here.

>   fi
> -
>   AC_CONFIG_FILES([Makefile src/version.h src/weston.pc])
>   AM_CONDITIONAL([HAVE_GIT_REPO], [test -f $srcdir/.git/logs/HEAD])

Sorry for jumping late in the thread.

With AC_ARG_VAR added:
Reviewed-by: Quentin Glidic <sardemff7+wayland at sardemff7.net>

I let you guys decide on the cross-compiling stuff.


Quentin “Sardem FF7” Glidic

More information about the wayland-devel mailing list