[packages/xmms2] - up to 0.5DrLecter

qboosh qboosh at pld-linux.org
Sun May 21 22:26:05 CEST 2023


commit 3a1c24aa9ab274eea6e74e4b9cf63b941886b95b
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun May 21 22:28:42 2023 +0200

    - up to 0.5DrLecter

 xmms2-ffmpeg.patch                 |  99 ----------------------------------
 xmms2-format.patch                 |  11 ++++
 xmms2-mdns-launcher-conflict.patch |   6 +--
 xmms2-openssl.patch                |  12 +++++
 xmms2-ruby.patch                   | 106 +++++++++++++++----------------------
 xmms2-version.patch                |  11 ++++
 xmms2-waf.patch                    |  42 +++++++--------
 xmms2.spec                         |  59 ++++++++++++---------
 8 files changed, 136 insertions(+), 210 deletions(-)
---
diff --git a/xmms2.spec b/xmms2.spec
index 9a9601f..8f39d54 100644
--- a/xmms2.spec
+++ b/xmms2.spec
@@ -12,18 +12,21 @@
 Summary:	Client/server based media player system
 Summary(pl.UTF-8):	System odtwarzania multimediów oparty na architekturze klient/serwer
 Name:		xmms2
-Version:	0.4DrKosmos
+Version:	0.5DrLecter
 Release:	0.1
 License:	LGPL v2.1
 Group:		Applications/Sound
 Source0:	https://downloads.sourceforge.net/xmms2/%{name}-%{version}.tar.bz2
-# Source0-md5:	f363857a77606a2d7d14603ab375f454
+# Source0-md5:	9033ef15be9069ef43aeb4b6360a4d36
 Patch0:		%{name}-tabs.patch
+Patch1:		%{name}-openssl.patch
+Patch2:		%{name}-format.patch
 Patch3:		%{name}-modplug.patch
 Patch4:		%{name}-ffmpeg.patch
 Patch5:		%{name}-ruby.patch
 Patch6:		%{name}-mdns-launcher-conflict.patch
-Patch8:		%{name}-waf.patch
+Patch7:		%{name}-waf.patch
+Patch8:		%{name}-version.patch
 URL:		http://xmms2.xmms.se/
 %if %{with sdl}
 BuildRequires:	SDL-devel
@@ -41,7 +44,6 @@ BuildRequires:	fftw3-single-devel >= 3
 %{?with_flac:BuildRequires:	flac-devel >= 1.1.3}
 BuildRequires:	gamin-devel
 BuildRequires:	glib2-devel >= 1:2.6.0
-BuildRequires:	gnome-vfs2-devel >= 2.0
 BuildRequires:	jack-audio-connection-kit-devel
 %{?with_java:BuildRequires:	jdk}
 BuildRequires:	libao-devel
@@ -60,6 +62,7 @@ BuildRequires:	libsmbclient-devel
 BuildRequires:	libstdc++-devel
 BuildRequires:	libvorbis-devel
 BuildRequires:	libxml2-devel >= 2.0
+BuildRequires:	openssl-devel
 BuildRequires:	pkgconfig
 BuildRequires:	pulseaudio-devel
 %if %{with python}
@@ -71,7 +74,7 @@ BuildRequires:	rpmbuild(macros) >= 1.277
 %{?with_ruby:BuildRequires:	ruby-modules >= 1:1.8}
 BuildRequires:	scons >= 4
 BuildRequires:	sed >= 4.0
-#BuildRequires:	speex-devel
+BuildRequires:	speex-devel
 BuildRequires:	sqlite3-devel >= 3.2
 BuildRequires:	swig >= 1.3.25
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -450,17 +453,18 @@ This package enables DAAP transport for xmms2.
 %description transport-daap -l pl.UTF-8
 Ten pakiet umożliwia odbiór danych DAAP przez xmms2.
 
-%package transport-gnomevfs
-Summary:	GnomeVFS transport
-Summary(pl.UTF-8):	Transport GnomeVFS
+%package transport-gvfs
+Summary:	GVFS transport
+Summary(pl.UTF-8):	Transport GVFS
 Group:		Applications/Sound
 Requires:	%{name} = %{version}-%{release}
+Obsoletes:	xmms2-transport-gnomevfs < 0.5
 
-%description transport-gnomevfs
-This package contains a GnomeVFS transport for xmms2.
+%description transport-gvfs
+This package contains a GVFS transport for xmms2.
 
