[PATCH weston v2 1/2] configure: Make WebP support togglable, and improve its error message.
Bryce Harrington
bryce at osg.samsung.com
Wed Feb 17 06:26:25 UTC 2016
On Tue, Feb 16, 2016 at 01:57:51AM +0000, Emmanuel Gil Peyrot wrote:
> The current way was enabling WebP support whenever libwebp was found,
> giving no way to the user to disable it if they had the library
> installed but didn’t want to link against it. This adds a
> --without-webp configure option to never link against it, and a
> --with-webp one to fail the build if it isn’t found, the default being
> to use it if it is present.
>
> Additionally, we now tell the user when WebP support has been disabled
> and they try to load a WebP file.
>
> Signed-off-by: Emmanuel Gil Peyrot <linkmauve at linkmauve.fr>
Reviewed-by: Bryce Harrington <bryce at osg.samsung.com>
This looks fine, only functionality that is lost for webp is reading of
riff files.
> ---
> configure.ac | 12 ++++++++++--
> shared/image-loader.c | 11 +++++++++--
> 2 files changed, 19 insertions(+), 4 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index c32ddc9..878b30a 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -293,9 +293,17 @@ fi
>
> PKG_CHECK_MODULES(PIXMAN, [pixman-1])
> PKG_CHECK_MODULES(PNG, [libpng])
> -PKG_CHECK_MODULES(WEBP, [libwebp], [have_webp=yes], [have_webp=no])
> +
> +AC_ARG_WITH([webp],
> + AS_HELP_STRING([--without-webp],
> + [Use libwebp for WebP decoding support [default=auto]]))
> +AS_IF([test "x$with_webp" != "xno"],
> + [PKG_CHECK_MODULES(WEBP, [libwebp], [have_webp=yes], [have_webp=no])],
> + [have_webp=no])
> AS_IF([test "x$have_webp" = "xyes"],
> - [AC_DEFINE([HAVE_WEBP], [1], [Have webp])])
> + [AC_DEFINE([HAVE_WEBP], [1], [Have webp])],
> + [AS_IF([test "x$with_webp" = "xyes"],
> + [AC_MSG_ERROR([WebP support explicitly requested, but libwebp couldn't be found])])])
>
> AC_ARG_ENABLE(vaapi-recorder, [ --enable-vaapi-recorder],,
> enable_vaapi_recorder=auto)
> diff --git a/shared/image-loader.c b/shared/image-loader.c
> index ec75bd4..050f067 100644
> --- a/shared/image-loader.c
> +++ b/shared/image-loader.c
> @@ -352,6 +352,15 @@ load_webp(FILE *fp)
> config.output.u.RGBA.stride);
> }
>
> +#else
> +
> +static pixman_image_t *
> +load_webp(FILE *fp)
> +{
> + fprintf(stderr, "WebP support disabled at compile-time\n");
> + return NULL;
> +}
> +
> #endif
>
>
> @@ -364,9 +373,7 @@ struct image_loader {
> static const struct image_loader loaders[] = {
> { { 0x89, 'P', 'N', 'G' }, 4, load_png },
> { { 0xff, 0xd8 }, 2, load_jpeg },
> -#ifdef HAVE_WEBP
> { { 'R', 'I', 'F', 'F' }, 4, load_webp }
> -#endif
> };
>
> pixman_image_t *
> --
> 2.7.1
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/wayland-devel
More information about the wayland-devel
mailing list