[arch-commits] Commit in vlc/trunk (PKGBUILD caca-fix-to-newer-version.patch)

Evangelos Foutras foutrelis at gemini.archlinux.org
Wed Dec 22 22:45:12 UTC 2021


    Date: Wednesday, December 22, 2021 @ 22:45:12
  Author: foutrelis
Revision: 432948

Fix build with libcaca 0.99.beta20

Added:
  vlc/trunk/caca-fix-to-newer-version.patch
Modified:
  vlc/trunk/PKGBUILD

---------------------------------+
 PKGBUILD                        |    2 
 caca-fix-to-newer-version.patch |  130 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 132 insertions(+)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-12-22 21:11:49 UTC (rev 432947)
+++ PKGBUILD	2021-12-22 22:45:12 UTC (rev 432948)
@@ -100,11 +100,13 @@
 options=('!emptydirs')
 source=(https://download.videolan.org/${pkgname}/${_vlcver}/${pkgname}-${_vlcver}${_vlcfixupver}.tar.xz{,.asc}
         update-vlc-plugin-cache.hook
+        caca-fix-to-newer-version.patch
         vlc-3.0.11.1-srt_1.4.2.patch
         vlc-live-media-2021.patch)
 sha512sums=('35cdf191071224d0cf1b5a83c00773ff87b9e5bfcf0f5523f7edd53f75b23eda6b27bb49ffa97d69a1d176b8fe4786d959aeeb00d4380beab71c9f7e6b7c7298'
             'SKIP'
             'b247510ffeadfd439a5dadd170c91900b6cdb05b5ca00d38b1a17c720ffe5a9f75a32e0cb1af5ebefdf1c23c5acc53513ed983a736e8fa30dd8fad237ef49dd3'
+            'ef479a246dc98f882a05ca56a1c2872cc67ced154c625790070b887858ddc250d55b1295db82c9122e5ecd3c2c9c712ec9718e28d0a9d21ff6a230eb6c5010ce'
             'ac1d33d434aca2a0ad6e70800073deeaefc02b8fd72656b682ca833ee0cffe10dfa19a9355388700cab46ffbf9421c007d00ed04c7fa562698ff81e70db5f283'
             'ad17d6f4f2cc83841c1c89623c339ec3ee94f6084ea980e2c8cbc3903854c85e5396e31bfd8dc90745b41794670903d854c4d282d8adec263087a9d47b226ccc')
 validpgpkeys=('65F7C6B4206BD057A7EB73787180713BE58D1ADC') # VideoLAN Release Signing Key