-%description transport-gnomevfs -l pl.UTF-8
-Ten pakiet zawiera transport GnomeVFS dla xmms2.
+%description transport-gvfs -l pl.UTF-8
+Ten pakiet zawiera transport GVFS dla xmms2.
 
 %package transport-mms
 Summary:	MMS transport
@@ -503,14 +507,17 @@ xmms2.
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p1
+%patch2 -p1
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
+%patch7 -p1
 %patch8 -p1
 
 # sanitize version to avoid invalid format in .pc files
-%{__sed} -i -e '/^VERSION=/ { s/ \(Dr[^ ]*\) (git commit: %s)/\1/; s/ % .*// }' wscript
+%{__sed} -i -e '/^BASEVERSION=/ s/ \(Dr[^ ]*\)/\1/' wscript
 
 # recode to UTF-8
 for f in \
@@ -535,6 +542,8 @@ LDFLAGS="%{rpmldflags}" \
 	--with-libdir=%{_libdir} \
 	--with-mandir=%{_mandir} \
 	--with-perl-archdir=%{perl_vendorarch} \
+	--with-ruby-archdir=%{ruby_vendorarchdir} \
+	--with-ruby-libdir=%{ruby_vendorlibdir} \
 	--without-optionals=python
 
 ./waf build -v
@@ -566,7 +575,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/xmms2-launcher
 %attr(755,root,root) %{_bindir}/xmms2d
 %attr(755,root,root) %{_libdir}/libxmmsclient.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libxmmsclient.so.3
+%attr(755,root,root) %ghost %{_libdir}/libxmmsclient.so.4
 %dir %{_libdir}/%{name}
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_asf.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_asx.so
@@ -574,8 +583,10 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_diskwrite.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_equalizer.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_file.so
+%attr(755,root,root) %{_libdir}/%{name}/libxmms_gme.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_icymetaint.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_id3v2.so
+%attr(755,root,root) %{_libdir}/%{name}/libxmms_karaoke.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_m3u.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_mp4.so
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_normalize.so
@@ -598,6 +609,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/xmms2-launcher.1*
 %{_mandir}/man1/xmms2d.1*
 
+# XXX: -output-airplay (R: openssl)
+%attr(755,root,root) %{_libdir}/%{name}/libxmms_airplay.so
+
 ### clients
 %files client-cli
 %defattr(644,root,root,755)
@@ -690,7 +704,6 @@ rm -rf $RPM_BUILD_ROOT
 %files input-ffmpeg
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_avcodec.so
-%attr(755,root,root) %{_libdir}/%{name}/libxmms_avformat.so
 
 %if %{with flac}
 %files input-flac
@@ -714,12 +727,9 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_sid.so
 
-%if 0
-# disabled in DR2.1
 %files input-speex
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_speex.so
-%endif
 
 %files input-vorbis
 %defattr(644,root,root,755)
@@ -764,9 +774,9 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/%{name}/libxmms_daap.so
 
-%files transport-gnomevfs
+%files transport-gvfs
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/libxmms_gnomevfs.so
+%attr(755,root,root) %{_libdir}/%{name}/libxmms_gvfs.so
 
 %files transport-mms
 %defattr(644,root,root,755)
@@ -779,9 +789,6 @@ rm -rf $RPM_BUILD_ROOT
 %files devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libxmmsclient.so
-%if %{with efl}
-%attr(755,root,root) %{_libdir}/libxmmsclient-ecore.so
-%endif
 %attr(755,root,root) %{_libdir}/libxmmsclient-glib.so
 %attr(755,root,root) %{_libdir}/libxmmsclient++-glib.so
 %{_includedir}/xmms2
@@ -789,7 +796,9 @@ rm -rf $RPM_BUILD_ROOT
 # requires old boost.signal
 #%{_pkgconfigdir}/xmms2-client-cpp.pc
 %{_pkgconfigdir}/xmms2-client-cpp-glib.pc
-# disabled in 0.2DrJekyll
-#%{_pkgconfigdir}/xmms2-client-ecore.pc
 %{_pkgconfigdir}/xmms2-client-glib.pc
 %{_pkgconfigdir}/xmms2-plugin.pc
