[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/2] Replacing CONFIG_VNC_PNG with CONFIG_PNG
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH 1/2] Replacing CONFIG_VNC_PNG with CONFIG_PNG |
Date: |
Fri, 25 Feb 2022 19:12:34 +0000 |
User-agent: |
Mutt/2.1.5 (2021-12-30) |
On Fri, Feb 25, 2022 at 11:58:29AM +0000, Kshitij Suri wrote:
> Libpng is only detected if VNC is enabled currently. This patch adds a
> generalised png option in the meson build which is aimed to replace use of
> CONFIG_VNC_PNG with CONFIG_PNG.
>
> Signed-off-by: Kshitij Suri <kshitij.suri@nutanix.com>
> ---
> meson.build | 10 +++++-----
> meson_options.txt | 4 ++--
> ui/vnc-enc-tight.c | 18 +++++++++---------
> ui/vnc.c | 4 ++--
> ui/vnc.h | 2 +-
> 5 files changed, 19 insertions(+), 19 deletions(-)
> diff --git a/ui/vnc-enc-tight.c b/ui/vnc-enc-tight.c
> index cebd35841a..14396e9f83 100644
> --- a/ui/vnc-enc-tight.c
> +++ b/ui/vnc-enc-tight.c
> @@ -32,7 +32,7 @@
> INT32 definitions between jmorecfg.h (included by jpeglib.h) and
> Win32 basetsd.h (included by windows.h). */
>
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
This (and every repeated instance) can be just
#ifdef CONFIG_PNG
because the entire file is skipped by the build system
if CONFIG_VNC isn't defined.
> /* The following define is needed by pngconf.h. Otherwise it won't compile,
> because setjmp.h was already included by qemu-common.h. */
> #define PNG_SKIP_SETJMP_CHECK
> @@ -95,7 +95,7 @@ static const struct {
> };
> #endif
>
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> static const struct {
> int png_zlib_level, png_filters;
> } tight_png_conf[] = {
> @@ -919,7 +919,7 @@ static int send_full_color_rect(VncState *vs, int x, int
> y, int w, int h)
> int stream = 0;
> ssize_t bytes;
>
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> if (tight_can_send_png_rect(vs, w, h)) {
> return send_png_rect(vs, x, y, w, h, NULL);
> }
> @@ -966,7 +966,7 @@ static int send_mono_rect(VncState *vs, int x, int y,
> int stream = 1;
> int level = tight_conf[vs->tight->compression].mono_zlib_level;
>
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> if (tight_can_send_png_rect(vs, w, h)) {
> int ret;
> int bpp = vs->client_pf.bytes_per_pixel * 8;
> @@ -1020,7 +1020,7 @@ static int send_mono_rect(VncState *vs, int x, int y,
> struct palette_cb_priv {
> VncState *vs;
> uint8_t *header;
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> png_colorp png_palette;
> #endif
> };
> @@ -1082,7 +1082,7 @@ static int send_palette_rect(VncState *vs, int x, int y,
> int colors;
> ssize_t bytes;
>
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> if (tight_can_send_png_rect(vs, w, h)) {
> return send_png_rect(vs, x, y, w, h, palette);
> }
> @@ -1233,7 +1233,7 @@ static int send_jpeg_rect(VncState *vs, int x, int y,
> int w, int h, int quality)
> /*
> * PNG compression stuff.
> */
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> static void write_png_palette(int idx, uint32_t pix, void *opaque)
> {
> struct palette_cb_priv *priv = opaque;
> @@ -1379,7 +1379,7 @@ static int send_png_rect(VncState *vs, int x, int y,
> int w, int h,
> buffer_reset(&vs->tight->png);
> return 1;
> }
> -#endif /* CONFIG_VNC_PNG */
> +#endif /*(CONFIG_VNC && CONFIG_PNG) */
>
> static void vnc_tight_start(VncState *vs)
> {
> @@ -1706,7 +1706,7 @@ void vnc_tight_clear(VncState *vs)
> #ifdef CONFIG_VNC_JPEG
> buffer_free(&vs->tight->jpeg);
> #endif
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> buffer_free(&vs->tight->png);
> #endif
> }
> diff --git a/ui/vnc.c b/ui/vnc.c
> index 3ccd33dedc..1bf3790997 100644
> --- a/ui/vnc.c
> +++ b/ui/vnc.c
> @@ -2165,7 +2165,7 @@ static void set_encodings(VncState *vs, int32_t
> *encodings, size_t n_encodings)
> vs->features |= VNC_FEATURE_TIGHT_MASK;
> vs->vnc_encoding = enc;
> break;
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> case VNC_ENCODING_TIGHT_PNG:
> vs->features |= VNC_FEATURE_TIGHT_PNG_MASK;
> vs->vnc_encoding = enc;
> @@ -3248,7 +3248,7 @@ static void vnc_connect(VncDisplay *vd,
> QIOChannelSocket *sioc,
> #ifdef CONFIG_VNC_JPEG
> buffer_init(&vs->tight->jpeg, "vnc-tight-jpeg/%p", sioc);
> #endif
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> buffer_init(&vs->tight->png, "vnc-tight-png/%p", sioc);
> #endif
> buffer_init(&vs->zlib.zlib, "vnc-zlib/%p", sioc);
> diff --git a/ui/vnc.h b/ui/vnc.h
> index a7149831f9..0cabcc2654 100644
> --- a/ui/vnc.h
> +++ b/ui/vnc.h
> @@ -201,7 +201,7 @@ typedef struct VncTight {
> #ifdef CONFIG_VNC_JPEG
> Buffer jpeg;
> #endif
> -#ifdef CONFIG_VNC_PNG
> +#if defined(CONFIG_VNC) && defined(CONFIG_PNG)
> Buffer png;
> #endif
> int levels[4];
> --
> 2.22.3
>
>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|