Hello community,

here is the log from the commit of package xmms2 for openSUSE:Factory checked 
in at 2011-10-27 14:42:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xmms2 (Old)
 and      /work/SRC/openSUSE:Factory/.xmms2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xmms2", Maintainer is ""

Changes:
--------
--- /work/SRC/openSUSE:Factory/xmms2/xmms2.changes      2011-09-23 
12:51:58.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xmms2.new/xmms2.changes 2011-10-28 
15:30:44.000000000 +0200
@@ -1,0 +2,5 @@
+Thu Oct 27 11:03:55 UTC 2011 - [email protected]
+
+- Disable parallel build, it randomly hangs 
+
+-------------------------------------------------------------------

New:
----
  xmms2-disable-parallel-build.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xmms2.spec ++++++
--- /var/tmp/diff_new_pack.qRwIYl/_old  2011-10-28 15:30:59.000000000 +0200
+++ /var/tmp/diff_new_pack.qRwIYl/_new  2011-10-28 15:30:59.000000000 +0200
@@ -1,7 +1,7 @@
 #
-# spec file for package xmms2 (Version 0.7)
+# spec file for package xmms2
 #
-# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -64,6 +64,8 @@
 Patch13:        xmms2-pkgconfig.patch
 Patch14:        %name-0.7-fixwarnings.patch
 Patch15:        %name-0.7-ld_fix.patch
+# PATCH-FIX-OPENSUSE xmms2-disable-parallel-build.patch [email protected] -- 
Disable parallel build
+Patch16:        %name-disable-parallel-build.patch
 Url:            http://wiki.xmms2.xmms.se/
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Requires:       %name-plugin-base
@@ -809,6 +811,8 @@
 %patch13 -p1
 %patch14 -p1
 %patch15 -p1
+%patch16
+
 # This header doesn't need to be executable
 chmod -x src/include/xmmsclient/xmmsclient++/dict.h
 # Clean up paths in wafadmin

++++++ xmms2-disable-parallel-build.patch ++++++
--- wafadmin/Runner.py  2010-02-19 18:43:54.000000000 +0100
+++ wafadmin/Runner.py.fixed    2011-10-27 12:55:49.665131634 +0200
@@ -217,3 +217,95 @@
                #print loop
                assert (self.count == 0 or self.stop)
 
+class Serial(object):
+
+       def __init__(self, bld, j=1):
+               self.manager = bld.task_manager
+               self.outstanding = []
+
+               # progress bar
+               self.total = self.manager.total()
+               self.processed = 0
+               self.error = 0
+
+               self.switchflag = 1 # postpone
+               
+               self.consumers = None
+
+       # warning, this one is recursive ..
+       def get_next(self):
+               if self.outstanding:
+                       t = self.outstanding.pop(0)
+                       self.processed += 1
+                       return t
+
+               # handle case where only one wscript exist
+               # that only install files
+               if not self.manager.groups:
+                       return None
+
+               (_, self.outstanding) = self.manager.get_next_set()
+               if not self.outstanding: return None
+
+               return self.get_next()
+
+       def postpone(self, tsk):
+               self.processed -= 1
+               self.switchflag *= -1
+               # this actually shuffle the list
+               if self.switchflag>0: self.outstanding.insert(0, tsk)
+               else:                 self.outstanding.append(tsk)
+
+       def start(self):
+               debug('runner: Serial start called')
+               while 1:
+                       # get next Task
+                       tsk = self.get_next()
+                       if tsk is None: break
+
+                       if Logs.verbose: debug('runner: retrieving %r' % tsk)
+
+                       st = tsk.runnable_status()
+                       if st == ASK_LATER:
+                               debug('runner: postponing %r' % tsk)
+                               self.postpone(tsk)
+                               continue
+
+                       #continue
+                       if st == SKIP_ME:
+                               tsk.hasrun = SKIPPED
+                               self.manager.add_finished(tsk)
+                               continue
+
+                       tsk.position = (self.processed, self.total)
+
+                       # display the command that we are about to run
+                       tsk.generator.bld.printout(tsk.display())
+
+                       # run the command
+                       if tsk.__class__.stat: ret = tsk.__class__.stat(tsk)
+                       else: ret = tsk.run()
+                       self.manager.add_finished(tsk)
+
+                       # non-zero means something went wrong
+                       if ret:
+                               self.error = 1
+                               tsk.hasrun = CRASHED
+                               tsk.err_code = ret
+                               if Options.options.keep: continue
+                               else: return -1
+
+                       try:
+                               tsk.post_run()
+                       except OSError:
+                               self.error = 1
+                               tsk.hasrun = MISSING
+                               if Options.options.keep: continue
+                               else: return -1
+                       else:
+                               tsk.hasrun = SUCCESS
+
+               if self.error:
+                       return -1
+
+Parallel = Serial
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to