openSUSE Commits
Threads by month
- ----- 2024 -----
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
November 2014
- 1 participants
- 1346 discussions
Hello community,
here is the log from the commit of package python-greenlet for openSUSE:Factory checked in at 2014-11-19 20:26:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-greenlet (Old)
and /work/SRC/openSUSE:Factory/.python-greenlet.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-greenlet"
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-greenlet/python-greenlet.changes 2014-11-05 15:55:47.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-greenlet.new/python-greenlet.changes 2014-11-19 20:30:45.000000000 +0100
@@ -1,0 +2,9 @@
+Tue Nov 18 13:57:34 UTC 2014 - toddrme2178(a)gmail.com
+
+- Update to 0.4.5
+ - Fixed several bugs in greenlet C API
+ - Fixed a bug in multi-threaded applications, which manifested itself
+ with spurious "cannot switch to a different thread" exceptions
+ - Fixed some crashes on arm and mips architectures
+
+-------------------------------------------------------------------
Old:
----
greenlet-0.4.4.zip
New:
----
greenlet-0.4.5.zip
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-greenlet.spec ++++++
--- /var/tmp/diff_new_pack.rmXM4O/_old 2014-11-19 20:30:47.000000000 +0100
+++ /var/tmp/diff_new_pack.rmXM4O/_new 2014-11-19 20:30:47.000000000 +0100
@@ -18,7 +18,7 @@
Name: python-greenlet
-Version: 0.4.4
+Version: 0.4.5
Release: 0
Url: http://pypi.python.org/pypi/greenlet
Summary: Lightweight in-process concurrent programming
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package python3-psutil for openSUSE:Factory checked in at 2014-11-19 20:26:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-psutil (Old)
and /work/SRC/openSUSE:Factory/.python3-psutil.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python3-psutil"
Changes:
--------
--- /work/SRC/openSUSE:Factory/python3-psutil/python3-psutil.changes 2014-09-30 19:42:29.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python3-psutil.new/python3-psutil.changes 2014-11-19 20:30:43.000000000 +0100
@@ -1,0 +2,6 @@
+Tue Nov 18 13:55:21 UTC 2014 - toddrme2178(a)gmail.com
+
+- Update to 2.1.3
+ * fix "undefined symbol: CPU_ALLOC" compilation error.
+
+-------------------------------------------------------------------
Old:
----
psutil-2.1.2.tar.gz
New:
----
psutil-2.1.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python3-psutil.spec ++++++
--- /var/tmp/diff_new_pack.QiN3Oe/_old 2014-11-19 20:30:45.000000000 +0100
+++ /var/tmp/diff_new_pack.QiN3Oe/_new 2014-11-19 20:30:45.000000000 +0100
@@ -17,7 +17,7 @@
Name: python3-psutil
-Version: 2.1.2
+Version: 2.1.3
Release: 0
Summary: A process utilities module for Python
License: BSD-3-Clause
++++++ psutil-2.1.2.tar.gz -> psutil-2.1.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/.travis.yml new/psutil-2.1.3/.travis.yml
--- old/psutil-2.1.2/.travis.yml 2014-05-23 20:40:52.000000000 +0200
+++ new/psutil-2.1.3/.travis.yml 2014-09-30 20:10:20.000000000 +0200
@@ -13,6 +13,7 @@
- python setup.py build
- python setup.py install
- python test/test_psutil.py
+ - python test/test_memory_leaks.py
- make flake8
os:
- linux
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/CREDITS new/psutil-2.1.3/CREDITS
--- old/psutil-2.1.2/CREDITS 2014-09-15 17:47:08.000000000 +0200
+++ new/psutil-2.1.3/CREDITS 2014-09-30 20:10:20.000000000 +0200
@@ -54,7 +54,7 @@
E: david.daeschler(a)gmail.com
W: http://daviddaeschler.com
D: some contributions to initial design/bootstrap plus occasional bug fixing
-I: 522
+I: 522, 536
N: cjgohlke
E: cjgohlke(a)gmail.com
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/HISTORY.rst new/psutil-2.1.3/HISTORY.rst
--- old/psutil-2.1.2/HISTORY.rst 2014-09-21 15:49:46.000000000 +0200
+++ new/psutil-2.1.3/HISTORY.rst 2014-09-30 20:10:20.000000000 +0200
@@ -1,5 +1,13 @@
Bug tracker at https://github.com/giampaolo/psutil/issues
+2.1.3 2014-09-26
+================
+
+**Bug fixes**
+
+- #536: [Linux]: fix "undefined symbol: CPU_ALLOC" compilation error.
+
+
2.1.2 - 2014-09-21
==================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/Makefile new/psutil-2.1.3/Makefile
--- old/psutil-2.1.2/Makefile 2014-07-15 17:23:11.000000000 +0200
+++ new/psutil-2.1.3/Makefile 2014-09-23 21:58:24.000000000 +0200
@@ -86,4 +86,5 @@
# git-tag a new release
git-tag-release:
- git tag -a release-`python -c "import setup; print(setup.VERSION)"` -m `git rev-list HEAD --count`:`git rev-parse --short HEAD`
+ git tag -a release-`python -c "import setup; print(setup.get_version())"` -m `git rev-list HEAD --count`:`git rev-parse --short HEAD`
+ echo "done; now run 'git push --follow-tags' to push the new tag on the remote repo"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/PKG-INFO new/psutil-2.1.3/PKG-INFO
--- old/psutil-2.1.2/PKG-INFO 2014-09-21 15:50:53.000000000 +0200
+++ new/psutil-2.1.3/PKG-INFO 2014-09-30 20:10:35.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: psutil
-Version: 2.1.2
+Version: 2.1.3
Summary: psutil is a cross-platform library for retrieving information onrunning processes and system utilization (CPU, memory, disks, network)in Python.
Home-page: https://github.com/giampaolo/psutil
Author: Giampaolo Rodola
@@ -45,7 +45,7 @@
tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice,
ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. It currently supports
**Linux, Windows, OSX, FreeBSD** and **Sun Solaris**, both **32-bit** and
- **64-bit** architectures, with Python versions from **2.4 to 3.4**. Pypi is
+ **64-bit** architectures, with Python versions from **2.4 to 3.4**. PyPy is
also known to work.
====================
@@ -68,6 +68,7 @@
* https://github.com/nicolargo/glances
* https://github.com/Jahaja/psdash
+ * https://code.google.com/p/grr/
==============
Example usages
@@ -326,6 +327,7 @@
Timeline
========
+ - 2014-09-26: `psutil-2.1.3.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz>`_
- 2014-09-21: `psutil-2.1.2.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.2.tar.gz>`_
- 2014-04-30: `psutil-2.1.1.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.1.tar.gz>`_
- 2014-04-08: `psutil-2.1.0.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.0.tar.gz>`_
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/README.rst new/psutil-2.1.3/README.rst
--- old/psutil-2.1.2/README.rst 2014-09-21 15:50:04.000000000 +0200
+++ new/psutil-2.1.3/README.rst 2014-09-30 20:10:20.000000000 +0200
@@ -37,7 +37,7 @@
tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice,
ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. It currently supports
**Linux, Windows, OSX, FreeBSD** and **Sun Solaris**, both **32-bit** and
-**64-bit** architectures, with Python versions from **2.4 to 3.4**. Pypi is
+**64-bit** architectures, with Python versions from **2.4 to 3.4**. PyPy is
also known to work.
====================
@@ -60,6 +60,7 @@
* https://github.com/nicolargo/glances
* https://github.com/Jahaja/psdash
+ * https://code.google.com/p/grr/
==============
Example usages
@@ -318,6 +319,7 @@
Timeline
========
+- 2014-09-26: `psutil-2.1.3.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz>`_
- 2014-09-21: `psutil-2.1.2.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.2.tar.gz>`_
- 2014-04-30: `psutil-2.1.1.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.1.tar.gz>`_
- 2014-04-08: `psutil-2.1.0.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.0.tar.gz>`_
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/psutil/__init__.py new/psutil-2.1.3/psutil/__init__.py
--- old/psutil-2.1.2/psutil/__init__.py 2014-07-15 17:23:11.000000000 +0200
+++ new/psutil-2.1.3/psutil/__init__.py 2014-09-30 20:10:20.000000000 +0200
@@ -13,7 +13,7 @@
from __future__ import division
__author__ = "Giampaolo Rodola'"
-__version__ = "2.1.2"
+__version__ = "2.1.3"
version_info = tuple([int(num) for num in __version__.split('.')])
__all__ = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/psutil/_psutil_linux.c new/psutil-2.1.3/psutil/_psutil_linux.c
--- old/psutil-2.1.2/psutil/_psutil_linux.c 2014-09-15 17:28:01.000000000 +0200
+++ new/psutil-2.1.3/psutil/_psutil_linux.c 2014-09-30 20:10:20.000000000 +0200
@@ -252,8 +252,13 @@
/*
- * Return process CPU affinity as a Python long (the bitmask)
+ * Return process CPU affinity as a Python list
+ * The dual implementation exists because of:
+ * https://github.com/giampaolo/psutil/issues/536
*/
+
+#ifdef CPU_ALLOC
+
static PyObject *
psutil_proc_cpu_affinity_get(PyObject *self, PyObject *args)
{
@@ -289,7 +294,7 @@
res = PyList_New(0);
if (res == NULL)
goto error;
-
+
cpucount_s = CPU_COUNT_S(setsize, mask);
for (cpu = 0, count = cpucount_s; count; cpu++) {
if (CPU_ISSET_S(cpu, setsize, mask)) {
@@ -317,7 +322,38 @@
Py_XDECREF(res);
return NULL;
}
+#else
+
+static PyObject *
+psutil_proc_cpu_affinity_get(PyObject *self, PyObject *args)
+{
+ cpu_set_t cpuset;
+ unsigned int len = sizeof(cpu_set_t);
+ long pid;
+ int i;
+ PyObject* ret_list;
+
+ if (!PyArg_ParseTuple(args, "i", &pid)) {
+ return NULL;
+ }
+
+ CPU_ZERO(&cpuset);
+ if (sched_getaffinity(pid, len, &cpuset) < 0) {
+ return PyErr_SetFromErrno(PyExc_OSError);
+ }
+
+ ret_list = PyList_New(0);
+
+ for (i = 0; i < CPU_SETSIZE; ++i) {
+ if (CPU_ISSET(i, &cpuset)) {
+ PyList_Append(ret_list, Py_BuildValue("i", i));
+ }
+ }
+
+ return ret_list;
+}
+#endif
/*
* Set process CPU affinity; expects a bitmask
@@ -374,8 +410,10 @@
return Py_None;
error:
- if (py_cpu_seq != NULL)
+ if (py_cpu_seq != NULL) {
Py_DECREF(py_cpu_seq);
+ }
+
return NULL;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/psutil.egg-info/PKG-INFO new/psutil-2.1.3/psutil.egg-info/PKG-INFO
--- old/psutil-2.1.2/psutil.egg-info/PKG-INFO 2014-09-21 15:50:53.000000000 +0200
+++ new/psutil-2.1.3/psutil.egg-info/PKG-INFO 2014-09-30 20:10:34.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: psutil
-Version: 2.1.2
+Version: 2.1.3
Summary: psutil is a cross-platform library for retrieving information onrunning processes and system utilization (CPU, memory, disks, network)in Python.
Home-page: https://github.com/giampaolo/psutil
Author: Giampaolo Rodola
@@ -45,7 +45,7 @@
tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice,
ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. It currently supports
**Linux, Windows, OSX, FreeBSD** and **Sun Solaris**, both **32-bit** and
- **64-bit** architectures, with Python versions from **2.4 to 3.4**. Pypi is
+ **64-bit** architectures, with Python versions from **2.4 to 3.4**. PyPy is
also known to work.
====================
@@ -68,6 +68,7 @@
* https://github.com/nicolargo/glances
* https://github.com/Jahaja/psdash
+ * https://code.google.com/p/grr/
==============
Example usages
@@ -326,6 +327,7 @@
Timeline
========
+ - 2014-09-26: `psutil-2.1.3.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz>`_
- 2014-09-21: `psutil-2.1.2.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.2.tar.gz>`_
- 2014-04-30: `psutil-2.1.1.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.1.tar.gz>`_
- 2014-04-08: `psutil-2.1.0.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.0.tar.gz>`_
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package python-psutil for openSUSE:Factory checked in at 2014-11-19 20:26:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-psutil (Old)
and /work/SRC/openSUSE:Factory/.python-psutil.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-psutil"
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-psutil/python-psutil.changes 2014-09-30 19:42:28.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-psutil.new/python-psutil.changes 2014-11-19 20:30:40.000000000 +0100
@@ -1,0 +2,6 @@
+Tue Nov 18 13:55:21 UTC 2014 - toddrme2178(a)gmail.com
+
+- Update to 2.1.3
+ * fix "undefined symbol: CPU_ALLOC" compilation error.
+
+-------------------------------------------------------------------
Old:
----
psutil-2.1.2.tar.gz
New:
----
psutil-2.1.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-psutil.spec ++++++
--- /var/tmp/diff_new_pack.53mDMg/_old 2014-11-19 20:30:43.000000000 +0100
+++ /var/tmp/diff_new_pack.53mDMg/_new 2014-11-19 20:30:43.000000000 +0100
@@ -17,7 +17,7 @@
Name: python-psutil
-Version: 2.1.2
+Version: 2.1.3
Release: 0
Summary: A process utilities module for Python
License: BSD-3-Clause
++++++ psutil-2.1.2.tar.gz -> psutil-2.1.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/.travis.yml new/psutil-2.1.3/.travis.yml
--- old/psutil-2.1.2/.travis.yml 2014-05-23 20:40:52.000000000 +0200
+++ new/psutil-2.1.3/.travis.yml 2014-09-30 20:10:20.000000000 +0200
@@ -13,6 +13,7 @@
- python setup.py build
- python setup.py install
- python test/test_psutil.py
+ - python test/test_memory_leaks.py
- make flake8
os:
- linux
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/CREDITS new/psutil-2.1.3/CREDITS
--- old/psutil-2.1.2/CREDITS 2014-09-15 17:47:08.000000000 +0200
+++ new/psutil-2.1.3/CREDITS 2014-09-30 20:10:20.000000000 +0200
@@ -54,7 +54,7 @@
E: david.daeschler(a)gmail.com
W: http://daviddaeschler.com
D: some contributions to initial design/bootstrap plus occasional bug fixing
-I: 522
+I: 522, 536
N: cjgohlke
E: cjgohlke(a)gmail.com
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/HISTORY.rst new/psutil-2.1.3/HISTORY.rst
--- old/psutil-2.1.2/HISTORY.rst 2014-09-21 15:49:46.000000000 +0200
+++ new/psutil-2.1.3/HISTORY.rst 2014-09-30 20:10:20.000000000 +0200
@@ -1,5 +1,13 @@
Bug tracker at https://github.com/giampaolo/psutil/issues
+2.1.3 2014-09-26
+================
+
+**Bug fixes**
+
+- #536: [Linux]: fix "undefined symbol: CPU_ALLOC" compilation error.
+
+
2.1.2 - 2014-09-21
==================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/Makefile new/psutil-2.1.3/Makefile
--- old/psutil-2.1.2/Makefile 2014-07-15 17:23:11.000000000 +0200
+++ new/psutil-2.1.3/Makefile 2014-09-23 21:58:24.000000000 +0200
@@ -86,4 +86,5 @@
# git-tag a new release
git-tag-release:
- git tag -a release-`python -c "import setup; print(setup.VERSION)"` -m `git rev-list HEAD --count`:`git rev-parse --short HEAD`
+ git tag -a release-`python -c "import setup; print(setup.get_version())"` -m `git rev-list HEAD --count`:`git rev-parse --short HEAD`
+ echo "done; now run 'git push --follow-tags' to push the new tag on the remote repo"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/PKG-INFO new/psutil-2.1.3/PKG-INFO
--- old/psutil-2.1.2/PKG-INFO 2014-09-21 15:50:53.000000000 +0200
+++ new/psutil-2.1.3/PKG-INFO 2014-09-30 20:10:35.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: psutil
-Version: 2.1.2
+Version: 2.1.3
Summary: psutil is a cross-platform library for retrieving information onrunning processes and system utilization (CPU, memory, disks, network)in Python.
Home-page: https://github.com/giampaolo/psutil
Author: Giampaolo Rodola
@@ -45,7 +45,7 @@
tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice,
ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. It currently supports
**Linux, Windows, OSX, FreeBSD** and **Sun Solaris**, both **32-bit** and
- **64-bit** architectures, with Python versions from **2.4 to 3.4**. Pypi is
+ **64-bit** architectures, with Python versions from **2.4 to 3.4**. PyPy is
also known to work.
====================
@@ -68,6 +68,7 @@
* https://github.com/nicolargo/glances
* https://github.com/Jahaja/psdash
+ * https://code.google.com/p/grr/
==============
Example usages
@@ -326,6 +327,7 @@
Timeline
========
+ - 2014-09-26: `psutil-2.1.3.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz>`_
- 2014-09-21: `psutil-2.1.2.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.2.tar.gz>`_
- 2014-04-30: `psutil-2.1.1.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.1.tar.gz>`_
- 2014-04-08: `psutil-2.1.0.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.0.tar.gz>`_
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/README.rst new/psutil-2.1.3/README.rst
--- old/psutil-2.1.2/README.rst 2014-09-21 15:50:04.000000000 +0200
+++ new/psutil-2.1.3/README.rst 2014-09-30 20:10:20.000000000 +0200
@@ -37,7 +37,7 @@
tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice,
ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. It currently supports
**Linux, Windows, OSX, FreeBSD** and **Sun Solaris**, both **32-bit** and
-**64-bit** architectures, with Python versions from **2.4 to 3.4**. Pypi is
+**64-bit** architectures, with Python versions from **2.4 to 3.4**. PyPy is
also known to work.
====================
@@ -60,6 +60,7 @@
* https://github.com/nicolargo/glances
* https://github.com/Jahaja/psdash
+ * https://code.google.com/p/grr/
==============
Example usages
@@ -318,6 +319,7 @@
Timeline
========
+- 2014-09-26: `psutil-2.1.3.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz>`_
- 2014-09-21: `psutil-2.1.2.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.2.tar.gz>`_
- 2014-04-30: `psutil-2.1.1.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.1.tar.gz>`_
- 2014-04-08: `psutil-2.1.0.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.0.tar.gz>`_
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/psutil/__init__.py new/psutil-2.1.3/psutil/__init__.py
--- old/psutil-2.1.2/psutil/__init__.py 2014-07-15 17:23:11.000000000 +0200
+++ new/psutil-2.1.3/psutil/__init__.py 2014-09-30 20:10:20.000000000 +0200
@@ -13,7 +13,7 @@
from __future__ import division
__author__ = "Giampaolo Rodola'"
-__version__ = "2.1.2"
+__version__ = "2.1.3"
version_info = tuple([int(num) for num in __version__.split('.')])
__all__ = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/psutil/_psutil_linux.c new/psutil-2.1.3/psutil/_psutil_linux.c
--- old/psutil-2.1.2/psutil/_psutil_linux.c 2014-09-15 17:28:01.000000000 +0200
+++ new/psutil-2.1.3/psutil/_psutil_linux.c 2014-09-30 20:10:20.000000000 +0200
@@ -252,8 +252,13 @@
/*
- * Return process CPU affinity as a Python long (the bitmask)
+ * Return process CPU affinity as a Python list
+ * The dual implementation exists because of:
+ * https://github.com/giampaolo/psutil/issues/536
*/
+
+#ifdef CPU_ALLOC
+
static PyObject *
psutil_proc_cpu_affinity_get(PyObject *self, PyObject *args)
{
@@ -289,7 +294,7 @@
res = PyList_New(0);
if (res == NULL)
goto error;
-
+
cpucount_s = CPU_COUNT_S(setsize, mask);
for (cpu = 0, count = cpucount_s; count; cpu++) {
if (CPU_ISSET_S(cpu, setsize, mask)) {
@@ -317,7 +322,38 @@
Py_XDECREF(res);
return NULL;
}
+#else
+
+static PyObject *
+psutil_proc_cpu_affinity_get(PyObject *self, PyObject *args)
+{
+ cpu_set_t cpuset;
+ unsigned int len = sizeof(cpu_set_t);
+ long pid;
+ int i;
+ PyObject* ret_list;
+
+ if (!PyArg_ParseTuple(args, "i", &pid)) {
+ return NULL;
+ }
+
+ CPU_ZERO(&cpuset);
+ if (sched_getaffinity(pid, len, &cpuset) < 0) {
+ return PyErr_SetFromErrno(PyExc_OSError);
+ }
+
+ ret_list = PyList_New(0);
+
+ for (i = 0; i < CPU_SETSIZE; ++i) {
+ if (CPU_ISSET(i, &cpuset)) {
+ PyList_Append(ret_list, Py_BuildValue("i", i));
+ }
+ }
+
+ return ret_list;
+}
+#endif
/*
* Set process CPU affinity; expects a bitmask
@@ -374,8 +410,10 @@
return Py_None;
error:
- if (py_cpu_seq != NULL)
+ if (py_cpu_seq != NULL) {
Py_DECREF(py_cpu_seq);
+ }
+
return NULL;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-2.1.2/psutil.egg-info/PKG-INFO new/psutil-2.1.3/psutil.egg-info/PKG-INFO
--- old/psutil-2.1.2/psutil.egg-info/PKG-INFO 2014-09-21 15:50:53.000000000 +0200
+++ new/psutil-2.1.3/psutil.egg-info/PKG-INFO 2014-09-30 20:10:34.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: psutil
-Version: 2.1.2
+Version: 2.1.3
Summary: psutil is a cross-platform library for retrieving information onrunning processes and system utilization (CPU, memory, disks, network)in Python.
Home-page: https://github.com/giampaolo/psutil
Author: Giampaolo Rodola
@@ -45,7 +45,7 @@
tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice,
ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. It currently supports
**Linux, Windows, OSX, FreeBSD** and **Sun Solaris**, both **32-bit** and
- **64-bit** architectures, with Python versions from **2.4 to 3.4**. Pypi is
+ **64-bit** architectures, with Python versions from **2.4 to 3.4**. PyPy is
also known to work.
====================
@@ -68,6 +68,7 @@
* https://github.com/nicolargo/glances
* https://github.com/Jahaja/psdash
+ * https://code.google.com/p/grr/
==============
Example usages
@@ -326,6 +327,7 @@
Timeline
========
+ - 2014-09-26: `psutil-2.1.3.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz>`_
- 2014-09-21: `psutil-2.1.2.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.2.tar.gz>`_
- 2014-04-30: `psutil-2.1.1.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.1.tar.gz>`_
- 2014-04-08: `psutil-2.1.0.tar.gz <https://pypi.python.org/packages/source/p/psutil/psutil-2.1.0.tar.gz>`_
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package python3-openpyxl for openSUSE:Factory checked in at 2014-11-19 20:26:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-openpyxl (Old)
and /work/SRC/openSUSE:Factory/.python3-openpyxl.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python3-openpyxl"
Changes:
--------
--- /work/SRC/openSUSE:Factory/python3-openpyxl/python3-openpyxl.changes 2014-07-18 06:41:21.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python3-openpyxl.new/python3-openpyxl.changes 2014-11-19 20:30:37.000000000 +0100
@@ -1,0 +2,153 @@
+Tue Nov 18 13:36:48 UTC 2014 - toddrme2178(a)gmail.com
+
+-Update to 2.1.2
+ + Minor changes
+ * Fix regex for positive exponentials
+ * ValueError when using .rows on sheet with hyperlinks
+ + Bug fixes
+ * defined names with formulae raise exceptions
+ * ValueError when reading cells with hyperlinks
+ * IndexError when reading definedNames
+ * number_format not consistently applied from styles
+-Update to 2.1.1
+ + Minor changes
+ * Support different workbook code names
+ * Allow auto_axis keyword for ScatterCharts
+ + Bug fixes
+ * Fills lost in ConditionalFormatting
+ * Support value=”none” in attributes
+ * Support undocumented value for textRotation
+ * Preserve integers in read-only mode
+ * Complete read support for DataValidation
+ * Iterate over unsized worksheets
+-Update to 2.1.0
+ + Major changes
+ * “read_only” and “write_only” new flags for workbooks
+ * Support for reading and writing worksheet protection
+ * Support for reading hidden rows
+ * Cells now manage their styles directly
+ * ColumnDimension and RowDimension object manage their styles directly
+ * Use xmlfile for writing worksheets if available - around 3 times faster
+ * Datavalidation now part of the worksheet package
+ + Minor changes
+ * Number formats are now just strings
+ * Strings can be used for RGB and aRGB colours for Fonts, Fills and Borders
+ * Create all style tags in a single pass
+ * Performance improvement when appending rows
+ * Cleaner conversion of Python to Excel values
+ * PR6 reserve formatting for empty rows
+ * standard worksheets can append from ranges and generators
+ + Bug fixes
+ * Cannot read visibility of sheets and rows
+ * No content type for worksheets
+ * Cannot read sheets with inline strings
+ * 1-indexing for merged cells
+ * Correctly handle removal of cell protection
+ * Cells with formulae do not round-trip
+ * Read DataValidations
+ * Support Defined Named Ranges to external workbooks
+-Update to 2.0.5
+ + Bug fixes
+ * incorrect casting of boolean strings
+ * roundtripping cells with formulae
+-Update to 2.0.4
+ + Minor changes
+ * Add a sample file illustrating colours
+ + Bug fixes
+ * DARKYELLOW was incorrect
+ * Correctly handle extend attribute for fonts
+-Update to 2.0.3
+ + Minor changes
+ * Updated docs
+ + Bug fixes
+ * Cannot load Workbooks with vertAlign styling for fonts
+-Update to 2.0.2
+-Update to 2.0.1
+-Update to 2.0.0
+ + Major changes
+ * This is last release that will support Python 3.2
+ * Cells are referenced with 1-indexing: A1 == cell(row=1, column=1)
+ * Use jdcal for more efficient and reliable conversion of datetimes
+ * Significant speed up when reading files
+ * Merged immutable styles
+ * Type inference is disabled by default
+ * RawCell renamed ReadOnlyCell
+ * ReadOnlyCell.internal_value and ReadOnlyCell.value now behave the same as Cell
+ * Provide no size information on unsized worksheets
+ * Lower memory footprint when reading files
+ + Minor changes
+ * All tests converted to pytest
+ * Pyflakes used for static code analysis
+ * Sample code in the documentation is automatically run
+ * Support GradientFills
+ * BaseColWidth set
+ + Pull requests
+ * Add filterColumn, sortCondition support to AutoFilter
+ * Reorder worksheets parts
+ * Update API for conditional formatting
+ * Add support for writing Protection styles, others
+ * Better handling of content types when preserving macros
+ + Bug fixes
+ * ColumnDimension style error
+ * reader.worksheet.fast_parse sets booleans to integers
+ * Auto sizing column widths does not work
+ * Workbooks with chartsheets
+ * Invalid PageMargins
+ * Using v in cells creates invalid files
+ * IndexError when loading workbook
+ * Forded conversion of line breaks
+ * Raise exceptions when passed invalid types
+ * Cannot open files which use non-standard sheet names or reference Ids
+ * Handling unsized worksheets in IterableWorksheet
+ * Handling Workbooks with non-standard references
+ * Handling auto filters where there are only custom filters
+ * Harmonise chart and cell coordinates
+ * Explicit exception raising for invalid characters
+ * Optimized writer can not handle a datetime.time value
+ * Cell coordinates not consistent with documentation
+ * Missing column width causes load_workbook() exception
+ * Handling Workbooks with absolute paths for worksheets (from Sharepoint)
+-Update to 1.8.6
+ + Minor changes
+ * Fixed typo for import Elementtree
+ + Bugfixes
+ * Incorrect path for comments files on Windows
+-Update to 1.8.5
+ + Minor changes
+ * The ‘=’ string is no longer interpreted as a formula
+ * When a client writes empty xml tags for cells (e.g. <c r=’A1’></c>), reader will not crash
+-Update to 1.8.4
+ + Bugfixes
+ * better handling of undimensioned worksheets
+ * non-ascii in formualae
+ * correct implementation of register_namepsace for Python 2.6
+-Update to 1.8.3
+ + Major changes
+ * Always parse using cElementTree
+ + Minor changes
+ * Slight improvements in memory use when parsing
+ * error when trying to read comments with optimised reader
+ * unsized worksheets
+ * only numeric cells can be dates
+-Update to 1.8.2
+ * iterable worksheets open too many files
+ * improved handling of lxml
+ * better handling of unique sheetnames
+-Update to 1.8.1
+-Update to 1.8.0
+ + Compatibility
+ * Support for Python 2.5 dropped.
+ + Major changes
+ * Support conditional formatting
+ * Support lxml as backend
+ * Support reading and writing comments
+ * pytest as testrunner now required
+ * Improvements in charts: new types, more reliable
+ + Minor changes
+ * load_workbook now accepts data_only to allow extracting values only from formulae. Default is false.
+ * Images can now be anchored to cells
+ * Docs updated
+ * Provisional benchmarking
+ * Added convenience methods for accessing worksheets and cells by key
+
+-------------------------------------------------------------------
Old:
----
openpyxl-1.6.2.tar.gz
New:
----
openpyxl-2.1.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python3-openpyxl.spec ++++++
--- /var/tmp/diff_new_pack.8PHQB1/_old 2014-11-19 20:30:40.000000000 +0100
+++ /var/tmp/diff_new_pack.8PHQB1/_new 2014-11-19 20:30:40.000000000 +0100
@@ -16,7 +16,7 @@
Name: python3-openpyxl
-Version: 1.6.2
+Version: 2.1.2
Release: 0
License: MIT and Python-2.0
Summary: A Python library to read/write Excel 2007 xlsx/xlsm files
@@ -27,8 +27,7 @@
BuildRequires: python3-2to3
BuildRequires: python3-devel
BuildRequires: python3-distribute
-# tests currently do not work with python 3
-# BuildRequires: python3-nose
+BuildRequires: python3-nose
BuildRequires: python3-xml
Requires: python3-xml
# for embedded image support
@@ -48,7 +47,6 @@
%install
python3 setup.py install --prefix=%{_prefix} --root=%{buildroot}
-mv LICENCE LICENSE
# tests currently do not work with python 3
# %check
@@ -56,7 +54,7 @@
%files
%defattr(-,root,root,-)
-%doc AUTHORS LICENSE README
+%doc AUTHORS.rst LICENCE.rst README.rst
%{python3_sitelib}/*
%changelog
++++++ openpyxl-1.6.2.tar.gz -> openpyxl-2.1.2.tar.gz ++++++
++++ 32772 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package yast2-firstboot for openSUSE:Factory checked in at 2014-11-19 20:26:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-firstboot (Old)
and /work/SRC/openSUSE:Factory/.yast2-firstboot.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-firstboot"
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-firstboot/yast2-firstboot.changes 2014-09-19 15:45:29.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-firstboot.new/yast2-firstboot.changes 2014-11-19 20:30:34.000000000 +0100
@@ -1,0 +2,7 @@
+Tue Nov 18 12:56:02 UTC 2014 - ancor(a)suse.com
+
+- Added missing module for DHCP (bnc#895359, bnc#904527).
+- Fixed errors in keyboard and language configuration (bnc#904527).
+- 3.1.5
+
+-------------------------------------------------------------------
Old:
----
yast2-firstboot-3.1.4.tar.bz2
New:
----
yast2-firstboot-3.1.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-firstboot.spec ++++++
--- /var/tmp/diff_new_pack.RRtIiz/_old 2014-11-19 20:30:37.000000000 +0100
+++ /var/tmp/diff_new_pack.RRtIiz/_new 2014-11-19 20:30:37.000000000 +0100
@@ -17,7 +17,7 @@
Name: yast2-firstboot
-Version: 3.1.4
+Version: 3.1.5
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
++++++ yast2-firstboot-3.1.4.tar.bz2 -> yast2-firstboot-3.1.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-3.1.4/.travis.yml new/yast2-firstboot-3.1.5/.travis.yml
--- old/yast2-firstboot-3.1.4/.travis.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-firstboot-3.1.5/.travis.yml 2014-11-18 14:37:10.000000000 +0100
@@ -0,0 +1,16 @@
+language: cpp
+compiler:
+ - gcc
+before_install:
+ # disable rvm, use system Ruby
+ - rvm reset
+ - wget https://raw.githubusercontent.com/yast/yast-devtools/SLE-12-GA/travis-tools…
+ - sh ./travis_setup.sh -p "rake yast2-devtools yast2-testsuite yast2" -g "yast-rake gettext"
+script:
+ - rake check:syntax
+ - rake check:pot
+ - make -f Makefile.cvs
+ - make
+ - sudo make install
+ - make check
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-3.1.4/README.md new/yast2-firstboot-3.1.5/README.md
--- old/yast2-firstboot-3.1.4/README.md 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-firstboot-3.1.5/README.md 2014-11-18 14:37:10.000000000 +0100
@@ -0,0 +1,5 @@
+# YaST - The Firstboot Module #
+
+[![Travis Build](https://travis-ci.org/yast/yast-firstboot.svg?branch=master)](https:…
+[![Jenkins Build](http://img.shields.io/jenkins/s/https/ci.opensuse.org/yast-firstboot…
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-3.1.4/package/yast2-firstboot.changes new/yast2-firstboot-3.1.5/package/yast2-firstboot.changes
--- old/yast2-firstboot-3.1.4/package/yast2-firstboot.changes 2014-09-18 16:43:12.000000000 +0200
+++ new/yast2-firstboot-3.1.5/package/yast2-firstboot.changes 2014-11-18 14:37:10.000000000 +0100
@@ -1,4 +1,11 @@
-------------------------------------------------------------------
+Tue Nov 18 12:56:02 UTC 2014 - ancor(a)suse.com
+
+- Added missing module for DHCP (bnc#895359, bnc#904527).
+- Fixed errors in keyboard and language configuration (bnc#904527).
+- 3.1.5
+
+-------------------------------------------------------------------
Wed Sep 17 19:09:03 UTC 2014 - mfilka(a)suse.com
- bnc#895359
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-3.1.4/package/yast2-firstboot.spec new/yast2-firstboot-3.1.5/package/yast2-firstboot.spec
--- old/yast2-firstboot-3.1.4/package/yast2-firstboot.spec 2014-09-18 16:43:12.000000000 +0200
+++ new/yast2-firstboot-3.1.5/package/yast2-firstboot.spec 2014-11-18 14:37:10.000000000 +0100
@@ -17,7 +17,7 @@
Name: yast2-firstboot
-Version: 3.1.4
+Version: 3.1.5
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-3.1.4/src/Makefile.am new/yast2-firstboot-3.1.5/src/Makefile.am
--- old/yast2-firstboot-3.1.4/src/Makefile.am 2014-09-18 16:43:12.000000000 +0200
+++ new/yast2-firstboot-3.1.5/src/Makefile.am 2014-11-18 14:37:10.000000000 +0100
@@ -21,6 +21,7 @@
clients/firstboot_language_keyboard.rb \
clients/firstboot_license_novell.rb \
clients/firstboot_network_write.rb \
+ clients/firstboot_setup_dhcp.rb \
clients/firstboot_auto.rb
yncludedir = @yncludedir@/firstboot
@@ -39,4 +40,4 @@
EXTRA_DIST = $(module_DATA) $(client_DATA) $(ynclude_DATA) $(scrconf_DATA) $(schemafiles_DATA) $(fillup_DATA)
-include $(top_srcdir)/Makefile.am.common
\ No newline at end of file
+include $(top_srcdir)/Makefile.am.common
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-3.1.4/src/clients/firstboot_language.rb new/yast2-firstboot-3.1.5/src/clients/firstboot_language.rb
--- old/yast2-firstboot-3.1.4/src/clients/firstboot_language.rb 2014-09-18 16:43:12.000000000 +0200
+++ new/yast2-firstboot-3.1.5/src/clients/firstboot_language.rb 2014-11-18 14:37:10.000000000 +0100
@@ -41,7 +41,6 @@
Yast.import "Console"
Yast.import "Directory"
- Yast.import "GfxMenu"
Yast.import "Language"
Yast.import "Wizard"
Yast.import "Firstboot"
@@ -132,7 +131,6 @@
# update bootloader menu
Language.WfmSetLanguage
- GfxMenu.Update
else
Builtins.y2milestone("Language not changed --> doing nothing")
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-3.1.4/src/clients/firstboot_language_keyboard.rb new/yast2-firstboot-3.1.5/src/clients/firstboot_language_keyboard.rb
--- old/yast2-firstboot-3.1.4/src/clients/firstboot_language_keyboard.rb 2014-09-18 16:43:12.000000000 +0200
+++ new/yast2-firstboot-3.1.5/src/clients/firstboot_language_keyboard.rb 2014-11-18 14:37:10.000000000 +0100
@@ -44,7 +44,6 @@
Yast.import "Console"
Yast.import "Directory"
Yast.import "GetInstArgs"
- Yast.import "GfxMenu"
Yast.import "Keyboard"
Yast.import "Label"
Yast.import "Language"
@@ -280,8 +279,6 @@
Keyboard.Save
Timezone.Save
Console.Save
- # update bootloader menu items
- GfxMenu.Update
end
false
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package python-msgpack-python for openSUSE:Factory checked in at 2014-11-19 20:26:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-msgpack-python (Old)
and /work/SRC/openSUSE:Factory/.python-msgpack-python.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-msgpack-python"
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-msgpack-python/python-msgpack-python.changes 2013-12-09 17:01:17.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-msgpack-python.new/python-msgpack-python.changes 2014-11-19 20:30:30.000000000 +0100
@@ -1,0 +2,14 @@
+Tue Nov 18 13:14:12 UTC 2014 - toddrme2178(a)gmail.com
+
+- Update to 0.4.2
+ Bugfixes
+ - Unpacker doesn't increment refcount of ExtType hook.
+ - Packer raises no exception for inputs doesn't fit to msgpack format.
+- Update to 0.4.1
+ Changes
+ - fallback.Unpacker.feed() supports bytearray.
+ Bugs fixed
+ - Unpacker doesn't increment refcount of hooks. Hooks may be GCed while unpacking.
+ - Unpacker may read unfilled internal buffer.
+
+-------------------------------------------------------------------
Old:
----
msgpack-python-0.4.0.tar.gz
New:
----
msgpack-python-0.4.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-msgpack-python.spec ++++++
--- /var/tmp/diff_new_pack.vYBTO5/_old 2014-11-19 20:30:34.000000000 +0100
+++ /var/tmp/diff_new_pack.vYBTO5/_new 2014-11-19 20:30:34.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-msgpack-python
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 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
@@ -17,7 +17,7 @@
Name: python-msgpack-python
-Version: 0.4.0
+Version: 0.4.2
Release: 0
Summary: MessagePack (de)serializer
License: Apache-2.0
++++++ msgpack-python-0.4.0.tar.gz -> msgpack-python-0.4.2.tar.gz ++++++
++++ 22196 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package duperemove for openSUSE:Factory checked in at 2014-11-19 20:26:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/duperemove (Old)
and /work/SRC/openSUSE:Factory/.duperemove.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "duperemove"
Changes:
--------
--- /work/SRC/openSUSE:Factory/duperemove/duperemove.changes 2014-10-31 20:03:36.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.duperemove.new/duperemove.changes 2014-11-19 20:30:29.000000000 +0100
@@ -1,0 +2,18 @@
+Mon Nov 17 19:40:06 UTC 2014 - mfasheh(a)suse.com
+
+- Update to duperemove v0.09.beta3
+ - Fix leak of directory fd during file scan
+ - Fix EMFILES (too many file descriptors) error during dedupe
+ - Fix corner case with dedupe leaving a file open and not-queued
+ - Support '-x' (one file system) option
+ - Add option to turn off extent lookup during csum phase
+ - Useful if running against snapshotted volumes
+ - show-shared-extents program to help users examine file state before or
+ after dedupe.
+
+-------------------------------------------------------------------
+Mon Nov 10 14:49:27 UTC 2014 - schwab(a)suse.de
+
+- Build with %optflags
+
+-------------------------------------------------------------------
Old:
----
duperemove-v0.09.beta2.tar.gz
New:
----
duperemove-v0.09.beta3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ duperemove.spec ++++++
--- /var/tmp/diff_new_pack.MGU3Ld/_old 2014-11-19 20:30:30.000000000 +0100
+++ /var/tmp/diff_new_pack.MGU3Ld/_new 2014-11-19 20:30:30.000000000 +0100
@@ -17,13 +17,13 @@
%define modname duperemove
-%define tar_version v0.09.beta2
+%define tar_version v0.09.beta3
Name: duperemove
BuildRequires: gcc-c++
BuildRequires: glib2-devel
BuildRequires: libgcrypt-devel
-Version: 0.09~beta2
+Version: 0.09~beta3
Release: 0
Summary: Software to find duplicate extents in files and remove them
License: GPL-2.0
@@ -49,14 +49,15 @@
%setup -q -n %{modname}-%{tar_version}
%build
-make
-make hashstats
-make btrfs-extent-same
+make CFLAGS="%optflags"
+make hashstats CFLAGS="%optflags"
+make btrfs-extent-same CFLAGS="%optflags"
%install
mkdir -p %{buildroot}/%{_sbindir}
cp %{_builddir}/%{modname}-%{tar_version}/%{modname} %{buildroot}/%{_sbindir}
cp %{_builddir}/%{modname}-%{tar_version}/hashstats %{buildroot}/%{_sbindir}
+cp %{_builddir}/%{modname}-%{tar_version}/show-shared-extents %{buildroot}/%{_sbindir}
cp %{_builddir}/%{modname}-%{tar_version}/%{samename} %{buildroot}/%{_sbindir}
mkdir -p %{buildroot}%{_mandir}/man8
cp %{_builddir}/%{modname}-%{tar_version}/%{modname}.8 %{buildroot}/%{_mandir}/man8/
@@ -72,6 +73,7 @@
%doc LICENSE README
%{_sbindir}/duperemove
%{_sbindir}/hashstats
+%{_sbindir}/show-shared-extents
%{_mandir}/man?/%{modname}.8.gz
%changelog
++++++ duperemove-v0.09.beta2.tar.gz -> duperemove-v0.09.beta3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/Makefile new/duperemove-v0.09.beta3/Makefile
--- old/duperemove-v0.09.beta2/Makefile 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/Makefile 2014-11-17 20:07:48.000000000 +0100
@@ -1,43 +1,67 @@
-RELEASE=v0.09.beta2
+RELEASE=v0.09.beta3
CC = gcc
CFLAGS = -Wall -ggdb
MANPAGES=duperemove.8 btrfs-extent-same.8
-DIST_SOURCES=csum-gcrypt.c csum-mhash.c csum.h duperemove.c hash-tree.c hash-tree.h results-tree.c results-tree.h kernel.h LICENSE list.h Makefile rbtree.c rbtree.h rbtree.txt README TODO dedupe.c dedupe.h btrfs-ioctl.h filerec.c filerec.h btrfs-util.c btrfs-util.h $(MANPAGES) btrfs-extent-same.c debug.h util.c util.h serialize.c serialize.h hashstats.c
+CFILES=duperemove.c hash-tree.c results-tree.c rbtree.c dedupe.c filerec.c \
+ btrfs-util.c util.c serialize.c memstats.c
+hash_impl_CFILES=csum-mhash.c csum-gcrypt.c
+hashstats_CFILES=hashstats.c
+btrfs_extent_same_CFILES=btrfs-extent-same.c
+csum_test_CFILES=csum-test.c
+DIST_CFILES:=$(CFILES) $(hashstats_CFILES) $(btrfs_extent_same_CFILES) \
+ $(csum_test_CFILES) $(hash_impl_CFILES)
+HEADERS=csum.h hash-tree.h results-tree.h kernel.h list.h rbtree.h dedupe.h \
+ btrfs-ioctl.h filerec.h btrfs-util.h debug.h util.h serialize.h \
+ memstats.h
+DIST_SOURCES:=$(DIST_CFILES) $(HEADERS) LICENSE Makefile rbtree.txt README \
+ TODO $(MANPAGES) SubmittingPatches
DIST=duperemove-$(RELEASE)
DIST_TARBALL=$(DIST).tar.gz
TEMP_INSTALL_DIR:=$(shell mktemp -du -p .)
-hash_obj=csum-gcrypt.o
+crypt_CFILES=csum-gcrypt.c
crypt_CFLAGS=$(shell libgcrypt-config --cflags)
crypt_LIBS=$(shell libgcrypt-config --libs)
ifdef USE_MHASH
- hash_obj=csum-mhash.o
+ crypt_CFILES=csum-mhash.c
crypt_CFLAGS=
crypt_LIBS=-lmhash
endif
+crypt_obj=$(crypt_CFILES:.c=.o)
+
+CFILES += $(crypt_CFILES)
+objects = $(CFILES:.c=.o)
+
+hashstats_obj = $(crypt_obj) rbtree.o hash-tree.o filerec.o util.o serialize.o \
+ results-tree.o
+show_shared_obj = rbtree.o util.o
+csum_test_obj = $(crypt_obj) util.o
+
+progs = duperemove hashstats btrfs-extent-same show-shared-extents csum-test
glib_CFLAGS=$(shell pkg-config --cflags glib-2.0)
glib_LIBS=$(shell pkg-config --libs glib-2.0)
override CFLAGS += -D_FILE_OFFSET_BITS=64 -DVERSTRING=\"$(RELEASE)\" \
- $(crypt_CFLAGS) $(glib_CFLAGS)
+ $(crypt_CFLAGS) $(glib_CFLAGS) -rdynamic
LIBRARY_FLAGS += $(crypt_LIBS) $(glib_LIBS)
-objects = duperemove.o rbtree.o hash-tree.o results-tree.o dedupe.o filerec.o util.o serialize.o btrfs-util.o $(hash_obj)
-progs = duperemove
-
DESTDIR = /
PREFIX = /usr/local
SHAREDIR = $(PREFIX)/share
SBINDIR = $(PREFIX)/sbin
MANDIR = $(SHAREDIR)/man
-all: $(progs) kernel.h list.h btrfs-ioctl.h debug.h
+.c.o:
+ $(CC) $(CFLAGS) -c $< -o $@ $(LIBRARY_FLAGS)
-duperemove: $(objects) kernel.h duperemove.c
+all: $(progs)
+#TODO: Replace this with an auto-dependency
+$(objects): $(HEADERS)
+duperemove: $(objects)
$(CC) $(CFLAGS) $(objects) -o duperemove $(LIBRARY_FLAGS)
tarball: clean
@@ -59,15 +83,14 @@
install -m 0644 $$man $(DESTDIR)$(MANDIR)/man8; \
done
-csum-test: $(hash_obj) csum-test.c
- $(CC) $(CFLAGS) $(hash_obj) -o csum-test csum-test.c $(LIBRARY_FLAGS)
+csum-test: $(csum_test_obj) csum-test.c
+ $(CC) $(CFLAGS) $(csum_test_obj) -o csum-test csum-test.c $(LIBRARY_FLAGS)
-filerec-test: filerec.c filerec.h rbtree.o
- $(CC) $(CFLAGS) -DFILEREC_TEST filerec.c rbtree.o -o filerec-test $(LIBRARY_FLAGS)
+show-shared-extents: $(show_shared_obj) filerec.c
+ $(CC) $(CFLAGS) -DFILEREC_TEST filerec.c $(show_shared_obj) -o show-shared-extents $(LIBRARY_FLAGS)
-hashstats_obj = $(hash_obj) rbtree.o hash-tree.o filerec.o util.o serialize.o results-tree.o
hashstats: $(hashstats_obj) hashstats.c
$(CC) $(CFLAGS) $(hashstats_obj) hashstats.c -o hashstats $(LIBRARY_FLAGS)
clean:
- rm -fr $(objects) $(progs) $(DIST_TARBALL) btrfs-extent-same filerec-test hashstats csum-*.o *~
+ rm -fr $(objects) $(progs) $(DIST_TARBALL) btrfs-extent-same filerec-test show-shared-extents hashstats csum-*.o *~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/SubmittingPatches new/duperemove-v0.09.beta3/SubmittingPatches
--- old/duperemove-v0.09.beta2/SubmittingPatches 1970-01-01 01:00:00.000000000 +0100
+++ new/duperemove-v0.09.beta3/SubmittingPatches 2014-11-17 20:07:48.000000000 +0100
@@ -0,0 +1,103 @@
+- Submit via github or e-mail to mfasheh(a)suse.de is fine.
+
+- Coding style is Linux kernel except where the code differs ;)
+
+https://www.kernel.org/doc/Documentation/CodingStyle
+
+- Please sign-off your patches, Linux kernel style:
+
+From section 12 of https://www.kernel.org/doc/Documentation/SubmittingPatches :
+
+12) Sign your work
+
+To improve tracking of who did what, especially with patches that can
+percolate to their final resting place in the kernel through several
+layers of maintainers, we've introduced a "sign-off" procedure on
+patches that are being emailed around.
+
+The sign-off is a simple line at the end of the explanation for the
+patch, which certifies that you wrote it or otherwise have the right to
+pass it on as an open-source patch. The rules are pretty simple: if you
+can certify the below:
+
+ Developer's Certificate of Origin 1.1
+
+ By making a contribution to this project, I certify that:
+
+ (a) The contribution was created in whole or in part by me and I
+ have the right to submit it under the open source license
+ indicated in the file; or
+
+ (b) The contribution is based upon previous work that, to the best
+ of my knowledge, is covered under an appropriate open source
+ license and I have the right under that license to submit that
+ work with modifications, whether created in whole or in part
+ by me, under the same open source license (unless I am
+ permitted to submit under a different license), as indicated
+ in the file; or
+
+ (c) The contribution was provided directly to me by some other
+ person who certified (a), (b) or (c) and I have not modified
+ it.
+
+ (d) I understand and agree that this project and the contribution
+ are public and that a record of the contribution (including all
+ personal information I submit with it, including my sign-off) is
+ maintained indefinitely and may be redistributed consistent with
+ this project or the open source license(s) involved.
+
+then you just add a line saying
+
+ Signed-off-by: Random J Developer <random(a)developer.example.org>
+
+using your real name (sorry, no pseudonyms or anonymous contributions.)
+
+Some people also put extra tags at the end. They'll just be ignored for
+now, but you can do this to mark internal company procedures or just
+point out some special detail about the sign-off.
+
+If you are a subsystem or branch maintainer, sometimes you need to slightly
+modify patches you receive in order to merge them, because the code is not
+exactly the same in your tree and the submitters'. If you stick strictly to
+rule (c), you should ask the submitter to rediff, but this is a totally
+counter-productive waste of time and energy. Rule (b) allows you to adjust
+the code, but then it is very impolite to change one submitter's code and
+make him endorse your bugs. To solve this problem, it is recommended that
+you add a line between the last Signed-off-by header and yours, indicating
+the nature of your changes. While there is nothing mandatory about this, it
+seems like prepending the description with your mail and/or name, all
+enclosed in square brackets, is noticeable enough to make it obvious that
+you are responsible for last-minute changes. Example :
+
+ Signed-off-by: Random J Developer <random(a)developer.example.org>
+ [lucky(a)maintainer.example.org: struct foo moved from foo.c to foo.h]
+ Signed-off-by: Lucky K Maintainer <lucky(a)maintainer.example.org>
+
+This practise is particularly helpful if you maintain a stable branch and
+want at the same time to credit the author, track changes, merge the fix,
+and protect the submitter from complaints. Note that under no circumstances
+can you change the author's identity (the From header), as it is the one
+which appears in the changelog.
+
+Special note to back-porters: It seems to be a common and useful practise
+to insert an indication of the origin of a patch at the top of the commit
+message (just after the subject line) to facilitate tracking. For instance,
+here's what we see in 2.6-stable :
+
+ Date: Tue May 13 19:10:30 2008 +0000
+
+ SCSI: libiscsi regression in 2.6.25: fix nop timer handling
+
+ commit 4cf1043593db6a337f10e006c23c69e5fc93e722 upstream
+
+And here's what appears in 2.4 :
+
+ Date: Tue May 13 22:12:27 2008 +0200
+
+ wireless, airo: waitbusy() won't delay
+
+ [backport of 2.6 commit b7acbdfbd1f277c1eb23f344f899cfa4cd0bf36a]
+
+Whatever the format, this information provides a valuable help to people
+tracking your trees, and to people trying to trouble-shoot bugs in your
+tree.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/csum-test.c new/duperemove-v0.09.beta3/csum-test.c
--- old/duperemove-v0.09.beta2/csum-test.c 1970-01-01 01:00:00.000000000 +0100
+++ new/duperemove-v0.09.beta3/csum-test.c 2014-11-17 20:07:48.000000000 +0100
@@ -0,0 +1,94 @@
+/*
+ * csum-test.c
+ *
+ * Test the checksumming code of duperemove. You can compare the
+ * output of this software with that of 'sha256sum'
+ *
+ * Copyright (C) 2014 SUSE. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public
+ * License version 2 as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * Authors: Mark Fasheh <mfasheh(a)suse.de>
+ */
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <errno.h>
+
+#include <stdio.h>
+
+#include "csum.h"
+
+
+#define BUF_LEN 4096
+static unsigned char buf[BUF_LEN];
+static unsigned char digest[DIGEST_LEN_MAX] = { 0, };
+
+int main(int argc, char **argv)
+{
+ char *fname = argv[1];
+ int fd, ret;
+ size_t len;
+ struct stat s;
+ struct running_checksum *csum;
+
+ init_hash();
+
+ if (argc != 2) {
+ fprintf(stderr, "Usage: %s filename\n", argv[0]);
+ return 1;
+ }
+
+ fd = open(fname, O_RDONLY);
+ if (fd < 0)
+ return errno;
+
+ /*
+ * If the test file size is less than BUF_LEN we'll exercise
+ * the one-shot function. Otherwise, do a running checksum.
+ */
+ ret = fstat(fd, &s);
+ if (ret)
+ return errno;
+
+ if (s.st_size == 0)
+ return 0;
+
+ if (s.st_size <= BUF_LEN) {
+ len = read(fd, buf, BUF_LEN);
+ if (len < 0)
+ return errno;
+ if (len == 0)
+ return 1;
+ checksum_block((char *)buf, len, digest);
+ } else {
+ csum = start_running_checksum();
+
+ while (1) {
+ len = read(fd, buf, BUF_LEN);
+ if (len < 0)
+ return errno;
+ if (len) {
+ add_to_running_checksum(csum, len, buf);
+ } else
+ break; /* EOF */
+ }
+
+ finish_running_checksum(csum, digest);
+ }
+
+ debug_print_digest(stdout, digest);
+ printf(" %s\n", fname);
+
+ return 0;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/debug.h new/duperemove-v0.09.beta3/debug.h
--- old/duperemove-v0.09.beta2/debug.h 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/debug.h 2014-11-17 20:07:48.000000000 +0100
@@ -7,70 +7,22 @@
extern int verbose;
extern int debug;
-/*
- * Rudimentary tracking of object allocation. Use this within a c file
- * to declare the tracking variable and the print function body.
- *
- * In addition, debug.h needs to declare an extern and function
- * prototype (see below) and print_mem_stats() in util.c needs an
- * update.
- */
-#define declare_alloc_tracking(_type) \
-extern long long num_##_type; \
-static inline struct _type *malloc_##_type(void) \
-{ \
- struct _type *t = malloc(sizeof(struct _type)); \
- if (t) \
- num_##_type++; \
- return t; \
-} \
-static inline struct _type *calloc_##_type(int n) \
-{ \
- struct _type *t = calloc(n, sizeof(struct _type)); \
- if (t) \
- num_##_type += n; \
- return t; \
-} \
-static inline void free_##_type(struct _type *t) \
-{ \
- if (t) { \
- num_##_type--; \
- free(t); \
- } \
-} \
-void show_allocs_##_type(void) \
-{ \
- long size = sizeof(struct _type); \
- unsigned long long total = size * num_##_type; \
- printf("struct " #_type " num: %llu sizeof: %lu total: %llu\n", \
- num_##_type, size, total); \
-}
-
-#define declare_alloc_tracking_header(_type) \
-long long num_##_type; \
-void show_allocs_##_type(void);
-
-declare_alloc_tracking_header(file_block);
-declare_alloc_tracking_header(dupe_blocks_list);
-declare_alloc_tracking_header(dupe_extents);
-declare_alloc_tracking_header(extent);
-declare_alloc_tracking_header(filerec);
-declare_alloc_tracking_header(files_compared);
-declare_alloc_tracking_header(filerec_token);
-declare_alloc_tracking_header(file_hash_head);
-/* Can be called anywhere we want to dump the above statistics */
-void print_mem_stats(void);
+#define likely(x) __builtin_expect(!!(x), 1)
+#define unlikely(x) __builtin_expect(!!(x), 0)
#define dprintf(args...) if (debug) printf(args)
#define vprintf(args...) if (verbose) printf(args)
+void print_stack_trace(void);/* defined in util.c */
#define abort_lineno() do { \
printf("ERROR: %s:%d\n", __FILE__, __LINE__); \
+ print_stack_trace(); \
abort(); \
} while (0)
#define abort_on(condition) do { \
- if (condition) { \
- printf("ERROR: %s:%d\n", __FILE__, __LINE__);\
+ if (unlikely(condition)) { \
+ printf("ERROR: %s:%d\n", __FILE__, __LINE__); \
+ print_stack_trace(); \
abort(); \
} \
} while(0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/dedupe.c new/duperemove-v0.09.beta3/dedupe.c
--- old/duperemove-v0.09.beta2/dedupe.c 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/dedupe.c 2014-11-17 20:07:48.000000000 +0100
@@ -142,7 +142,7 @@
struct dedupe_ctxt *ctxt = calloc(1, sizeof(*ctxt));
struct btrfs_ioctl_same_args *same;
unsigned int same_size;
- unsigned int max_dest_files = max_extents - 1;
+ unsigned int max_dest_files;
if (ctxt == NULL)
return NULL;
@@ -150,6 +150,8 @@
if (max_extents > MAX_DEDUPES_PER_IOCTL)
max_extents = MAX_DEDUPES_PER_IOCTL;
+ max_dest_files = max_extents - 1;
+
same_size = sizeof(*same) +
max_dest_files * sizeof(struct btrfs_ioctl_same_extent_info);
same = calloc(1, same_size);
@@ -299,8 +301,11 @@
{
struct dedupe_req *req;
- if (list_empty(&ctxt->completed))
- goto out;
+ /*
+ * We should not be called if dedupe_extents wasn't called or if
+ * we already passed back all the results..
+ */
+ abort_on(list_empty(&ctxt->completed));
req = list_entry(ctxt->completed.next, struct dedupe_req, req_list);
list_del_init(&req->req_list);
@@ -311,6 +316,6 @@
*file = req->req_file;
free_dedupe_req(req);
-out:
+
return !!list_empty(&ctxt->completed);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/duperemove.8 new/duperemove-v0.09.beta3/duperemove.8
--- old/duperemove-v0.09.beta2/duperemove.8 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/duperemove.8 2014-11-17 20:07:48.000000000 +0100
@@ -92,6 +92,25 @@
deduped from.
.TP
+\fB\--lookup-extents=[yes|no]\fR
+While checksumming a file, duperemove will lookup file extent
+state. This information is later used to optimize the search for
+duplicate extents. This defaults to on. However, if you use duperemove on a
+subvolume that has been snapshotted you will want to read below.
+
+On btrfs, extents which have been snapshotted are reported as
+shared. Internally duperemove considers shared extents as
+deduped. When run on a subvolume with snapshots then, duperemove may
+skip some or all extents, depending on when the most recent snapshot
+was taken.
+
+The workaround is to run duperemove at least once with
+\fB\--lookup-extents=no\fR so that it considers all extents for
+dedupe. You can then run with extent lookups on until your next snapshot.
+
+We plan to remove this restriction in a future version of duperemove.
+
+.TP
\fB\-?, --help\fR
Prints help text.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/duperemove.c new/duperemove-v0.09.beta3/duperemove.c
--- old/duperemove-v0.09.beta2/duperemove.c 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/duperemove.c 2014-11-17 20:07:48.000000000 +0100
@@ -46,6 +46,7 @@
#include "util.h"
#include "serialize.h"
#include "btrfs-util.h"
+#include "memstats.h"
#include "debug.h"
/* exported via debug.h */
@@ -65,12 +66,15 @@
static int recurse_dirs = 0;
static int target_rw = 1;
static int version_only = 0;
+static int one_file_system = 0;
+static dev_t one_fs_dev = 0;
static int write_hashes = 0;
static int scramble_filenames = 0;
static int read_hashes = 0;
static char *serialize_fname = NULL;
static unsigned int hash_threads = 0;
+static int do_lookup_extents = 1;
static int fancy_status = 0;
@@ -214,14 +218,18 @@
uint64_t *kern_bytes)
{
int ret = 0;
+ int last = 0;
int rc;
uint64_t shared_prev, shared_post;
- unsigned int processed = 0;
struct extent *extent;
struct dedupe_ctxt *ctxt = NULL;
uint64_t len = dext->de_len;
LIST_HEAD(open_files);
struct filerec *file;
+ struct extent *prev = NULL;
+ struct extent *to_add;
+
+ abort_on(dext->de_num_dupes < 2);
shared_prev = shared_post = 0ULL;
add_shared_extents(dext, &shared_prev);
@@ -231,26 +239,25 @@
extent->e_file->filename,
(unsigned long long)extent->e_loff / blocksize,
(unsigned long long)extent->e_loff);
- processed++;
+ if (list_is_last(&extent->e_list, &dext->de_extents))
+ last = 1;
+
+ to_add = extent;
file = extent->e_file;
- if (list_empty(&file->tmp_list)) {
- /* only open the file once per dedupe pass */
- ret = filerec_open(file, target_rw);
- if (ret) {
- fprintf(stderr, "%s: Skipping dedupe.\n",
- extent->e_file->filename);
- /*
- * If this was our last duplicate extent in
- * the list, and we added dupes from a
- * previous iteration of the loop we need to
- * run dedupe before exiting.
- */
- if (ctxt && processed == dext->de_num_dupes)
- goto run_dedupe;
- continue;
- }
- list_add(&file->tmp_list, &open_files);
+ ret = filerec_open_once(file, target_rw, &open_files);
+ if (ret) {
+ fprintf(stderr, "%s: Skipping dedupe.\n",
+ extent->e_file->filename);
+ /*
+ * If this was our last duplicate extent in
+ * the list, and we added dupes from a
+ * previous iteration of the loop we need to
+ * run dedupe before exiting.
+ */
+ if (ctxt && last)
+ goto run_dedupe;
+ continue;
}
if (ctxt == NULL) {
@@ -264,47 +271,78 @@
goto out;
}
+ if (!last) {
+ /*
+ * We added our file already here via
+ * new_dedupe_ctxt, so go to the next
+ * loop iteration.
+ */
+ continue;
+ }
+
/*
- * We added our file already here during
- * allocation so go to the next loop
- * iteration.
+ * We started a new context, but only have one
+ * extent left to dedupe (need at least
+ * 2). This is pretty rare but instead of
+ * leaving it not-deduped, we can pick the
+ * most recent extent off the list and re-add
+ * that. The old extent won't be deduped again
+ * but this one will.
*/
- continue;
+ abort_on(!prev);
+ to_add = prev; /* The ole' extent switcharoo */
}
+ prev = extent; /* save previous extent for condition above */
- rc = add_extent_to_dedupe(ctxt, extent->e_loff, file);
+ rc = add_extent_to_dedupe(ctxt, to_add->e_loff, to_add->e_file);
if (rc) {
- if (rc < 0)
+ if (rc < 0) {
+ /* This can only be ENOMEM. */
fprintf(stderr, "%s: Request not queued.\n",
- extent->e_file->filename);
+ to_add->e_file->filename);
+ ret = ENOMEM;
+ goto out;
+ }
- /* Don't continue if we reached the end of our list */
- if (processed == dext->de_num_dupes)
+ if (last)
goto run_dedupe;
continue;
}
run_dedupe:
- printf("Dedupe %d extents with target: (%s, %s), \"%s\"\n",
- ctxt->num_queued, pretty_size(ctxt->orig_file_off),
- pretty_size(ctxt->orig_len), ctxt->ioctl_file->filename);
+ /*
+ * We can get here with only the target extent (0 queued) if
+ * filerec_open_list fails on the 2nd (and last)
+ * extent.
+ */
+ if (ctxt->num_queued) {
+ printf("Dedupe %d extents with target: (%s, %s), "
+ "\"%s\"\n",
+ ctxt->num_queued,
+ pretty_size(ctxt->orig_file_off),
+ pretty_size(ctxt->orig_len),
+ ctxt->ioctl_file->filename);
- ret = dedupe_extents(ctxt);
- if (ret) {
- ret = errno;
- fprintf(stderr,
- "FAILURE: Dedupe ioctl returns %d: %s\n",
- ret, strerror(ret));
- }
+ ret = dedupe_extents(ctxt);
+ if (ret) {
+ ret = errno;
+ fprintf(stderr,
+ "FAILURE: Dedupe ioctl returns %d: %s\n",
+ ret, strerror(ret));
+ }
- process_dedupe_results(ctxt, kern_bytes);
+ process_dedupe_results(ctxt, kern_bytes);
+ }
filerec_close_files_list(&open_files);
free_dedupe_ctxt(ctxt);
ctxt = NULL;
}
+ abort_on(ctxt != NULL);
+ abort_on(!list_empty(&open_files));
+
add_shared_extents(dext, &shared_post);
/*
* It's entirely possible that some other process is
@@ -329,6 +367,8 @@
*/
free_dedupe_ctxt(ctxt);
+ abort_on(!list_empty(&open_files));
+
return ret;
}
@@ -368,7 +408,7 @@
uint64_t off = 0;
ssize_t bytes = 0, bytes_read = 0;
int ret = 0;
- struct fiemap_ctxt *fc;
+ struct fiemap_ctxt *fc = NULL;
unsigned int flags, hole;
char *buf = malloc(blocksize);
@@ -382,11 +422,13 @@
printf("csum: %s \t[%llu/%llu]\n", file->filename,
__sync_add_and_fetch(&cur_num_filerecs, 1), num_filerecs);
- fc = alloc_fiemap_ctxt();
- if (fc == NULL) /* This should be non-fatal */
- fprintf(stderr,
- "Low memory allocating fiemap context for \"%s\"\n",
- file->filename);
+ if (do_lookup_extents) {
+ fc = alloc_fiemap_ctxt();
+ if (fc == NULL) /* This should be non-fatal */
+ fprintf(stderr,
+ "Low memory allocating fiemap context for \"%s\"\n",
+ file->filename);
+ }
ret = filerec_open(file, 0);
if (ret)
@@ -553,6 +595,7 @@
printf("\t-b bsize\tUse bsize blocks. Default is %dk.\n",
DEFAULT_BLOCKSIZE / 1024);
printf("\t-h\t\tPrint numbers in human-readable format.\n");
+ printf("\t-x\t\tDon't cross filesystem boundaries.\n");
printf("\t-v\t\tBe verbose.\n");
printf("\t--hash-threads=N\n\t\t\tUse N threads for hashing phase. "
"Default is automatically detected.\n");
@@ -560,6 +603,8 @@
"A file list is not required with this option.\n");
printf("\t--write-hashes=hashfile\n\t\t\tWrite hashes to a hashfile. "
"These can be read in at a later date and deduped from.\n");
+ printf("\t--lookup-extents=[yes|no]\n\t\t\tLookup extent info during "
+ "checksum phase. Defaults to yes.\n");
printf("\t--debug\t\tPrint debug messages, forces -v if selected.\n");
printf("\t--help\t\tPrints this help text.\n");
}
@@ -568,6 +613,7 @@
static int walk_dir(const char *name)
{
+ int ret = 0;
struct dirent *entry;
DIR *dirp;
@@ -588,8 +634,10 @@
if (entry->d_type == DT_REG ||
(recurse_dirs && entry->d_type == DT_DIR))
- if (add_file(entry->d_name, dirfd(dirp)))
- return 1;
+ if (add_file(entry->d_name, dirfd(dirp))) {
+ ret = 1;
+ goto out;
+ }
}
} while (entry != NULL);
@@ -598,8 +646,9 @@
errno, strerror(errno), path);
}
+out:
closedir(dirp);
- return 0;
+ return ret;
}
/*
@@ -614,6 +663,7 @@
char *pathtmp;
struct filerec *file;
uint64_t subvolid;
+ dev_t dev;
if (len > (path_max - pathp)) {
fprintf(stderr, "Path max exceeded: %s %s\n", path, name);
@@ -635,6 +685,16 @@
goto out;
}
+ dev = st.st_dev;
+ if (one_file_system) {
+ if (!one_fs_dev)
+ one_fs_dev = dev;
+ if (one_fs_dev != dev) {
+ dprintf("Skipping file %s because of -x\n", path);
+ goto out;
+ }
+ }
+
if (S_ISDIR(st.st_mode)) {
if (walk_dir(name))
return 1;
@@ -712,6 +772,15 @@
return 0;
}
+static int parse_yesno_option(char *arg, int default_val)
+{
+ if (strncmp(arg, "yes", 3) == 0)
+ return 1;
+ else if (strncmp(arg, "no", 2) == 0)
+ return 0;
+ return default_val;
+}
+
enum {
DEBUG_OPTION = CHAR_MAX + 1,
HELP_OPTION,
@@ -720,6 +789,8 @@
WRITE_HASHES_SCRAMBLE_OPTION,
READ_HASHES_OPTION,
HASH_THREADS_OPTION,
+ LOOKUP_EXTENTS_OPTION,
+ ONE_FILESYSTEM_OPTION,
};
/*
@@ -736,13 +807,15 @@
{ "write-hashes-scramble", 1, 0, WRITE_HASHES_SCRAMBLE_OPTION },
{ "read-hashes", 1, 0, READ_HASHES_OPTION },
{ "hash-threads", 1, 0, HASH_THREADS_OPTION },
+ { "lookup-extents", 1, 0, LOOKUP_EXTENTS_OPTION },
+ { "one-file-system", 0, 0, ONE_FILESYSTEM_OPTION },
{ 0, 0, 0, 0}
};
if (argc < 2)
return 1;
- while ((c = getopt_long(argc, argv, "Ab:vdDrh?", long_ops, NULL))
+ while ((c = getopt_long(argc, argv, "Ab:vdDrh?x", long_ops, NULL))
!= -1) {
switch (c) {
case 'A':
@@ -788,6 +861,13 @@
if (!hash_threads)
return EINVAL;
break;
+ case LOOKUP_EXTENTS_OPTION:
+ do_lookup_extents = parse_yesno_option(optarg, 1);
+ break;
+ case ONE_FILESYSTEM_OPTION:
+ case 'x':
+ one_file_system = 1;
+ break;
case HELP_OPTION:
case '?':
default:
@@ -1022,8 +1102,9 @@
* so we will want to account for this in a
* future change.
*/
- if (block1->b_flags & FILE_BLOCK_DEDUPED
- && block2->b_flags & FILE_BLOCK_DEDUPED)
+ if (do_lookup_extents &&
+ block1->b_flags & FILE_BLOCK_DEDUPED &&
+ block2->b_flags & FILE_BLOCK_DEDUPED)
continue;
file2 = block2->b_file;
@@ -1063,7 +1144,7 @@
if (!fancy_status)
return;
- progress = (float) processed / tree->num_hashes;
+ progress = (float) processed / tree->num_blocks;
pos = width * progress;
/* Only update our status every width% */
@@ -1091,10 +1172,10 @@
return;
if (err)
- printf("\rSearch exited (%llu processed) with error %d: "
+ printf("\nSearch exited (%llu processed) with error %d: "
"\"%s\"\n", processed, err, strerror(err));
else
- printf("\rSearch completed with no errors. \n");
+ printf("\nSearch completed with no errors. \n");
fflush(stdout);
}
@@ -1120,10 +1201,12 @@
goto out;
}
- processed++;
+ processed += dups->dl_num_elem;
node = rb_next(node);
}
+
+ update_extent_search_status(tree, processed);
out:
clear_extent_search_status(processed, ret);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/filerec.c new/duperemove-v0.09.beta3/filerec.c
--- old/duperemove-v0.09.beta2/filerec.c 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/filerec.c 2014-11-17 20:07:48.000000000 +0100
@@ -19,6 +19,7 @@
#include "rbtree.h"
#include "list.h"
#include "debug.h"
+#include "memstats.h"
#include "filerec.h"
@@ -281,18 +282,18 @@
if (write)
flags = O_RDWR;
- if (file->fd == -1) {
- fd = open(file->filename, flags);
- if (fd == -1) {
- fprintf(stderr, "Error %d: %s while opening \"%s\" "
- "(write=%d)\n",
- errno, strerror(errno), file->filename, write);
- return errno;
- }
+ abort_on(file->fd != -1);
- file->fd = fd;
+ fd = open(file->filename, flags);
+ if (fd == -1) {
+ fprintf(stderr, "Error %d: %s while opening \"%s\" "
+ "(write=%d)\n",
+ errno, strerror(errno), file->filename, write);
+ return errno;
}
+ file->fd = fd;
+
return 0;
}
@@ -304,6 +305,20 @@
}
}
+int filerec_open_once(struct filerec *file, int write,
+ struct list_head *open_files)
+{
+ int ret;
+
+ if (list_empty(&file->tmp_list)) {
+ ret = filerec_open(file, write);
+ if (ret)
+ return ret;
+ list_add(&file->tmp_list, open_files);
+ }
+ return 0;
+}
+
void filerec_close_files_list(struct list_head *open_files)
{
struct filerec *file, *tmp;
@@ -437,6 +452,10 @@
return err;
}
+#ifdef FILEREC_TEST
+static char *fiemap_flags_str(unsigned long long flags);
+#endif
+
/*
* Skeleton for this function taken from e2fsprogs.git/misc/filefrag.c
* which is Copyright 2003 by Theodore Ts'o and released under the GPL.
@@ -483,7 +502,7 @@
for (i = 0; i < fiemap->fm_mapped_extents; i++) {
if (fm_ext[i].fe_flags & FIEMAP_EXTENT_LAST)
last = 1;
-
+#ifndef FILEREC_TEST
dprintf("(fiemap) [%d] fe_logical: %llu, "
"fe_length: %llu, fe_physical: %llu, "
"fe_flags: 0x%x\n",
@@ -491,6 +510,16 @@
(unsigned long long)fm_ext[i].fe_length,
(unsigned long long)fm_ext[i].fe_physical,
fm_ext[i].fe_flags);
+#else
+ dprintf("(fiemap) [%d] fe_logical: %llu, "
+ "fe_length: %llu, fe_physical: %llu, "
+ "fe_flags: 0x%x %s\n",
+ i, (unsigned long long)fm_ext[i].fe_logical,
+ (unsigned long long)fm_ext[i].fe_length,
+ (unsigned long long)fm_ext[i].fe_physical,
+ fm_ext[i].fe_flags,
+ fiemap_flags_str(fm_ext[i].fe_flags));
+#endif
loff = fm_ext[i].fe_logical;
ext_len = fm_ext[i].fe_length;
@@ -540,6 +569,83 @@
}
#ifdef FILEREC_TEST
+#define FLAG_STR_LEN 4096
+static char flagstr[FLAG_STR_LEN];
+/* This function is not thread-safe */
+static char *fiemap_flags_str(unsigned long long flags)
+{
+ int size = FLAG_STR_LEN;
+ int written = 0;
+ char *str = flagstr;
+
+ if (flags) {
+ written = snprintf(str, size, "(");
+ str += written;
+ size -= written;
+ }
+
+ if (flags & FIEMAP_EXTENT_LAST) {
+ written = snprintf(str, size, "last ");
+ str += written;
+ size -= written;
+ }
+
+ if (flags & FIEMAP_EXTENT_UNKNOWN) {
+ written = snprintf(str, size, "unknown ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_DELALLOC) {
+ written = snprintf(str, size, "delalloc ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_ENCODED) {
+ written = snprintf(str, size, "encoded ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_DATA_ENCRYPTED) {
+ written = snprintf(str, size, "data_encrypted ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_NOT_ALIGNED) {
+ written = snprintf(str, size, "not_aligned ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_DATA_INLINE) {
+ written = snprintf(str, size, "data_inline ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_DATA_TAIL) {
+ written = snprintf(str, size, "data_tail ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_UNWRITTEN) {
+ written = snprintf(str, size, "unwritten ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_MERGED) {
+ written = snprintf(str, size, "merged ");
+ str += written;
+ size -= written;
+ }
+ if (flags & FIEMAP_EXTENT_SHARED) {
+ written = snprintf(str, size, "shared ");
+ str += written;
+ size -= written;
+ }
+
+ if (flags)
+ snprintf(str, size, ")");
+
+ return flagstr;
+}
int debug = 1; /* Want prints from filerec_count_shared */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/filerec.h new/duperemove-v0.09.beta3/filerec.h
--- old/duperemove-v0.09.beta2/filerec.h 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/filerec.h 2014-11-17 20:07:48.000000000 +0100
@@ -36,6 +36,8 @@
int filerec_open(struct filerec *file, int write);
void filerec_close(struct filerec *file);
+int filerec_open_once(struct filerec *file, int write,
+ struct list_head *open_files);
void filerec_close_files_list(struct list_head *open_files);
int filerec_count_shared(struct filerec *file, uint64_t start, uint64_t len,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/hash-tree.c new/duperemove-v0.09.beta3/hash-tree.c
--- old/duperemove-v0.09.beta2/hash-tree.c 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/hash-tree.c 2014-11-17 20:07:48.000000000 +0100
@@ -30,6 +30,7 @@
#include "hash-tree.h"
#include "debug.h"
+#include "memstats.h"
declare_alloc_tracking(file_block);
declare_alloc_tracking(dupe_blocks_list);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/memstats.c new/duperemove-v0.09.beta3/memstats.c
--- old/duperemove-v0.09.beta2/memstats.c 1970-01-01 01:00:00.000000000 +0100
+++ new/duperemove-v0.09.beta3/memstats.c 2014-11-17 20:07:48.000000000 +0100
@@ -0,0 +1,15 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+#include "memstats.h"
+
+void print_mem_stats(void)
+{
+ printf("Duperemove memory usage statistics:\n");
+ show_allocs_file_block();
+ show_allocs_dupe_blocks_list();
+ show_allocs_dupe_extents();
+ show_allocs_extent();
+ show_allocs_filerec();
+ show_allocs_filerec_token();
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/memstats.h new/duperemove-v0.09.beta3/memstats.h
--- old/duperemove-v0.09.beta2/memstats.h 1970-01-01 01:00:00.000000000 +0100
+++ new/duperemove-v0.09.beta3/memstats.h 2014-11-17 20:07:48.000000000 +0100
@@ -0,0 +1,58 @@
+#ifndef __MEMSTATS_H__
+#define __MEMSTATS_H__
+
+/*
+ * Rudimentary tracking of object allocation. Use this within a c file
+ * to declare the tracking variable and the print function body.
+ *
+ * In addition, memstats.h needs to declare an extern and function
+ * prototype (see below) and print_mem_stats() in memstats.c needs an
+ * update.
+ */
+#define declare_alloc_tracking(_type) \
+extern long long num_##_type; \
+static inline struct _type *malloc_##_type(void) \
+{ \
+ struct _type *t = malloc(sizeof(struct _type)); \
+ if (t) \
+ num_##_type++; \
+ return t; \
+} \
+static inline struct _type *calloc_##_type(int n) \
+{ \
+ struct _type *t = calloc(n, sizeof(struct _type)); \
+ if (t) \
+ num_##_type += n; \
+ return t; \
+} \
+static inline void free_##_type(struct _type *t) \
+{ \
+ if (t) { \
+ num_##_type--; \
+ free(t); \
+ } \
+} \
+void show_allocs_##_type(void) \
+{ \
+ long size = sizeof(struct _type); \
+ unsigned long long total = size * num_##_type; \
+ printf("struct " #_type " num: %llu sizeof: %lu total: %llu\n", \
+ num_##_type, size, total); \
+}
+
+#define declare_alloc_tracking_header(_type) \
+long long num_##_type; \
+void show_allocs_##_type(void);
+
+declare_alloc_tracking_header(file_block);
+declare_alloc_tracking_header(dupe_blocks_list);
+declare_alloc_tracking_header(dupe_extents);
+declare_alloc_tracking_header(extent);
+declare_alloc_tracking_header(filerec);
+declare_alloc_tracking_header(files_compared);
+declare_alloc_tracking_header(filerec_token);
+declare_alloc_tracking_header(file_hash_head);
+/* Can be called anywhere we want to dump the above statistics */
+void print_mem_stats(void);
+
+#endif /* __MEMSTATS_H__ */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/results-tree.c new/duperemove-v0.09.beta3/results-tree.c
--- old/duperemove-v0.09.beta2/results-tree.c 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/results-tree.c 2014-11-17 20:07:48.000000000 +0100
@@ -31,6 +31,7 @@
#include "results-tree.h"
#include "debug.h"
+#include "memstats.h"
declare_alloc_tracking(dupe_extents);
declare_alloc_tracking(extent);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/duperemove-v0.09.beta2/util.c new/duperemove-v0.09.beta3/util.c
--- old/duperemove-v0.09.beta2/util.c 2014-10-31 00:27:39.000000000 +0100
+++ new/duperemove-v0.09.beta3/util.c 2014-11-17 20:07:48.000000000 +0100
@@ -24,6 +24,7 @@
#include <stdint.h>
#include <ctype.h>
#include <inttypes.h>
+#include <execinfo.h>
#include "debug.h"
#include "util.h"
@@ -117,13 +118,16 @@
size_strs[num_divs]);
}
-void print_mem_stats(void)
+void print_stack_trace(void)
{
- printf("Duperemove memory usage statistics:\n");
- show_allocs_file_block();
- show_allocs_dupe_blocks_list();
- show_allocs_dupe_extents();
- show_allocs_extent();
- show_allocs_filerec();
- show_allocs_filerec_token();
+ void *trace[16];
+ char **messages = (char **)NULL;
+ int i, trace_size = 0;
+
+ trace_size = backtrace(trace, 16);
+ messages = backtrace_symbols(trace, trace_size);
+ printf("[stack trace follows]\n");
+ for (i=0; i < trace_size; i++)
+ printf("%s\n", messages[i]);
+ free(messages);
}
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package u-boot for openSUSE:Factory checked in at 2014-11-19 20:26:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/u-boot (Old)
and /work/SRC/openSUSE:Factory/.u-boot.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "u-boot"
Changes:
--------
--- /work/SRC/openSUSE:Factory/u-boot/u-boot-am335xevm.changes 2014-11-13 09:17:37.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.u-boot.new/u-boot-am335xevm.changes 2014-11-19 20:30:26.000000000 +0100
@@ -1,0 +2,16 @@
+Mon Nov 17 21:15:50 UTC 2014 - oscar(a)naiandei.net
+
+- Add u-boot-with-sunxi-spl.bin for sunxi boards
+
+-------------------------------------------------------------------
+Mon Nov 17 15:17:56 UTC 2014 - guillaume(a)opensuse.org
+
+- Make use of RPM_OPT_FLAGS during make
+
+-------------------------------------------------------------------
+Sat Nov 15 14:55:06 UTC 2014 - guillaume(a)opensuse.org
+
+- Fix sunxi boards (use u-boot.img instead of u-boot.bin)
+- Remove duplicated default install line
+
+-------------------------------------------------------------------
u-boot-arndale.changes: same change
u-boot-colibrit20iris.changes: same change
u-boot-cubieboard.changes: same change
u-boot-cubieboard2.changes: same change
u-boot-cubietruck.changes: same change
u-boot-highbank.changes: same change
u-boot-melea1000.changes: same change
u-boot-mx53loco.changes: same change
u-boot-mx6qsabrelite.changes: same change
u-boot-omap3beagle.changes: same change
u-boot-omap4panda.changes: same change
u-boot-paz00.changes: same change
u-boot-rpib.changes: same change
u-boot-snow.changes: same change
u-boot-vexpressaemv8a.changes: same change
u-boot.changes: same change
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ u-boot-am335xevm.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" am335x_evm_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-arndale.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" arndale_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-colibrit20iris.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" colibri_t20_iris_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-cubieboard.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" Cubieboard_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,15 +103,14 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
- install -D -m 0644 u-boot-dtb-tegra.bin %{buildroot}/boot/u-boot.bin
-elif [ -f u-boot-dtb.bin ]; then
- install -D -m 0644 u-boot-dtb.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot-dtb-tegra.img %{buildroot}/boot/u-boot.img
+elif [ -f u-boot-dtb.img ]; then
+ install -D -m 0644 u-boot-dtb.img %{buildroot}/boot/u-boot.img
else
- install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
fi
%if %x_loader == 1
install -D -m 0755 MLO %{buildroot}/boot/MLO
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-cubieboard2.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" Cubieboard2_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,15 +103,14 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
- install -D -m 0644 u-boot-dtb-tegra.bin %{buildroot}/boot/u-boot.bin
-elif [ -f u-boot-dtb.bin ]; then
- install -D -m 0644 u-boot-dtb.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot-dtb-tegra.img %{buildroot}/boot/u-boot.img
+elif [ -f u-boot-dtb.img ]; then
+ install -D -m 0644 u-boot-dtb.img %{buildroot}/boot/u-boot.img
else
- install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
fi
%if %x_loader == 1
install -D -m 0755 MLO %{buildroot}/boot/MLO
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-cubietruck.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" Cubietruck_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,15 +103,14 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
- install -D -m 0644 u-boot-dtb-tegra.bin %{buildroot}/boot/u-boot.bin
-elif [ -f u-boot-dtb.bin ]; then
- install -D -m 0644 u-boot-dtb.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot-dtb-tegra.img %{buildroot}/boot/u-boot.img
+elif [ -f u-boot-dtb.img ]; then
+ install -D -m 0644 u-boot-dtb.img %{buildroot}/boot/u-boot.img
else
- install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
fi
%if %x_loader == 1
install -D -m 0755 MLO %{buildroot}/boot/MLO
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-highbank.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" highbank_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-melea1000.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" Mele_A1000_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,15 +103,14 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
- install -D -m 0644 u-boot-dtb-tegra.bin %{buildroot}/boot/u-boot.bin
-elif [ -f u-boot-dtb.bin ]; then
- install -D -m 0644 u-boot-dtb.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot-dtb-tegra.img %{buildroot}/boot/u-boot.img
+elif [ -f u-boot-dtb.img ]; then
+ install -D -m 0644 u-boot-dtb.img %{buildroot}/boot/u-boot.img
else
- install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
+ install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
fi
%if %x_loader == 1
install -D -m 0755 MLO %{buildroot}/boot/MLO
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-mx53loco.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" mx53loco_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.imx %{buildroot}/boot/u-boot.imx
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-mx6qsabrelite.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" mx6qsabrelite_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.imx %{buildroot}/boot/u-boot.imx
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-omap3beagle.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" omap3_beagle_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-omap4panda.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" omap4_panda_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-paz00.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" paz00_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-rpib.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:28.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" rpi_b_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-snow.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:28.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:29.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" snow_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.img %{buildroot}/boot/u-boot.img
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot-vexpressaemv8a.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:29.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:29.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" vexpress_aemv8a_defconfig
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
++++++ u-boot.spec ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:29.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:29.000000000 +0100
@@ -54,7 +54,7 @@
# needed for include/config/auto.conf
make defconfig
make silentoldconfig
-make USE_PRIVATE_LIBGG=yes tools-only
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes tools-only
%install
install -D -m 0755 tools/mkimage %{buildroot}%{_bindir}/mkimage
++++++ pre_checkin.sh ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:29.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:29.000000000 +0100
@@ -44,11 +44,11 @@
XLOADER=1 ;;
*arndale*) BINEND=bin
ARNDALE_SPL=1 ;;
-*Cubieboard*|Cubietruck*) BINEND=bin
+*Cubieboard*|Cubietruck*) BINEND=img
SUNXI_SPL=1 ;;
-*Mele_A1000*) BINEND=bin
+*Mele_A1000*) BINEND=img
SUNXI_SPL=1 ;;
-*Hyundai_A7HD*) BINEND=bin
+*Hyundai_A7HD*) BINEND=img
SUNXI_SPL=1 ;;
*snow*) BINEND=img ;;
mx6_cubox-i*) BINEND=img
++++++ u-boot-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:29.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:29.000000000 +0100
@@ -6,4 +6,3 @@
addFilter("incorrect-fsf-address")
addFilter("file-contains-date-and-time")
addFilter("strict-aliasing-punning")
-addFilter("no-rpm-opt-flags")
++++++ u-boot.spec.in ++++++
--- /var/tmp/diff_new_pack.nqV9Uq/_old 2014-11-19 20:30:29.000000000 +0100
+++ /var/tmp/diff_new_pack.nqV9Uq/_new 2014-11-19 20:30:29.000000000 +0100
@@ -95,9 +95,7 @@
%build
make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" BOARDCONFIG
-# temporary disable of --build-id
-#make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
-make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes
+make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes
%if "%{name}" == "u-boot-snow"
# Chromebook ARM (snow) need a uImage format
export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map)
@@ -105,7 +103,6 @@
%endif
%install
-install -D -m 0644 u-boot.BINEND %{buildroot}/boot/u-boot.BINEND
# Some times u-boot needs a dtb to configure itself appended to the binary.
# In that case prefer the one with a working dtb already appended.
if [ -f u-boot-dtb-tegra.bin ]; then
@@ -127,6 +124,7 @@
%endif
%if %sunxi_spl == 1
install -D -m 0755 spl/sunxi-spl.bin %{buildroot}/boot/sunxi-spl.bin
+install -D -m 0755 u-boot-sunxi-with-spl.bin %{buildroot}/boot/u-boot-sunxi-with-spl.bin
%endif
%if %cuboxi_spl == 1
install -D -m 0755 SPL %{buildroot}/boot/cuboxi-spl.bin
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package pin for openSUSE:Factory checked in at 2014-11-19 20:26:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pin (Old)
and /work/SRC/openSUSE:Factory/.pin.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pin"
Changes:
--------
--- /work/SRC/openSUSE:Factory/pin/pin.changes 2014-10-08 22:14:23.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.pin.new/pin.changes 2014-11-19 20:30:23.000000000 +0100
@@ -1,0 +2,5 @@
+Sun Oct 19 17:49:00 UTC 2014 - Led <ledest(a)gmail.com>
+
+- fix bashisms
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ pin ++++++
--- /var/tmp/diff_new_pack.8qy3Cc/_old 2014-11-19 20:30:26.000000000 +0100
+++ /var/tmp/diff_new_pack.8qy3Cc/_new 2014-11-19 20:30:26.000000000 +0100
@@ -99,14 +99,19 @@
trap "rm -f \"$OUT_FILE\"; stty sane; exit 1" 1 2 3 7 13 15
unknown_option () {
- echo -e "\n Pin searches the installed packages (rpm -qi, -ql) and/or
- the ARCHIVES.gz file for the desired information. It
- shows also README, README.SuSE, FAQ, when available.
- \n unknown option
+ cat <<__EOF__
+
+Pin searches the installed packages (rpm -qi, -ql) and/or the ARCHIVES.gz file
+for the desired information. It shows also README, README.SuSE, FAQ, when
+available.
+
+unknown option
options : pin open dialog inputbox
pin string searches for string
pin -v version string use another version, not the current-i386
- pin -f string grepping also if package was found \n"
+ pin -f string grepping also if package was found
+
+__EOF__
exit 1
}
@@ -123,14 +128,23 @@
copy_archives () {
if [ ! -r "$ARC_DIR""ARCHIVES_""$USED_VERSION"".gz" ] ; then
- echo -e "\n no file "ARCHIVES_""$USED_VERSION"".gz" found "
- echo -e "\n please insert CD1/DVD in your CD-ROM/DVD drive / bitte CD1/DVD einlegen\n
- please eject all medias from other drives / bitte entfernen Sie andere Medien aus den Laufwerken.\n
- \n press enter to continue - Bitte enter druecken"
-
- read
-
- echo -e "\n please wait / bitte warten \n"
+ cat <<__EOF__
+
+no file ARCHIVES_$USED_VERSION.gz found
+
+please insert CD1/DVD in your CD-ROM/DVD drive / bitte CD1/DVD einlegen
+
+please eject all medias from other drives /
+bitte entfernen Sie andere Medien aus den Laufwerken.
+
+press enter to continue - Bitte enter druecken
+__EOF__
+
+ read dummy
+
+ echo
+ echo "please wait / bitte warten"
+ echo
if [ ! -e $ARC_DIR ] ; then
mkdir $ARC_DIR
@@ -140,22 +154,28 @@
USED_DEVICE="`hwinfo --cdrom | grep -i SuSE -B 10 | grep Device\ File: | cut -f2 -d : | cut -f2 -d " "`"
if [ "$USED_DEVICE" = "" ] ; then
- echo -e " no SUSE CD/DVD found, please copy ARCHIVES.gz manually to
- /var/lib/pin/ARCHIVES_"$USED_VERSION".gz and execute
- \"ln -s /var/lib/pin/ARCHIVES_"$USED_VERSION".gz /var/lib/pin/ARCHIVES.gz\" \n
- keine SUSE CD/DVD gefunden, bitte ARCHIVES.gz manuell nach
- /var/lib/pin/ARCHIVES_"$USED_VERSION".gz kopieren und
- \"ln -s /var/lib/pin/ARCHIVES_"$USED_VERSION".gz /var/lib/pin/ARCHIVES.gz\" aufrufen \n"
- exit
+ cat <<__EOF__
+no SUSE CD/DVD found, please copy ARCHIVES.gz manually to
+/var/lib/pin/ARCHIVES_$USED_VERSION.gz and execute
+"ln -s /var/lib/pin/ARCHIVES_$USED_VERSION.gz /var/lib/pin/ARCHIVES.gz"
+
+keine SUSE CD/DVD gefunden, bitte ARCHIVES.gz manuell nach
+/var/lib/pin/ARCHIVES_$USED_VERSION.gz kopieren und
+"ln -s /var/lib/pin/ARCHIVES_$USED_VERSION.gz /var/lib/pin/ARCHIVES.gz" aufrufen
+
+__EOF__
+
+ exit
fi
USED_DIR="`mount | grep "$USED_DEVICE" | cut -f3 -d " "`"
- [ -z "$USED_DIR" ] && { echo -e "\n ERROR: CD/DVD not mounted" >&2; exit 1; }
+ [ -z "$USED_DIR" ] && { echo >&2; echo " ERROR: CD/DVD not mounted" >&2; exit 1; }
CDROM="$USED_DIR"
-
- echo -e "\n copy ARCHIVES.gz to $ARC_DIR...\n"
+ echo
+ echo " copy ARCHIVES.gz to $ARC_DIR..."
+ echo
if [ -f "$CDROM/ARCHIVES.gz" ] ; then
cp "$CDROM""/ARCHIVES.gz" "$ARC_DIR""ARCHIVES_""$USED_VERSION"".gz"
if [ -r "$GREP_FILE" ] ; then
@@ -164,39 +184,58 @@
# make link
ln -s "ARCHIVES_""$USED_VERSION"".gz" "$GREP_FILE" 2>/dev/null
if [ "$?" = 1 ] ; then
- echo -e "\n error, could not make link"
+ echo
+ echo " error, could not make link"
echo " press return to delete old ARCHIVES.gz"
- read
+ read dummy
rm "$GREP_FILE"
ln -s "ARCHIVES_""$USED_VERSION"".gz" "$GREP_FILE" 2>/dev/null
fi
else
- echo -e "\n file not found, maybe wrong CD?\n please insert the first CD/DVD and restart\n\n"
+ echo
+ echo " file not found, maybe wrong CD?"
+ echo " please insert the first CD/DVD and restart"
+ echo
+ echo
fi
fi
}
if [ ! -r "$ARC_DIR""ARCHIVES_""$USED_VERSION"".gz" ] ; then
# roottest
- if test "$UID" != "0" -a "$USER" != root -a -z "$ROOT" ; then
- echo -e "\n *** pin found no ARCHIVES_"$USED_VERSION".gz file in $ARC_DIR\n
- pin will copy the files, please enter root password :\n\n"
+ if test "$(id -ru)" != "0" -a "$USER" != root -a -z "$ROOT" ; then
+ cat <<__EOF__
+
+ *** pin found no ARCHIVES_"$USED_VERSION".gz file in $ARC_DIR
+
+ pin will copy the files, please enter root password :
+
+
+__EOF__
su - root -s /bin/bash -- "$0" "$@"
exit
fi
# test for old ARC files
if [ -r "$GREP_FILE_OLD" ] ; then
- echo -e "\n copy the files from $ARC_DIR_OLD to $ARC_DIR .... \n\n"
+ echo
+ echo " copy the files from $ARC_DIR_OLD to $ARC_DIR ...."
+ echo
+ echo
if [ ! -r "$ARC_DIR" ] ; then
mkdir $ARC_DIR
fi
ARC_DIR_OLD="$ARC_DIR_OLD""*"
- cp -v $ARC_DIR_OLD $ARC_DIR && echo -e "\n files copied, you can remove $ARC_DIR_OLD\n if you want."
+ if cp -v $ARC_DIR_OLD $ARC_DIR; then
+ echo
+ echo " files copied, you can remove $ARC_DIR_OLD if you want."
+ fi
if [ -r "$GREP_FILE" ] ; then
cd $ARC_DIR
mv $ARC_BASE ARCHIVES_old_backup.gz
- echo -e "\n moved old $ARC_BASE to ARCHIVES_old_backup.gz \n rename it if you still need search this version"
+ echo
+ echo " moved old $ARC_BASE to ARCHIVES_old_backup.gz"
+ echo " rename it if you still need search this version"
fi
fi
@@ -221,11 +260,13 @@
if [ -r ""$ARC_DIR""$PIN_VERSION"" ] ; then
GREP_FILE=""$ARC_DIR""$PIN_VERSION""
else
- echo -e " $OPTARG not found! \n"
+ echo " $OPTARG not found!"
+ echo
# display all versions found in ARC_DIR
while true ; do
echo "$ARC_FILES"
- echo -e "\n please choose a version from above, \n just enter the name"
+ echo
+ echo " please choose a version from above, just enter the name"
read GREP_FILE
if [ "$GREP_FILE" = "" ] ;then
GREP_FILE=""$ARC_DIR""$ARC_BASE""
@@ -255,12 +296,17 @@
echo
exit 1
else
- echo -e "\n $GREP_FILE not found, copy ARCHIVES.gz from SuSE CD1 (or DVD) to
- /var/lib/pin/ARCHIVES_"$USED_VERSION".gz and execute
- \"ln -s /var/lib/pin/ARCHIVES_"$USED_VERSION".gz /var/lib/pin/ARCHIVES.gz\" \n
- $GREP_FILE nicht gefunden, bitte ARCHIVES.gz manuell nach
- /var/lib/pin/ARCHIVES_"$USED_VERSION".gz kopieren und
- \"ln -s /var/lib/pin/ARCHIVES_"$USED_VERSION".gz /var/lib/pin/ARCHIVES.gz\" aufrufen \n"
+ cat <<__EOF__
+
+ $GREP_FILE not found, copy ARCHIVES.gz from SuSE CD1 (or DVD) to
+ /var/lib/pin/ARCHIVES_$USED_VERSION.gz and execute
+ "ln -s /var/lib/pin/ARCHIVES_$USED_VERSION.gz /var/lib/pin/ARCHIVES.gz"
+
+ $GREP_FILE nicht gefunden, bitte ARCHIVES.gz manuell nach
+ /var/lib/pin/ARCHIVES_$USED_VERSION.gz kopieren und
+ "ln -s /var/lib/pin/ARCHIVES_$USED_VERSION.gz /var/lib/pin/ARCHIVES.gz" aufrufen
+
+__EOF__
exit
fi
@@ -289,32 +335,50 @@
exit
fi
-echo -e "pin $VER - package info for $SEARCH" > $OUT_FILE
+echo "pin $VER - package info for $SEARCH" > $OUT_FILE
if [ "$PIN_OPTION" != "-v" ] ; then
# check
rpm -qi $SEARCH 2> /dev/null 1> /dev/null
if [ $? != 0 ] ; then
- echo -e "\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** no rpm named $SEARCH installed" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+------------------------------------------------------------------
+*** no rpm named $SEARCH installed
+------------------------------------------------------------------
+
+__EOF__
RPM_ALL="`rpm -qa --nosignature --nodigest | grep $SEARCH`"
if [ "$RPM_ALL" != "" ] ; then
- echo -e " maybe just a typo? what about this:\n" >> $OUT_FILE
- echo "$RPM_ALL" >> $OUT_FILE
- echo -e "\n maybe better restart with another option? grepping anyway ...\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+ maybe just a typo? what about this:
+
+$RPM_ALL
+
+ maybe better restart with another option? grepping anyway ...
+
+__EOF__
fi
PIN_FULL="-f"
else
- echo -e "\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** rpm info" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+------------------------------------------------------------------
+*** rpm info
+------------------------------------------------------------------
+
+__EOF__
rpm -qi $SEARCH >> $OUT_FILE
- echo -e "\n\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** rpm filelist (*=executeable)" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+
+------------------------------------------------------------------
+*** rpm filelist (*=executeable)
+------------------------------------------------------------------
+
+__EOF__
rpm -ql $SEARCH | \
while read line
@@ -327,30 +391,50 @@
done
if [ -e /usr/share/doc/packages/$SEARCH ] ; then
- echo -e "\n\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** /usr/share/doc/packages/$SEARCH/" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+
+------------------------------------------------------------------
+*** /usr/share/doc/packages/$SEARCH/
+------------------------------------------------------------------
+
+__EOF__
ls -l /usr/share/doc/packages/$SEARCH/ >> $OUT_FILE
fi
if [ -e /usr/share/doc/packages/$SEARCH/README.SuSE ] ; then
- echo -e "\n\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** README.SuSE" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+
+------------------------------------------------------------------
+*** README.SuSE
+------------------------------------------------------------------
+
+__EOF__
cat /usr/share/doc/packages/$SEARCH/README.SuSE >> $OUT_FILE
fi
if [ -e /usr/share/doc/packages/$SEARCH/README ] ; then
- echo -e "\n\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** README" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+
+------------------------------------------------------------------
+*** README
+------------------------------------------------------------------
+
+__EOF__
cat /usr/share/doc/packages/$SEARCH/README >> $OUT_FILE
fi
if [ -e /usr/share/doc/packages/$SEARCH/FAQ ] ; then
- echo -e "\n\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** FAQ" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+
+------------------------------------------------------------------
+*** FAQ
+------------------------------------------------------------------
+
+__EOF__
cat /usr/share/doc/packages/$SEARCH/FAQ >> $OUT_FILE
fi
fi
@@ -358,10 +442,16 @@
fi
if [ "$PIN_OPTION" = "-v" ] || [ "$PIN_FULL" = "-f" ] ; then
- echo -e "\n grepping $GREP_FILE ... please wait\n"
- echo -e "\n------------------------------------------------------------------" >> $OUT_FILE
- echo -e "*** zgrep $SEARCH $GREP_FILE" >> $OUT_FILE
- echo -e "------------------------------------------------------------------\n" >> $OUT_FILE
+ cat >> $OUT_FILE <<__EOF__
+
+ grepping $GREP_FILE ... please wait
+
+
+------------------------------------------------------------------
+*** zgrep $SEARCH $GREP_FILE
+------------------------------------------------------------------
+
+__EOF__
ZGREP="`zgrep -i $SEARCH $GREP_FILE`"
echo "$ZGREP" | grep -i "\-->" |sort >> $OUT_FILE
echo >> $OUT_FILE
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package upx for openSUSE:Factory checked in at 2014-11-19 20:26:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/upx (Old)
and /work/SRC/openSUSE:Factory/.upx.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "upx"
Changes:
--------
--- /work/SRC/openSUSE:Factory/upx/upx.changes 2014-01-29 07:17:36.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.upx.new/upx.changes 2014-11-19 20:30:22.000000000 +0100
@@ -1,0 +2,9 @@
+Sun Nov 16 22:43:10 UTC 2014 - crrodriguez(a)opensuse.org
+
+- upx-endiantests.patch and lzma-x-endian.patch Correct
+ endianness tests by only considering what the compiler says
+ about target system and not a hardcoded architecture list.
+ (drop upx-3.03_ia64-endianity.patch)
+- build with hidden visibility.
+
+-------------------------------------------------------------------
Old:
----
upx-3.03_ia64-endianity.patch
New:
----
lzma-x-endian.patch
upx-endiantests.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ upx.spec ++++++
--- /var/tmp/diff_new_pack.W7dE3u/_old 2014-11-19 20:30:23.000000000 +0100
+++ /var/tmp/diff_new_pack.W7dE3u/_new 2014-11-19 20:30:23.000000000 +0100
@@ -26,13 +26,13 @@
Source: http://upx.sourceforge.net/download/%{name}-%{version}-src.tar.bz2
Source1: http://downloads.sf.net/sevenzip/lzma922.tar.bz2
-Patch1: %{name}-3.03_ia64-endianity.patch
-# PATCH-FIX-UPSTREAM upx-aarch64.patch schwab(a)suse.de -- Support for AArch64
-Patch2: upx-aarch64.patch
BuildRequires: gcc-c++
BuildRequires: libucl1-devel
BuildRequires: zlib-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
+Patch0: upx-aarch64.patch
+Patch1: upx-endiantests.patch
+Patch2: lzma-x-endian.patch
%description
UPX is a free, portable, extendable, high-performance executable packer
@@ -42,11 +42,12 @@
%prep
%setup -q -n %{name}-%{version}-src
-%patch -P 1 -P 2 -p1
-
+%patch0 -p1
+%patch1 -p1
mkdir "%_builddir/lzma-x"
pushd "%_builddir/lzma-x"
tar -xf "%{S:1}"
+%patch2 -p1
popd
# BSD-4 clause licensed file, remove just in case bnc#753791
@@ -57,7 +58,7 @@
export UPX_LZMA_VERSION=0x922
export UPX_UCLDIR=%{_prefix}
export CXX=g++
-make -C src CXXFLAGS="%{optflags}"
+make -C src CXXFLAGS="%{optflags} -fvisibility=hidden -fvisibility-inlines-hidden"
make -C doc
%install
++++++ lzma-x-endian.patch ++++++
--- lzma-x.orig/C/CpuArch.h
+++ lzma-x/C/CpuArch.h
@@ -47,12 +47,12 @@ If MY_CPU_LE_UNALIGN is not defined, we
#if defined(MY_CPU_X86_OR_AMD64)
#define MY_CPU_LE_UNALIGN
#endif
-
-#if defined(MY_CPU_X86_OR_AMD64) || defined(MY_CPU_ARM_LE) || defined(MY_CPU_IA64_LE) || defined(__ARMEL__) || defined(__MIPSEL__) || defined(__LITTLE_ENDIAN__)
+
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
#define MY_CPU_LE
#endif
-#if defined(__BIG_ENDIAN__) || defined(__m68k__) || defined(__ARMEB__) || defined(__MIPSEB__)
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
#define MY_CPU_BE
#endif
++++++ upx-aarch64.patch ++++++
--- /var/tmp/diff_new_pack.W7dE3u/_old 2014-11-19 20:30:23.000000000 +0100
+++ /var/tmp/diff_new_pack.W7dE3u/_new 2014-11-19 20:30:23.000000000 +0100
@@ -12,14 +12,3 @@
#else
# define ACC_ARCH_UNKNOWN 1
# define ACC_INFO_ARCH "unknown"
-@@ -1388,6 +1391,10 @@ extern "C" {
- # define ACC_ABI_BIG_ENDIAN 1
- #elif 1 && (ACC_ARCH_MIPS) && defined(__MIPSEL__) && !defined(__MIPSEB__)
- # define ACC_ABI_LITTLE_ENDIAN 1
-+#elif (ACC_ARCH_AARCH64) && defined(__AARCH64EL__)
-+# define ACC_ABI_LITTLE_ENDIAN 1
-+#elif (ACC_ARCH_AARCH64) && defined(__AARCH64EB__)
-+# define ACC_ABI_BIG_ENDIAN 1
- #endif
- #endif
- #if (ACC_ABI_BIG_ENDIAN) && (ACC_ABI_LITTLE_ENDIAN)
++++++ upx-endiantests.patch ++++++
--- upx-3.91-src.orig/src/miniacc.h
+++ upx-3.91-src/src/miniacc.h
@@ -1966,46 +1966,15 @@ ACC_COMPILE_TIME_ASSERT_HEADER(ACC_SIZEO
# undef ACC_ABI_BIG_ENDIAN
# undef ACC_ABI_LITTLE_ENDIAN
#elif !(ACC_ABI_BIG_ENDIAN) && !(ACC_ABI_LITTLE_ENDIAN)
-#if (ACC_ARCH_ALPHA) && (ACC_ARCH_CRAY_MPP)
-# define ACC_ABI_BIG_ENDIAN 1
-#elif (ACC_ARCH_IA64) && (ACC_OS_POSIX_LINUX || ACC_OS_WIN64)
-# define ACC_ABI_LITTLE_ENDIAN 1
-#elif (ACC_ARCH_ALPHA || ACC_ARCH_AMD64 || ACC_ARCH_BLACKFIN || ACC_ARCH_CRIS || ACC_ARCH_I086 || ACC_ARCH_I386 || ACC_ARCH_MSP430)
-# define ACC_ABI_LITTLE_ENDIAN 1
-#elif (ACC_ARCH_AVR32 || ACC_ARCH_M68K || ACC_ARCH_S390 || ACC_ARCH_SPU)
-# define ACC_ABI_BIG_ENDIAN 1
-#elif 1 && defined(__IAR_SYSTEMS_ICC__) && defined(__LITTLE_ENDIAN__)
-# if (__LITTLE_ENDIAN__ == 1)
-# define ACC_ABI_LITTLE_ENDIAN 1
-# else
-# define ACC_ABI_BIG_ENDIAN 1
-# endif
-#elif 1 && defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__)
-# define ACC_ABI_BIG_ENDIAN 1
-#elif 1 && defined(__LITTLE_ENDIAN__) && !defined(__BIG_ENDIAN__)
-# define ACC_ABI_LITTLE_ENDIAN 1
-#elif 1 && (ACC_ARCH_ARM) && defined(__ARMEB__) && !defined(__ARMEL__)
-# define ACC_ABI_BIG_ENDIAN 1
-#elif 1 && (ACC_ARCH_ARM) && defined(__ARMEL__) && !defined(__ARMEB__)
-# define ACC_ABI_LITTLE_ENDIAN 1
-#elif 1 && (ACC_ARCH_ARM && ACC_CC_ARMCC_ARMCC)
-# if defined(__BIG_ENDIAN) && defined(__LITTLE_ENDIAN)
-# error "unexpected configuration - check your compiler defines"
-# elif defined(__BIG_ENDIAN)
-# define ACC_ABI_BIG_ENDIAN 1
-# else
-# define ACC_ABI_LITTLE_ENDIAN 1
-# endif
-# define ACC_ABI_LITTLE_ENDIAN 1
-#elif 1 && (ACC_ARCH_ARM64) && defined(__AARCH64EB__) && !defined(__AARCH64EL__)
-# define ACC_ABI_BIG_ENDIAN 1
-#elif 1 && (ACC_ARCH_ARM64) && defined(__AARCH64EL__) && !defined(__AARCH64EB__)
-# define ACC_ABI_LITTLE_ENDIAN 1
-#elif 1 && (ACC_ARCH_MIPS) && defined(__MIPSEB__) && !defined(__MIPSEL__)
-# define ACC_ABI_BIG_ENDIAN 1
-#elif 1 && (ACC_ARCH_MIPS) && defined(__MIPSEL__) && !defined(__MIPSEB__)
-# define ACC_ABI_LITTLE_ENDIAN 1
+
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+#define ACC_ABI_LITTLE_ENDIAN 1
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+#define ACC_ABI_BIG_ENDIAN 1
+#else
+#error unknown endianess WTF!
#endif
+
#endif
#if (ACC_ABI_BIG_ENDIAN) && (ACC_ABI_LITTLE_ENDIAN)
# error "unexpected configuration - check your compiler defines"
--- upx-3.91-src.orig/src/stub/tools/sstrip/sstrip.c
+++ upx-3.91-src/src/stub/tools/sstrip/sstrip.c
@@ -331,14 +331,14 @@ static int readelfheaderident(int fd, El
/* Compare the file's class and endianness with the program's.
*/
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
if (ehdr->e_ident[EI_DATA] == ELFDATA2LSB) {
do_reverse_endian = 0;
} else if (ehdr->e_ident[EI_DATA] == ELFDATA2MSB) {
/* fprintf(stderr, "ELF file has different endianness.\n"); */
do_reverse_endian = 1;
}
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
if (ehdr->e_ident[EI_DATA] == ELFDATA2LSB) {
/* fprintf(stderr, "ELF file has different endianness.\n"); */
do_reverse_endian = 1;
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0