jreznik pushed to arts (epel7). "- cleanup gslconfig.h/multilib bits, -ia64, +sparc64/sparc (..more)"

notifications at fedoraproject.org notifications at fedoraproject.org
Thu Apr 2 15:10:06 UTC 2015


>From 277dd4e570959a12ab6699a2603166e68ee3d0bc Mon Sep 17 00:00:00 2001
From: Rex Dieter <rdieter at fedoraproject.org>
Date: Thu, 14 Jun 2007 16:46:35 +0000
Subject: - cleanup gslconfig.h/multilib bits, -ia64, +sparc64/sparc 1.5.7-2 -
 (re)add (experimental) libtool patches 1.5.7-1.fc7 - 1.5.7


diff --git a/.cvsignore b/.cvsignore
index faec487..8968569 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -12,3 +12,4 @@ arts-1.5.2.tar.bz2
 arts-1.5.3.tar.bz2
 arts-1.5.4.tar.bz2
 arts-1.5.6.tar.bz2
+arts-1.5.7.tar.bz2
diff --git a/arts-1.5.4-dlopenext.patch b/arts-1.5.4-dlopenext.patch
new file mode 100644
index 0000000..9bc4291
--- /dev/null
+++ b/arts-1.5.4-dlopenext.patch
@@ -0,0 +1,54 @@
+Index: arts-1.5.4/soundserver/FileInputStream.mcopclass
+===================================================================
+--- arts-1.5.4.orig/soundserver/FileInputStream.mcopclass
++++ arts-1.5.4/soundserver/FileInputStream.mcopclass
+@@ -2,4 +2,4 @@ Interface=Arts::FileInputStream,Arts::In
+ Author="Stefan Westerfeld <stefan at space.twc.de>"
+ URL="http://www.arts-project.org"
+ Language=C++
+-Library=libkmedia2.la
++Library=libkmedia2
+Index: arts-1.5.4/soundserver/GSLPlayObject.mcopclass
+===================================================================
+--- arts-1.5.4.orig/soundserver/GSLPlayObject.mcopclass
++++ arts-1.5.4/soundserver/GSLPlayObject.mcopclass
+@@ -3,5 +3,5 @@ Author="Hans Meine <hans_meine at gmx.net>"
+ URL="http://www.arts-project.org/"
+ Extension=wav,mp3,ogg
+ Language=C++
+-Library=libartsgslplayobject.la
++Library=libartsgslplayobject
+ MimeType=audio/wav,audio/x-wav,audio/x-mp3,audio/x-mp1,audio/x-mp2,audio/vorbis,application/ogg
+Index: arts-1.5.4/soundserver/WavPlayObject.mcopclass
+===================================================================
+--- arts-1.5.4.orig/soundserver/WavPlayObject.mcopclass
++++ arts-1.5.4/soundserver/WavPlayObject.mcopclass
+@@ -3,5 +3,5 @@ Author="Stefan Westerfeld <stefan at space.
+ URL="http://www.arts-project.org"
+ Extension=wav
+ Language=C++
+-Library=libartswavplayobject.la
++Library=libartswavplayobject
+ MimeType=audio/wav,audio/x-wav
+Index: arts-1.5.4/mcop/extensionloader.cc
+===================================================================
+--- arts-1.5.4.orig/mcop/extensionloader.cc
++++ arts-1.5.4/mcop/extensionloader.cc
+@@ -57,7 +57,7 @@ ExtensionLoader::ExtensionLoader(const s
+ 	StartupManager::setExtensionLoader(this);
+ 
+     lt_dlinit();
+-	handle = lt_dlopen(dlfilename.c_str());
++	handle = lt_dlopenext(dlfilename.c_str());
+ 
+ 	StartupManager::setExtensionLoader(0);
+ 
+Index: arts-1.5.4/x11/X11GlobalComm.mcopclass
+===================================================================
+--- arts-1.5.4.orig/x11/X11GlobalComm.mcopclass
++++ arts-1.5.4/x11/X11GlobalComm.mcopclass
+@@ -1,3 +1,3 @@
+ Language=C++
+-Library=libx11globalcomm.la
++Library=libx11globalcomm
+ Interface=Arts::Object,Arts::GlobalComm,Arts::X11GlobalComm
diff --git a/arts-1.5.5-kde#139445.patch b/arts-1.5.5-kde#139445.patch
new file mode 100644
index 0000000..5b3f0fe
--- /dev/null
+++ b/arts-1.5.5-kde#139445.patch
@@ -0,0 +1,84 @@
+--- arts-1.5.5/mcop/Makefile.am.139445	2005-09-10 03:13:32.000000000 -0500
++++ arts-1.5.5/mcop/Makefile.am	2007-01-12 08:11:10.000000000 -0600
+@@ -16,7 +16,9 @@
+ 	 trader_impl.cc dynamicrequest.cc anyref.cc loopback.cc \
+ 	 delayedreturn.cc thread.cc dynamicskeleton.cc
+ 
++CXXFLAGS += -fexceptions
+ libmcop_la_LIBADD = $(LIBSOCKET) $(GLIB_LIBADD) $(top_builddir)/libltdl/libltdlc.la
++libmcop_la_LIBADD += -lboost_filesystem -lboost_regex
+ libmcop_la_LDFLAGS = -no-undefined -version-info 1:0 $(GLIB_LDFLAGS) $(all_libraries)
+ 
+ artsincludedir = $(includedir)/arts
+--- arts-1.5.5/mcop/extensionloader.cc.139445	2005-09-10 03:13:32.000000000 -0500
++++ arts-1.5.5/mcop/extensionloader.cc	2007-01-12 09:54:57.000000000 -0600
+@@ -28,26 +28,62 @@
+ #include <unistd.h>
+ #include <assert.h>
+ 
++#include <boost/filesystem/exception.hpp>
++#include <boost/filesystem/operations.hpp>
++#include <boost/regex.hpp>
++
+ using namespace std;
+ using namespace Arts;
+ 
++static std::string makeLibraryName( std::string const& dir, std::string const& name )
++{
++	try
++	{
++		// std::string p = dir + "/" + name;
++		boost::regex p_regex;
++		p_regex.assign("(.+)\\.la$");
++		std::string p = dir + "/" + boost::regex_replace( name, p_regex, "$1", boost::match_default);
++
++		if ( boost::filesystem::exists( p + ".so" ) )
++			return ( p + ".so" );
++		boost::regex re( p + ".*so\\..+", boost::regex::extended );
++		for ( boost::filesystem::directory_iterator i( dir );
++			i != boost::filesystem::directory_iterator(); ++i )
++		{
++			boost::smatch m;
++			if ( boost::regex_match( i->string(), m, re ) )
++				return m.str();
++		}
++		return ( p + ".la" );
++	}
++	catch ( boost::filesystem::filesystem_error const& )
++	{
++	}
++	return std::string();
++}
++
+ ExtensionLoader::ExtensionLoader(const string& filename) :handle(0)
+ {
+ 	string dlfilename;
+-
+ 	assert(filename.size());
+-	if(filename[0] == '/')
+-		dlfilename = filename;
+-	else
++	try
++	{
++		boost::filesystem::path p( filename );
++		if ( p.has_root_directory() )
++			dlfilename = makeLibraryName( p.branch_path().string(), p.leaf() );
++	}
++	catch ( boost::filesystem::filesystem_error const& )
++	{
++	}
++	if ( dlfilename.empty() )
+ 	{
+ 		const vector<string> *path = MCOPUtils::extensionPath();
+ 
+ 		vector<string>::const_iterator pi;
+ 		for(pi = path->begin(); pi != path->end(); pi++)
+ 		{
+-			dlfilename = *pi + "/" + filename;
+-
+-			if(access(dlfilename.c_str(),F_OK) == 0)
++			dlfilename = makeLibraryName( *pi, filename );
++			if ( !dlfilename.empty() && ( access( dlfilename.c_str(), F_OK ) == 0 ) )
+ 				break;
+ 		}
+ 	}
diff --git a/arts-1.5.7-qtmcop-notifications-on-demand.patch b/arts-1.5.7-qtmcop-notifications-on-demand.patch
new file mode 100644
index 0000000..9f409e4
--- /dev/null
+++ b/arts-1.5.7-qtmcop-notifications-on-demand.patch
@@ -0,0 +1,121 @@
+Index: mcop/notification.h
+===================================================================
+--- mcop/notification.h	(Revision 667003)
++++ mcop/notification.h	(Revision 667004)
+@@ -72,10 +72,7 @@
+ 	{
+ 		return instance;
+ 	}
+-	inline void send(Notification wm)
+-	{
+-		todo.push(wm);
+-	}
++	void send(Notification wm);
+ 	inline bool pending()
+ 	{
+ 		return !todo.empty();
+Index: mcop/iomanager.cc
+===================================================================
+--- mcop/iomanager.cc	(Revision 667003)
++++ mcop/iomanager.cc	(Revision 667004)
+@@ -409,9 +409,15 @@
+ 
+ void StdIOManager::addTimer(int milliseconds, TimeNotify *notify)
+ {
+-	timeList.push_back(new TimeWatcher(milliseconds,notify));
+-	timeListChanged = true;
+-	Dispatcher::wakeUp();
++	if (milliseconds == -1 && notify == 0) {
++		// HACK: in order to not add a virtual function to IOManager we're calling addTimer with
++		// magic values. This call tells the ioManager that notifications are pending and
++		// NotificationManager::run() should get called soon.
++	} else {
++		timeList.push_back(new TimeWatcher(milliseconds,notify));
++		timeListChanged = true;
++		Dispatcher::wakeUp();
++	}
+ }
+ 
+ void StdIOManager::removeTimer(TimeNotify *notify)
+Index: mcop/notification.cc
+===================================================================
+--- mcop/notification.cc	(Revision 667003)
++++ mcop/notification.cc	(Revision 667004)
+@@ -22,6 +22,7 @@
+ 
+ #include "notification.h"
+ #include "debug.h"
++#include "dispatcher.h"
+ 
+ using namespace Arts;
+ 
+@@ -41,6 +42,17 @@
+ 	instance = 0;
+ }
+ 
++void NotificationManager::send(Notification wm)
++{
++	if (todo.empty()) {
++		// HACK: in order to not add a virtual function to IOManager we're calling addTimer with
++		// magic values. This call tells the ioManager that notifications are pending and
++		// NotificationManager::run() should get called soon.
++		Arts::Dispatcher::the()->ioManager()->addTimer(-1, 0);
++	}
++	todo.push(wm);
++}
++
+ bool NotificationManager::run()
+ {
+ 	if(todo.empty()) return false;
+Index: qtmcop/qiomanager.cc
+===================================================================
+--- qtmcop/qiomanager.cc	(Revision 667003)
++++ qtmcop/qiomanager.cc	(Revision 667004)
+@@ -102,30 +102,13 @@
+ 
+ class HandleNotifications : public TimeNotify {
+ public:
+-	HandleNotifications()
+-	{
+-		Arts::Dispatcher::the()->ioManager()->addTimer(50, this);
+-	}
+ 	void notifyTime()
+ 	{
++		Arts::Dispatcher::the()->ioManager()->removeTimer(this);
+ 		NotificationManager::the()->run();
++		delete this;
+ 	}
+-	virtual ~HandleNotifications()
+-	{
+-		Arts::Dispatcher::the()->ioManager()->removeTimer(this);
+-	}
+ };
+-
+-class HandleNotificationsStartup :public StartupClass
+-{
+-public:
+-	void startup()	{ h = new HandleNotifications(); }
+-	void shutdown()	{ delete h; }
+-private:
+-	HandleNotifications *h;
+-};
+-static HandleNotificationsStartup handleNotifications;
+-
+ }
+ 
+ /*
+@@ -237,6 +220,14 @@
+ 
+ void QIOManager::addTimer(int milliseconds, TimeNotify *notify)
+ {
++	if (milliseconds == -1 && notify == 0)
++	{
++		// HACK: in order to not add a virtual function to IOManager we're calling addTimer with
++		// magic values. This call tells the ioManager that notifications are pending and
++		// NotificationManager::run() should get called soon.
++		notify = new HandleNotifications();
++		milliseconds = 0;
++	}
+ 	timeList.push_back(new QTimeWatch(milliseconds,notify));
+ }
+ 
diff --git a/arts.spec b/arts.spec
index 08ce9d2..cef0183 100644
--- a/arts.spec
+++ b/arts.spec
@@ -1,15 +1,15 @@
-%define multilib_arches %{ix86} ia64 ppc ppc64 s390 s390x x86_64
+%define multilib_arches i386 x86_64 ppc ppc64 s390 s390x sparc sparc64
 
 %define final 1 
-%define qt_version 3.3.7
+%define qt_version 3.3.8
 %define make_cvs 1
 
-Name: arts
+Name:    arts
 Summary: aRts (analog realtime synthesizer) - the KDE sound system 
-Group: System Environment/Daemons
-Epoch: 8
-Version: 1.5.6
-Release: 4%{?dist}
+Group:   System Environment/Daemons
+Epoch:   8
+Version: 1.5.7
+Release: 3%{?dist}
 
 License: LGPL
 Url: http://www.kde.org
@@ -23,11 +23,18 @@ Patch5: arts-1.3.1-alsa.patch
 Patch6: arts-1.4.0-glibc.patch
 Patch7: arts-1.5.0-check_tmp_dir.patch
 Patch8: arts-1.5.2-multilib.patch
-## Consider for inclusion
-# http://vir.homelinux.org/blog/index.php?/archives/41-PowerTOP-and-aRts.html
-Patch9: http://vir.homelinux.org/qtmcop-notifications-on-demand.patch
 
-BuildRequires: qt-devel >= 1:%{qt_version}
+# upstream patches
+Patch100: arts-1.5.7-qtmcop-notifications-on-demand.patch
+Patch101: arts-1.5.4-dlopenext.patch
+Patch93359: kde-3.5-libtool-shlibext.patch
+# http://bugs.kde.org/139445
+# http://cvs.pld-linux.org/cgi-bin/cvsweb/SOURCES/arts-extension_loader.patch?rev=1.2
+#Patch139445: arts-extension_loader.patch
+Patch139445: arts-1.5.5-kde#139445.patch
+BuildRequires: boost-devel
+
+BuildRequires: qt-devel 
 ## Shouldn't be necessary, but some folks won't upgrade, unless we stiff-arm them.  (-;
 #global qt_ver %(pkg-config qt-mt --modversion 2>/dev/null || echo 3.3)
 #Requires: qt >= 1:%{qt_ver}
@@ -58,14 +65,13 @@ By connecting all those small modules together, you can perform complex
 tasks like simulating a mixer, generating an instrument or things like
 playing a wave file with some effects.
 
-
 %package devel
 Group: Development/Libraries
 Summary: Development files for the aRts sound server
 Requires: %{name} = %{epoch}:%{version}-%{release}
 Requires: qt-devel
 Requires: pkgconfig
-## those below can/should be omitted from future builds -- Rex
+## those below can/should be omitted from future(f8?) builds -- Rex
 Requires: esound-devel
 Requires: glib2-devel
 Requires: libvorbis-devel
@@ -75,6 +81,7 @@ Requires: alsa-lib-devel
 Install arts-devel if you intend to write applications using arts (such as
 KDE applications using sound).
 
+
 %prep
 %setup -q
 %patch1 -p1 -b .debug
@@ -84,6 +91,13 @@ KDE applications using sound).
 %patch7 -p1 -b .check_tmp_dir
 %patch8 -p1 -b .multilib
 
+# upstream patches
+%patch100 -p0 -b .qtmcop-notifications-on-demand
+%patch93359 -p1 -b .libtool-shlibext
+# experimental libtool patches
+%patch101 -p1 -b .dlopenext
+%patch139445 -p1 -b .kde#139445
+
 %if %{make_cvs}
   make -f admin/Makefile.common cvs
 %endif
@@ -146,10 +160,12 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" | xargs \
 %clean
 rm -rf  %{buildroot}
 
+
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
 
+
 %files
 %defattr(-,root,root)
 %dir %{_libdir}/mcop
@@ -178,6 +194,15 @@ rm -rf  %{buildroot}
 
 
 %changelog
+* Wed Jun 14 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 6:1.5.7-3
+- cleanup gslconfig.h/multilib bits, -ia64, +sparc64/sparc
+
+* Mon Jun 11 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 6:1.5.7-2
+- (re)add (experimental) libtool patches
+
+* Mon Jun 04 2007 Than Ngo <than at redhat.com> - 6:1.5.7-1.fc7
+- 1.5.7
+
 * Tue May 15 2007 Rex Dieter <rdieter[AT]fedoraproject.org> - 6:1.5.6-4
 - respin with higher release (for EVR upgrade paths)
 
diff --git a/gslconfig-wrapper.h b/gslconfig-wrapper.h
index 585ada2..b20ee53 100644
--- a/gslconfig-wrapper.h
+++ b/gslconfig-wrapper.h
@@ -3,10 +3,10 @@
  *
  * DO NOT INCLUDE THE NEW FILE DIRECTLY -- ALWAYS INCLUDE THIS ONE INSTEAD. */
 
-#if defined(__i386__)
+#if defined(__x86_64__)
+#include "gslconfig-x86_64.h"
+#elif defined(__i386__)
 #include "gslconfig-i386.h"
-#elif defined(__ia64__)
-#include "gslconfig-ia64.h"
 #elif defined(__powerpc64__)
 #include "gslconfig-ppc64.h"
 #elif defined(__powerpc__)
@@ -15,8 +15,10 @@
 #include "gslconfig-s390x.h"
 #elif defined(__s390__)
 #include "gslconfig-s390.h"
-#elif defined(__x86_64__)
-#include "gslconfig-x86_64.h"
+#elif defined(__sparc64__)
+#include "gslconfig-sparc64.h"
+#elif defined(__sparc__)
+#include "gslconfig-sparc.h"
 #else
 #error "This arts-devel package does not work your architecture?"
 #endif
diff --git a/kde-3.5-libtool-shlibext.patch b/kde-3.5-libtool-shlibext.patch
new file mode 100644
index 0000000..3c482b8
--- /dev/null
+++ b/kde-3.5-libtool-shlibext.patch
@@ -0,0 +1,72 @@
+Index: arts-1.5.4/acinclude.m4
+===================================================================
+--- arts-1.5.4.orig/acinclude.m4
++++ arts-1.5.4/acinclude.m4
+@@ -12040,28 +12040,12 @@ fi
+ ])# AC_LTDL_SYS_DLOPEN_DEPLIBS
+ 
+ AC_DEFUN([AC_LTDL_SHLIBEXT],
+-[AC_REQUIRE([AC_LTDL_SNARF_CONFIG])dnl
++[AC_REQUIRE([AC_LIBTOOL_SYS_DYNAMIC_LINKER])dnl
+ AC_CACHE_CHECK([which extension is used for shared libraries],
+   libltdl_cv_shlibext, [dnl
+-(
+-  last=
+-	case "$host_os" in
+-    cygwin* | mingw*) 
+-      last=".dll" 
+-      ;;
+-    *)
+-      for spec in $library_names_spec; do
+-        last="$spec"
+-      done
+-      ;;
+-  esac
+-changequote(, )
+-  echo "$last" | sed 's/\[.*\]//;s/^[^.]*//;s/\$.*$//;s/\.$//' > conftest
+-changequote([, ])
+-)
+-libltdl_cv_shlibext=`cat conftest`
+-rm -f conftest
+-])
++module=yes
++eval libltdl_cv_shlibext=$shrext
++  ])
+ if test -n "$libltdl_cv_shlibext"; then
+   AC_DEFINE_UNQUOTED(LTDL_SHLIB_EXT, "$libltdl_cv_shlibext",
+     [Define to the extension used for shared libraries, say, ".so". ])
+Index: arts-1.5.4/libltdl/ltdl.m4
+===================================================================
+--- arts-1.5.4.orig/libltdl/ltdl.m4
++++ arts-1.5.4/libltdl/ltdl.m4
+@@ -118,27 +118,11 @@ fi
+ ])# AC_LTDL_SYS_DLOPEN_DEPLIBS
+ 
+ AC_DEFUN([AC_LTDL_SHLIBEXT],
+-[AC_REQUIRE([AC_LTDL_SNARF_CONFIG])dnl
++[AC_REQUIRE([AC_LIBTOOL_SYS_DYNAMIC_LINKER])dnl
+ AC_CACHE_CHECK([which extension is used for shared libraries],
+   libltdl_cv_shlibext, [dnl
+-(
+-  last=
+-	case "$host_os" in
+-    cygwin* | mingw*) 
+-      last=".dll" 
+-      ;;
+-    *)
+-      for spec in $library_names_spec; do
+-        last="$spec"
+-      done
+-      ;;
+-  esac
+-changequote(, )
+-  echo "$last" | sed 's/\[.*\]//;s/^[^.]*//;s/\$.*$//;s/\.$//' > conftest
+-changequote([, ])
+-)
+-libltdl_cv_shlibext=`cat conftest`
+-rm -f conftest
++module=yes
++eval libltdl_cv_shlibext=$shrext
+ ])
+ if test -n "$libltdl_cv_shlibext"; then
+   AC_DEFINE_UNQUOTED(LTDL_SHLIB_EXT, "$libltdl_cv_shlibext",
diff --git a/sources b/sources
index 59023e1..f8e33c9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-e986393a5827499bbad04a00b797add0  arts-1.5.6.tar.bz2
+28ac10541e5d8daf9009f6af1f7857af  arts-1.5.7.tar.bz2
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/arts.git/commit/?h=epel7&id=277dd4e570959a12ab6699a2603166e68ee3d0bc


More information about the scm-commits mailing list