Package: vcdimager
Version: 0.7.24+dfsg-0.3
Severity: serious
Tags: patch sid
Justification: FTBFS
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu bionic ubuntu-patch

Dear Nicolas,

With the upload of libcdio 1.0.0-1 to unstable, vcdimager now fails to build
because it references deprecated compatibility names that have been dropped
from the libcdio API in this release.

I have uploaded the attached patch to Ubuntu, which fixes the build failure. 
Please consider applying it in Debian as well.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slanga...@ubuntu.com                                     vor...@debian.org
diff -Nru vcdimager-0.7.24+dfsg/debian/control 
vcdimager-0.7.24+dfsg/debian/control
--- vcdimager-0.7.24+dfsg/debian/control        2017-12-05 18:53:31.000000000 
-0800
+++ vcdimager-0.7.24+dfsg/debian/control        2017-12-05 20:50:31.000000000 
-0800
@@ -1,8 +1,7 @@
 Source: vcdimager
 Section: otherosfs
 Priority: optional
-Maintainer: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com>
-XSBC-Original-Maintainer: Nicolas Boullis <nboul...@debian.org>
+Maintainer: Nicolas Boullis <nboul...@debian.org>
 Build-Depends: debhelper (>= 9), libxml2-dev, libpopt-dev, texinfo, 
libcdio-dev (>= 0.76), libiso9660-dev, dpkg-awk, pkg-config, dh-autoreconf
 Build-Conflicts: libpopt0 (= 1.7-1) [m68k], libpopt0 (= 1.7-2) [m68k], 
libpopt0 (= 1.7-3) [m68k]
 Standards-Version: 4.1.1
