diff options
Diffstat (limited to 'x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch')
-rw-r--r-- | x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch b/x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch new file mode 100644 index 000000000000..a451486288f6 --- /dev/null +++ b/x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch @@ -0,0 +1,70 @@ +From e1146e56e08af2a66aecedffc6ff31d8ddcb25f3 Mon Sep 17 00:00:00 2001 +From: Christophe CURIS <christophe.curis@free.fr> +Date: Mon, 15 Dec 2014 23:49:29 +0100 +Subject: [PATCH] configure: rewrote the detection for WebP image library + +Unfortunately, the detection was broken because the header is using a hack +on the function name to provide compatibility between different versions of +the API, which means the usual link test, which uses a known name of a +symbol, cannot work without also using the header to get the hack applied +on the function's name. + +The new detection mechanism now simply check for both header and link at +the same time, so we're probably safe until a Major API change is decided, +in which case we will also have to update WRaster's code anyway. + +Signed-off-by: Christophe CURIS <christophe.curis@free.fr> +--- + m4/wm_imgfmt_check.m4 | 36 ++++++++++++++++++++++++++++-------- + 1 files changed, 28 insertions(+), 8 deletions(-) + +diff --git a/m4/wm_imgfmt_check.m4 b/m4/wm_imgfmt_check.m4 +index cad2d72..d07e618 100644 +--- a/m4/wm_imgfmt_check.m4 ++++ b/m4/wm_imgfmt_check.m4 +@@ -187,14 +187,34 @@ AC_DEFUN_ONCE([WM_IMGFMT_CHECK_TIFF], + # the variable 'supported_gfx' + # When not found, append info to variable 'unsupported' + AC_DEFUN_ONCE([WM_IMGFMT_CHECK_WEBP], +-[WM_LIB_CHECK([WEBP], ["-lwebp"], [VP8DecodeLayer], [$XLFLAGS $XLIBS], +- [wm_save_CFLAGS="$CFLAGS" +- AS_IF([wm_fn_lib_try_compile "webp/decode.h" "" "return 0" ""], +- [], +- [AC_MSG_ERROR([found $CACHEVAR but could not find appropriate header - are you missing libwebp-dev package?])]) +- CFLAGS="$wm_save_CFLAGS"], +- [supported_gfx], [GFXLIBS])dnl +-]) dnl AC_DEFUN ++[AS_IF([test "x$enable_webp" = "xno"], ++ [unsupported="$unsupported WebP"], ++ [AC_CACHE_CHECK([for WebP support library], [wm_cv_imgfmt_webp], ++ [wm_cv_imgfmt_webp=no ++ dnl ++ dnl The library is using a special trick on the functions to provide ++ dnl compatibility between versions, so we cannot try linking against ++ dnl a symbol without first using the header to handle it ++ wm_save_LIBS="$LIBS" ++ LIBS="$LIBS -lwebp" ++ AC_TRY_LINK( ++ [@%:@include <webp/decode.h>], ++ [WebPGetFeatures(NULL, 1024, NULL);], ++ [wm_cv_imgfmt_webp="-lwebp"]) ++ LIBS="$wm_save_LIBS" ++ AS_IF([test "x$enable_webp$wm_cv_imgfmt_webp" = "xyesno"], ++ [AC_MSG_ERROR([explicit WebP support requested but no library found])])dnl ++ ]) ++ AS_IF([test "x$wm_cv_imgfmt_webp" = "xno"], ++ [unsupported="$unsupported WebP" ++ enable_webp="no"], ++ [supported_gfx="$supported_gfx WebP" ++ WM_APPEND_ONCE([$wm_cv_imgfmt_webp], [GFXLIBS])dnl ++ AC_DEFINE([USE_WEBP], [1], ++ [defined when valid Webp library with header was found])])dnl ++ ]) ++AM_CONDITIONAL([USE_WEBP], [test "x$enable_webp" != "xno"])dnl ++]) + + + # WM_IMGFMT_CHECK_XPM +-- +1.7.6.6.GIT + |