| From cdcde5c1fd106a69118dff98118600911392762f Mon Sep 17 00:00:00 2001 |
| From: "Meyer, Wolfgang" <Wolfgang.Meyer@gossenmetrawatt.com> |
| Date: Fri, 16 Sep 2022 16:25:38 +0200 |
| Subject: [PATCH] meson.build: add features options for png, gif, tiff, webp, and motif |
| |
| Upstream-Status: Submitted [https://github.com/kraxel/fbida/pull/4] |
| Signed-off-by: "Meyer, Wolfgang" <Wolfgang.Meyer@gossenmetrawatt.com> |
| --- |
| meson.build | 41 +++++++++++++++++++++++++++-------------- |
| meson_options.txt | 5 +++++ |
| selections.c | 4 ++++ |
| 3 files changed, 36 insertions(+), 14 deletions(-) |
| create mode 100644 meson_options.txt |
| |
| diff --git a/meson.build b/meson.build |
| index cd9cc49..b5e3ffc 100644 |
| --- a/meson.build |
| +++ b/meson.build |
| @@ -23,9 +23,9 @@ drm_dep = dependency('libdrm') |
| gbm_dep = dependency('gbm') |
| epoxy_dep = dependency('epoxy') |
| exif_dep = dependency('libexif') |
| -png_dep = dependency('libpng') |
| -tiff_dep = dependency('libtiff-4') |
| -webp_dep = dependency('libwebp', required : false) |
| +png_dep = dependency('libpng', required: get_option('png')) |
| +tiff_dep = dependency('libtiff-4', required: get_option('tiff')) |
| +webp_dep = dependency('libwebp', required : get_option('webp')) |
| udev_dep = dependency('libudev') |
| input_dep = dependency('libinput') |
| xkb_dep = dependency('xkbcommon') |
| @@ -36,20 +36,20 @@ jpeg_dep = cc.find_library('jpeg') |
| util_dep = cc.find_library('util') |
| math_dep = cc.find_library('m', required : false) |
| pcd_dep = cc.find_library('pcd', required : false) |
| -gif_dep = cc.find_library('gif', required : false) |
| +gif_dep = cc.find_library('gif', required: get_option('gif')) |
| |
| # motif + x11 libs |
| -motif_dep = cc.find_library('Xm', required : false) |
| -xpm_dep = cc.find_library('Xpm', required : false) |
| -xt_dep = cc.find_library('Xt', required : false) |
| -xext_dep = cc.find_library('Xext', required : false) |
| -x11_dep = cc.find_library('X11', required : false) |
| +motif_dep = cc.find_library('Xm', required : get_option('motif')) |
| +xpm_dep = cc.find_library('Xpm', required : get_option('motif')) |
| +xt_dep = cc.find_library('Xt', required : get_option('motif')) |
| +xext_dep = cc.find_library('Xext', required : get_option('motif')) |
| +x11_dep = cc.find_library('X11', required : get_option('motif')) |
| |
| # image formats |
| read_srcs = [ 'readers.c', 'rd/read-ppm.c', 'rd/read-bmp.c', |
| - 'rd/read-jpeg.c', 'rd/read-png.c', 'rd/read-tiff.c' ] |
| + 'rd/read-jpeg.c' ] |
| write_srcs = [ 'writers.c', 'wr/write-ppm.c', 'wr/write-ps.c', |
| - 'wr/write-jpeg.c', 'wr/write-png.c', 'wr/write-tiff.c' ] |
| + 'wr/write-jpeg.c' ] |
| image_deps = [ jpeg_dep, png_dep, tiff_dep, |
| pcd_dep, gif_dep, webp_dep ] |
| |
| @@ -57,11 +57,21 @@ if pcd_dep.found() |
| read_srcs += 'rd/read-pcd.c' |
| config.set('HAVE_LIBPCD', true) |
| endif |
| -if gif_dep.found() |
| +if get_option('png').enabled() |
| + read_srcs += 'rd/read-png.c' |
| + write_srcs += 'wr/write-png.c' |
| + config.set('HAVE_LIBPNG', true) |
| +endif |
| +if get_option('tiff').enabled() |
| + read_srcs += 'rd/read-tiff.c' |
| + write_srcs += 'wr/write-tiff.c' |
| + config.set('HAVE_LIBTIFF', true) |
| +endif |
| +if get_option('gif').enabled() |
| read_srcs += 'rd/read-gif.c' |
| config.set('HAVE_LIBGIF', true) |
| endif |
| -if webp_dep.found() |
| +if get_option('webp').enabled() |
| read_srcs += 'rd/read-webp.c' |
| config.set('HAVE_LIBWEBP', true) |
| endif |
| @@ -168,7 +181,7 @@ ida_srcs = [ 'ida.c', 'man.c', 'hex.c', 'x11.c', 'viewer.c', |
| ida_deps = [ pixman_dep, exif_dep, image_deps, math_dep, |
| motif_dep, xpm_dep, xt_dep, xext_dep, x11_dep ] |
| |
| -if motif_dep.found() |
| +if get_option('motif').enabled() |
| executable('ida', |
| sources : ida_srcs, |
| dependencies : ida_deps, |
| diff --git a/meson_options.txt b/meson_options.txt |
| new file mode 100644 |
| index 0000000..ce37188 |
| --- /dev/null |
| +++ b/meson_options.txt |
| @@ -0,0 +1,5 @@ |
| +option('gif', type: 'feature', value : 'enabled') |
| +option('png', type: 'feature', value : 'enabled') |
| +option('tiff', type: 'feature', value : 'enabled') |
| +option('webp', type: 'feature', value : 'disabled') |
| +option('motif', type: 'feature', value : 'disabled') |
| diff --git a/selections.c b/selections.c |
| index 7b16264..ccdc686 100644 |
| --- a/selections.c |
| +++ b/selections.c |
| @@ -609,8 +609,12 @@ void ipc_init() |
| #ifdef HAVE_LIBGIF |
| targets[ntargets++] = MIME_IMAGE_GIF; |
| #endif |
| +#ifdef HAVE_LIBPNG |
| targets[ntargets++] = MIME_IMAGE_PNG; |
| +#endif |
| +#ifdef HAVE_LIBTIFF |
| targets[ntargets++] = MIME_IMAGE_TIFF; |
| +#endif |
| targets[ntargets++] = XA_PIXMAP; |
| targets[ntargets++] = XA_STRING; |
| |
| -- |
| 2.37.3 |
| |