[packages/ruby-rbcdio] - updated to 0.05 - added libcdio patch (adapt to libcdio 2.0.0 API)
qboosh
qboosh at pld-linux.org
Sat Oct 27 19:33:51 CEST 2018
commit 613e54ab06fc96b62867b8bb1efca7f1ca4098b6
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Oct 27 19:37:32 2018 +0200
- updated to 0.05
- added libcdio patch (adapt to libcdio 2.0.0 API)
ruby-rbcdio-libcdio.patch | 147 ++++++++++++++++++++++++++++++++++++++++++++++
ruby-rbcdio.spec | 20 +++++--
2 files changed, 161 insertions(+), 6 deletions(-)
---
diff --git a/ruby-rbcdio.spec b/ruby-rbcdio.spec
index 07d6507..743d7af 100644
--- a/ruby-rbcdio.spec
+++ b/ruby-rbcdio.spec
@@ -1,19 +1,22 @@
Summary: Ruby bindings for libcdio
Summary(pl.UTF-8): Wiązania języka Ruby do libcdio
Name: ruby-rbcdio
-Version: 0.04
+Version: 0.05
Release: 1
License: GPL v3+
Group: Development/Languages
-Source0: http://ftp.gnu.org/gnu/libcdio/rbcdio-%{version}.tgz
-# Source0-md5: b078ac05195921de2f6431812c3ca011
+#Source0: http://ftp.gnu.org/gnu/libcdio/rbcdio-%{version}.tgz
+#Source0Download: https://rubygems.org/gems/rbcdio/
+Source0: https://rubygems.org/downloads/rbcdio-%{version}.gem
+# Source0-md5: 6bf56a8cb590c4d00b972239ece0ac65
+Patch0: %{name}-libcdio.patch
URL: http://www.gnu.org/software/libcdio/
-BuildRequires: libcdio-devel >= 0.76
+BuildRequires: libcdio-devel >= 2.0.0
BuildRequires: pkgconfig
BuildRequires: rpmbuild(macros) >= 1.277
BuildRequires: ruby-devel >= 1:1.8
BuildRequires: swig-ruby
-Requires: libcdio >= 0.76
+Requires: libcdio >= 2.0.0
Requires: ruby >= 1:1.8
%{?ruby_mod_ver_requires_eq}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -26,9 +29,14 @@ Wiązania języka Ruby do libcdio.
%prep
%setup -q -n rbcdio-%{version}
+%patch0 -p1
+
+# force regeneration
+%{__rm} ext/cdio/*_wrap.c ext/iso9660/*_wrap.c
%build
-%configure
+%configure \
+ --with-ruby=%{__ruby}
%{__make}
diff --git a/ruby-rbcdio-libcdio.patch b/ruby-rbcdio-libcdio.patch
new file mode 100644
index 0000000..2f18863
--- /dev/null
+++ b/ruby-rbcdio-libcdio.patch
@@ -0,0 +1,147 @@
+--- rbcdio-0.05/swig/cdtext.swg.orig 2018-10-27 17:31:20.345054852 +0200
++++ rbcdio-0.05/swig/cdtext.swg 2018-10-27 17:51:56.401707405 +0200
+@@ -19,25 +19,22 @@
+
+ /* See <cdio/cdtext.h> For more extensive documentation */
+
+-%constant long int CDTEXT_ARRANGER = CDTEXT_ARRANGER;
+-%constant long int CDTEXT_COMPOSER = CDTEXT_COMPOSER;
+-%constant long int CDTEXT_DISCID = CDTEXT_DISCID;
+-%constant long int CDTEXT_GENRE = CDTEXT_GENRE;
+-%constant long int CDTEXT_MESSAGE = CDTEXT_MESSAGE;
+-%constant long int CDTEXT_ISRC = CDTEXT_ISRC;
+-%constant long int CDTEXT_PERFORMER = CDTEXT_PERFORMER;
+-%constant long int CDTEXT_SIZE_INFO = CDTEXT_SIZE_INFO;
+-%constant long int CDTEXT_SONGWRITER = CDTEXT_SONGWRITER;
+-%constant long int CDTEXT_TITLE = CDTEXT_TITLE;
+-%constant long int CDTEXT_TOC_INFO = CDTEXT_TOC_INFO;
+-%constant long int CDTEXT_TOC_INFO2 = CDTEXT_TOC_INFO2;
+-%constant long int CDTEXT_UPC_EAN = CDTEXT_UPC_EAN;
++%constant long int CDTEXT_FIELD_ARRANGER = CDTEXT_FIELD_ARRANGER;
++%constant long int CDTEXT_FIELD_COMPOSER = CDTEXT_FIELD_COMPOSER;
++%constant long int CDTEXT_FIELD_DISCID = CDTEXT_FIELD_DISCID;
++%constant long int CDTEXT_FIELD_GENRE = CDTEXT_FIELD_GENRE;
++%constant long int CDTEXT_FIELD_MESSAGE = CDTEXT_FIELD_MESSAGE;
++%constant long int CDTEXT_FIELD_ISRC = CDTEXT_FIELD_ISRC;
++%constant long int CDTEXT_FIELD_PERFORMER = CDTEXT_FIELD_PERFORMER;
++%constant long int CDTEXT_FIELD_SONGWRITER = CDTEXT_FIELD_SONGWRITER;
++%constant long int CDTEXT_FIELD_TITLE = CDTEXT_FIELD_TITLE;
++%constant long int CDTEXT_FIELD_UPC_EAN = CDTEXT_FIELD_UPC_EAN;
++%constant long int CDTEXT_FIELD_INVALID = CDTEXT_FIELD_INVALID;
+
+-%constant long int CDTEXT_INVALID = CDTEXT_INVALID;
+ %constant long int MIN_CDTEXT_FIELD = MIN_CDTEXT_FIELD;
+ %constant long int MAX_CDTEXT_FIELDS = MAX_CDTEXT_FIELDS;
+
+-typedef unsigned long int cdtext_field_t;
++typedef unsigned int cdtext_field_t;
+
+ %feature("autodoc",
+ "cdtext_field2str(key)->string
+@@ -46,22 +43,15 @@ Get the name of the key.");
+ const char *cdtext_field2str (cdtext_field_t key);
+
+ %feature("autodoc",
+-"cdtext_get(key, p_cdtext)->string
++"cdtext_get(p_cdtext, key, track)->string
+ Get the value associated with key.");
+
+-const char *cdtext_get (cdtext_field_t key, const cdtext_t *cdtext);
++char *cdtext_get (const cdtext_t *cdtext, cdtext_field_t key, track_t track);
+
+ %feature("autodoc",
+-"cdtext_is_keyword(string)->int
+-Returns enum value of keyword if the key is a CD-Text keyword,
+-returns MAX_CDTEXT_FIELDS otherwise.");
+-
+-cdtext_field_t cdtext_is_keyword (const char *key);
+-
+-%feature("autodoc",
+-"cdtext_set(key, string, p_cdtext)
++"cdtext_set(p_cdtext, key, value, track, charset)
+ Set the value associated with key.");
+
+-void cdtext_set (cdtext_field_t key, const char *value, cdtext_t *cdtext);
++void cdtext_set (cdtext_t *p_cdtext, cdtext_field_t key, const uint8_t *value, track_t track, const char *charset);
+
+
+--- rbcdio-0.05/swig/device_const.swg.orig 2018-10-27 17:31:20.345054852 +0200
++++ rbcdio-0.05/swig/device_const.swg 2018-10-27 17:39:15.885049421 +0200
+@@ -84,7 +84,6 @@
+ /* driver_id_t enums. */
+ %constant long int DRIVER_UNKNOWN = DRIVER_UNKNOWN;
+ %constant long int DRIVER_AIX = DRIVER_AIX;
+-%constant long int DRIVER_BSDI = DRIVER_BSDI;
+ %constant long int DRIVER_FREEBSD = DRIVER_FREEBSD;
+ %constant long int DRIVER_LINUX = DRIVER_LINUX;
+ %constant long int DRIVER_SOLARIS = DRIVER_SOLARIS;
+@@ -95,11 +94,6 @@
+ %constant long int DRIVER_NRG = DRIVER_NRG;
+ %constant long int DRIVER_DEVICE = DRIVER_DEVICE;
+
+-%constant long int MIN_DRIVER = CDIO_MIN_DRIVER;
+-%constant long int MIN_DEVICE_DRIVER = CDIO_MIN_DEVICE_DRIVER;
+-%constant long int MAX_DRIVER = CDIO_MAX_DRIVER;
+-%constant long int MAX_DEVICE_DRIVER = CDIO_MAX_DEVICE_DRIVER;
+-
+
+ %constant long int DRIVER_OP_SUCCESS = DRIVER_OP_SUCCESS;
+ %constant long int DRIVER_OP_ERROR = DRIVER_OP_ERROR;
+--- rbcdio-0.05/swig/device.swg.orig 2018-10-27 17:31:20.345054852 +0200
++++ rbcdio-0.05/swig/device.swg 2018-10-27 18:11:47.678360467 +0200
+@@ -321,8 +321,6 @@ if driver id is out of range.");
+ int
+ have_driver (unsigned int driver_id)
+ {
+- if (driver_id < CDIO_MIN_DRIVER || driver_id > CDIO_MAX_DRIVER)
+- return -1;
+ if (cdio_have_driver(driver_id)) return 1;
+ return 0;
+ }
+--- rbcdio-0.05/swig/rubyiso9660.swg.orig 2018-10-27 17:31:20.345054852 +0200
++++ rbcdio-0.05/swig/rubyiso9660.swg 2018-10-27 19:22:01.594979020 +0200
+@@ -131,7 +131,7 @@ typedef iso9660_stat_t IsoStat_t;
+ rb_ary_push(resultobj, stat);
+
+ }
+- _cdio_list_free(result, 1);
++ _cdio_list_free(result, 1, iso9660_stat_free);
+ return resultobj;
+ }
+ }
+@@ -556,8 +556,7 @@ is removed and if level 1 ISO-9660 names
+ The b_mode2 parameter is not used.");
+ %rename iso9660_fs_stat_translate fs_stat_translate;
+ IsoStat_t *iso9660_fs_stat_translate (CdIo_t *p_cdio,
+- const char psz_path[],
+- bool b_mode2=false);
++ const char psz_path[]);
+
+ %feature("autodoc",
+ "Return file status for pathname. None is returned on error.");
+@@ -581,7 +580,7 @@ IsoStatList_t *fs_readdir (CdIo_t *p_cdi
+ %inline %{
+ IsoStatList_t *fs_readdir (CdIo_t *p_cdio, const char psz_path[])
+ {
+- CdioList_t *p_statlist = iso9660_fs_readdir (p_cdio, psz_path, false);
++ CdioList_t *p_statlist = iso9660_fs_readdir (p_cdio, psz_path);
+ return p_statlist;
+ }
+ %}
+--- rbcdio-0.05/swig/track.swg.orig 2018-10-27 17:31:20.345054852 +0200
++++ rbcdio-0.05/swig/track.swg 2018-10-27 18:13:20.125026080 +0200
+@@ -49,11 +49,10 @@ typedef int track_flag_t;
+
+ %rename cdio_get_cdtext get_cdtext;
+ %feature("autodoc",
+-"cdio_get_cdtext(track)->cdtext
+- Get the CDText object for the given track number.
+- Use track 0 for the disc's CDText object.");
++"cdio_get_cdtext(p_cdio)->cdtext
++ Get the CDText object for disc.");
+
+-cdtext_t *cdio_get_cdtext (CdIo_t *p_cdio, track_t i_track);
++cdtext_t *cdio_get_cdtext (CdIo_t *p_cdio);
+
+ %rename cdio_get_first_track_num get_first_track_num;
+ %feature("autodoc",
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/ruby-rbcdio.git/commitdiff/613e54ab06fc96b62867b8bb1efca7f1ca4098b6
More information about the pld-cvs-commit
mailing list