+%if %{with efl}
+%{_pkgconfigdir}/xmms2-client-ecore.pc
+%attr(755,root,root) %{_libdir}/libxmmsclient-ecore.so
+%endif
diff --git a/xmms2-ffmpeg.patch b/xmms2-ffmpeg.patch
index 1abb191..f993445 100644
--- a/xmms2-ffmpeg.patch
+++ b/xmms2-ffmpeg.patch
@@ -1,102 +1,3 @@
---- xmms2-0.2DrJekyll/src/plugins/avformat/avformat.c.orig	2007-05-20 17:55:40.000000000 +0200
-+++ xmms2-0.2DrJekyll/src/plugins/avformat/avformat.c	2023-05-17 17:39:28.342596542 +0200
-@@ -24,7 +24,7 @@
- #include <glib.h>
- 
- #undef ABS
--#include "avformat.h"
-+#include <libavformat/avformat.h>
- 
- #define AVFORMAT_BUFFER_SIZE 4096
- 
-@@ -33,7 +33,7 @@ typedef struct {
- 
- 	AVFormatContext *fmtctx;
- 	AVCodecContext *codecctx;
--	offset_t offset;
-+	int64_t offset;
- 
- 	guchar buffer[AVFORMAT_BUFFER_SIZE];
- 	guint buffer_size;
-@@ -72,7 +72,7 @@ static void xmms_asf_metahack (xmms_xfor
- 
- int xmms_avformat_read_callback (void *user_data, uint8_t *buffer,
-                                  int length);
--offset_t xmms_avformat_seek_callback (void *user_data, offset_t offset, int whence);
-+int64_t xmms_avformat_seek_callback (void *user_data, int64_t offset, int whence);
- 
- /*
-  * Plugin header
-@@ -124,7 +124,7 @@ xmms_avformat_destroy (xmms_xform_t *xfo
- 	data = xmms_xform_private_data_get (xform);
- 	g_return_if_fail (data);
- 
--	av_close_input_file (data->fmtctx);
-+	avformat_close_input (&data->fmtctx);
- 
- 	g_string_free (data->outbuf, TRUE);
- 	g_free (data);
-@@ -135,7 +135,7 @@ xmms_avformat_init (xmms_xform_t *xform)
- {
- 	xmms_avformat_data_t *data;
- 	AVInputFormat *format;
--	ByteIOContext byteio;
-+	AVIOContext *byteio;
- 	AVCodec *codec;
- 	const gchar *mimetype;
- 	gint temp;
-@@ -172,13 +172,18 @@ xmms_avformat_init (xmms_xform_t *xform)
- 	}
- 
- 	format->flags |= AVFMT_NOFILE;
--	if ((temp = init_put_byte (&byteio, data->buffer, data->buffer_size, 0,
-+	if ((byteio = avio_alloc_context (data->buffer, data->buffer_size, 0,
- 	                           xform, xmms_avformat_read_callback, NULL,
--	                           xmms_avformat_seek_callback)) < 0) {
--		XMMS_DBG ("Could not initialize ByteIOContext structure: %d", temp);
-+	                           xmms_avformat_seek_callback)) == NULL) {
-+		XMMS_DBG ("Could not initialize AVIOContext structure");
- 		goto err;
- 	}
--	if ((temp = av_open_input_stream (&data->fmtctx, &byteio, "", format,
-+	if ((data->fmtctx = avformat_alloc_context()) == NULL) {
-+		XMMS_DBG ("Could not initialize AVFormatContext structure");
-+		goto err;
-+	}
-+	data->fmtctx->pb = byteio;
-+	if ((temp = avformat_open_input (&data->fmtctx, "", format,
- 	                                  NULL)) < 0) {
- 		XMMS_DBG ("Could not open input stream for ASF format: %d", temp);
- 		goto err;
-@@ -230,7 +235,7 @@ xmms_avformat_init (xmms_xform_t *xform)
- 
- err:
- 	if (data->fmtctx) {
--		av_close_input_file (data->fmtctx);
-+		avformat_close_input (data->fmtctx);
- 	}
- 	g_string_free (data->outbuf, TRUE);
- 	g_free (data);
-@@ -501,8 +506,8 @@ xmms_avformat_read_callback (void *user_
- 	return ret;
- }
- 
--offset_t
--xmms_avformat_seek_callback (void *user_data, offset_t offset, int whence)
-+int64_t
-+xmms_avformat_seek_callback (void *user_data, int64_t offset, int whence)
- {
- 	xmms_xform_t *xform;
- 	xmms_avformat_data_t *data;
-@@ -552,7 +557,7 @@ xmms_avformat_get_track (AVFormatContext
- 	for (wma_idx = 0; wma_idx < fmtctx->nb_streams; wma_idx++) {
- 		codec = fmtctx->streams[wma_idx]->codec;
- 
--		if (codec->codec_type == CODEC_TYPE_AUDIO) {
-+		if (codec->codec_type == AVMEDIA_TYPE_AUDIO) {
- 			break;
- 		}
- 	}
 --- xmms2-0.2DrJekyll/src/plugins/avcodec/avcodec.c.orig	2007-05-20 17:55:40.000000000 +0200
 +++ xmms2-0.2DrJekyll/src/plugins/avcodec/avcodec.c	2023-05-18 18:38:52.423864232 +0200
 @@ -24,7 +24,7 @@
diff --git a/xmms2-format.patch b/xmms2-format.patch
new file mode 100644
index 0000000..9ebfc65
--- /dev/null
+++ b/xmms2-format.patch
@@ -0,0 +1,11 @@
+--- xmms2-0.5DrLecter/src/xmms/main.c.orig	2008-06-15 19:31:38.000000000 +0200
++++ xmms2-0.5DrLecter/src/xmms/main.c	2023-05-21 17:23:28.557155999 +0200
+@@ -420,7 +420,7 @@ main (int argc, char **argv)
+ 	}
+ 	if (showhelp) {
+ #if GLIB_CHECK_VERSION(2,14,0)
+-		g_print (g_option_context_get_help (context, TRUE, NULL));
++		g_print ("%s", g_option_context_get_help (context, TRUE, NULL));
+ 		exit (EXIT_SUCCESS);
+ #else
+ 		g_print ("Please use --help or -? for help\n");
diff --git a/xmms2-mdns-launcher-conflict.patch b/xmms2-mdns-launcher-conflict.patch
index 5916986..c2b8377 100644
--- a/xmms2-mdns-launcher-conflict.patch
+++ b/xmms2-mdns-launcher-conflict.patch
@@ -1,9 +1,9 @@
---- xmms2-0.4DrKosmos/src/clients/mdns/dns_sd/wscript.orig	2023-05-20 14:56:24.889693533 +0200
-+++ xmms2-0.4DrKosmos/src/clients/mdns/dns_sd/wscript	2023-05-20 14:59:16.145432428 +0200
+--- xmms2-0.5DrLecter/src/clients/mdns/dns_sd/wscript.orig	2023-05-21 15:05:21.078719788 +0200
++++ xmms2-0.5DrLecter/src/clients/mdns/dns_sd/wscript	2023-05-21 15:06:42.958276208 +0200
 @@ -17,7 +17,6 @@ def build(bld):
    obj = bld.create_obj('subst')
    obj.source = 'xmms2-mdns-launcher.sh.in'
-   obj.dict = {'PRG_PATH' : os.path.join(bld.env_of_name('default')['PREFIX'], 'bin')}
+   obj.dict = {'PRG_PATH' : env['BINDIR']}
 -  Common.install_files('SCRIPTDIR', None, 'xmms2-mdns-launcher.sh', chmod=0755)
  
  def configure(conf):
diff --git a/xmms2-openssl.patch b/xmms2-openssl.patch
new file mode 100644
index 0000000..2086ce5
--- /dev/null
+++ b/xmms2-openssl.patch
@@ -0,0 +1,12 @@
+--- xmms2-0.5DrLecter/src/plugins/airplay/raop_client.c.orig	2008-06-15 19:31:38.000000000 +0200
++++ xmms2-0.5DrLecter/src/plugins/airplay/raop_client.c	2023-05-21 17:06:06.296135745 +0200
+@@ -137,8 +137,7 @@ raop_rsa_encrypt (guchar *text, gint len
+ 	static const guchar exp[] = {0x01, 0x00, 0x01};
+ 
+ 	rsa = RSA_new ();
+-	rsa->n = BN_bin2bn (mod, 256, NULL);
+-	rsa->e = BN_bin2bn (exp, 3, NULL);
++	RSA_set0_key(rsa, BN_bin2bn (mod, 256, NULL), BN_bin2bn (exp, 3, NULL), NULL);
+ 
+ 	size = RSA_public_encrypt (len, text, res, rsa, RSA_PKCS1_OAEP_PADDING);
+ 
diff --git a/xmms2-ruby.patch b/xmms2-ruby.patch
index f00bf46..e856036 100644
--- a/xmms2-ruby.patch
+++ b/xmms2-ruby.patch
@@ -1,27 +1,48 @@
---- xmms2-0.4DrKosmos/src/clients/lib/ruby/wscript.orig	2023-05-20 14:47:32.535910875 +0200
-+++ xmms2-0.4DrKosmos/src/clients/lib/ruby/wscript	2023-05-20 14:55:29.619992955 +0200
-@@ -51,17 +51,17 @@ def configure(conf):
-         return False
-     conf.check_message('ruby version', '> 1.8', True, version)
- 
--    ruby_h = os.popen(ruby + " -rrbconfig -e 'puts File.exist?(Config::CONFIG[\"archdir\"] + \"/ruby.h\")'").read().strip()
-+    ruby_h = os.popen(ruby + " -rrbconfig -e 'puts File.exist?(RbConfig::CONFIG[\"rubyhdrdir\"] + \"/ruby.h\")'").read().strip()
+--- xmms2-0.5DrLecter/src/clients/lib/ruby/wscript.orig	2023-05-21 14:20:34.466607748 +0200
++++ xmms2-0.5DrLecter/src/clients/lib/ruby/wscript	2023-05-21 14:57:59.467778866 +0200
+@@ -56,25 +56,25 @@ def configure(conf):
+     conf.check_message('ruby version', '> 1.8', True, version_str)
+ 
+     if version == [1, 8]: # Ruby 1.8
+-        ruby_h = os.popen(ruby + " -rrbconfig -e 'puts File.exist?(Config::CONFIG[\"archdir\"] + \"/ruby.h\")'").read().strip()
++        ruby_h = os.popen(ruby + " -rrbconfig -e 'puts File.exist?(RbConfig::CONFIG[\"archdir\"] + \"/ruby.h\")'").read().strip()
+     else: # Ruby 1.9
+-        ruby_h = os.popen(ruby + " -rrbconfig -e 'puts File.exist?(Config::CONFIG[\"rubyhdrdir\"] + \"/ruby.h\")'").read().strip()
++        ruby_h = os.popen(ruby + " -rrbconfig -e 'puts File.exist?(RbConfig::CONFIG[\"rubyhdrdir\"] + \"/ruby.h\")'").read().strip()
      if ruby_h != 'true':
          conf.check_message('ruby', 'header file', False)
          return False
      conf.check_message('ruby', 'header file', True)
  
 -    dir = os.popen(ruby + " -rrbconfig -e 'puts \"%s\" % [].fill(Config::CONFIG[\"archdir\"], 0..1)'").read().strip()
-+    dir = os.popen(ruby + " -rrbconfig -e 'puts \"%s\" % [].fill(RbConfig::CONFIG[\"rubyhdrdir\"], 0..1)'").read().strip()
-     conf.env["CPPPATH_ruby"] = dir
++    dir = os.popen(ruby + " -rrbconfig -e 'puts \"%s\" % [].fill(RbConfig::CONFIG[\"archdir\"], 0..1)'").read().strip()
+     conf.env["CPPPATH_ruby"] = [dir]
      conf.env["LINKFLAGS_ruby"] = '-L%s' % dir
  
+-    if version == [1, 9]: # Ruby 1.9
+-        hdir = os.popen(ruby + " -rrbconfig -e 'puts Config::CONFIG[\"rubyhdrdir\"]'").read().strip()
++    if version >= [1, 9]: # Ruby 1.9
++        hdir = os.popen(ruby + " -rrbconfig -e 'puts RbConfig::CONFIG[\"rubyhdrdir\"]'").read().strip()
+         conf.env["CPPPATH_ruby"] += [hdir, os.path.join(hdir, "ruby")]
+-        hdir = os.popen(ruby + " -rrbconfig -e 'puts File.join(Config::CONFIG[\"rubyhdrdir\"], Config::CONFIG[\"arch\"])'").read().strip()
++        hdir = os.popen(ruby + " -rrbconfig -e 'puts File.join(RbConfig::CONFIG[\"rubyhdrdir\"], RbConfig::CONFIG[\"arch\"])'").read().strip()
+         conf.env["CPPPATH_ruby"] += [hdir]
+ 
+-    lib = os.popen(ruby + " -rrbconfig -e 'print Config::CONFIG[\"RUBY_SO_NAME\"]'").read().strip()
++    lib = os.popen(ruby + " -rrbconfig -e 'print RbConfig::CONFIG[\"RUBY_SO_NAME\"]'").read().strip()
+ 
+     # Check for rb_protect_inspect for our inspect methods.
+     test = conf.create(enumerator='function')
+@@ -86,7 +86,7 @@ def configure(conf):
+     if test.run():
+         conf.env['CCDEFINES_ruby'] = ['HAVE_PROTECT_INSPECT']
+ 
 -    ldflags = os.popen(ruby + " -rrbconfig -e 'print Config::CONFIG[\"LDSHARED\"]'").read().strip()
 +    ldflags = os.popen(ruby + " -rrbconfig -e 'print RbConfig::CONFIG[\"LDSHARED\"]'").read().strip()
      # ok this is really stupid, but the command and flags are combined.
      # so we try to find the first argument...
      flags = ldflags.split()
-@@ -69,26 +69,26 @@ def configure(conf):
+@@ -94,21 +94,21 @@ def configure(conf):
          flags = flags[1:]
      conf.env["LINKFLAGS_ruby"] += " "+" ".join(flags)
  
@@ -38,16 +59,19 @@
  
      if not Params.g_options.rubyarchdir:
 -        conf.env["ARCHDIR_ruby"] = os.popen(ruby + " -rrbconfig -e 'print Config::CONFIG[\"sitearchdir\"]'").read().strip()
-+        conf.env["ARCHDIR_ruby"] = os.popen(ruby + " -rrbconfig -e 'print RbConfig::CONFIG[\"vendorarchdir\"]'").read().strip()
++        conf.env["ARCHDIR_ruby"] = os.popen(ruby + " -rrbconfig -e 'print RbConfig::CONFIG[\"sitearchdir\"]'").read().strip()
      else:
          conf.env["ARCHDIR_ruby"] = Params.g_options.rubyarchdir
  
      if not Params.g_options.rubylibdir:
 -        conf.env["LIBDIR_ruby"] = os.popen(ruby + " -rrbconfig -e 'print Config::CONFIG[\"sitelibdir\"]'").read().strip()
-+        conf.env["LIBDIR_ruby"] = os.popen(ruby + " -rrbconfig -e 'print RbConfig::CONFIG[\"vendorlibdir\"]'").read().strip()
++        conf.env["LIBDIR_ruby"] = os.popen(ruby + " -rrbconfig -e 'print RbConfig::CONFIG[\"sitelibdir\"]'").read().strip()
      else:
          conf.env["LIBDIR_ruby"] = Params.g_options.rubylibdir
  
+@@ -123,7 +123,7 @@ def configure(conf):
+                 + 'ruby bindings to be installed to ' + conf.env['LIBDIR_ruby'])
+ 
      conf.env["rubyext_PREFIX"] = ''
 -    conf.env["rubyext_SUFFIX"] = '.' + os.popen(ruby + " -rrbconfig -e 'print Config::CONFIG[\"DLEXT\"]'").read().strip()
 +    conf.env["rubyext_SUFFIX"] = '.' + os.popen(ruby + " -rrbconfig -e 'print RbConfig::CONFIG[\"DLEXT\"]'").read().strip()
@@ -56,17 +80,6 @@
  
 --- xmms2-0.2DrJekyll/src/clients/lib/ruby/rb_xmmsclient.c.orig	2023-05-14 19:24:29.670968613 +0200
 +++ xmms2-0.2DrJekyll/src/clients/lib/ruby/rb_xmmsclient.c	2023-05-14 19:29:16.606080819 +0200
-@@ -73,8 +73,8 @@
- 	StringValue (arg1); \
- \
- 	res = xmmsc_##name (xmms->real, \
--	                    (unsigned char *) RSTRING (arg1)->ptr, \
--	                    RSTRING (arg1)->len); \
-+	                    (unsigned char *) RSTRING_PTR (arg1), \
-+	                    RSTRING_LEN (arg1)); \
- 	METHOD_HANDLER_FOOTER
- 
- static VALUE cPlaylist;
 @@ -1371,10 +1371,10 @@ parse_string_array (VALUE value)
  	if (!NIL_P (rb_check_array_type (value))) {
  		struct RArray *ary = RARRAY (value);
@@ -81,34 +94,6 @@
  
  		ret[i] = NULL;
  	} else {
---- xmms2-0.2DrGonzo/src/clients/lib/ruby/rb_result.c.orig	2006-09-26 15:50:20.000000000 +0200
-+++ xmms2-0.2DrGonzo/src/clients/lib/ruby/rb_result.c	2023-05-13 18:40:37.719962752 +0200
-@@ -417,6 +417,7 @@ c_propdict_init (VALUE self, VALUE resul
- 	return self;
- }
- 
-+#ifdef HAVE_RB_PROTECT_INSPECT
- static VALUE
- propdict_inspect_cb (VALUE args, VALUE s)
- {
-@@ -459,6 +460,7 @@ c_propdict_inspect (VALUE self)
- {
- 	return rb_protect_inspect (propdict_inspect, self, 0);
- }
-+#endif
- 
- static VALUE
- c_propdict_aref (VALUE self, VALUE key)
-@@ -629,7 +631,9 @@ Init_Result (VALUE mXmms)
- 	cPropDict = rb_define_class_under (mXmms, "PropDict", rb_cObject);
- 
- 	rb_define_method (cPropDict, "initialize", c_propdict_init, 1);
-+#ifdef HAVE_RB_PROTECT_INSPECT
- 	rb_define_method (cPropDict, "inspect", c_propdict_inspect, 0);
-+#endif
- 
- 	rb_define_method (cPropDict, "[]", c_propdict_aref, 1);
- 	rb_define_method (cPropDict, "has_key?", c_propdict_has_key, 1);
 --- xmms2-0.2DrJekyll/src/clients/lib/ruby/rb_playlist.c.orig	2007-05-20 17:55:40.000000000 +0200
 +++ xmms2-0.2DrJekyll/src/clients/lib/ruby/rb_playlist.c	2023-05-18 20:59:44.461066374 +0200
 @@ -301,10 +301,10 @@ c_sort (VALUE self, VALUE props)
@@ -125,9 +110,9 @@
  
  		cprops[i] = NULL;
  	} else if (!NIL_P (rb_check_string_type (props))) {
---- xmms2-0.2DrJekyll/src/clients/lib/ruby/rb_collection.c.orig	2007-05-20 17:55:40.000000000 +0200
-+++ xmms2-0.2DrJekyll/src/clients/lib/ruby/rb_collection.c	2023-05-18 21:13:17.603327871 +0200
-@@ -220,10 +220,10 @@ c_coll_idlist_set (VALUE self, VALUE ids
+--- xmms2-0.5DrLecter/src/clients/lib/ruby/rb_collection.c.orig	2008-06-15 19:31:38.000000000 +0200
++++ xmms2-0.5DrLecter/src/clients/lib/ruby/rb_collection.c	2023-05-21 15:05:06.452132360 +0200
+@@ -241,10 +241,10 @@ c_coll_idlist_set (VALUE self, VALUE ids
  	COLL_METHOD_HANDLER_HEADER
  
  	rb_ary = RARRAY (ids);
@@ -141,17 +126,14 @@
  
  	ary[i] = 0;
  
-@@ -263,10 +263,10 @@ attrs_inspect_cb (VALUE args, VALUE s)
+@@ -285,8 +285,8 @@ attrs_inspect_cb (VALUE args, VALUE s)
  {
  	VALUE key, value;
  
 -	key = RARRAY (args)->ptr[0];
 -	value = RARRAY (args)->ptr[1];
-+	key = RARRAY_PTR(args)[0];
-+	value = RARRAY_PTR(args)[1];
++	key = RARRAY_PTR (args)[0];
++	value = RARRAY_PTR (args)[1];
  
--	if (RSTRING (s)->len > 1)
-+	if (RSTRING_LEN (s) > 1)
+ 	if (RSTRING_LEN (s) > 1)
  		rb_str_buf_cat2 (s, ", ");
- 
- 	rb_str_buf_append (s, rb_inspect (key));
diff --git a/xmms2-version.patch b/xmms2-version.patch
new file mode 100644
index 0000000..b8cf1a6
--- /dev/null
+++ b/xmms2-version.patch
@@ -0,0 +1,11 @@
+--- xmms2-0.5DrLecter/wscript.orig	2023-05-21 17:42:46.300883963 +0200
++++ xmms2-0.5DrLecter/wscript	2023-05-21 18:02:09.441249357 +0200
+@@ -259,7 +259,7 @@ def configure(conf):
+         if changed:
+             dirty="-dirty"
+         conf.check_message("uncommitted changes", "", bool(changed))
+-        conf.env["VERSION"] = BASEVERSION + " (git commit: %s%s)" % (nam, dirty)
++        conf.env["VERSION"] = BASEVERSION
+ 
+     conf.env['XMMS_PKGCONF_FILES'] = []
+     conf.env['XMMS_OUTPUT_PLUGINS'] = [(-1, "NONE")]
diff --git a/xmms2-waf.patch b/xmms2-waf.patch
index d766008..cd626a3 100644
--- a/xmms2-waf.patch
+++ b/xmms2-waf.patch
@@ -9,19 +9,28 @@
      test.headers = ['math.h']
      test.libs = ['m']
      test.mandatory = 1
---- xmms2-0.4DrKosmos/wscript.orig	2007-11-15 19:25:07.000000000 +0100
-+++ xmms2-0.4DrKosmos/wscript	2023-05-20 15:03:03.017536689 +0200
-@@ -244,8 +244,6 @@ def configure(conf):
-         Params.g_platform = Params.g_options.target_platform
+--- xmms2-0.5DrLecter/wscript.orig	2023-05-21 15:07:01.128177773 +0200
++++ xmms2-0.5DrLecter/wscript	2023-05-21 15:45:58.645514355 +0200
+@@ -261,8 +261,6 @@ def configure(conf):
+         conf.check_message("uncommitted changes", "", bool(changed))
+         conf.env["VERSION"] = BASEVERSION + " (git commit: %s%s)" % (nam, dirty)
  
-     conf.env["VERSION"] = VERSION
 -    conf.env["CCFLAGS"] = Utils.to_list(conf.env["CCFLAGS"]) + ['-g', '-O0']
 -    conf.env["CXXFLAGS"] = Utils.to_list(conf.env["CXXFLAGS"]) + ['-g', '-O0']
      conf.env['XMMS_PKGCONF_FILES'] = []
      conf.env['XMMS_OUTPUT_PLUGINS'] = [(-1, "NONE")]
  
---- xmms2-0.2DrJekyll/waftools/pkgconfig.py.orig	2007-05-20 17:55:40.000000000 +0200
-+++ xmms2-0.2DrJekyll/waftools/pkgconfig.py	2023-05-19 17:20:32.982353210 +0200
+@@ -282,7 +282,7 @@ def configure(conf):
+         conf.env['PKGCONFIGDIR'] = Params.g_options.pkgconfigdir
+         print conf.env['PKGCONFIGDIR']
+     else:
+-        conf.env['PKGCONFIGDIR'] = os.path.join(conf.env["PREFIX"], "lib", "pkgconfig")
++        conf.env['PKGCONFIGDIR'] = os.path.join(conf.env["LIBDIR"], "pkgconfig")
+ 
+     if Params.g_options.config_prefix:
+         for dir in Params.g_options.config_prefix:
+--- xmms2-0.5DrLecter/waftools/pkgconfig.py.orig	2023-05-21 15:46:27.778689861 +0200
++++ xmms2-0.5DrLecter/waftools/pkgconfig.py	2023-05-21 16:20:48.307527018 +0200
 @@ -20,7 +20,7 @@ class pkgcobj(copyobj):
              p = self.env["PREFIX"]
              val["PREFIX"] = p
@@ -29,10 +38,10 @@
 -            val["LIBDIR"] = os.path.join("${prefix}", "lib")
 +            val["LIBDIR"] = self.env["LIBDIR"]
              val["INCLUDEDIR"] = os.path.join("${prefix}", "include", "xmms2")
-             val["VERSION"] = self.version
+             val["VERSION"] = self.env["VERSION"]
  
---- xmms2-0.4DrKosmos/src/include/xmms/wscript.orig	2023-05-20 18:07:08.337699055 +0200
-+++ xmms2-0.4DrKosmos/src/include/xmms/wscript	2023-05-20 19:51:04.783913328 +0200
+--- xmms2-0.5DrLecter/src/include/xmms/wscript.orig	2023-05-21 15:46:27.778689861 +0200
++++ xmms2-0.5DrLecter/src/include/xmms/wscript	2023-05-21 16:22:50.510198323 +0200
 @@ -12,8 +12,8 @@ def configure(conf):
  
      defs = {}
@@ -41,15 +50,6 @@
 -                                     'lib', 'xmms2')
 +    defs['PKGLIBDIR'] = os.path.join(conf.env['LIBDIR'],
 +                                     'xmms2')
-     defs['BINDIR'] = os.path.join(conf.env['PREFIX'],
-                                   'bin')
+     defs['BINDIR']    = conf.env['BINDIR']
      defs['SHAREDDIR'] = os.path.join(conf.env['PREFIX'],
-@@ -38,7 +38,7 @@ def configure(conf):
- 
-     conf.env['XMMS_DEFS'] = defs
-     conf.env['PLUGINDIR'] = defs['PKGLIBDIR']
--    conf.env['PKGCONFIGDIR'] = os.path.join(conf.env["PREFIX"], "lib", "pkgconfig")
-+    conf.env['PKGCONFIGDIR'] = os.path.join(conf.env["LIBDIR"], "pkgconfig")
- 
-     # The plugin path in Windows should be relative, not absolute
-     if Params.g_platform == 'win32':
+                                      'share', 'xmms2')
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/xmms2.git/commitdiff/3a1c24aa9ab274eea6e74e4b9cf63b941886b95b



More information about the pld-cvs-commit mailing list