Added: caca-fix-to-newer-version.patch
===================================================================
--- caca-fix-to-newer-version.patch	                        (rev 0)
+++ caca-fix-to-newer-version.patch	2021-12-22 22:45:12 UTC (rev 432948)
@@ -0,0 +1,130 @@
+From 900318072a7ebce28745aa3863e1364b7258baff Mon Sep 17 00:00:00 2001
+From: Alexandre Janniaux <ajanni at videolabs.io>
+Date: Wed, 10 Nov 2021 15:37:52 +0100
+Subject: [PATCH] caca: fix to newer version
+
+Migrate to the new API instead of libcucul API, which has been merged
+into libcaca since 0.99.beta15:
+
+    commit f61816ceb7445f8bf818936151554ac060764b39
+    Author: Sam Hocevar <sam at hocevar.net>
+    Date:   Sat Sep 27 13:12:46 2008 +0000
+
+    Starting refactoring to get rid of libcucul. The initial reason for the
+    split is rendered moot by the plugin system: when enabled, binaries do
+    not link directly with libX11 or libGL. I hope this is a step towards
+    more consisteny and clarity.
+
+It was then completely wiped out by the following commit, which is part
+of v0.99.beta20:
+
+    commit 5f0ec215f8c9915ed028324a8ecac8212f68e18d
+    Author: Sam Hocevar <sam at hocevar.net>
+    Date:   Thu May 3 10:33:30 2018 +0200
+
+    Remove legacy code from 10 years ago.
+
+(cherry picked from commit d35391caa03c046149e7fe2497f51bf59ed8551d)
+---
+ modules/video_output/caca.c | 30 +++++++++++++++---------------
+ 1 file changed, 15 insertions(+), 15 deletions(-)
+
+diff --git a/modules/video_output/caca.c b/modules/video_output/caca.c
+index 33a0409820..a2e922a864 100644
+--- a/modules/video_output/caca.c
++++ b/modules/video_output/caca.c
+@@ -74,9 +74,9 @@ static void Place(vout_display_t *, vout_display_place_t *);
+ 
+ /* */
+ struct vout_display_sys_t {
+-    cucul_canvas_t *cv;
++    caca_canvas_t *cv;
+     caca_display_t *dp;
+-    cucul_dither_t *dither;
++    caca_dither_t *dither;
+ 
+     picture_pool_t *pool;
+     vout_display_event_thread_t *et;
+@@ -153,9 +153,9 @@ static int Open(vlc_object_t *object)
+     if (!sys)
+         goto error;
+ 
+-    sys->cv = cucul_create_canvas(0, 0);
++    sys->cv = caca_create_canvas(0, 0);
+     if (!sys->cv) {
+-        msg_Err(vd, "cannot initialize libcucul");
++        msg_Err(vd, "cannot initialize libcaca");
+         goto error;
+     }
+ 
+@@ -209,11 +209,11 @@ error:
+         if (sys->pool)
+             picture_pool_Release(sys->pool);
+         if (sys->dither)
+-            cucul_free_dither(sys->dither);
++            caca_free_dither(sys->dither);
+         if (sys->dp)
+             caca_free_display(sys->dp);
+         if (sys->cv)
+-            cucul_free_canvas(sys->cv);
++            caca_free_canvas(sys->cv);
+ 
+         free(sys);
+     }
+@@ -235,9 +235,9 @@ static void Close(vlc_object_t *object)
+     if (sys->pool)
+         picture_pool_Release(sys->pool);
+     if (sys->dither)
+-        cucul_free_dither(sys->dither);
++        caca_free_dither(sys->dither);
+     caca_free_display(sys->dp);
+-    cucul_free_canvas(sys->cv);
++    caca_free_canvas(sys->cv);
+ 
+ #if defined(_WIN32)
+     FreeConsole();
+@@ -266,7 +266,7 @@ static void Prepare(vout_display_t *vd, picture_t *picture, subpicture_t *subpic
+ 
+     if (!sys->dither) {
+         /* Create the libcaca dither object */
+-        sys->dither = cucul_create_dither(32,
++        sys->dither = caca_create_dither(32,
+                                             vd->source.i_visible_width,
+                                             vd->source.i_visible_height,
+                                             picture->p[0].i_pitch,
+@@ -284,12 +284,12 @@ static void Prepare(vout_display_t *vd, picture_t *picture, subpicture_t *subpic
+     vout_display_place_t place;
+     Place(vd, &place);
+ 
+-    cucul_set_color_ansi(sys->cv, CUCUL_COLOR_DEFAULT, CUCUL_COLOR_BLACK);
+-    cucul_clear_canvas(sys->cv);
++    caca_set_color_ansi(sys->cv, CACA_DEFAULT, CACA_BLACK);
++    caca_clear_canvas(sys->cv);
+ 
+     const int crop_offset = vd->source.i_y_offset * picture->p->i_pitch +
+                             vd->source.i_x_offset * picture->p->i_pixel_pitch;
+-    cucul_dither_bitmap(sys->cv, place.x, place.y,
++    caca_dither_bitmap(sys->cv, place.x, place.y,
+                         place.width, place.height,
+                         sys->dither,
+                         &picture->p->p_pixels[crop_offset]);
+@@ -328,7 +328,7 @@ static int Control(vout_display_t *vd, int query, va_list args)
+ 
+     case VOUT_DISPLAY_CHANGE_SOURCE_CROP:
+         if (sys->dither)
+-            cucul_free_dither(sys->dither);
++            caca_free_dither(sys->dither);
+         sys->dither = NULL;
+         return VLC_SUCCESS;
+ 
+@@ -366,8 +366,8 @@ static void Place(vout_display_t *vd, vout_display_place_t *place)
+ 
+     vout_display_PlacePicture(place, &vd->source, vd->cfg, false);
+ 
+-    const int canvas_width   = cucul_get_canvas_width(sys->cv);
+-    const int canvas_height  = cucul_get_canvas_height(sys->cv);
++    const int canvas_width   = caca_get_canvas_width(sys->cv);
++    const int canvas_height  = caca_get_canvas_height(sys->cv);
+     const int display_width  = caca_get_display_width(sys->dp);
+     const int display_height = caca_get_display_height(sys->dp);
+ 



More information about the arch-commits mailing list