diff -Nru vcdimager-0.7.24+dfsg/debian/patches/cdio-1.0-compat 
vcdimager-0.7.24+dfsg/debian/patches/cdio-1.0-compat
--- vcdimager-0.7.24+dfsg/debian/patches/cdio-1.0-compat        1969-12-31 
16:00:00.000000000 -0800
+++ vcdimager-0.7.24+dfsg/debian/patches/cdio-1.0-compat        2017-12-05 
20:50:31.000000000 -0800
@@ -0,0 +1,237 @@
+Description: compatibility with libcdio 1.0.0
+ The libcdio 1.0.0 release drops various deprecated aliases.  Fix vcdimager
+ for compatibility.
+Author: Steve Langasek <steve.langa...@ubuntu.com>
+Last-Update: 2017-12-05
+Forwarded: no
+
+Index: vcdimager-0.7.24+dfsg/include/libvcd/info.h
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/include/libvcd/info.h
++++ vcdimager-0.7.24+dfsg/include/libvcd/info.h
+@@ -455,12 +455,12 @@
+   /*!
+     Get the VCD info list.
+   */
+-  CdioList *vcdinfo_get_offset_list(const vcdinfo_obj_t *p_vcdinfo);
++  CdioList_t *vcdinfo_get_offset_list(const vcdinfo_obj_t *p_vcdinfo);
+ 
+   /*!
+     Get the VCD info extended offset list.
+   */
+-  CdioList *vcdinfo_get_offset_x_list(const vcdinfo_obj_t *p_vcdinfo);
++  CdioList_t *vcdinfo_get_offset_x_list(const vcdinfo_obj_t *p_vcdinfo);
+ 
+   /*!
+     Get the VCD info offset multiplier.
+Index: vcdimager-0.7.24+dfsg/lib/data_structures.h
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/data_structures.h
++++ vcdimager-0.7.24+dfsg/lib/data_structures.h
+@@ -28,7 +28,7 @@
+ 
+ CdioListNode_t *_vcd_list_at (CdioList_t *list, int idx);
+ 
+-void _vcd_list_sort (CdioList_t *p_list, _cdio_list_cmp_func cmp_func);
++void _vcd_list_sort (CdioList_t *p_list, _cdio_list_cmp_func_t cmp_func);
+ 
+ /* n-way tree */
+ 
+Index: vcdimager-0.7.24+dfsg/lib/mpeg.h
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/mpeg.h
++++ vcdimager-0.7.24+dfsg/lib/mpeg.h
+@@ -103,7 +103,7 @@
+       unsigned vbvsize;
+       bool constrained_flag;
+ 
+-      CdioList *aps_list; /* filled up by vcd_mpeg_source */
++      CdioList_t *aps_list; /* filled up by vcd_mpeg_source */
+       double last_aps_pts; /* temp, see ->packet */
+       
+     } shdr[3];
+Index: vcdimager-0.7.24+dfsg/lib/info_private.c
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/info_private.c
++++ vcdimager-0.7.24+dfsg/lib/info_private.c
+@@ -136,7 +136,7 @@
+       ret &= vcdinf_visit_pbc (obj, n + 1, tmp, true);
+ 
+   _vcd_list_sort (obj->extended ? obj->offset_x_list : obj->offset_list, 
+-                  (_cdio_list_cmp_func) vcdinf_lid_t_cmp);
++                  (_cdio_list_cmp_func_t) vcdinf_lid_t_cmp);
+ 
+   /* Now really complete the offset table with LIDs.  This routine
+      might obviate the need for vcdinf_visit_pbc() or some of it which is
+Index: vcdimager-0.7.24+dfsg/lib/dict.h
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/dict.h
++++ vcdimager-0.7.24+dfsg/lib/dict.h
+@@ -88,7 +88,7 @@
+   vcd_assert (key != NULL);
+ 
+   node = _cdio_list_find (obj->buffer_dict_list,
+-                        (_cdio_list_iterfunc) _dict_key_cmp,
++                        (_cdio_list_iterfunc_t) _dict_key_cmp,
+                         (char *) key);
+   
+   if (node)
+@@ -106,7 +106,7 @@
+   vcd_assert (sector != SECTOR_NIL);
+ 
+   node = _cdio_list_find (obj->buffer_dict_list, 
+-                        (_cdio_list_iterfunc) _dict_sector_cmp, 
++                        (_cdio_list_iterfunc_t) _dict_sector_cmp, 
+                         &sector);
+ 
+   if (node)
+Index: vcdimager-0.7.24+dfsg/lib/vcd.c
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/vcd.c
++++ vcdimager-0.7.24+dfsg/lib/vcd.c
+@@ -583,7 +583,7 @@
+   }
+ 
+   _vcd_list_sort (p_sequence->pause_list, 
+-                  (_cdio_list_cmp_func) _pause_cmp);
++                  (_cdio_list_cmp_func_t) _pause_cmp);
+ 
+   vcd_debug ("added autopause point at %f", pause_time);
+ 
+@@ -623,7 +623,7 @@
+   }
+ 
+   _vcd_list_sort (_segment->pause_list, 
+-                  (_cdio_list_cmp_func) _pause_cmp);
++                  (_cdio_list_cmp_func_t) _pause_cmp);
+ 
+   vcd_debug ("added autopause point at %f", pause_time);
+ 
+@@ -685,7 +685,7 @@
+   }
+ 
+   _vcd_list_sort (p_sequence->entry_list, 
+-                  (_cdio_list_cmp_func) _entry_cmp);
++                  (_cdio_list_cmp_func_t) _entry_cmp);
+ 
+   return 0;
+ }
+@@ -1001,7 +1001,7 @@
+   _cdio_list_append (p_obj->custom_dir_list, _iso_pathname);
+ 
+   _vcd_list_sort (p_obj->custom_dir_list, 
+-                  (_cdio_list_cmp_func) strcmp);
++                  (_cdio_list_cmp_func_t) strcmp);
+ 
+   return 0;
+ }
+@@ -2290,7 +2290,7 @@
+   /* start with meta info */
+ 
+   {
+-    CdioList *p_cue_list;
++    CdioList_t *p_cue_list;
+     vcd_cue_t *p_cue;
+ 
+     p_cue_list = _cdio_list_new ();
+Index: vcdimager-0.7.24+dfsg/lib/data_structures.c
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/data_structures.c
++++ vcdimager-0.7.24+dfsg/lib/data_structures.c
+@@ -58,7 +58,7 @@
+ /* impl */
+ 
+ static bool
+-_bubble_sort_iteration (CdioList_t *p_list, _cdio_list_cmp_func cmp_func)
++_bubble_sort_iteration (CdioList_t *p_list, _cdio_list_cmp_func_t cmp_func)
+ {
+   CdioListNode_t **pp_node;
+   bool changed = false;
+@@ -86,7 +86,7 @@
+   return changed;
+ }
+ 
+-void _vcd_list_sort (CdioList_t *list, _cdio_list_cmp_func cmp_func)
++void _vcd_list_sort (CdioList_t *list, _cdio_list_cmp_func_t cmp_func)
+ {
+   /* fixme -- this is bubble sort -- worst sorting algo... */
+ 
+@@ -263,7 +263,7 @@
+   vcd_assert (p_node != NULL);
+ 
+   if (p_node->children)
+-    _vcd_list_sort (p_node->children, (_cdio_list_cmp_func) cmp_func);
++    _vcd_list_sort (p_node->children, (_cdio_list_cmp_func_t) cmp_func);
+ }
+ 
+ void
+Index: vcdimager-0.7.24+dfsg/lib/files.c
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/files.c
++++ vcdimager-0.7.24+dfsg/lib/files.c
+@@ -634,7 +634,7 @@
+     + (_get_scanpoint_count (p_vcdobj) * sizeof (msf_t));
+ }
+ 
+-static CdioList *
++static CdioList_t *
+ _make_track_scantable (const VcdObj_t *p_vcdobj)
+ {
+   CdioList_t *p_all_aps = _cdio_list_new ();
+Index: vcdimager-0.7.24+dfsg/lib/image_bincue.c
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/image_bincue.c
++++ vcdimager-0.7.24+dfsg/lib/image_bincue.c
+@@ -88,7 +88,7 @@
+ }
+ 
+ static int
+-_set_cuesheet (void *user_data, const CdioList *vcd_cue_list)
++_set_cuesheet (void *user_data, const CdioList_t *vcd_cue_list)
+ {
+   _img_bincue_snk_t *_obj = user_data;
+   CdioListNode_t *node;
+@@ -102,7 +102,7 @@
+ 
+   track_no = 0;
+   index_no = 0;
+-  _CDIO_LIST_FOREACH (node, (CdioList *) vcd_cue_list)
++  _CDIO_LIST_FOREACH (node, (CdioList_t *) vcd_cue_list)
+     {
+       const vcd_cue_t *_cue = _cdio_list_node_data (node);
+       char *psz_msf;
+Index: vcdimager-0.7.24+dfsg/lib/mpeg_stream.c
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/lib/mpeg_stream.c
++++ vcdimager-0.7.24+dfsg/lib/mpeg_stream.c
+@@ -270,7 +270,7 @@
+ }
+ 
+ static double
+-_approx_pts (CdioList *aps_list, uint32_t packet_no)
++_approx_pts (CdioList_t *aps_list, uint32_t packet_no)
+ {
+   double retval = 0;
+   CdioListNode_t *node;
+@@ -324,7 +324,7 @@
+ 
+ static void 
+ _fix_scan_info (struct vcd_mpeg_scan_data_t *scan_data_ptr,
+-                unsigned packet_no, double pts, CdioList *aps_list)
++                unsigned packet_no, double pts, CdioList_t *aps_list)
+ {
+   CdioListNode_t *node;
+   long _next = -1, _prev = -1, _forw = -1, _back = -1;
+Index: vcdimager-0.7.24+dfsg/frontends/xml/vcd_xml_rip.c
+===================================================================
+--- vcdimager-0.7.24+dfsg.orig/frontends/xml/vcd_xml_rip.c
++++ vcdimager-0.7.24+dfsg/frontends/xml/vcd_xml_rip.c
+@@ -769,7 +769,7 @@
+       _visit_pbc (p_pbc_ctx, n + 1, tmp, true);
+ 
+   _vcd_list_sort (p_pbc_ctx->offset_list, 
+-                (_cdio_list_cmp_func) vcdinf_lid_t_cmp);
++                (_cdio_list_cmp_func_t) vcdinf_lid_t_cmp);
+ }
+ 
+ static int
diff -Nru vcdimager-0.7.24+dfsg/debian/patches/series 
vcdimager-0.7.24+dfsg/debian/patches/series
--- vcdimager-0.7.24+dfsg/debian/patches/series 2017-11-14 23:08:11.000000000 
-0800
+++ vcdimager-0.7.24+dfsg/debian/patches/series 2017-12-05 20:48:38.000000000 
-0800
@@ -2,3 +2,4 @@
 remove_lt_prefix_in_manpages
 no_non-DFSG_info_pages
 update-vcdinfo-test
+cdio-1.0-compat

Reply via email to