openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- 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
April 2014
- 1 participants
- 1084 discussions
Hello community,
here is the log from the commit of package libmediaart for openSUSE:Factory checked in at 2014-04-02 17:23:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libmediaart (Old)
and /work/SRC/openSUSE:Factory/.libmediaart.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libmediaart"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libmediaart/libmediaart.changes 2014-03-09 18:27:30.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libmediaart.new/libmediaart.changes 2014-04-02 17:23:51.000000000 +0200
@@ -1,0 +2,10 @@
+Tue Apr 1 20:39:49 UTC 2014 - zaitor(a)opensuse.org
+
+- Update to version 0.4.0:
+ + Feature request: load album art embedded in music files
+ (bgo#727333).
+ + build: Don't forget to define LIBMEDIAART_BACKEND for all Qt
+ cases.
+ + extract: Incorrect inverse variable check for media_art_set().
+
+-------------------------------------------------------------------
Old:
----
libmediaart-0.3.0.tar.xz
New:
----
libmediaart-0.4.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libmediaart.spec ++++++
--- /var/tmp/diff_new_pack.CoPSar/_old 2014-04-02 17:23:52.000000000 +0200
+++ /var/tmp/diff_new_pack.CoPSar/_new 2014-04-02 17:23:52.000000000 +0200
@@ -1,6 +1,7 @@
#
# spec file for package libmediaart
#
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2013 Dominique Leuenberger, Amsterdam, The Netherlands
#
# All modifications and additions to the file contributed by third parties
@@ -15,15 +16,16 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
+
Name: libmediaart
-Version: 0.3.0
+Version: 0.4.0
Release: 0
# License note: src.rpm contains GPL-2.0+ (tests) and LGPL-2.1+ code
-License: GPL-2.0+ and LGPL-2.1+
Summary: Media Art extraction library
-Url: https://download.gnome.org/sources/libmediaart
+License: GPL-2.0+ and LGPL-2.1+
Group: Productivity/Other
-Source: http://download.gnome.org/sources/libmediaart/0.3/%{name}-%{version}.tar.xz
+Url: https://download.gnome.org/sources/libmediaart
+Source: http://download.gnome.org/sources/libmediaart/0.4/%{name}-%{version}.tar.xz
BuildRequires: gcc-c++
BuildRequires: gobject-introspection-devel >= 1.30.0
BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= 2.12.0
@@ -38,8 +40,8 @@
%package -n libmediaart-1_0-0
# License note: the library is pure LGPL-2.1+
-License: LGPL-2.1+
Summary: Media Art extraction library
+License: LGPL-2.1+
Group: System/Libraries
%description -n libmediaart-1_0-0
@@ -48,8 +50,8 @@
%package -n typelib-1_0-MediaArt-1_0
# License note: the library is pure LGPL-2.1+
-License: LGPL-2.1+
Summary: Media Art extraction library -- Introspection bindings
+License: LGPL-2.1+
Group: System/Libraries
%description -n typelib-1_0-MediaArt-1_0
@@ -58,8 +60,8 @@
%package devel
# License note: the library is pure LGPL-2.1+
-License: LGPL-2.1+
Summary: Media Art extraction library
+License: LGPL-2.1+
Group: Development/Languages/C and C++
Requires: libmediaart-1_0-0 = %{version}
Requires: typelib-1_0-MediaArt-1_0 = %{version}
++++++ libmediaart-0.3.0.tar.xz -> libmediaart-0.4.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/NEWS new/libmediaart-0.4.0/NEWS
--- old/libmediaart-0.3.0/NEWS 2014-03-07 20:07:41.000000000 +0100
+++ new/libmediaart-0.4.0/NEWS 2014-04-01 17:38:30.000000000 +0200
@@ -1,3 +1,11 @@
+NEW in 0.4 - 2014-04-01
+=======================
+
+ * Fixes: GB#727333, Feature request: load album art embedded in music files
+ * build: Don't forget to define LIBMEDIAART_BACKEND for all Qt cases
+ * extract: Incorrect inverse variable check for media_art_set()
+
+
NEW in 0.3 - 2014-03-07
=======================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/configure new/libmediaart-0.4.0/configure
--- old/libmediaart-0.3.0/configure 2014-03-07 20:09:18.000000000 +0100
+++ new/libmediaart-0.4.0/configure 2014-04-01 17:41:30.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for libmediaart 0.3.0.
+# Generated by GNU Autoconf 2.68 for libmediaart 0.4.0.
#
# Report bugs to <http://bugzilla.gnome.org/>.
#
@@ -570,8 +570,8 @@
# Identity of this package.
PACKAGE_NAME='libmediaart'
PACKAGE_TARNAME='libmediaart'
-PACKAGE_VERSION='0.3.0'
-PACKAGE_STRING='libmediaart 0.3.0'
+PACKAGE_VERSION='0.4.0'
+PACKAGE_STRING='libmediaart 0.4.0'
PACKAGE_BUGREPORT='http://bugzilla.gnome.org/'
PACKAGE_URL='https://wiki.gnome.org/MediaArtStorageSpec'
@@ -1407,7 +1407,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures libmediaart 0.3.0 to adapt to many kinds of systems.
+\`configure' configures libmediaart 0.4.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1477,7 +1477,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of libmediaart 0.3.0:";;
+ short | recursive ) echo "Configuration of libmediaart 0.4.0:";;
esac
cat <<\_ACEOF
@@ -1624,7 +1624,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libmediaart configure 0.3.0
+libmediaart configure 0.4.0
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2168,7 +2168,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by libmediaart $as_me 0.3.0, which was
+It was created by libmediaart $as_me 0.4.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -2989,7 +2989,7 @@
# Define the identity of the package.
PACKAGE='libmediaart'
- VERSION='0.3.0'
+ VERSION='0.4.0'
# Some tools Automake needs.
@@ -3143,11 +3143,11 @@
LIBMEDIAART_MAJOR_VERSION=0
-LIBMEDIAART_MINOR_VERSION=3
+LIBMEDIAART_MINOR_VERSION=4
LIBMEDIAART_MICRO_VERSION=0
-LIBMEDIAART_INTERFACE_AGE=0
-LIBMEDIAART_BINARY_AGE=300
-LIBMEDIAART_VERSION=0.3.0
+LIBMEDIAART_INTERFACE_AGE=4
+LIBMEDIAART_BINARY_AGE=400
+LIBMEDIAART_VERSION=0.4.0
LIBMEDIAART_API_VERSION=1.0
LIBMEDIAART_BINARY_VERSION=1.0.0
@@ -3166,23 +3166,23 @@
$as_echo "#define LIBMEDIAART_MAJOR_VERSION 0" >>confdefs.h
-$as_echo "#define LIBMEDIAART_MINOR_VERSION 3" >>confdefs.h
+$as_echo "#define LIBMEDIAART_MINOR_VERSION 4" >>confdefs.h
$as_echo "#define LIBMEDIAART_MICRO_VERSION 0" >>confdefs.h
-$as_echo "#define LIBMEDIAART_INTERFACE_AGE 0" >>confdefs.h
+$as_echo "#define LIBMEDIAART_INTERFACE_AGE 4" >>confdefs.h
-$as_echo "#define LIBMEDIAART_BINARY_AGE 300" >>confdefs.h
+$as_echo "#define LIBMEDIAART_BINARY_AGE 400" >>confdefs.h
# libtool versioning
-LT_RELEASE=0.3
-LT_CURRENT=300
-LT_REVISION=0
-LT_AGE=300
+LT_RELEASE=0.4
+LT_CURRENT=396
+LT_REVISION=4
+LT_AGE=396
LT_CURRENT_MINUS_AGE=0
@@ -18127,7 +18127,7 @@
$as_echo "#define HAVE_QT /**/" >>confdefs.h
- LIBMEDIAART_BACKEND=QtGui
+ LIBMEDIAART_BACKEND=Qt5Gui
selected_for_media_art="yes (qt5)"
else
@@ -18141,6 +18141,7 @@
$as_echo "#define HAVE_QT /**/" >>confdefs.h
+ LIBMEDIAART_BACKEND=QtGui
selected_for_media_art="yes (qt4)"
fi
@@ -19002,7 +19003,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by libmediaart $as_me 0.3.0, which was
+This file was extended by libmediaart $as_me 0.4.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -19069,7 +19070,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-libmediaart config.status 0.3.0
+libmediaart config.status 0.4.0
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/configure.ac new/libmediaart-0.4.0/configure.ac
--- old/libmediaart-0.3.0/configure.ac 2014-03-07 20:05:10.000000000 +0100
+++ new/libmediaart-0.4.0/configure.ac 2014-04-01 17:36:12.000000000 +0200
@@ -12,9 +12,9 @@
# if backwards compatibility has been broken,
# set LIBMEDIAART_BINARY_AGE and LIBMEDIAART_INTERFACE_AGE to 0.
m4_define([libmediaart_major_version], [0])
-m4_define([libmediaart_minor_version], [3])
+m4_define([libmediaart_minor_version], [4])
m4_define([libmediaart_micro_version], [0])
-m4_define([libmediaart_interface_age], [0])
+m4_define([libmediaart_interface_age], [4])
m4_define([libmediaart_binary_age],
[m4_eval(100 * libmediaart_minor_version + libmediaart_micro_version)])
m4_define([libmediaart_version],
@@ -236,7 +236,7 @@
AC_DEFINE(HAVE_QT5, [], [Define if we have Qt5])
AC_DEFINE(HAVE_QT, [], [Define if we have Qt])
- LIBMEDIAART_BACKEND=QtGui
+ LIBMEDIAART_BACKEND=Qt5Gui
selected_for_media_art="yes (qt5)"
else
@@ -246,6 +246,7 @@
AC_DEFINE(HAVE_QT4, [], [Define if we have Qt4])
AC_DEFINE(HAVE_QT, [], [Define if we have Qt])
+ LIBMEDIAART_BACKEND=QtGui
selected_for_media_art="yes (qt4)"
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/docs/reference/libmediaart/html/index.html new/libmediaart-0.4.0/docs/reference/libmediaart/html/index.html
--- old/libmediaart-0.3.0/docs/reference/libmediaart/html/index.html 2014-03-07 20:09:43.000000000 +0100
+++ new/libmediaart-0.4.0/docs/reference/libmediaart/html/index.html 2014-04-01 17:41:41.000000000 +0200
@@ -15,7 +15,7 @@
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libmediaart Library Reference Manual</p></th></tr></table></div>
<div><p class="releaseinfo">
- for libmediaart 0.3.0
+ for libmediaart 0.4.0
.
The latest version of this documentation can be found on-line at
<a class="ulink" href="http://library.gnome.org/devel/libmediaart/unstable/" target="_top">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/docs/reference/libmediaart/html/libmediaart-Caching-and-Management.html new/libmediaart-0.4.0/docs/reference/libmediaart/html/libmediaart-Caching-and-Management.html
--- old/libmediaart-0.3.0/docs/reference/libmediaart/html/libmediaart-Caching-and-Management.html 2014-03-07 20:09:43.000000000 +0100
+++ new/libmediaart-0.4.0/docs/reference/libmediaart/html/libmediaart-Caching-and-Management.html 2014-04-01 17:41:41.000000000 +0200
@@ -57,7 +57,7 @@
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libmediaart-Caching-and-Management.html#media-art-remove" title="media_art_remove ()">media_art_remove</a> <span class="c_punctuation">()</span>
@@ -65,7 +65,7 @@
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="libmediaart-Caching-and-Management.html#media-art-strip-invalid-entities" title="media_art_strip_invalid_entities ()">media_art_strip_invalid_entities</a> <span class="c_punctuation">()</span>
@@ -85,9 +85,9 @@
and saved in the user's XDG_CACHE_HOME directory.</p>
<p>To find the media art for a given media file, use the function
<a class="link" href="libmediaart-Caching-and-Management.html#media-art-get-file" title="media_art_get_file ()"><code class="function">media_art_get_file()</code></a> (you can also use <a class="link" href="libmediaart-Caching-and-Management.html#media-art-get-path" title="media_art_get_path ()"><code class="function">media_art_get_path()</code></a>, which does the
-same thing but for path strings instead of <a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> objects).</p>
+same thing but for path strings instead of <span class="type">GFile</span> objects).</p>
<p>If media art for the file is not found in the cache, these functions will
-return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. You may find some embedded media art upon loading the file,
+return <code class="literal">NULL</code>. You may find some embedded media art upon loading the file,
and you can use <a class="link" href="libmediaart-Extraction.html#media-art-process" title="media_art_process ()"><code class="function">media_art_process()</code></a> to convert it to the correct format and
save it in the cache for next time. The <a class="link" href="libmediaart-Extraction.html#media-art-process" title="media_art_process ()"><code class="function">media_art_process()</code></a> function also
supports searching for external media art images using a basic heuristic.</p>
@@ -97,12 +97,12 @@
<div class="refsect2">
<a name="media-art-get-file"></a><h3>media_art_get_file ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
-media_art_get_file (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *artist</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *title</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *prefix</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> *file</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> **cache_file</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> **local_file</code></em>);</pre>
+media_art_get_file (<em class="parameter"><code>const <span class="type">gchar</span> *artist</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *title</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *prefix</code></em>,
+ <em class="parameter"><code><span class="type">GFile</span> *file</code></em>,
+ <em class="parameter"><code><span class="type">GFile</span> **cache_file</code></em>,
+ <em class="parameter"><code><span class="type">GFile</span> **local_file</code></em>);</pre>
<p>Gets the files pointing to cache files suitable for storing the media
art provided by the <em class="parameter"><code>artist</code></em>
, <em class="parameter"><code>title</code></em>
@@ -114,8 +114,8 @@
will point to a cache file that resides in the same
filesystem than <em class="parameter"><code>file</code></em>
.</p>
-<p>When done, both <a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a>s must be freed with <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Typ…"><code class="function">g_object_unref()</code></a> if
-non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>.</p>
+<p>When done, both <span class="type">GFile</span>s must be freed with <code class="function">g_object_unref()</code> if
+non-<code class="literal">NULL</code>.</p>
<div class="refsect3">
<a name="id-1.3.3.3.6.2.6"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
@@ -142,21 +142,21 @@
</tr>
<tr>
<td class="parameter_name"><p>file</p></td>
-<td class="parameter_description"><p> the file or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_description"><p> the file or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>cache_file</p></td>
<td class="parameter_description"><p> the location to store
-a <a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> pointing to the user cache path, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+a <span class="type">GFile</span> pointing to the user cache path, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>local_file</p></td>
<td class="parameter_description"><p> the location to store
-a <a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> pointing to a cache file in the same filesystem than <em class="parameter"><code>file</code></em>
+a <span class="type">GFile</span> pointing to a cache file in the same filesystem than <em class="parameter"><code>file</code></em>
,
-or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
@@ -168,16 +168,16 @@
<div class="refsect2">
<a name="media-art-get-path"></a><h3>media_art_get_path ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
-media_art_get_path (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *artist</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *title</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *prefix</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **path</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **local_uri</code></em>);</pre>
+media_art_get_path (<em class="parameter"><code>const <span class="type">gchar</span> *artist</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *title</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *prefix</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *uri</code></em>,
+ <em class="parameter"><code><span class="type">gchar</span> **path</code></em>,
+ <em class="parameter"><code><span class="type">gchar</span> **local_uri</code></em>);</pre>
<p>Get the path to media art for a given resource. Newly allocated data in
<em class="parameter"><code>path</code></em>
and <em class="parameter"><code>local_uri</code></em>
- must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-…"><code class="function">g_free()</code></a>.</p>
+ must be freed with <code class="function">g_free()</code>.</p>
<div class="refsect3">
<a name="id-1.3.3.3.6.3.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
@@ -204,19 +204,19 @@
</tr>
<tr>
<td class="parameter_name"><p>uri</p></td>
-<td class="parameter_description"><p> the uri of the file or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_description"><p> the uri of the file or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>path</p></td>
<td class="parameter_description"><p> the location to store the local
-path or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+path or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>local_uri</p></td>
<td class="parameter_description"><p> the location to store the
-local uri or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+local uri or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
@@ -227,9 +227,9 @@
<hr>
<div class="refsect2">
<a name="media-art-remove"></a><h3>media_art_remove ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-media_art_remove (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *artist</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *album</code></em>);</pre>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>
+media_art_remove (<em class="parameter"><code>const <span class="type">gchar</span> *artist</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *album</code></em>);</pre>
<p>Removes media art for given album/artist/etc provided.</p>
<div class="refsect3">
<a name="id-1.3.3.3.6.4.5"></a><h4>Parameters</h4>
@@ -247,7 +247,7 @@
</tr>
<tr>
<td class="parameter_name"><p>album</p></td>
-<td class="parameter_description"><p> album the media art belongs or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+<td class="parameter_description"><p> album the media art belongs or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
@@ -255,7 +255,7 @@
</div>
<div class="refsect3">
<a name="id-1.3.3.3.6.4.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE…"><span class="type">TRUE</span></a> on success, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALS…"><span class="type">FALSE</span></a>.</p>
+<p> <span class="type">TRUE</span> on success, otherwise <span class="type">FALSE</span>.</p>
<p></p>
</div>
<p class="since">Since 0.2.0</p>
@@ -263,11 +263,11 @@
<hr>
<div class="refsect2">
<a name="media-art-strip-invalid-entities"></a><h3>media_art_strip_invalid_entities ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
-media_art_strip_invalid_entities (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *original</code></em>);</pre>
+<pre class="programlisting"><span class="returnvalue">gchar</span> *
+media_art_strip_invalid_entities (<em class="parameter"><code>const <span class="type">gchar</span> *original</code></em>);</pre>
<p>Strip a albumname or artistname string to prepare it for calculating the
media art path with it. Certain characters and charactersets will be stripped
-and a newly allocated string returned which you must free with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-…"><code class="function">g_free()</code></a>.</p>
+and a newly allocated string returned which you must free with <code class="function">g_free()</code>.</p>
<p>This functions is used internally by <a class="link" href="libmediaart-Caching-and-Management.html#media-art-get-file" title="media_art_get_file ()"><code class="function">media_art_get_file()</code></a> and
<a class="link" href="libmediaart-Caching-and-Management.html#media-art-get-path" title="media_art_get_path ()"><code class="function">media_art_get_path()</code></a>. You will not normally need to call it yourself.</p>
<p>This function provides the following features:</p>
@@ -296,7 +296,7 @@
<p> <em class="parameter"><code>original</code></em>
stripped of invalid characters which must be
freed. On error or if <em class="parameter"><code>original</code></em>
-is empty, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a> is returned.</p>
+is empty, <code class="literal">NULL</code> is returned.</p>
<p></p>
</div>
<p class="since">Since 0.2.0</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/docs/reference/libmediaart/html/libmediaart-Extraction.html new/libmediaart-0.4.0/docs/reference/libmediaart/html/libmediaart-Extraction.html
--- old/libmediaart-0.3.0/docs/reference/libmediaart/html/libmediaart-Extraction.html 2014-03-07 20:09:43.000000000 +0100
+++ new/libmediaart-0.4.0/docs/reference/libmediaart/html/libmediaart-Extraction.html 2014-04-01 17:41:41.000000000 +0200
@@ -41,7 +41,7 @@
<tbody>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libmediaart-Extraction.html#media-art-init" title="media_art_init ()">media_art_init</a> <span class="c_punctuation">()</span>
@@ -57,7 +57,7 @@
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libmediaart-Extraction.html#media-art-process-file" title="media_art_process_file ()">media_art_process_file</a> <span class="c_punctuation">()</span>
@@ -65,7 +65,7 @@
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libmediaart-Extraction.html#media-art-process" title="media_art_process ()">media_art_process</a> <span class="c_punctuation">()</span>
@@ -122,14 +122,14 @@
<a name="libmediaart-Extraction.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="media-art-init"></a><h3>media_art_init ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>
media_art_init (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Initialize libmediaart.</p>
<p>This function initializes cache hash tables, backend plugins,
storage modules used for removable devices and connections to D-Bus.</p>
<div class="refsect3">
<a name="id-1.3.3.2.7.2.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE…"><code class="literal">TRUE</code></a> if initialisation was successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALS…"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <code class="literal">TRUE</code> if initialisation was successful, <code class="literal">FALSE</code> otherwise.</p>
<p></p>
</div>
<p class="since">Since 0.2.0</p>
@@ -145,20 +145,20 @@
<hr>
<div class="refsect2">
<a name="media-art-process-file"></a><h3>media_art_process_file ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
-media_art_process_file (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *buffer</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> len</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mime</code></em>,
+<pre class="programlisting"><span class="returnvalue">gboolean</span>
+media_art_process_file (<em class="parameter"><code>const <span class="type">guchar</span> *buffer</code></em>,
+ <em class="parameter"><code><span class="type">gsize</span> len</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *mime</code></em>,
<em class="parameter"><code><a class="link" href="libmediaart-Extraction.html#MediaArtType" title="enum MediaArtType"><span class="type">MediaArtType</span></a> type</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *artist</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *title</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> *file</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *artist</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *title</code></em>,
+ <em class="parameter"><code><span class="type">GFile</span> *file</code></em>);</pre>
<p>Processes a media file. If you have extracted any embedded media art and
passed this in as <em class="parameter"><code>buffer</code></em>
, the image data will be converted to the correct
format and saved in the media art cache.</p>
<p>If <em class="parameter"><code>buffer</code></em>
- is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>, libmediaart will search the parent directory of <em class="parameter"><code>file</code></em>
+ is <code class="literal">NULL</code>, libmediaart will search the parent directory of <em class="parameter"><code>file</code></em>
for image files that are likely to be media art for <em class="parameter"><code>file</code></em>
, and if one is
@@ -178,7 +178,7 @@
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p> a buffer containing <em class="parameter"><code>file</code></em>
-data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a>. </p></td>
+data, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
@@ -190,7 +190,7 @@
<tr>
<td class="parameter_name"><p>mime</p></td>
<td class="parameter_description"><p>MIME type of <em class="parameter"><code>buffer</code></em>
-, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a></p></td>
+, or <code class="literal">NULL</code></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@@ -200,12 +200,12 @@
</tr>
<tr>
<td class="parameter_name"><p>artist</p></td>
-<td class="parameter_description"><p>The media file artist name, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>The media file artist name, or <code class="literal">NULL</code></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>title</p></td>
-<td class="parameter_description"><p>The media file title, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL…"><code class="literal">NULL</code></a></p></td>
+<td class="parameter_description"><p>The media file title, or <code class="literal">NULL</code></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@@ -218,7 +218,7 @@
</div>
<div class="refsect3">
<a name="id-1.3.3.2.7.4.8"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE…"><span class="type">TRUE</span></a> if the file could be processed.</p>
+<p> <span class="type">TRUE</span> if the file could be processed.</p>
<p></p>
</div>
<p class="since">Since 0.2.0</p>
@@ -226,16 +226,16 @@
<hr>
<div class="refsect2">
<a name="media-art-process"></a><h3>media_art_process ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>
media_art_process (<em class="parameter"><code>const unsigned <span class="type">char</span> *buffer</code></em>,
<em class="parameter"><code><span class="type">size_t</span> len</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mime</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *mime</code></em>,
<em class="parameter"><code><a class="link" href="libmediaart-Extraction.html#MediaArtType" title="enum MediaArtType"><span class="type">MediaArtType</span></a> type</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *artist</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *title</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *uri</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *artist</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *title</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *uri</code></em>);</pre>
<p>This function is the same as <a class="link" href="libmediaart-Extraction.html#media-art-process-file" title="media_art_process_file ()"><code class="function">media_art_process_file()</code></a>, but takes the URI as
-a string rather than a <a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> object.</p>
+a string rather than a <span class="type">GFile</span> object.</p>
<div class="refsect3">
<a name="id-1.3.3.2.7.5.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
@@ -287,7 +287,7 @@
</div>
<div class="refsect3">
<a name="id-1.3.3.2.7.5.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE…"><code class="literal">TRUE</code></a> in case of success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALS…"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <code class="literal">TRUE</code> in case of success, <code class="literal">FALSE</code> otherwise.</p>
<p></p>
</div>
<p class="since">Since 0.2.0</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/docs/reference/libmediaart/html/style.css new/libmediaart-0.4.0/docs/reference/libmediaart/html/style.css
--- old/libmediaart-0.3.0/docs/reference/libmediaart/html/style.css 2014-03-07 20:09:43.000000000 +0100
+++ new/libmediaart-0.4.0/docs/reference/libmediaart/html/style.css 2014-04-01 17:41:41.000000000 +0200
@@ -295,19 +295,21 @@
/* code listings */
-.listing_code .programlisting .cbracket { color: #a40000; } /* tango: scarlet red 3 */
-.listing_code .programlisting .comment { color: #a1a39d; } /* tango: aluminium 4 */
-.listing_code .programlisting .function { color: #000000; font-weight: bold; }
-.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */
-.listing_code .programlisting .keyword { color: #4e9a06; } /* tango: chameleon 3 */
+.listing_code .programlisting .normal,
+.listing_code .programlisting .normal a,
+.listing_code .programlisting .number,
+.listing_code .programlisting .cbracket,
+.listing_code .programlisting .symbol { color: #555753; }
+.listing_code .programlisting .comment,
.listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */
-.listing_code .programlisting .normal { color: #000000; }
-.listing_code .programlisting .number { color: #75507b; } /* tango: plum 2 */
+.listing_code .programlisting .function,
+.listing_code .programlisting .function a,
.listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */
-.listing_code .programlisting .string { color: #c17d11; } /* tango: chocolate 2 */
-.listing_code .programlisting .type { color: #000000; }
-.listing_code .programlisting .type a { color: #11326b; } /* tango: sky blue 4 */
-.listing_code .programlisting .symbol { color: #ce5c00; } /* tango: orange 3 */
+.listing_code .programlisting .string { color: #ad7fa8; } /* tango: plum */
+.listing_code .programlisting .keyword,
+.listing_code .programlisting .usertype,
+.listing_code .programlisting .type,
+.listing_code .programlisting .type a { color: #4e9a06; } /* tango: chameleon 3 */
.listing_frame {
/* tango:sky blue 1 */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/docs/reference/libmediaart/version.xml new/libmediaart-0.4.0/docs/reference/libmediaart/version.xml
--- old/libmediaart-0.3.0/docs/reference/libmediaart/version.xml 2014-03-07 20:09:30.000000000 +0100
+++ new/libmediaart-0.4.0/docs/reference/libmediaart/version.xml 2014-04-01 17:41:37.000000000 +0200
@@ -1 +1 @@
-0.3.0
+0.4.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmediaart-0.3.0/libmediaart/extract.c new/libmediaart-0.4.0/libmediaart/extract.c
--- old/libmediaart-0.3.0/libmediaart/extract.c 2014-03-02 16:01:45.000000000 +0100
+++ new/libmediaart-0.4.0/libmediaart/extract.c 2014-04-01 17:27:30.000000000 +0200
@@ -816,8 +816,8 @@
gboolean retval = FALSE;
g_return_val_if_fail (type > MEDIA_ART_NONE && type < MEDIA_ART_TYPE_COUNT, FALSE);
- g_return_val_if_fail (artist == NULL, FALSE);
- g_return_val_if_fail (title == NULL, FALSE);
+ g_return_val_if_fail (artist != NULL, FALSE);
+ g_return_val_if_fail (title != NULL, FALSE);
/* What we do here:
*
--
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 libgsf for openSUSE:Factory checked in at 2014-04-02 17:23:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libgsf (Old)
and /work/SRC/openSUSE:Factory/.libgsf.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libgsf"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libgsf/libgsf.changes 2014-01-07 17:25:07.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libgsf.new/libgsf.changes 2014-04-02 17:23:34.000000000 +0200
@@ -1,0 +2,10 @@
+Thu Mar 20 07:32:19 UTC 2014 - dimstar(a)opensuse.org
+
+- Update to version 1.14.30:
+ + Activate translations for gsf (bgo#725409).
+ + Fix invalid g_free for Windows.
+ + Work around glib/gio bug (bgo#724970).
+- Add pkgconfig(gdk-pixbuf-2.0) and libbz2-devel BuildRequires:
+ Enable remaining features.
+
+-------------------------------------------------------------------
Old:
----
libgsf-1.14.29.tar.xz
New:
----
libgsf-1.14.30.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libgsf.spec ++++++
--- /var/tmp/diff_new_pack.hOBTnt/_old 2014-04-02 17:23:34.000000000 +0200
+++ /var/tmp/diff_new_pack.hOBTnt/_new 2014-04-02 17:23:34.000000000 +0200
@@ -17,7 +17,7 @@
Name: libgsf
-Version: 1.14.29
+Version: 1.14.30
Release: 0
Summary: Extensible I/O abstraction library for dealing with structured file formats
License: GPL-2.0+ and LGPL-2.1+
@@ -26,9 +26,11 @@
Source: http://download.gnome.org/sources/libgsf/1.14/%{name}-%{version}.tar.xz
Source99: baselibs.conf
BuildRequires: intltool
+BuildRequires: libbz2-devel
BuildRequires: pkg-config
BuildRequires: translation-update-upstream
BuildRequires: update-desktop-files
+BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(gio-2.0) >= 2.26.0
BuildRequires: pkgconfig(glib-2.0) >= 2.26.0
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.0.0
++++++ libgsf-1.14.29.tar.xz -> libgsf-1.14.30.tar.xz ++++++
++++ 3073 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 jemalloc for openSUSE:Factory checked in at 2014-04-02 17:23:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jemalloc (Old)
and /work/SRC/openSUSE:Factory/.jemalloc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "jemalloc"
Changes:
--------
--- /work/SRC/openSUSE:Factory/jemalloc/jemalloc.changes 2014-02-27 00:00:35.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.jemalloc.new/jemalloc.changes 2014-04-02 17:23:13.000000000 +0200
@@ -1,0 +2,20 @@
+Mon Mar 31 16:53:49 UTC 2014 - idonmez(a)suse.com
+
+- Update to 3.6.0
+ * Fix a regression in arena_chunk_alloc() that caused crashes
+ during small/large allocation if chunk allocation failed.
+ * Fix backtracing for gcc intrinsics-based backtracing by specifying
+ -fno-omit-frame-pointer to gcc.
+ * Use dss allocation precedence for huge allocations as well as
+ small/large allocations.
+ * Testsuite fixes
+- Drop jemalloc-fix-backtracing.patch, merged upstream.
+
+-------------------------------------------------------------------
+Mon Mar 31 09:21:34 UTC 2014 - idonmez(a)suse.com
+
+- Enable profiling
+- Add jemalloc-fix-backtracing.patch to fix profiling tests on x86
+ (the failures were triggered due to profiling support.)
+
+-------------------------------------------------------------------
Old:
----
jemalloc-3.5.1.tar.bz2
New:
----
jemalloc-3.6.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ jemalloc.spec ++++++
--- /var/tmp/diff_new_pack.pLfU9f/_old 2014-04-02 17:23:14.000000000 +0200
+++ /var/tmp/diff_new_pack.pLfU9f/_new 2014-04-02 17:23:14.000000000 +0200
@@ -17,7 +17,7 @@
Name: jemalloc
-Version: 3.5.1
+Version: 3.6.0
Release: 0
%define lname libjemalloc1
Summary: General-purpose scalable concurrent malloc implementation
@@ -67,7 +67,8 @@
%build
export EXTRA_CFLAGS="%{optflags} -std=gnu99"
-%configure --enable-cc-silence
+%configure --enable-cc-silence \
+ --enable-prof
make %{?_smp_mflags}
%install
++++++ jemalloc-3.5.1.tar.bz2 -> jemalloc-3.6.0.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/ChangeLog new/jemalloc-3.6.0/ChangeLog
--- old/jemalloc-3.5.1/ChangeLog 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/ChangeLog 2014-03-31 18:37:49.000000000 +0200
@@ -5,6 +5,30 @@
https://github.com/jemalloc/jemalloc
+* 3.6.0 (March 31, 2014)
+
+ This version contains a critical bug fix for a regression present in 3.5.0 and
+ 3.5.1.
+
+ Bug fixes:
+ - Fix a regression in arena_chunk_alloc() that caused crashes during
+ small/large allocation if chunk allocation failed. In the absence of this
+ bug, chunk allocation failure would result in allocation failure, e.g. NULL
+ return from malloc(). This regression was introduced in 3.5.0.
+ - Fix backtracing for gcc intrinsics-based backtracing by specifying
+ -fno-omit-frame-pointer to gcc. Note that the application (and all the
+ libraries it links to) must also be compiled with this option for
+ backtracing to be reliable.
+ - Use dss allocation precedence for huge allocations as well as small/large
+ allocations.
+ - Fix test assertion failure message formatting. This bug did not manifect on
+ x86_64 systems because of implementation subtleties in va_list.
+ - Fix inconsequential test failures for hash and SFMT code.
+
+ New features:
+ - Support heap profiling on FreeBSD. This feature depends on the proc
+ filesystem being mounted during heap profile dumping.
+
* 3.5.1 (February 25, 2014)
This version primarily addresses minor bugs in test code.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/Makefile.in new/jemalloc-3.6.0/Makefile.in
--- old/jemalloc-3.5.1/Makefile.in 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/Makefile.in 2014-03-31 18:37:49.000000000 +0200
@@ -141,7 +141,7 @@
$(srcroot)test/integration/xallocx.c
ifeq ($(enable_experimental), 1)
TESTS_INTEGRATION += $(srcroot)test/integration/allocm.c \
- $(srcroot)test/integration/ALLOCM_ARENA.c \
+ $(srcroot)test/integration/MALLOCX_ARENA.c \
$(srcroot)test/integration/rallocm.c
endif
TESTS_STRESS :=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/VERSION new/jemalloc-3.6.0/VERSION
--- old/jemalloc-3.5.1/VERSION 2014-02-26 01:49:23.000000000 +0100
+++ new/jemalloc-3.6.0/VERSION 2014-03-31 18:37:56.000000000 +0200
@@ -1 +1 @@
-3.5.1-0-g7709a64c59daf0b1f938be49472fcc499e1bd136
+3.6.0-0-g46c0af68bd248b04df75e4f92d5fb804c3d75340
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/bin/pprof new/jemalloc-3.6.0/bin/pprof
--- old/jemalloc-3.5.1/bin/pprof 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/bin/pprof 2014-03-31 18:37:49.000000000 +0200
@@ -4197,8 +4197,12 @@
# For libc libraries, the copy in /usr/lib/debug contains debugging symbols
sub DebuggingLibrary {
my $file = shift;
- if ($file =~ m|^/| && -f "/usr/lib/debug$file") {
- return "/usr/lib/debug$file";
+ if ($file =~ m|^/|) {
+ if (-f "/usr/lib/debug$file") {
+ return "/usr/lib/debug$file";
+ } elsif (-f "/usr/lib/debug$file.debug") {
+ return "/usr/lib/debug$file.debug";
+ }
}
return undef;
}
@@ -4360,6 +4364,19 @@
$finish = HexExtend($2);
$offset = $zero_offset;
$lib = $3;
+ }
+ # FreeBSD 10.0 virtual memory map /proc/curproc/map as defined in
+ # function procfs_doprocmap (sys/fs/procfs/procfs_map.c)
+ #
+ # Example:
+ # 0x800600000 0x80061a000 26 0 0xfffff800035a0000 r-x 75 33 0x1004 COW NC vnode /libexec/ld-elf.s
+ # o.1 NCH -1
+ elsif ($l =~ /^(0x$h)\s(0x$h)\s\d+\s\d+\s0x$h\sr-x\s\d+\s\d+\s0x\d+\s(COW|NCO)\s(NC|NNC)\svnode\s(\S+\.so(\.\d+)*)/) {
+ $start = HexExtend($1);
+ $finish = HexExtend($2);
+ $offset = $zero_offset;
+ $lib = FindLibrary($5);
+
} else {
next;
}
@@ -4382,6 +4399,7 @@
}
}
+ if($main::opt_debug) { printf STDERR "$start:$finish ($offset) $lib\n"; }
push(@{$result}, [$lib, $start, $finish, $offset]);
}
@@ -4589,6 +4607,12 @@
my $finish = $lib->[2];
my $offset = $lib->[3];
+ # Use debug library if it exists
+ my $debug_libname = DebuggingLibrary($libname);
+ if ($debug_libname) {
+ $libname = $debug_libname;
+ }
+
# Get list of pcs that belong in this library.
my $contained = [];
my ($start_pc_index, $finish_pc_index);
@@ -5019,7 +5043,7 @@
# Tag this routine with the starting address in case the image
# has multiple occurrences of this routine. We use a syntax
- # that resembles template paramters that are automatically
+ # that resembles template parameters that are automatically
# stripped out by ShortFunctionName()
$this_routine .= "<$start_val>";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/configure new/jemalloc-3.6.0/configure
--- old/jemalloc-3.5.1/configure 2014-02-26 01:50:13.000000000 +0100
+++ new/jemalloc-3.6.0/configure 2014-03-31 18:38:51.000000000 +0200
@@ -1650,6 +1650,37 @@
} # ac_fn_c_try_run
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
+
# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
# --------------------------------------------
# Tries to find the compile-time value of EXPR in a program that includes
@@ -1833,37 +1864,6 @@
} # ac_fn_c_compute_int
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
-
# ac_fn_c_try_link LINENO
# -----------------------
# Try to link conftest.$ac_ext, and return whether this succeeded.
@@ -4108,6 +4108,236 @@
done
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
+$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
+if ${ac_cv_c_bigendian+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_cv_c_bigendian=unknown
+ # See if we're dealing with a universal compiler.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifndef __APPLE_CC__
+ not a universal capable compiler
+ #endif
+ typedef int dummy;
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+ # Check for potential -arch flags. It is not universal unless
+ # there are at least two -arch flags with different values.
+ ac_arch=
+ ac_prev=
+ for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
+ if test -n "$ac_prev"; then
+ case $ac_word in
+ i?86 | x86_64 | ppc | ppc64)
+ if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
+ ac_arch=$ac_word
+ else
+ ac_cv_c_bigendian=universal
+ break
+ fi
+ ;;
+ esac
+ ac_prev=
+ elif test "x$ac_word" = "x-arch"; then
+ ac_prev=arch
+ fi
+ done
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test $ac_cv_c_bigendian = unknown; then
+ # See if sys/param.h defines the BYTE_ORDER macro.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+ #include <sys/param.h>
+
+int
+main ()
+{
+#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
+ && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
+ && LITTLE_ENDIAN)
+ bogus endian macros
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ # It does; now see whether it defined to BIG_ENDIAN or not.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+ #include <sys/param.h>
+
+int
+main ()
+{
+#if BYTE_ORDER != BIG_ENDIAN
+ not big endian
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_c_bigendian=yes
+else
+ ac_cv_c_bigendian=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+ if test $ac_cv_c_bigendian = unknown; then
+ # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <limits.h>
+
+int
+main ()
+{
+#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
+ bogus endian macros
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ # It does; now see whether it defined to _BIG_ENDIAN or not.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <limits.h>
+
+int
+main ()
+{
+#ifndef _BIG_ENDIAN
+ not big endian
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_c_bigendian=yes
+else
+ ac_cv_c_bigendian=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+ if test $ac_cv_c_bigendian = unknown; then
+ # Compile a test program.
+ if test "$cross_compiling" = yes; then :
+ # Try to guess by grepping values from an object file.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+short int ascii_mm[] =
+ { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
+ short int ascii_ii[] =
+ { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
+ int use_ascii (int i) {
+ return ascii_mm[i] + ascii_ii[i];
+ }
+ short int ebcdic_ii[] =
+ { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
+ short int ebcdic_mm[] =
+ { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
+ int use_ebcdic (int i) {
+ return ebcdic_mm[i] + ebcdic_ii[i];
+ }
+ extern int foo;
+
+int
+main ()
+{
+return use_ascii (foo) == use_ebcdic (foo);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
+ ac_cv_c_bigendian=yes
+ fi
+ if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
+ if test "$ac_cv_c_bigendian" = unknown; then
+ ac_cv_c_bigendian=no
+ else
+ # finding both strings is unlikely to happen, but who knows?
+ ac_cv_c_bigendian=unknown
+ fi
+ fi
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$ac_includes_default
+int
+main ()
+{
+
+ /* Are we little or big endian? From Harbison&Steele. */
+ union
+ {
+ long int l;
+ char c[sizeof (long int)];
+ } u;
+ u.l = 1;
+ return u.c[sizeof (long int) - 1] == 1;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ ac_cv_c_bigendian=no
+else
+ ac_cv_c_bigendian=yes
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
+$as_echo "$ac_cv_c_bigendian" >&6; }
+ case $ac_cv_c_bigendian in #(
+ yes)
+ ac_cv_big_endian=1;; #(
+ no)
+ ac_cv_big_endian=0 ;; #(
+ universal)
+
+$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
+
+ ;; #(
+ *)
+ as_fn_error $? "unknown endianness
+ presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
+ esac
+
+if test "x${ac_cv_big_endian}" = "x1" ; then
+ cat >>confdefs.h <<_ACEOF
+#define JEMALLOC_BIG_ENDIAN
+_ACEOF
+
+fi
+
# The cast to long int works around a bug in the HP C Compiler
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
@@ -5862,24 +6092,6 @@
enable_prof_libgcc="0"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking libgcc-based backtracing reliability on ${host_cpu}" >&5
-$as_echo_n "checking libgcc-based backtracing reliability on ${host_cpu}... " >&6; }
- case "${host_cpu}" in
- i[3456]86)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unreliable" >&5
-$as_echo "unreliable" >&6; }
- enable_prof_libgcc="0";
- ;;
- x86_64)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: reliable" >&5
-$as_echo "reliable" >&6; }
- ;;
- *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unreliable" >&5
-$as_echo "unreliable" >&6; }
- enable_prof_libgcc="0";
- ;;
- esac
if test "x${enable_prof_libgcc}" = "x1" ; then
backtrace_method="libgcc"
$as_echo "#define JEMALLOC_PROF_LIBGCC " >>confdefs.h
@@ -5904,6 +6116,42 @@
if test "x$backtrace_method" = "x" -a "x$enable_prof_gcc" = "x1" \
-a "x$GCC" = "xyes" ; then
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports -fno-omit-frame-pointer" >&5
+$as_echo_n "checking whether compiler supports -fno-omit-frame-pointer... " >&6; }
+TCFLAGS="${CFLAGS}"
+if test "x${CFLAGS}" = "x" ; then
+ CFLAGS="-fno-omit-frame-pointer"
+else
+ CFLAGS="${CFLAGS} -fno-omit-frame-pointer"
+fi
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+
+int
+main ()
+{
+
+ return 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ je_cv_cflags_appended=-fno-omit-frame-pointer
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ je_cv_cflags_appended=
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ CFLAGS="${TCFLAGS}"
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
backtrace_method="gcc intrinsics"
$as_echo "#define JEMALLOC_PROF_GCC " >>confdefs.h
@@ -7306,6 +7554,7 @@
+
: "${CONFIG_STATUS=./config.status}"
ac_write_fail=0
ac_clean_files_save=$ac_clean_files
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/configure.ac new/jemalloc-3.6.0/configure.ac
--- old/jemalloc-3.5.1/configure.ac 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/configure.ac 2014-03-31 18:37:49.000000000 +0200
@@ -150,6 +150,11 @@
fi
AC_PROG_CPP
+AC_C_BIGENDIAN([ac_cv_big_endian=1], [ac_cv_big_endian=0])
+if test "x${ac_cv_big_endian}" = "x1" ; then
+ AC_DEFINE_UNQUOTED([JEMALLOC_BIG_ENDIAN], [ ])
+fi
+
AC_CHECK_SIZEOF([void *])
if test "x${ac_cv_sizeof_void_p}" = "x8" ; then
LG_SIZEOF_PTR=3
@@ -742,22 +747,6 @@
-a "x$GCC" = "xyes" ; then
AC_CHECK_HEADERS([unwind.h], , [enable_prof_libgcc="0"])
AC_CHECK_LIB([gcc], [_Unwind_Backtrace], [LIBS="$LIBS -lgcc"], [enable_prof_libgcc="0"])
- dnl The following is conservative, in that it only has entries for CPUs on
- dnl which jemalloc has been tested.
- AC_MSG_CHECKING([libgcc-based backtracing reliability on ${host_cpu}])
- case "${host_cpu}" in
- i[[3456]]86)
- AC_MSG_RESULT([unreliable])
- enable_prof_libgcc="0";
- ;;
- x86_64)
- AC_MSG_RESULT([reliable])
- ;;
- *)
- AC_MSG_RESULT([unreliable])
- enable_prof_libgcc="0";
- ;;
- esac
if test "x${enable_prof_libgcc}" = "x1" ; then
backtrace_method="libgcc"
AC_DEFINE([JEMALLOC_PROF_LIBGCC], [ ])
@@ -779,6 +768,7 @@
)
if test "x$backtrace_method" = "x" -a "x$enable_prof_gcc" = "x1" \
-a "x$GCC" = "xyes" ; then
+ JE_CFLAGS_APPEND([-fno-omit-frame-pointer])
backtrace_method="gcc intrinsics"
AC_DEFINE([JEMALLOC_PROF_GCC], [ ])
else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/doc/jemalloc.3 new/jemalloc-3.6.0/doc/jemalloc.3
--- old/jemalloc-3.5.1/doc/jemalloc.3 2014-02-26 01:50:51.000000000 +0100
+++ new/jemalloc-3.6.0/doc/jemalloc.3 2014-03-31 18:39:31.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: JEMALLOC
.\" Author: Jason Evans
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 02/25/2014
+.\" Date: 03/31/2014
.\" Manual: User Manual
-.\" Source: jemalloc 3.5.1-0-g7709a64c59daf0b1f938be49472fcc499e1bd136
+.\" Source: jemalloc 3.6.0-0-g46c0af68bd248b04df75e4f92d5fb804c3d75340
.\" Language: English
.\"
-.TH "JEMALLOC" "3" "02/25/2014" "jemalloc 3.5.1-0-g7709a64c59da" "User Manual"
+.TH "JEMALLOC" "3" "03/31/2014" "jemalloc 3.6.0-0-g46c0af68bd24" "User Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -31,7 +31,7 @@
jemalloc \- general purpose memory allocation functions
.SH "LIBRARY"
.PP
-This manual describes jemalloc 3\&.5\&.1\-0\-g7709a64c59daf0b1f938be49472fcc499e1bd136\&. More information can be found at the
+This manual describes jemalloc 3\&.6\&.0\-0\-g46c0af68bd248b04df75e4f92d5fb804c3d75340\&. More information can be found at the
\m[blue]\fBjemalloc website\fR\m[]\&\s-2\u[1]\d\s+2\&.
.SH "SYNOPSIS"
.sp
@@ -1019,7 +1019,7 @@
"arena\&.<i>\&.dss" (\fBconst char *\fR) rw
.RS 4
Set the precedence of dss allocation as related to mmap allocation for arena <i>, or for all arenas if <i> equals
-"arenas\&.narenas"\&. See
+"arenas\&.narenas"\&. Note that even during huge allocation this setting is read from the arena that would be chosen for small or large allocation so that applications can depend on consistent dss versus mmap allocation regardless of allocation size\&. See
"opt\&.dss"
for supported settings\&.
.RE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/doc/jemalloc.html new/jemalloc-3.6.0/doc/jemalloc.html
--- old/jemalloc-3.5.1/doc/jemalloc.html 2014-02-26 01:50:44.000000000 +0100
+++ new/jemalloc-3.6.0/doc/jemalloc.html 2014-03-31 18:39:26.000000000 +0200
@@ -1,8 +1,8 @@
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>JEMALLOC</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry"><a name="idm171718487600"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>jemalloc — general purpose memory allocation functions</p></div><div class="refsect1"><a name="library"></a><h2>LIBRARY</h2><p>This manual describes jemalloc 3.5.1-0-g7709a64c59daf0b1f938be49472fcc499e1bd136. More information
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>JEMALLOC</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry"><a name="idm316394519664"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>jemalloc — general purpose memory allocation functions</p></div><div class="refsect1"><a name="library"></a><h2>LIBRARY</h2><p>This manual describes jemalloc 3.6.0-0-g46c0af68bd248b04df75e4f92d5fb804c3d75340. More information
can be found at the <a class="ulink" href="http://www.canonware.com/jemalloc/" target="_top">jemalloc website</a>.</p></div><div class="refsynopsisdiv"><h2>SYNOPSIS</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include <<code class="filename">stdlib.h</code>>
-#include <<code class="filename">jemalloc/jemalloc.h</code>></pre><div class="refsect2"><a name="idm171718122464"></a><h3>Standard API</h3><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">malloc</b>(</code></td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">calloc</b>(</code></td><td>size_t <var class="pdparam">number</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">posix_memalign</b>(</code></td><td>void **<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">alignment</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">aligned_alloc</b>(</code></td><td>size_t <var class="pdparam">alignment</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">realloc</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">free</b>(</code></td><td>void *<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div></div><div class="refsect2"><a name="idm171718106336"></a><h3>Non-standard API</h3><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">mallocx</b>(</code></td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">rallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">xallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">extra</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">sallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">dallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">nallocx</b>(</code></td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">mallctl</b>(</code></td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">oldp</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">oldlenp</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">newp</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">newlen</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">mallctlnametomib</b>(</code></td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">mibp</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">miblenp</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">mallctlbymib</b>(</code></td><td>const size_t *<var class="pdparam">mib</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">miblen</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">oldp</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">oldlenp</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">newp</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">newlen</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">malloc_stats_print</b>(</code></td><td>void <var class="pdparam">(*write_cb)</var>
+#include <<code class="filename">jemalloc/jemalloc.h</code>></pre><div class="refsect2"><a name="idm316394002288"></a><h3>Standard API</h3><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">malloc</b>(</code></td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">calloc</b>(</code></td><td>size_t <var class="pdparam">number</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">posix_memalign</b>(</code></td><td>void **<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">alignment</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">aligned_alloc</b>(</code></td><td>size_t <var class="pdparam">alignment</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">realloc</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">free</b>(</code></td><td>void *<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div></div><div class="refsect2"><a name="idm316393986160"></a><h3>Non-standard API</h3><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">mallocx</b>(</code></td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void *<b class="fsfunc">rallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">xallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">extra</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">sallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">dallocx</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">nallocx</b>(</code></td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">mallctl</b>(</code></td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">oldp</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">oldlenp</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">newp</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">newlen</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">mallctlnametomib</b>(</code></td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">mibp</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">miblenp</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">mallctlbymib</b>(</code></td><td>const size_t *<var class="pdparam">mib</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">miblen</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">oldp</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">oldlenp</var>, </td></tr><tr><td>�</td><td>void *<var class="pdparam">newp</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">newlen</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">malloc_stats_print</b>(</code></td><td>void <var class="pdparam">(*write_cb)</var>
<code>(</code>void *, const char *<code>)</code>
- , </td></tr><tr><td>�</td><td>void *<var class="pdparam">cbopaque</var>, </td></tr><tr><td>�</td><td>const char *<var class="pdparam">opts</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">malloc_usable_size</b>(</code></td><td>const void *<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">(*malloc_message)</b>(</code></td><td>void *<var class="pdparam">cbopaque</var>, </td></tr><tr><td>�</td><td>const char *<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><p><span class="type">const char *</span><code class="varname">malloc_conf</code>;</p></div><div class="refsect2"><a name="idm171718063456"></a><h3>Experimental API</h3><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">allocm</b>(</code></td><td>void **<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">rallocm</b>(</code></td><td>void **<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">extra</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sallocm</b>(</code></td><td>const void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">dallocm</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">nallocm</b>(</code></td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div></div></div></div><div class="refsect1"><a name="description"></a><h2>DESCRIPTION</h2><div class="refsect2"><a name="idm171718042848"></a><h3>Standard API</h3><p>The <code class="function">malloc</code>(<em class="parameter"><code></code></em>) function allocates
+ , </td></tr><tr><td>�</td><td>void *<var class="pdparam">cbopaque</var>, </td></tr><tr><td>�</td><td>const char *<var class="pdparam">opts</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">size_t <b class="fsfunc">malloc_usable_size</b>(</code></td><td>const void *<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">(*malloc_message)</b>(</code></td><td>void *<var class="pdparam">cbopaque</var>, </td></tr><tr><td>�</td><td>const char *<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><p><span class="type">const char *</span><code class="varname">malloc_conf</code>;</p></div><div class="refsect2"><a name="idm316388684112"></a><h3>Experimental API</h3><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">allocm</b>(</code></td><td>void **<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">rallocm</b>(</code></td><td>void **<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">extra</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sallocm</b>(</code></td><td>const void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">dallocm</b>(</code></td><td>void *<var class="pdparam">ptr</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">nallocm</b>(</code></td><td>size_t *<var class="pdparam">rsize</var>, </td></tr><tr><td>�</td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td>�</td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div></div></div></div><div class="refsect1"><a name="description"></a><h2>DESCRIPTION</h2><div class="refsect2"><a name="idm316388663504"></a><h3>Standard API</h3><p>The <code class="function">malloc</code>(<em class="parameter"><code></code></em>) function allocates
<em class="parameter"><code>size</code></em> bytes of uninitialized memory. The allocated
space is suitably aligned (after possible pointer coercion) for storage
of any type of object.</p><p>The <code class="function">calloc</code>(<em class="parameter"><code></code></em>) function allocates
@@ -38,7 +38,7 @@
<code class="function">malloc</code>(<em class="parameter"><code></code></em>) for the specified size.</p><p>The <code class="function">free</code>(<em class="parameter"><code></code></em>) function causes the
allocated memory referenced by <em class="parameter"><code>ptr</code></em> to be made
available for future allocations. If <em class="parameter"><code>ptr</code></em> is
- <code class="constant">NULL</code>, no action occurs.</p></div><div class="refsect2"><a name="idm171718019248"></a><h3>Non-standard API</h3><p>The <code class="function">mallocx</code>(<em class="parameter"><code></code></em>),
+ <code class="constant">NULL</code>, no action occurs.</p></div><div class="refsect2"><a name="idm316388639904"></a><h3>Non-standard API</h3><p>The <code class="function">mallocx</code>(<em class="parameter"><code></code></em>),
<code class="function">rallocx</code>(<em class="parameter"><code></code></em>),
<code class="function">xallocx</code>(<em class="parameter"><code></code></em>),
<code class="function">sallocx</code>(<em class="parameter"><code></code></em>),
@@ -177,7 +177,7 @@
discrepancy between the requested allocation size and the size reported
by <code class="function">malloc_usable_size</code>(<em class="parameter"><code></code></em>) should not be
depended on, since such behavior is entirely implementation-dependent.
- </p></div><div class="refsect2"><a name="idm171717953664"></a><h3>Experimental API</h3><p>The experimental API is subject to change or removal without regard
+ </p></div><div class="refsect2"><a name="idm316388574208"></a><h3>Experimental API</h3><p>The experimental API is subject to change or removal without regard
for backward compatibility. If <code class="option">--disable-experimental</code>
is specified during configuration, the experimental API is
omitted.</p><p>The <code class="function">allocm</code>(<em class="parameter"><code></code></em>),
@@ -902,8 +902,11 @@
allocation for arena <i>, or for all arenas if <i> equals
<a class="link" href="#arenas.narenas">
"<code class="mallctl">arenas.narenas</code>"
- </a>. See
- <a class="link" href="#opt.dss">
+ </a>. Note
+ that even during huge allocation this setting is read from the arena
+ that would be chosen for small or large allocation so that applications
+ can depend on consistent dss versus mmap allocation regardless of
+ allocation size. See <a class="link" href="#opt.dss">
"<code class="mallctl">opt.dss</code>"
</a> for supported
settings.
@@ -1403,7 +1406,7 @@
<code class="function">malloc_stats_print</code>(<em class="parameter"><code></code></em>), followed by a string
pointer. Please note that doing anything which tries to allocate memory in
this function is likely to result in a crash or deadlock.</p><p>All messages are prefixed by
- “<code class="computeroutput"><jemalloc>: </code>”.</p></div><div class="refsect1"><a name="return_values"></a><h2>RETURN VALUES</h2><div class="refsect2"><a name="idm171717408928"></a><h3>Standard API</h3><p>The <code class="function">malloc</code>(<em class="parameter"><code></code></em>) and
+ “<code class="computeroutput"><jemalloc>: </code>”.</p></div><div class="refsect1"><a name="return_values"></a><h2>RETURN VALUES</h2><div class="refsect2"><a name="idm316388028784"></a><h3>Standard API</h3><p>The <code class="function">malloc</code>(<em class="parameter"><code></code></em>) and
<code class="function">calloc</code>(<em class="parameter"><code></code></em>) functions return a pointer to the
allocated memory if successful; otherwise a <code class="constant">NULL</code>
pointer is returned and <code class="varname">errno</code> is set to
@@ -1431,7 +1434,7 @@
allocation failure. The <code class="function">realloc</code>(<em class="parameter"><code></code></em>)
function always leaves the original buffer intact when an error occurs.
</p><p>The <code class="function">free</code>(<em class="parameter"><code></code></em>) function returns no
- value.</p></div><div class="refsect2"><a name="idm171717383248"></a><h3>Non-standard API</h3><p>The <code class="function">mallocx</code>(<em class="parameter"><code></code></em>) and
+ value.</p></div><div class="refsect2"><a name="idm316388003104"></a><h3>Non-standard API</h3><p>The <code class="function">mallocx</code>(<em class="parameter"><code></code></em>) and
<code class="function">rallocx</code>(<em class="parameter"><code></code></em>) functions return a pointer to
the allocated memory if successful; otherwise a <code class="constant">NULL</code>
pointer is returned to indicate insufficient contiguous memory was
@@ -1462,7 +1465,7 @@
read/write processing.</p></dd></dl></div><p>
</p><p>The <code class="function">malloc_usable_size</code>(<em class="parameter"><code></code></em>) function
returns the usable size of the allocation pointed to by
- <em class="parameter"><code>ptr</code></em>. </p></div><div class="refsect2"><a name="idm171717353504"></a><h3>Experimental API</h3><p>The <code class="function">allocm</code>(<em class="parameter"><code></code></em>),
+ <em class="parameter"><code>ptr</code></em>. </p></div><div class="refsect2"><a name="idm316387973360"></a><h3>Experimental API</h3><p>The <code class="function">allocm</code>(<em class="parameter"><code></code></em>),
<code class="function">rallocm</code>(<em class="parameter"><code></code></em>),
<code class="function">sallocm</code>(<em class="parameter"><code></code></em>),
<code class="function">dallocm</code>(<em class="parameter"><code></code></em>), and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/doc/jemalloc.xml.in new/jemalloc-3.6.0/doc/jemalloc.xml.in
--- old/jemalloc-3.5.1/doc/jemalloc.xml.in 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/doc/jemalloc.xml.in 2014-03-31 18:37:49.000000000 +0200
@@ -1439,8 +1439,12 @@
<listitem><para>Set the precedence of dss allocation as related to mmap
allocation for arena <i>, or for all arenas if <i> equals
<link
- linkend="arenas.narenas"><mallctl>arenas.narenas</mallctl></link>. See
- <link linkend="opt.dss"><mallctl>opt.dss</mallctl></link> for supported
+ linkend="arenas.narenas"><mallctl>arenas.narenas</mallctl></link>. Note
+ that even during huge allocation this setting is read from the arena
+ that would be chosen for small or large allocation so that applications
+ can depend on consistent dss versus mmap allocation regardless of
+ allocation size. See <link
+ linkend="opt.dss"><mallctl>opt.dss</mallctl></link> for supported
settings.
</para></listitem>
</varlistentry>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/include/jemalloc/internal/hash.h new/jemalloc-3.6.0/include/jemalloc/internal/hash.h
--- old/jemalloc-3.5.1/include/jemalloc/internal/hash.h 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/include/jemalloc/internal/hash.h 2014-03-31 18:37:49.000000000 +0200
@@ -320,7 +320,7 @@
JEMALLOC_INLINE void
hash(const void *key, size_t len, const uint32_t seed, size_t r_hash[2])
{
-#if (LG_SIZEOF_PTR == 3)
+#if (LG_SIZEOF_PTR == 3 && !defined(JEMALLOC_BIG_ENDIAN))
hash_x64_128(key, len, seed, (uint64_t *)r_hash);
#else
uint64_t hashes[2];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/include/jemalloc/internal/huge.h new/jemalloc-3.6.0/include/jemalloc/internal/huge.h
--- old/jemalloc-3.5.1/include/jemalloc/internal/huge.h 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/include/jemalloc/internal/huge.h 2014-03-31 18:37:49.000000000 +0200
@@ -17,18 +17,20 @@
/* Protects chunk-related data structures. */
extern malloc_mutex_t huge_mtx;
-void *huge_malloc(size_t size, bool zero);
-void *huge_palloc(size_t size, size_t alignment, bool zero);
+void *huge_malloc(size_t size, bool zero, dss_prec_t dss_prec);
+void *huge_palloc(size_t size, size_t alignment, bool zero,
+ dss_prec_t dss_prec);
bool huge_ralloc_no_move(void *ptr, size_t oldsize, size_t size,
size_t extra);
void *huge_ralloc(void *ptr, size_t oldsize, size_t size, size_t extra,
- size_t alignment, bool zero, bool try_tcache_dalloc);
+ size_t alignment, bool zero, bool try_tcache_dalloc, dss_prec_t dss_prec);
#ifdef JEMALLOC_JET
typedef void (huge_dalloc_junk_t)(void *, size_t);
extern huge_dalloc_junk_t *huge_dalloc_junk;
#endif
void huge_dalloc(void *ptr, bool unmap);
size_t huge_salloc(const void *ptr);
+dss_prec_t huge_dss_prec_get(arena_t *arena);
prof_ctx_t *huge_prof_ctx_get(const void *ptr);
void huge_prof_ctx_set(const void *ptr, prof_ctx_t *ctx);
bool huge_boot(void);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/include/jemalloc/internal/jemalloc_internal.h.in new/jemalloc-3.6.0/include/jemalloc/internal/jemalloc_internal.h.in
--- old/jemalloc-3.5.1/include/jemalloc/internal/jemalloc_internal.h.in 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/include/jemalloc/internal/jemalloc_internal.h.in 2014-03-31 18:37:49.000000000 +0200
@@ -770,7 +770,7 @@
if (size <= arena_maxclass)
return (arena_malloc(arena, size, false, try_tcache));
else
- return (huge_malloc(size, false));
+ return (huge_malloc(size, false, huge_dss_prec_get(arena)));
}
JEMALLOC_ALWAYS_INLINE void *
@@ -787,7 +787,7 @@
if (size <= arena_maxclass)
return (arena_malloc(arena, size, true, try_tcache));
else
- return (huge_malloc(size, true));
+ return (huge_malloc(size, true, huge_dss_prec_get(arena)));
}
JEMALLOC_ALWAYS_INLINE void *
@@ -813,9 +813,9 @@
ret = arena_palloc(choose_arena(arena), usize,
alignment, zero);
} else if (alignment <= chunksize)
- ret = huge_malloc(usize, zero);
+ ret = huge_malloc(usize, zero, huge_dss_prec_get(arena));
else
- ret = huge_palloc(usize, alignment, zero);
+ ret = huge_palloc(usize, alignment, zero, huge_dss_prec_get(arena));
}
assert(ALIGNMENT_ADDR2BASE(ret, alignment) == ret);
@@ -984,7 +984,7 @@
try_tcache_dalloc));
} else {
return (huge_ralloc(ptr, oldsize, size, extra,
- alignment, zero, try_tcache_dalloc));
+ alignment, zero, try_tcache_dalloc, huge_dss_prec_get(arena)));
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/include/jemalloc/internal/jemalloc_internal_defs.h.in new/jemalloc-3.6.0/include/jemalloc/internal/jemalloc_internal_defs.h.in
--- old/jemalloc-3.5.1/include/jemalloc/internal/jemalloc_internal_defs.h.in 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/include/jemalloc/internal/jemalloc_internal_defs.h.in 2014-03-31 18:37:49.000000000 +0200
@@ -190,6 +190,9 @@
/* C99 restrict keyword supported. */
#undef JEMALLOC_HAS_RESTRICT
+/* For use by hash code. */
+#undef JEMALLOC_BIG_ENDIAN
+
/* sizeof(int) == 2^LG_SIZEOF_INT. */
#undef LG_SIZEOF_INT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/include/jemalloc/internal/private_symbols.txt new/jemalloc-3.6.0/include/jemalloc/internal/private_symbols.txt
--- old/jemalloc-3.5.1/include/jemalloc/internal/private_symbols.txt 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/include/jemalloc/internal/private_symbols.txt 2014-03-31 18:37:49.000000000 +0200
@@ -197,6 +197,7 @@
huge_boot
huge_dalloc
huge_dalloc_junk
+huge_dss_prec_get
huge_malloc
huge_mtx
huge_ndalloc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/src/arena.c new/jemalloc-3.6.0/src/arena.c
--- old/jemalloc-3.5.1/src/arena.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/src/arena.c 2014-03-31 18:37:49.000000000 +0200
@@ -614,8 +614,11 @@
if (arena->spare != NULL)
chunk = arena_chunk_init_spare(arena);
- else
+ else {
chunk = arena_chunk_init_hard(arena);
+ if (chunk == NULL)
+ return (NULL);
+ }
/* Insert the run into the runs_avail tree. */
arena_avail_insert(arena, chunk, map_bias, chunk_npages-map_bias,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/src/huge.c new/jemalloc-3.6.0/src/huge.c
--- old/jemalloc-3.5.1/src/huge.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/src/huge.c 2014-03-31 18:37:49.000000000 +0200
@@ -16,14 +16,14 @@
static extent_tree_t huge;
void *
-huge_malloc(size_t size, bool zero)
+huge_malloc(size_t size, bool zero, dss_prec_t dss_prec)
{
- return (huge_palloc(size, chunksize, zero));
+ return (huge_palloc(size, chunksize, zero, dss_prec));
}
void *
-huge_palloc(size_t size, size_t alignment, bool zero)
+huge_palloc(size_t size, size_t alignment, bool zero, dss_prec_t dss_prec)
{
void *ret;
size_t csize;
@@ -48,8 +48,7 @@
* it is possible to make correct junk/zero fill decisions below.
*/
is_zeroed = zero;
- ret = chunk_alloc(csize, alignment, false, &is_zeroed,
- chunk_dss_prec_get());
+ ret = chunk_alloc(csize, alignment, false, &is_zeroed, dss_prec);
if (ret == NULL) {
base_node_dealloc(node);
return (NULL);
@@ -98,7 +97,7 @@
void *
huge_ralloc(void *ptr, size_t oldsize, size_t size, size_t extra,
- size_t alignment, bool zero, bool try_tcache_dalloc)
+ size_t alignment, bool zero, bool try_tcache_dalloc, dss_prec_t dss_prec)
{
void *ret;
size_t copysize;
@@ -113,18 +112,18 @@
* space and copying.
*/
if (alignment > chunksize)
- ret = huge_palloc(size + extra, alignment, zero);
+ ret = huge_palloc(size + extra, alignment, zero, dss_prec);
else
- ret = huge_malloc(size + extra, zero);
+ ret = huge_malloc(size + extra, zero, dss_prec);
if (ret == NULL) {
if (extra == 0)
return (NULL);
/* Try again, this time without extra. */
if (alignment > chunksize)
- ret = huge_palloc(size, alignment, zero);
+ ret = huge_palloc(size, alignment, zero, dss_prec);
else
- ret = huge_malloc(size, zero);
+ ret = huge_malloc(size, zero, dss_prec);
if (ret == NULL)
return (NULL);
@@ -264,6 +263,13 @@
return (ret);
}
+dss_prec_t
+huge_dss_prec_get(arena_t *arena)
+{
+
+ return (arena_dss_prec_get(choose_arena(arena)));
+}
+
prof_ctx_t *
huge_prof_ctx_get(const void *ptr)
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/src/jemalloc.c new/jemalloc-3.6.0/src/jemalloc.c
--- old/jemalloc-3.5.1/src/jemalloc.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/src/jemalloc.c 2014-03-31 18:37:49.000000000 +0200
@@ -2076,7 +2076,7 @@
if (size <= arena_maxclass)
return (arena_malloc(arenas[0], size, zero, false));
else
- return (huge_malloc(size, zero));
+ return (huge_malloc(size, zero, huge_dss_prec_get(arenas[0])));
}
void *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/src/prof.c new/jemalloc-3.6.0/src/prof.c
--- old/jemalloc-3.5.1/src/prof.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/src/prof.c 2014-03-31 18:37:49.000000000 +0200
@@ -935,9 +935,12 @@
char filename[PATH_MAX + 1];
cassert(config_prof);
-
+#ifdef __FreeBSD__
+ malloc_snprintf(filename, sizeof(filename), "/proc/curproc/map");
+#else
malloc_snprintf(filename, sizeof(filename), "/proc/%d/maps",
(int)getpid());
+#endif
mfd = open(filename, O_RDONLY);
if (mfd != -1) {
ssize_t nread;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/include/test/SFMT-alti.h new/jemalloc-3.6.0/test/include/test/SFMT-alti.h
--- old/jemalloc-3.5.1/test/include/test/SFMT-alti.h 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/include/test/SFMT-alti.h 2014-03-31 18:37:49.000000000 +0200
@@ -61,7 +61,7 @@
* @return output
*/
JEMALLOC_ALWAYS_INLINE
-static vector unsigned int vec_recursion(vector unsigned int a,
+vector unsigned int vec_recursion(vector unsigned int a,
vector unsigned int b,
vector unsigned int c,
vector unsigned int d) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/include/test/test.h new/jemalloc-3.6.0/test/include/test/test.h
--- old/jemalloc-3.5.1/test/include/test/test.h 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/include/test/test.h 2014-03-31 18:37:49.000000000 +0200
@@ -1,13 +1,19 @@
+#define ASSERT_BUFSIZE 256
+
#define assert_cmp(t, a, b, cmp, neg_cmp, pri, fmt...) do { \
t a_ = (a); \
t b_ = (b); \
if (!(a_ cmp b_)) { \
- p_test_fail( \
+ char prefix[ASSERT_BUFSIZE]; \
+ char message[ASSERT_BUFSIZE]; \
+ malloc_snprintf(prefix, sizeof(prefix), \
"%s:%s:%d: Failed assertion: " \
"(%s) "#cmp" (%s) --> " \
"%"pri" "#neg_cmp" %"pri": ", \
__func__, __FILE__, __LINE__, \
- #a, #b, a_, b_, fmt); \
+ #a, #b, a_, b_); \
+ malloc_snprintf(message, sizeof(message), fmt); \
+ p_test_fail(prefix, message); \
} \
} while (0)
@@ -208,24 +214,32 @@
bool a_ = (a); \
bool b_ = (b); \
if (!(a_ == b_)) { \
- p_test_fail( \
+ char prefix[ASSERT_BUFSIZE]; \
+ char message[ASSERT_BUFSIZE]; \
+ malloc_snprintf(prefix, sizeof(prefix), \
"%s:%s:%d: Failed assertion: " \
"(%s) == (%s) --> %s != %s: ", \
__func__, __FILE__, __LINE__, \
#a, #b, a_ ? "true" : "false", \
- b_ ? "true" : "false", fmt); \
+ b_ ? "true" : "false"); \
+ malloc_snprintf(message, sizeof(message), fmt); \
+ p_test_fail(prefix, message); \
} \
} while (0)
#define assert_b_ne(a, b, fmt...) do { \
bool a_ = (a); \
bool b_ = (b); \
if (!(a_ != b_)) { \
- p_test_fail( \
+ char prefix[ASSERT_BUFSIZE]; \
+ char message[ASSERT_BUFSIZE]; \
+ malloc_snprintf(prefix, sizeof(prefix), \
"%s:%s:%d: Failed assertion: " \
"(%s) != (%s) --> %s == %s: ", \
__func__, __FILE__, __LINE__, \
#a, #b, a_ ? "true" : "false", \
- b_ ? "true" : "false", fmt); \
+ b_ ? "true" : "false"); \
+ malloc_snprintf(message, sizeof(message), fmt); \
+ p_test_fail(prefix, message); \
} \
} while (0)
#define assert_true(a, fmt...) assert_b_eq(a, true, fmt)
@@ -233,26 +247,39 @@
#define assert_str_eq(a, b, fmt...) do { \
if (strcmp((a), (b))) { \
- p_test_fail( \
+ char prefix[ASSERT_BUFSIZE]; \
+ char message[ASSERT_BUFSIZE]; \
+ malloc_snprintf(prefix, sizeof(prefix), \
"%s:%s:%d: Failed assertion: " \
"(%s) same as (%s) --> " \
"\"%s\" differs from \"%s\": ", \
- __func__, __FILE__, __LINE__, #a, #b, a, b, fmt); \
+ __func__, __FILE__, __LINE__, #a, #b, a, b); \
+ malloc_snprintf(message, sizeof(message), fmt); \
+ p_test_fail(prefix, message); \
} \
} while (0)
#define assert_str_ne(a, b, fmt...) do { \
if (!strcmp((a), (b))) { \
- p_test_fail( \
+ char prefix[ASSERT_BUFSIZE]; \
+ char message[ASSERT_BUFSIZE]; \
+ malloc_snprintf(prefix, sizeof(prefix), \
"%s:%s:%d: Failed assertion: " \
"(%s) differs from (%s) --> " \
"\"%s\" same as \"%s\": ", \
- __func__, __FILE__, __LINE__, #a, #b, a, b, fmt); \
+ __func__, __FILE__, __LINE__, #a, #b, a, b); \
+ malloc_snprintf(message, sizeof(message), fmt); \
+ p_test_fail(prefix, message); \
} \
} while (0)
#define assert_not_reached(fmt...) do { \
- p_test_fail("%s:%s:%d: Unreachable code reached: ", \
- __func__, __FILE__, __LINE__, fmt); \
+ char prefix[ASSERT_BUFSIZE]; \
+ char message[ASSERT_BUFSIZE]; \
+ malloc_snprintf(prefix, sizeof(prefix), \
+ "%s:%s:%d: Unreachable code reached: ", \
+ __func__, __FILE__, __LINE__); \
+ malloc_snprintf(message, sizeof(message), fmt); \
+ p_test_fail(prefix, message); \
} while (0)
/*
@@ -299,4 +326,4 @@
test_status_t p_test(test_t* t, ...);
void p_test_init(const char *name);
void p_test_fini(void);
-void p_test_fail(const char *format, ...);
+void p_test_fail(const char *prefix, const char *message);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/integration/ALLOCM_ARENA.c new/jemalloc-3.6.0/test/integration/ALLOCM_ARENA.c
--- old/jemalloc-3.5.1/test/integration/ALLOCM_ARENA.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/integration/ALLOCM_ARENA.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,58 +0,0 @@
-#include "test/jemalloc_test.h"
-
-#define NTHREADS 10
-
-void *
-thd_start(void *arg)
-{
- unsigned thread_ind = (unsigned)(uintptr_t)arg;
- unsigned arena_ind;
- void *p;
- size_t rsz, sz;
-
- sz = sizeof(arena_ind);
- assert_d_eq(mallctl("arenas.extend", &arena_ind, &sz, NULL, 0), 0,
- "Error in arenas.extend");
-
- if (thread_ind % 4 != 3) {
- size_t mib[3];
- size_t miblen = sizeof(mib) / sizeof(size_t);
- const char *dss_precs[] = {"disabled", "primary", "secondary"};
- const char *dss = dss_precs[thread_ind %
- (sizeof(dss_precs)/sizeof(char*))];
- assert_d_eq(mallctlnametomib("arena.0.dss", mib, &miblen), 0,
- "Error in mallctlnametomib()");
- mib[1] = arena_ind;
- assert_d_eq(mallctlbymib(mib, miblen, NULL, NULL, (void *)&dss,
- sizeof(const char *)), 0, "Error in mallctlbymib()");
- }
-
- assert_d_eq(allocm(&p, &rsz, 1, ALLOCM_ARENA(arena_ind)),
- ALLOCM_SUCCESS, "Unexpected allocm() error");
- dallocm(p, 0);
-
- return (NULL);
-}
-
-TEST_BEGIN(test_ALLOCM_ARENA)
-{
- thd_t thds[NTHREADS];
- unsigned i;
-
- for (i = 0; i < NTHREADS; i++) {
- thd_create(&thds[i], thd_start,
- (void *)(uintptr_t)i);
- }
-
- for (i = 0; i < NTHREADS; i++)
- thd_join(thds[i], NULL);
-}
-TEST_END
-
-int
-main(void)
-{
-
- return (test(
- test_ALLOCM_ARENA));
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/integration/MALLOCX_ARENA.c new/jemalloc-3.6.0/test/integration/MALLOCX_ARENA.c
--- old/jemalloc-3.5.1/test/integration/MALLOCX_ARENA.c 1970-01-01 01:00:00.000000000 +0100
+++ new/jemalloc-3.6.0/test/integration/MALLOCX_ARENA.c 2014-03-31 18:37:49.000000000 +0200
@@ -0,0 +1,58 @@
+#include "test/jemalloc_test.h"
+
+#define NTHREADS 10
+
+void *
+thd_start(void *arg)
+{
+ unsigned thread_ind = (unsigned)(uintptr_t)arg;
+ unsigned arena_ind;
+ void *p;
+ size_t sz;
+
+ sz = sizeof(arena_ind);
+ assert_d_eq(mallctl("arenas.extend", &arena_ind, &sz, NULL, 0), 0,
+ "Error in arenas.extend");
+
+ if (thread_ind % 4 != 3) {
+ size_t mib[3];
+ size_t miblen = sizeof(mib) / sizeof(size_t);
+ const char *dss_precs[] = {"disabled", "primary", "secondary"};
+ const char *dss = dss_precs[thread_ind %
+ (sizeof(dss_precs)/sizeof(char*))];
+ assert_d_eq(mallctlnametomib("arena.0.dss", mib, &miblen), 0,
+ "Error in mallctlnametomib()");
+ mib[1] = arena_ind;
+ assert_d_eq(mallctlbymib(mib, miblen, NULL, NULL, (void *)&dss,
+ sizeof(const char *)), 0, "Error in mallctlbymib()");
+ }
+
+ p = mallocx(1, MALLOCX_ARENA(arena_ind));
+ assert_ptr_not_null(p, "Unexpected mallocx() error");
+ dallocx(p, 0);
+
+ return (NULL);
+}
+
+TEST_BEGIN(test_ALLOCM_ARENA)
+{
+ thd_t thds[NTHREADS];
+ unsigned i;
+
+ for (i = 0; i < NTHREADS; i++) {
+ thd_create(&thds[i], thd_start,
+ (void *)(uintptr_t)i);
+ }
+
+ for (i = 0; i < NTHREADS; i++)
+ thd_join(thds[i], NULL);
+}
+TEST_END
+
+int
+main(void)
+{
+
+ return (test(
+ test_ALLOCM_ARENA));
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/integration/allocm.c new/jemalloc-3.6.0/test/integration/allocm.c
--- old/jemalloc-3.5.1/test/integration/allocm.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/integration/allocm.c 2014-03-31 18:37:49.000000000 +0200
@@ -1,8 +1,7 @@
#include "test/jemalloc_test.h"
#define CHUNK 0x400000
-/* #define MAXALIGN ((size_t)UINT64_C(0x80000000000)) */
-#define MAXALIGN ((size_t)0x2000000LU)
+#define MAXALIGN (((size_t)1) << 25)
#define NITER 4
TEST_BEGIN(test_basic)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/integration/mallocx.c new/jemalloc-3.6.0/test/integration/mallocx.c
--- old/jemalloc-3.5.1/test/integration/mallocx.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/integration/mallocx.c 2014-03-31 18:37:49.000000000 +0200
@@ -1,8 +1,7 @@
#include "test/jemalloc_test.h"
#define CHUNK 0x400000
-/* #define MAXALIGN ((size_t)UINT64_C(0x80000000000)) */
-#define MAXALIGN ((size_t)0x2000000LU)
+#define MAXALIGN (((size_t)1) << 25)
#define NITER 4
TEST_BEGIN(test_basic)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/integration/rallocx.c new/jemalloc-3.6.0/test/integration/rallocx.c
--- old/jemalloc-3.5.1/test/integration/rallocx.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/integration/rallocx.c 2014-03-31 18:37:49.000000000 +0200
@@ -112,7 +112,7 @@
{
void *p, *q;
size_t align;
-#define MAX_ALIGN (ZU(1) << 29)
+#define MAX_ALIGN (ZU(1) << 25)
align = ZU(1);
p = mallocx(1, MALLOCX_ALIGN(align));
@@ -137,7 +137,7 @@
{
void *p, *q;
size_t lg_align, sz;
-#define MAX_LG_ALIGN 29
+#define MAX_LG_ALIGN 25
#define MAX_VALIDATE (ZU(1) << 22)
lg_align = ZU(0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/src/SFMT.c new/jemalloc-3.6.0/test/src/SFMT.c
--- old/jemalloc-3.5.1/test/src/SFMT.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/src/SFMT.c 2014-03-31 18:37:49.000000000 +0200
@@ -49,6 +49,9 @@
#include "test/jemalloc_test.h"
#include "test/SFMT-params.h"
+#if defined(JEMALLOC_BIG_ENDIAN) && !defined(BIG_ENDIAN64)
+#define BIG_ENDIAN64 1
+#endif
#if defined(__BIG_ENDIAN__) && !defined(__amd64) && !defined(BIG_ENDIAN64)
#define BIG_ENDIAN64 1
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/src/test.c new/jemalloc-3.6.0/test/src/test.c
--- old/jemalloc-3.5.1/test/src/test.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/src/test.c 2014-03-31 18:37:49.000000000 +0200
@@ -86,15 +86,9 @@
}
void
-p_test_fail(const char *format, ...)
+p_test_fail(const char *prefix, const char *message)
{
- va_list ap;
- va_start(ap, format);
- malloc_vcprintf(NULL, NULL, format, ap);
- format = va_arg(ap, const char *);
- malloc_vcprintf(NULL, NULL, format, ap);
- va_end(ap);
- malloc_printf("\n");
+ malloc_cprintf(NULL, NULL, "%s%s\n", prefix, message);
test_status = test_status_fail;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/unit/SFMT.c new/jemalloc-3.6.0/test/unit/SFMT.c
--- old/jemalloc-3.5.1/test/unit/SFMT.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/unit/SFMT.c 2014-03-31 18:37:49.000000000 +0200
@@ -1576,7 +1576,7 @@
for (i = 0; i < BLOCK_SIZE64; i++) {
if (i < COUNT_1) {
assert_u64_eq(array64[i], init_by_array_64_expected[i],
- "Output mismatch for i=%d");
+ "Output mismatch for i=%d", i);
}
r = gen_rand64(ctx);
assert_u64_eq(r, array64[i],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/unit/ckh.c new/jemalloc-3.6.0/test/unit/ckh.c
--- old/jemalloc-3.5.1/test/unit/ckh.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/unit/ckh.c 2014-03-31 18:37:49.000000000 +0200
@@ -29,7 +29,7 @@
assert_false(ckh_new(&ckh, 2, ckh_string_hash, ckh_string_keycomp),
"Unexpected ckh_new() error");
assert_zu_eq(ckh_count(&ckh), 0,
- "ckh_count() should return %zu, but it returned %zu", 0,
+ "ckh_count() should return %zu, but it returned %zu", ZU(0),
ckh_count(&ckh));
/* Insert. */
@@ -101,11 +101,11 @@
TEST_BEGIN(test_insert_iter_remove)
{
-#define NITEMS 1000
+#define NITEMS ZU(1000)
ckh_t ckh;
void **p[NITEMS];
void *q, *r;
- unsigned i;
+ size_t i;
assert_false(ckh_new(&ckh, 2, ckh_pointer_hash, ckh_pointer_keycomp),
"Unexpected ckh_new() error");
@@ -116,7 +116,7 @@
}
for (i = 0; i < NITEMS; i++) {
- unsigned j;
+ size_t j;
for (j = i; j < NITEMS; j++) {
assert_false(ckh_insert(&ckh, p[j], p[j]),
@@ -152,7 +152,7 @@
for (tabind = 0; ckh_iter(&ckh, &tabind, &q, &r) ==
false;) {
- unsigned k;
+ size_t k;
assert_ptr_eq(q, r, "Key and val not equal");
@@ -188,7 +188,7 @@
}
assert_zu_eq(ckh_count(&ckh), 0,
- "ckh_count() should return %zu, but it returned %zu", 0,
+ "ckh_count() should return %zu, but it returned %zu", ZU(0),
ckh_count(&ckh));
ckh_delete(&ckh);
#undef NITEMS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/unit/hash.c new/jemalloc-3.6.0/test/unit/hash.c
--- old/jemalloc-3.5.1/test/unit/hash.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/unit/hash.c 2014-03-31 18:37:49.000000000 +0200
@@ -122,9 +122,15 @@
(final[3] << 24);
switch (variant) {
+#ifdef JEMALLOC_BIG_ENDIAN
+ case hash_variant_x86_32: expected = 0x6213303eU; break;
+ case hash_variant_x86_128: expected = 0x266820caU; break;
+ case hash_variant_x64_128: expected = 0xcc622b6fU; break;
+#else
case hash_variant_x86_32: expected = 0xb0f57ee3U; break;
case hash_variant_x86_128: expected = 0xb3ece62aU; break;
case hash_variant_x64_128: expected = 0x6384ba69U; break;
+#endif
default: not_reached();
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/unit/junk.c new/jemalloc-3.6.0/test/unit/junk.c
--- old/jemalloc-3.5.1/test/unit/junk.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/unit/junk.c 2014-03-31 18:37:49.000000000 +0200
@@ -73,7 +73,7 @@
if (sz_prev > 0) {
assert_c_eq(s[0], 'a',
"Previously allocated byte %zu/%zu is corrupted",
- 0, sz_prev);
+ ZU(0), sz_prev);
assert_c_eq(s[sz_prev-1], 'a',
"Previously allocated byte %zu/%zu is corrupted",
sz_prev-1, sz_prev);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/unit/quarantine.c new/jemalloc-3.6.0/test/unit/quarantine.c
--- old/jemalloc-3.5.1/test/unit/quarantine.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/unit/quarantine.c 2014-03-31 18:37:49.000000000 +0200
@@ -21,7 +21,7 @@
TEST_BEGIN(test_quarantine)
{
-#define SZ 256
+#define SZ ZU(256)
#define NQUARANTINED (QUARANTINE_SIZE/SZ)
void *quarantined[NQUARANTINED+1];
size_t i, j;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/unit/rtree.c new/jemalloc-3.6.0/test/unit/rtree.c
--- old/jemalloc-3.5.1/test/unit/rtree.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/unit/rtree.c 2014-03-31 18:37:49.000000000 +0200
@@ -48,8 +48,9 @@
assert_u_eq(rtree_get(rtree, keys[k]), 1,
"rtree_get() should return previously set "
"value and ignore insignificant key bits; "
- "i=%u, j=%u, k=%u, set key=%#x, "
- "get key=%#x", i, j, k, keys[j], keys[k]);
+ "i=%u, j=%u, k=%u, set key=%#"PRIxPTR", "
+ "get key=%#"PRIxPTR, i, j, k, keys[j],
+ keys[k]);
}
assert_u_eq(rtree_get(rtree,
(((uintptr_t)1) << (sizeof(uintptr_t)*8-i))), 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jemalloc-3.5.1/test/unit/zero.c new/jemalloc-3.6.0/test/unit/zero.c
--- old/jemalloc-3.5.1/test/unit/zero.c 2014-02-26 01:49:15.000000000 +0100
+++ new/jemalloc-3.6.0/test/unit/zero.c 2014-03-31 18:37:49.000000000 +0200
@@ -20,7 +20,7 @@
if (sz_prev > 0) {
assert_c_eq(s[0], 'a',
"Previously allocated byte %zu/%zu is corrupted",
- 0, sz_prev);
+ ZU(0), sz_prev);
assert_c_eq(s[sz_prev-1], 'a',
"Previously allocated byte %zu/%zu is corrupted",
sz_prev-1, sz_prev);
--
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 indic-fonts for openSUSE:Factory checked in at 2014-04-02 17:22:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/indic-fonts (Old)
and /work/SRC/openSUSE:Factory/.indic-fonts.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "indic-fonts"
Changes:
--------
--- /work/SRC/openSUSE:Factory/indic-fonts/indic-fonts.changes 2013-11-28 16:51:30.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.indic-fonts.new/indic-fonts.changes 2014-04-02 17:22:56.000000000 +0200
@@ -1,0 +2,10 @@
+Mon Mar 31 11:56:52 UTC 2014 - pgajdos(a)suse.com
+
+- updated Lohit fonts to 20140220:
+ * Lohit Devanagari 2.94.0 release with number of improvements
+ and bug fixes.
+ * Lohit Malayalam 2.92.0 (Beta-1) release with number of improvements
+ and bug fixes.
+ * etc. see https://raw.github.com/pravins/lohit/master/RECENT-NEWS
+
+-------------------------------------------------------------------
Old:
----
lohit-ttf-20130612.tar.gz
New:
----
lohit-ttf-20140220.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ indic-fonts.spec ++++++
--- /var/tmp/diff_new_pack.3Yr29G/_old 2014-04-02 17:22:57.000000000 +0200
+++ /var/tmp/diff_new_pack.3Yr29G/_new 2014-04-02 17:22:57.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package indic-fonts
#
-# 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: indic-fonts
-Version: 20130612
+Version: 20140220
Release: 0
Summary: Professional Indian Language TrueType Fonts
License: GPL-2.0+ and OFL-1.1
++++++ lohit-ttf-20130612.tar.gz -> lohit-ttf-20140220.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lohit-ttf-20130612/AUTHORS new/lohit-ttf-20140220/AUTHORS
--- old/lohit-ttf-20130612/AUTHORS 1970-01-01 01:00:00.000000000 +0100
+++ new/lohit-ttf-20140220/AUTHORS 2014-02-20 08:16:35.000000000 +0100
@@ -0,0 +1,13 @@
+Contributors (Alphabetically) :-
+- Baishampayan Ghose
+- Bernard Massot
+- Darshan Santani
+- Hiran Venugopalan
+- Leon Ho
+- Parag Nemade
+- Pravin Satpute
+- Rahul Bhalerao
+- Ramkrishna Reddy
+- Sandeep Shedmake
+- Shriramana Sharma
+- Sneha Kore
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lohit-ttf-20130612/COPYRIGHT new/lohit-ttf-20140220/COPYRIGHT
--- old/lohit-ttf-20130612/COPYRIGHT 2013-06-12 11:45:27.000000000 +0200
+++ new/lohit-ttf-20140220/COPYRIGHT 2014-02-20 08:16:35.000000000 +0100
@@ -1,4 +1,4 @@
-Copyright 2011-12 Lohit Fonts Project contributors.
+Copyright 2011-13 Lohit Fonts Project contributors.
<http://fedorahosted.org/lohit>
Licensed under the SIL Open Font License 1.1 (see file
Files old/lohit-ttf-20130612/Lohit-Assamese.ttf and new/lohit-ttf-20140220/Lohit-Assamese.ttf differ
Files old/lohit-ttf-20130612/Lohit-Bengali.ttf and new/lohit-ttf-20140220/Lohit-Bengali.ttf differ
Files old/lohit-ttf-20130612/Lohit-Devanagari.ttf and new/lohit-ttf-20140220/Lohit-Devanagari.ttf differ
Files old/lohit-ttf-20130612/Lohit-Gujarati.ttf and new/lohit-ttf-20140220/Lohit-Gujarati.ttf differ
Files old/lohit-ttf-20130612/Lohit-Kannada.ttf and new/lohit-ttf-20140220/Lohit-Kannada.ttf differ
Files old/lohit-ttf-20130612/Lohit-Malayalam.ttf and new/lohit-ttf-20140220/Lohit-Malayalam.ttf differ
Files old/lohit-ttf-20130612/Lohit-Marathi.ttf and new/lohit-ttf-20140220/Lohit-Marathi.ttf differ
Files old/lohit-ttf-20130612/Lohit-Nepali.ttf and new/lohit-ttf-20140220/Lohit-Nepali.ttf differ
Files old/lohit-ttf-20130612/Lohit-Oriya.ttf and new/lohit-ttf-20140220/Lohit-Oriya.ttf differ
Files old/lohit-ttf-20130612/Lohit-Punjabi.ttf and new/lohit-ttf-20140220/Lohit-Punjabi.ttf differ
Files old/lohit-ttf-20130612/Lohit-Tamil-Classical.ttf and new/lohit-ttf-20140220/Lohit-Tamil-Classical.ttf differ
Files old/lohit-ttf-20130612/Lohit-Tamil.ttf and new/lohit-ttf-20140220/Lohit-Tamil.ttf differ
Files old/lohit-ttf-20130612/Lohit-Telugu.ttf and new/lohit-ttf-20140220/Lohit-Telugu.ttf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lohit-ttf-20130612/OFL.txt new/lohit-ttf-20140220/OFL.txt
--- old/lohit-ttf-20130612/OFL.txt 2013-06-12 11:45:27.000000000 +0200
+++ new/lohit-ttf-20140220/OFL.txt 2014-02-20 08:16:35.000000000 +0100
@@ -1,4 +1,4 @@
-Copyright 2011-12 Lohit Fonts Project contributors
+Copyright 2011-13 Lohit Fonts Project contributors
<http://fedorahosted.org/lohit>
This Font Software is licensed under the SIL Open Font License, Version 1.1.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lohit-ttf-20130612/README new/lohit-ttf-20140220/README
--- old/lohit-ttf-20130612/README 1970-01-01 01:00:00.000000000 +0100
+++ new/lohit-ttf-20140220/README 2014-02-20 08:16:35.000000000 +0100
@@ -0,0 +1,41 @@
+Lohit Project Information :-
+See https://fedorahosted.org/lohit/ for more details.
+
+Mailing list:-
+http://www.redhat.com/mailman/listinfo/lohit-devel-list
+
+Generating ttf from source file:
+Note: If you have downloaded ttf tarball this step is not required.
+1. Building ttf file with fontforge.
+- Open .sfd file in Fontforge.
+- Import .fea file using (File->Merge Feature Info)
+- File-> Generate fonts.
+
+2. Using Makefile (Recommended)
+- In terminal change directory to lohit downloaded tarball and run
+- $make ttf
+- This will generate ttf.
+
+3. Building webfonts
+- Fedora users -> $yum install sfntly
+- Check if your distro has sfntly, if not Download sfntly for building web fonts.
+ - Download "sfntly-read-only.zip" from http://code.google.com/p/sfntly/downloads/list
+ - Go to java folder and run $ant
+ - Copy sfnttool.jar to /usr/share/java/
+- $make woff eot
+- This will generate webfonts.
+4. $make all will generate all binaries.
+
+Installing fonts:
+Fedora or other linux distro
+1. Using graphics user interface
+- open ttf using gnome-font-viewer or kfontview
+- click on install fonts
+
+2. Using terminal
+- copy font to /~.local/share/fonts
+- run $fc-cache
+- open gedit, it should be listed now
+
+Windows
+1. Nicely documented on http://windows.microsoft.com/en-in/windows-vista/install-or-uninstall-fonts
--
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 hxtools for openSUSE:Factory checked in at 2014-04-02 17:22:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hxtools (Old)
and /work/SRC/openSUSE:Factory/.hxtools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hxtools"
Changes:
--------
--- /work/SRC/openSUSE:Factory/hxtools/hxtools.changes 2014-02-13 15:01:25.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.hxtools.new/hxtools.changes 2014-04-02 17:22:54.000000000 +0200
@@ -1,0 +2,8 @@
+Tue Mar 25 18:41:41 UTC 2014 - jengelh(a)inai.de
+
+- Update to new upstream release 20140325
+* bin2c now supports the -p option to strip paths
+* bin2c also defaults to stripping all leading paths
+- Drop support for old distros in .spec file
+
+-------------------------------------------------------------------
Old:
----
hxtools-20131222.tar.asc
hxtools-20131222.tar.xz
New:
----
hxtools-20140325.tar.asc
hxtools-20140325.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hxtools.spec ++++++
--- /var/tmp/diff_new_pack.uO7S7z/_old 2014-04-02 17:22:55.000000000 +0200
+++ /var/tmp/diff_new_pack.uO7S7z/_new 2014-04-02 17:22:55.000000000 +0200
@@ -17,7 +17,7 @@
Name: hxtools
-Version: 20131222
+Version: 20140325
Release: 0
Summary: Collection of day-to-day tools (binaries)
License: GPL-2.0+ and WTFPL
@@ -31,36 +31,17 @@
# See https://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
BuildRequires: fdupes
BuildRequires: libcap-devel >= 2
-# xorg-x11 for "bdftopcf"
-%if 0%{?suse_version} >= 1220 || 0%{?rhel_version} || 0%{?fedora_version}
BuildRequires: bdftopcf
-%else
-BuildRequires: xorg-x11
-%endif
BuildRequires: pkgconfig >= 0.21
BuildRequires: xz
-%if 0%{?suse_version} >= 1230
-BuildRequires: gpg-offline
-%endif
-%if 0%{?suse_version} >= 1130
-BuildRequires: pkgconfig(libHX) >= 3.12
+BuildRequires: pkgconfig(libHX) >= 3.17
BuildRequires: pkgconfig(libpci) >= 3
BuildRequires: pkgconfig(mount) >= 2.20
BuildRequires: pkgconfig(xcb) >= 1
-%else
-BuildRequires: libHX-devel >= 3.12
-BuildRequires: libmount-devel >= 2.20
-BuildRequires: libxcb-devel >= 1
-BuildRequires: pciutils-devel >= 3
-%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: %name-scripts = %version
-%if 0%{?suse_version} >= 1100
Recommends: %name-man = %version
-%else
-Requires: %name-man = %version
-%endif
Requires: fd0ssh
Requires: ofl
Requires: sysinfo = %version
@@ -82,15 +63,9 @@
%package scripts
Summary: Collection of day-to-day tools (scripts)
Group: Productivity/Other
-%if 0%{?suse_version} >= 1120
BuildArch: noarch
-%endif
Requires: %name
-%if 0%{?suse_version} >= 1100
Recommends: %name-man
-%else
-Requires: %name-man
-%endif
Requires: perl(Data::Dumper)
Requires: perl(File::Find)
Requires: perl(File::Find::Rule)
@@ -124,9 +99,7 @@
%package man
Summary: Manual pages for the hxtools suite
Group: Documentation/Man
-%if 0%{?suse_version} >= 1120
BuildArch: noarch
-%endif
%description man
This package contains the manual pages for the binaries and scripts
@@ -135,9 +108,7 @@
%package data
Summary: Collection of day-to-day tools (data)
Group: Productivity/Other
-%if 0%{?suse_version} >= 1120
BuildArch: noarch
-%endif
%description data
Architecture-independent data from hxtools.
@@ -152,9 +123,7 @@
Requires: %name = %version
Requires: %name-data = %version
Requires: %name-scripts = %version
-%if 0%{?suse_version} >= 1120
BuildArch: noarch
-%endif
%description profile
Bash environment settings from hxtools. Particularly, this provides
@@ -192,14 +161,7 @@
an entire mount.
%prep
-xz -dk "%{S:0}"
-%{?gpg_verify: %gpg_verify %{S:2}}
-%if 0%{?__xz:1}
%setup -q
-%else
-tar -xf "%{S:0}" --use=xz;
-%setup -DTq
-%endif
%build
%configure
++++++ hxtools-20131222.tar.xz -> hxtools-20140325.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/Makefile.in new/hxtools-20140325/Makefile.in
--- old/hxtools-20131222/Makefile.in 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -214,9 +214,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -346,8 +343,8 @@
$(am__aclocal_m4_deps):
config.h: stamp-h1
- @if test ! -f $@; then rm -f stamp-h1; else :; fi
- @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
+ @test -f $@ || rm -f stamp-h1
+ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
@rm -f stamp-h1
@@ -546,10 +543,16 @@
$(am__post_remove_distdir)
dist-tarZ: distdir
+ @echo WARNING: "Support for shar distribution archives is" \
+ "deprecated." >&2
+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
dist-shar: distdir
+ @echo WARNING: "Support for distribution archives compressed with" \
+ "legacy program 'compress' is deprecated." >&2
+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__post_remove_distdir)
@@ -591,9 +594,10 @@
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ && ../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
+ --srcdir=.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/aclocal.m4 new/hxtools-20140325/aclocal.m4
--- old/hxtools-20131222/aclocal.m4 2013-12-22 19:23:47.000000000 +0100
+++ new/hxtools-20140325/aclocal.m4 2014-03-25 19:40:05.000000000 +0100
@@ -1,4 +1,4 @@
-# generated automatically by aclocal 1.13.4 -*- Autoconf -*-
+# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
@@ -247,10 +247,10 @@
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.13'
+[am__api_version='1.14'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.13.4], [],
+m4_if([$1], [1.14.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
@@ -266,7 +266,7 @@
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.13.4])dnl
+[AM_AUTOMAKE_VERSION([1.14.1])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
@@ -633,6 +633,12 @@
# This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal.
+dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
+m4_define([AC_PROG_CC],
+m4_defn([AC_PROG_CC])
+[_AM_PROG_CC_C_O
+])
+
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
# AM_INIT_AUTOMAKE([OPTIONS])
# -----------------------------------------------
@@ -741,6 +747,49 @@
AC_CONFIG_COMMANDS_PRE(dnl
[m4_provide_if([_AM_COMPILER_EXEEXT],
[AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes. So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+ cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present. This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake(a)gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message. This
+can help us improve future automake versions.
+
+END
+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+ echo 'Configuration will proceed anyway, since you have set the' >&2
+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+ echo >&2
+ else
+ cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+ AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
+ fi
+fi
+
AM_SILENT_RULES([yes])
])
@@ -750,7 +799,6 @@
m4_define([_AC_COMPILER_EXEEXT],
m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
# When config.status generates a header, we must update the stamp-h file.
# This file resides in the same directory as the config header
# that is generated. The stamp files are numbered to have different names.
@@ -862,38 +910,6 @@
rm -f confinc confmf
])
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_CC_C_O
-# --------------
-# Like AC_PROG_CC_C_O, but changed for automake.
-AC_DEFUN([AM_PROG_CC_C_O],
-[AC_REQUIRE([AC_PROG_CC_C_O])dnl
-AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([compile])dnl
-# FIXME: we rely on the cache variable name because
-# there is no other way.
-set dummy $CC
-am_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']`
-eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
-if test "$am_t" != yes; then
- # Losing compiler, so override with the script.
- # FIXME: It is wrong to rewrite CC.
- # But if we don't then we get into trouble of one sort or another.
- # A longer-term fix would be to have automake use am__CC in this case,
- # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
- CC="$am_aux_dir/compile $CC"
-fi
-dnl Make sure AC_PROG_CC is never called again, or it will override our
-dnl setting of CC.
-m4_define([AC_PROG_CC],
- [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])])
-])
-
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
# Copyright (C) 1997-2013 Free Software Foundation, Inc.
@@ -964,6 +980,53 @@
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# _AM_PROG_CC_C_O
+# ---------------
+# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
+# to automatically call this.
+AC_DEFUN([_AM_PROG_CC_C_O],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([compile])dnl
+AC_LANG_PUSH([C])dnl
+AC_CACHE_CHECK(
+ [whether $CC understands -c and -o together],
+ [am_cv_prog_cc_c_o],
+ [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
+ # Make sure it works both with $CC and with simple cc.
+ # Following AC_PROG_CC_C_O, we do the test twice because some
+ # compilers refuse to overwrite an existing .o file with -o,
+ # though they will create one.
+ am_cv_prog_cc_c_o=yes
+ for am_i in 1 2; do
+ if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
+ && test -f conftest2.$ac_objext; then
+ : OK
+ else
+ am_cv_prog_cc_c_o=no
+ break
+ fi
+ done
+ rm -f core conftest*
+ unset am_i])
+if test "$am_cv_prog_cc_c_o" != yes; then
+ # Losing compiler, so override with the script.
+ # FIXME: It is wrong to rewrite CC.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__CC in this case,
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+ CC="$am_aux_dir/compile $CC"
+fi
+AC_LANG_POP([C])])
+
+# For backward compatibility.
+AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
+
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/build-aux/missing new/hxtools-20140325/build-aux/missing
--- old/hxtools-20131222/build-aux/missing 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/build-aux/missing 2014-03-25 19:40:06.000000000 +0100
@@ -1,7 +1,7 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2012-06-26.16; # UTC
+scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard(a)iro.umontreal.ca>, 1996.
@@ -160,7 +160,7 @@
;;
autom4te*)
echo "You might have modified some maintainer files that require"
- echo "the 'automa4te' program to be rebuilt."
+ echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/config.h.in new/hxtools-20140325/config.h.in
--- old/hxtools-20131222/config.h.in 2013-12-22 19:23:48.000000000 +0100
+++ new/hxtools-20140325/config.h.in 2014-03-25 19:40:06.000000000 +0100
@@ -6,6 +6,15 @@
/* Define to 1 if you have the <lastlog.h> header file. */
#undef HAVE_LASTLOG_H
+/* */
+#undef HAVE_LIBMOUNT
+
+/* */
+#undef HAVE_LIBPCI
+
+/* */
+#undef HAVE_LIBXCB
+
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
@@ -33,9 +42,6 @@
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
-/* Define to 1 if your C compiler doesn't accept -c and -o together. */
-#undef NO_MINUS_C_MINUS_O
-
/* Name of package */
#undef PACKAGE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/configure new/hxtools-20140325/configure
--- old/hxtools-20131222/configure 2013-12-22 19:23:48.000000000 +0100
+++ new/hxtools-20140325/configure 2014-03-25 19:40:06.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for hxtools 20131222.
+# Generated by GNU Autoconf 2.69 for hxtools 20140325.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -577,8 +577,8 @@
# Identity of this package.
PACKAGE_NAME='hxtools'
PACKAGE_TARNAME='hxtools'
-PACKAGE_VERSION='20131222'
-PACKAGE_STRING='hxtools 20131222'
+PACKAGE_VERSION='20140325'
+PACKAGE_STRING='hxtools 20140325'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -630,13 +630,10 @@
HAVE_LIBCAP_FALSE
HAVE_LIBCAP_TRUE
libcap_LIBS
-HAVE_LIBXCB
libxcb_LIBS
libxcb_CFLAGS
-HAVE_LIBPCI
libpci_LIBS
libpci_CFLAGS
-HAVE_LIBMOUNT
libmount_LIBS
libmount_CFLAGS
libHX_LIBS
@@ -1297,7 +1294,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures hxtools 20131222 to adapt to many kinds of systems.
+\`configure' configures hxtools 20140325 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1363,7 +1360,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of hxtools 20131222:";;
+ short | recursive ) echo "Configuration of hxtools 20140325:";;
esac
cat <<\_ACEOF
@@ -1480,7 +1477,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-hxtools configure 20131222
+hxtools configure 20140325
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1778,7 +1775,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by hxtools $as_me 20131222, which was
+It was created by hxtools $as_me 20140325, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2250,7 +2247,7 @@
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-am__api_version='1.13'
+am__api_version='1.14'
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
$as_echo_n "checking whether build environment is sane... " >&6; }
@@ -2643,7 +2640,7 @@
# Define the identity of the package.
PACKAGE='hxtools'
- VERSION='20131222'
+ VERSION='20140325'
cat >>confdefs.h <<_ACEOF
@@ -2778,6 +2775,49 @@
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes. So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+ cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present. This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake(a)gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message. This
+can help us improve future automake versions.
+
+END
+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+ echo 'Configuration will proceed anyway, since you have set the' >&2
+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+ echo >&2
+ else
+ cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+ as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
+ fi
+fi
+
# Check whether --enable-silent-rules was given.
if test "${enable_silent_rules+set}" = set; then :
enableval=$enable_silent_rules;
@@ -3606,6 +3646,65 @@
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
+if ${am_cv_prog_cc_c_o+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+ # Make sure it works both with $CC and with simple cc.
+ # Following AC_PROG_CC_C_O, we do the test twice because some
+ # compilers refuse to overwrite an existing .o file with -o,
+ # though they will create one.
+ am_cv_prog_cc_c_o=yes
+ for am_i in 1 2; do
+ if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
+ ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } \
+ && test -f conftest2.$ac_objext; then
+ : OK
+ else
+ am_cv_prog_cc_c_o=no
+ break
+ fi
+ done
+ rm -f core conftest*
+ unset am_i
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+$as_echo "$am_cv_prog_cc_c_o" >&6; }
+if test "$am_cv_prog_cc_c_o" != yes; then
+ # Losing compiler, so override with the script.
+ # FIXME: It is wrong to rewrite CC.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__CC in this case,
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+ CC="$am_aux_dir/compile $CC"
+fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
DEPDIR="${am__leading_dot}deps"
ac_config_commands="$ac_config_commands depfiles"
@@ -3798,131 +3897,6 @@
fi
-if test "x$CC" != xcc; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC and cc understand -c and -o together" >&5
-$as_echo_n "checking whether $CC and cc understand -c and -o together... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether cc understands -c and -o together" >&5
-$as_echo_n "checking whether cc understands -c and -o together... " >&6; }
-fi
-set dummy $CC; ac_cc=`$as_echo "$2" |
- sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
-if eval \${ac_cv_prog_cc_${ac_cc}_c_o+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-# Make sure it works both with $CC and with simple cc.
-# We do the test twice because some compilers refuse to overwrite an
-# existing .o file with -o, though they will create one.
-ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
-rm -f conftest2.*
-if { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } &&
- test -f conftest2.$ac_objext && { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; };
-then
- eval ac_cv_prog_cc_${ac_cc}_c_o=yes
- if test "x$CC" != xcc; then
- # Test first that cc exists at all.
- if { ac_try='cc -c conftest.$ac_ext >&5'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- ac_try='cc -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
- rm -f conftest2.*
- if { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } &&
- test -f conftest2.$ac_objext && { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; };
- then
- # cc works too.
- :
- else
- # cc exists but doesn't like -o.
- eval ac_cv_prog_cc_${ac_cc}_c_o=no
- fi
- fi
- fi
-else
- eval ac_cv_prog_cc_${ac_cc}_c_o=no
-fi
-rm -f core conftest*
-
-fi
-if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h
-
-fi
-
-# FIXME: we rely on the cache variable name because
-# there is no other way.
-set dummy $CC
-am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
-eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
-if test "$am_t" != yes; then
- # Losing compiler, so override with the script.
- # FIXME: It is wrong to rewrite CC.
- # But if we don't then we get into trouble of one sort or another.
- # A longer-term fix would be to have automake use am__CC in this case,
- # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
- CC="$am_aux_dir/compile $CC"
-fi
-
@@ -4343,6 +4317,9 @@
+
+
+
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
@@ -4465,12 +4442,12 @@
pkg_cv_libHX_CFLAGS="$libHX_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libHX >= 3.12.1\""; } >&5
- ($PKG_CONFIG --exists --print-errors "libHX >= 3.12.1") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libHX >= 3.17\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libHX >= 3.17") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_libHX_CFLAGS=`$PKG_CONFIG --cflags "libHX >= 3.12.1" 2>/dev/null`
+ pkg_cv_libHX_CFLAGS=`$PKG_CONFIG --cflags "libHX >= 3.17" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -4482,12 +4459,12 @@
pkg_cv_libHX_LIBS="$libHX_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libHX >= 3.12.1\""; } >&5
- ($PKG_CONFIG --exists --print-errors "libHX >= 3.12.1") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libHX >= 3.17\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libHX >= 3.17") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_libHX_LIBS=`$PKG_CONFIG --libs "libHX >= 3.12.1" 2>/dev/null`
+ pkg_cv_libHX_LIBS=`$PKG_CONFIG --libs "libHX >= 3.17" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -4508,14 +4485,14 @@
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- libHX_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libHX >= 3.12.1" 2>&1`
+ libHX_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libHX >= 3.17" 2>&1`
else
- libHX_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libHX >= 3.12.1" 2>&1`
+ libHX_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libHX >= 3.17" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$libHX_PKG_ERRORS" >&5
- as_fn_error $? "Package requirements (libHX >= 3.12.1) were not met:
+ as_fn_error $? "Package requirements (libHX >= 3.17) were not met:
$libHX_PKG_ERRORS
@@ -4556,12 +4533,12 @@
pkg_cv_libmount_CFLAGS="$libmount_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mount >= 2.20\""; } >&5
- ($PKG_CONFIG --exists --print-errors "mount >= 2.20") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mount >= 2.19\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "mount >= 2.19") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_libmount_CFLAGS=`$PKG_CONFIG --cflags "mount >= 2.20" 2>/dev/null`
+ pkg_cv_libmount_CFLAGS=`$PKG_CONFIG --cflags "mount >= 2.19" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -4573,12 +4550,12 @@
pkg_cv_libmount_LIBS="$libmount_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mount >= 2.20\""; } >&5
- ($PKG_CONFIG --exists --print-errors "mount >= 2.20") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mount >= 2.19\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "mount >= 2.19") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_libmount_LIBS=`$PKG_CONFIG --libs "mount >= 2.20" 2>/dev/null`
+ pkg_cv_libmount_LIBS=`$PKG_CONFIG --libs "mount >= 2.19" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -4599,26 +4576,46 @@
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- libmount_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "mount >= 2.20" 2>&1`
+ libmount_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "mount >= 2.19" 2>&1`
else
- libmount_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "mount >= 2.20" 2>&1`
+ libmount_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "mount >= 2.19" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$libmount_PKG_ERRORS" >&5
- HAVE_LIBMOUNT=""
+ as_fn_error $? "Package requirements (mount >= 2.19) were not met:
+
+$libmount_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+Alternatively, you may set the environment variables libmount_CFLAGS
+and libmount_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details." "$LINENO" 5
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
- HAVE_LIBMOUNT=""
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+Alternatively, you may set the environment variables libmount_CFLAGS
+and libmount_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+See \`config.log' for more details" "$LINENO" 5; }
else
libmount_CFLAGS=$pkg_cv_libmount_CFLAGS
libmount_LIBS=$pkg_cv_libmount_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- HAVE_LIBMOUNT=1
-fi
+ $as_echo "#define HAVE_LIBMOUNT 1" >>confdefs.h
+fi
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libpci" >&5
@@ -4678,19 +4675,39 @@
# Put the nasty error message in config.log where it belongs
echo "$libpci_PKG_ERRORS" >&5
- HAVE_LIBPCI=""
+ as_fn_error $? "Package requirements (libpci >= 3) were not met:
+
+$libpci_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+Alternatively, you may set the environment variables libpci_CFLAGS
+and libpci_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details." "$LINENO" 5
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
- HAVE_LIBPCI=""
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+Alternatively, you may set the environment variables libpci_CFLAGS
+and libpci_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+See \`config.log' for more details" "$LINENO" 5; }
else
libpci_CFLAGS=$pkg_cv_libpci_CFLAGS
libpci_LIBS=$pkg_cv_libpci_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- HAVE_LIBPCI=1
-fi
+ $as_echo "#define HAVE_LIBPCI 1" >>confdefs.h
+fi
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libxcb" >&5
@@ -4750,19 +4767,39 @@
# Put the nasty error message in config.log where it belongs
echo "$libxcb_PKG_ERRORS" >&5
- HAVE_LIBXCB=""
+ as_fn_error $? "Package requirements (xcb >= 1) were not met:
+
+$libxcb_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+Alternatively, you may set the environment variables libxcb_CFLAGS
+and libxcb_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details." "$LINENO" 5
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
- HAVE_LIBXCB=""
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+Alternatively, you may set the environment variables libxcb_CFLAGS
+and libxcb_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+See \`config.log' for more details" "$LINENO" 5; }
else
libxcb_CFLAGS=$pkg_cv_libxcb_CFLAGS
libxcb_LIBS=$pkg_cv_libxcb_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- HAVE_LIBXCB=1
-fi
+ $as_echo "#define HAVE_LIBXCB 1" >>confdefs.h
+fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing cap_get_pid" >&5
$as_echo_n "checking for library containing cap_get_pid... " >&6; }
if ${ac_cv_search_cap_get_pid+:} false; then :
@@ -5445,7 +5482,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by hxtools $as_me 20131222, which was
+This file was extended by hxtools $as_me 20140325, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -5511,7 +5548,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-hxtools config.status 20131222
+hxtools config.status 20140325
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/configure.ac new/hxtools-20140325/configure.ac
--- old/hxtools-20131222/configure.ac 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/configure.ac 2014-03-25 19:39:42.000000000 +0100
@@ -1,4 +1,4 @@
-AC_INIT([hxtools], [20131222])
+AC_INIT([hxtools], [20140325])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_HEADERS([config.h])
AC_PROG_INSTALL
@@ -7,13 +7,13 @@
AM_PROG_CC_C_O
AC_CHECK_HEADERS([lastlog.h paths.h])
-PKG_CHECK_MODULES([libHX], [libHX >= 3.12.1])
-PKG_CHECK_MODULES([libmount], [mount >= 2.20], [HAVE_LIBMOUNT=1], [HAVE_LIBMOUNT=""])
-AC_SUBST([HAVE_LIBMOUNT])
-PKG_CHECK_MODULES([libpci], [libpci >= 3], [HAVE_LIBPCI=1], [HAVE_LIBPCI=""])
-AC_SUBST([HAVE_LIBPCI])
-PKG_CHECK_MODULES([libxcb], [xcb >= 1], [HAVE_LIBXCB=1], [HAVE_LIBXCB=""])
-AC_SUBST([HAVE_LIBXCB])
+AH_TEMPLATE([HAVE_LIBMOUNT])
+AH_TEMPLATE([HAVE_LIBPCI])
+AH_TEMPLATE([HAVE_LIBXCB])
+PKG_CHECK_MODULES([libHX], [libHX >= 3.17])
+PKG_CHECK_MODULES([libmount], [mount >= 2.19], [AC_DEFINE([HAVE_LIBMOUNT], [1])], [])
+PKG_CHECK_MODULES([libpci], [libpci >= 3], [AC_DEFINE([HAVE_LIBPCI], [1])], [])
+PKG_CHECK_MODULES([libxcb], [xcb >= 1], [AC_DEFINE([HAVE_LIBXCB], [1])], [])
AC_SEARCH_LIBS([cap_get_pid], [cap], [libcap_LIBS="$LIBS"; LIBS=""])
AC_SUBST([libcap_LIBS])
AM_CONDITIONAL([HAVE_LIBCAP], [test -n "$libcap_LIBS"])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/cooledit/HX_c.syntax new/hxtools-20140325/cooledit/HX_c.syntax
--- old/hxtools-20131222/cooledit/HX_c.syntax 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/cooledit/HX_c.syntax 2014-03-25 19:39:42.000000000 +0100
@@ -14,70 +14,52 @@
keyword whole bool white
keyword whole break white
keyword whole case white
- keyword whole catch white
keyword whole char white
- keyword whole class white
keyword whole const white
- keyword whole const_cast1 white
- keyword whole const_cast2 white
- keyword whole const_cast3 white
- keyword whole const_cast white
keyword whole continue white
keyword whole default white
keyword whole delete white
keyword whole do white
keyword whole double white
- keyword whole dynamic_cast white
keyword whole else white
keyword whole enum white
- keyword whole explicit white
keyword whole extern white
- keyword whole flag_t white
keyword whole float white
keyword whole for white
- keyword whole friend white
keyword whole goto white
keyword whole if white
keyword whole inline white
- keyword whole int16_t white
- keyword whole int32_t white
- keyword whole int64_t white
- keyword whole int8_t white
keyword whole int white
- keyword whole loff_t white
keyword whole long white
- keyword whole mutable white
- keyword whole namespace white
- keyword whole new white
- keyword whole off64_t white
- keyword whole off_t white
- keyword whole operator white
- keyword whole private white
- keyword whole protected white
- keyword whole public white
keyword whole register white
- keyword whole reinterpret_cast white
keyword whole restrict white
keyword whole return white
keyword whole short white
- keyword whole signed_cast white
keyword whole signed white
- keyword whole size_t white
keyword whole sizeof white
- keyword whole ssize_t white
keyword whole static white
- keyword whole static_cast white
keyword whole struct white
keyword whole switch white
- keyword whole template white
- keyword whole this white
- keyword whole throw white
- keyword whole time_t white
- keyword whole try white
keyword whole typedef white
- keyword whole typeid white
- keyword whole typename white
keyword whole typeof white
+ keyword whole union white
+ keyword whole unsigned white
+ keyword whole void white
+ keyword whole volatile white
+ keyword whole wchar_t white
+ keyword whole while white
+
+ # Not keywords, but common types
+ keyword whole int16_t white
+ keyword whole int32_t white
+ keyword whole int64_t white
+ keyword whole int8_t white
+ keyword whole loff_t white
+ keyword whole off64_t white
+ keyword whole off_t white
+ keyword whole size_t white
+ keyword whole ssize_t white
+ keyword whole time_t white
keyword whole u_int16_t white
keyword whole u_int32_t white
keyword whole u_int64_t white
@@ -86,14 +68,39 @@
keyword whole uint32_t white
keyword whole uint64_t white
keyword whole uint8_t white
- keyword whole union white
- keyword whole unsigned white
+
+ # libHX or C++
+ keyword whole const_cast1 white
+ keyword whole const_cast2 white
+ keyword whole const_cast3 white
+ keyword whole const_cast white
+ keyword whole dynamic_cast white
+ keyword whole reinterpret_cast white
+ keyword whole signed_cast white
+ keyword whole static_cast white
+
+ # C++
+ keyword whole catch white
+ keyword whole class white
+ keyword whole explicit white
+ keyword whole final white
+ keyword whole friend white
+ keyword whole mutable white
+ keyword whole namespace white
+ keyword whole new white
+ keyword whole operator white
+ keyword whole override white
+ keyword whole private white
+ keyword whole protected white
+ keyword whole public white
+ keyword whole template white
+ keyword whole this white
+ keyword whole throw white
+ keyword whole try white
+ keyword whole typeid white
+ keyword whole typename white
keyword whole using white
keyword whole virtual white
- keyword whole void white
- keyword whole volatile white
- keyword whole wchar_t white
- keyword whole while white
keyword /\* yellow
keyword \*/ yellow
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/data/Makefile.in new/hxtools-20140325/data/Makefile.in
--- old/hxtools-20131222/data/Makefile.in 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/data/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -160,9 +160,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/data/gitconfig new/hxtools-20140325/data/gitconfig
--- old/hxtools-20131222/data/gitconfig 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/data/gitconfig 2014-03-25 19:39:42.000000000 +0100
@@ -14,15 +14,24 @@
frag = magenta
meta = bold white blue
+[color "decorate"]
+ branch = bold green
+ remotebranch = bold magenta
+ tag = bold yellow
+ stash = bold blue
+ HEAD = bold cyan
+
[alias]
ac = commit --amend
br = branch
ci = commit
co = checkout
dc = diff --cached
- st = status
- re = rebase
+ lg = log --oneline
rc = rebase --continue
+ re = rebase
+ st = status
+ up = remote update -p
[push]
default = current
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/doc/Makefile.in new/hxtools-20140325/doc/Makefile.in
--- old/hxtools-20131222/doc/Makefile.in 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/doc/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -164,9 +164,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/doc/NEWS.txt new/hxtools-20140325/doc/NEWS.txt
--- old/hxtools-20131222/doc/NEWS.txt 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/doc/NEWS.txt 2014-03-25 19:39:42.000000000 +0100
@@ -1,4 +1,9 @@
+rel-20140325
+============
+* bin2c now supports the -p option to strip paths
+* bin2c also defaults to stripping all leading paths
+
rel-20131222
============
* bin2c: new utility which replaces png2wx.pl and png2wx.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/doc/bin2c.1 new/hxtools-20140325/doc/bin2c.1
--- old/hxtools-20131222/doc/bin2c.1 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/doc/bin2c.1 2014-03-25 19:39:42.000000000 +0100
@@ -5,7 +5,8 @@
.SH Syntax
.PP
\fBbin2c\fP [\fB\-C\fP \fIprogram-file\fP] [\fB\-H\fP \fIheader-file\fP]
-[\fB\-G\fP \fIguard-name\fP] [\fB\-v\fP] [\fB\-\-wxbitmap\fP] \fIfile\fP...
+[\fB\-G\fP \fIguard-name\fP] [\fB\-p\fP \fInum\fP] [\fB\-v\fP]
+[\fB\-\-wxbitmap\fP] \fIfile\fP...
.SH Description
.PP
bin2c converts files to C variables. It does so by reading the contents of each
@@ -38,6 +39,11 @@
and it will contain the variable definition, the latter of which will be marked
as \fBstatic\fP (file scope).
.TP
+\fB\-p\fP \fInum\fP
+Strip \fInum\fP leading path components when transforming input paths to
+variable names. If \fInum\fP is negative, that many trailing path components
+are \fBretained\fP. If \fB\-p\fP is not specified, the default is -1.
+.TP
\fB\-v\fP
Be verbose. Show all the names and filenames that bin2c will write.
.TP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/doc/sysinfo.1 new/hxtools-20140325/doc/sysinfo.1
--- old/hxtools-20131222/doc/sysinfo.1 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/doc/sysinfo.1 2014-03-25 19:39:42.000000000 +0100
@@ -5,16 +5,24 @@
.\" not just for bragging - can also be useful in bug reports
.SH Syntax
.PP
-\fBsysinfo\fP
+\fBsysinfo\fP [\fB\-v\fP]
+.SH Options
+.TP
+\fB\-v\fP
+Print additional info if sysinfo could not determine certain parameters because
+it was compiled without one or more of libmount, libpci or libxcb.
.SH Description
.PP
Prints out an IRC-style machine info, like:
.PP
-[seven] Linux 3.4.4-jng6-default x86_64 | 8-thr Intel(R) Core(TM) i7-2600 CPU
-3401MHz | Load: 0.51 Tasks: 461 | Mem: 2672/32155MB | Disk: 656/2791GB | Gfx:
-Intel Corporation 2nd Generation Core Processor Family Integrated Graphics
+[ares08] Linux 3.13.4-jng21-default x86_64 | 8-thr Intel(R) Core(TM) i7-2600
+CPU 3800MHz | Load: 0.06 Tasks: 534 | Mem: 20222/32154MB | Disk: 1393/2904GB |
+Gfx: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics
Controller @ 1280x1024
.PP
+[ares01] Linux 3.13.6+ sparc64 | 24-thr UltraSparc T1 (Niagara) 1000MHz |
+Load: 27.80 Tasks: 489 | Mem: 2048/7979MB | Disk: 1001/1833GB
+.PP
The load number is the EWMA over the last 60 seconds. The values shown for
memory and disk are the used amount and the total amount (NOT the free amount
and the total amount). The used memory value may theoretically exceed that of
@@ -22,9 +30,11 @@
\fBand\fP tmpfs files have been moved to swap (i.e. you are approaching more
trouble).
.PP
-The @\fIxres\fPx\fIyres\fP is only available if $DISPLAY is set and valid.
-\fIxres\fP and \fIyres\fP will be the dimensions of the \fBvirtual\fP size, not
-the resolution of any particular monitor.
+The @\fIxsize\fPx\fIysize\fP describes the size of the entire X framebuffer
+("virtual desktop"), and will only be printed if $DISPLAY is set and valid. The
+size is specific to the particular display server, and need not coincide with
+the display attached to the shown graphics car (for example, when DISPLAY is
+set to point to an Xvnc instance or a remote DISPLAY).
.SH See also
.PP
\fBhxtools\fP(7)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/kbd/Makefile.in new/hxtools-20140325/kbd/Makefile.in
--- old/hxtools-20131222/kbd/Makefile.in 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/kbd/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -164,9 +164,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/sadmin/Makefile.am new/hxtools-20140325/sadmin/Makefile.am
--- old/hxtools-20131222/sadmin/Makefile.am 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/sadmin/Makefile.am 2014-03-25 19:39:42.000000000 +0100
@@ -13,11 +13,13 @@
pkglibexec_PROGRAMS = \
fd0ssh \
- printcaps \
proc_iomem_count \
proc_stat_parse \
psthreads \
utmp_register
+if HAVE_LIBCAP
+pkglibexec_PROGRAMS += printcaps
+endif
dist_pkglibexec_SCRIPTS = \
logontime \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/sadmin/Makefile.in new/hxtools-20140325/sadmin/Makefile.in
--- old/hxtools-20131222/sadmin/Makefile.in 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/sadmin/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -80,9 +80,10 @@
PRE_UNINSTALL = :
POST_UNINSTALL = :
bin_PROGRAMS = clock_info$(EXEEXT) ofl$(EXEEXT)
-pkglibexec_PROGRAMS = fd0ssh$(EXEEXT) printcaps$(EXEEXT) \
- proc_iomem_count$(EXEEXT) proc_stat_parse$(EXEEXT) \
- psthreads$(EXEEXT) utmp_register$(EXEEXT)
+pkglibexec_PROGRAMS = fd0ssh$(EXEEXT) proc_iomem_count$(EXEEXT) \
+ proc_stat_parse$(EXEEXT) psthreads$(EXEEXT) \
+ utmp_register$(EXEEXT) $(am__EXEEXT_1)
+@HAVE_LIBCAP_TRUE@am__append_1 = printcaps
noinst_PROGRAMS = xfs_irecover$(EXEEXT)
subdir = sadmin
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
@@ -98,6 +99,7 @@
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pkglibexecdir)" \
"$(DESTDIR)$(bindir)" "$(DESTDIR)$(pkglibexecdir)"
+@HAVE_LIBCAP_TRUE@am__EXEEXT_1 = printcaps$(EXEEXT)
PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(pkglibexec_PROGRAMS)
clock_info_SOURCES = clock_info.c
clock_info_OBJECTS = clock_info.$(OBJEXT)
@@ -235,9 +237,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/sdevel/Makefile.in new/hxtools-20140325/sdevel/Makefile.in
--- old/hxtools-20131222/sdevel/Makefile.in 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/sdevel/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -210,9 +210,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/sdevel/bin2c.c new/hxtools-20140325/sdevel/bin2c.c
--- old/hxtools-20131222/sdevel/bin2c.c 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/sdevel/bin2c.c 2014-03-25 19:39:42.000000000 +0100
@@ -1,6 +1,6 @@
/*
* bin2c - convert arbitrary files into C variable definitions
- * Copyright by Jan Engelhardt, 2004-2008
+ * Copyright by Jan Engelhardt, 2004–2008,2013–2014
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -17,6 +17,7 @@
#include <string.h>
#include <sys/stat.h>
#include <libHX/ctype_helper.h>
+#include <libHX/defs.h>
#include <libHX/option.h>
#include <libHX/string.h>
#if CHAR_BIT > 8
@@ -52,6 +53,7 @@
static unsigned int btc_verbose, btc_emit_wxbitmap;
static const char btc_quote_needed[] = "\"?\\";
static const struct btc_operations *btc_ops;
+static int btc_strip = -1;
static size_t btc_qsize_cstring(const void *src, size_t input_size)
{
@@ -125,13 +127,13 @@
* char[N] with N >= 3 too.
*/
if (state->cfp != state->hfp) {
- fprintf(state->hfp, "extern const unsigned char bin2c_%s[%zu];\n",
+ fprintf(state->hfp, "extern const unsigned char bin2c_%s[%" HX_SIZET_FMT "u];\n",
state->vname, state->isize + 1);
- fprintf(state->cfp, "const unsigned char bin2c_%s[%zu] = \"",
+ fprintf(state->cfp, "const unsigned char bin2c_%s[%" HX_SIZET_FMT "u] = \"",
state->vname, state->isize + 1);
} else {
fprintf(state->cfp,
- "static const unsigned char bin2c_%s[%zu] = \"",
+ "static const unsigned char bin2c_%s[%" HX_SIZET_FMT "u] = \"",
state->vname, state->isize + 1);
}
@@ -204,7 +206,7 @@
fwrite(output_buf, strlen(output_buf), 1, state->cfp);
free(output_buf);
}
- fprintf(state->cfp, "\", %zu);\n\t\tbin2c_%s = new wxBitmap(wxImage(sm, wxBITMAP_TYPE_ANY), -1);\n\t}\n",
+ fprintf(state->cfp, "\", %" HX_SIZET_FMT "u);\n\t\tbin2c_%s = new wxBitmap(wxImage(sm, wxBITMAP_TYPE_ANY), -1);\n\t}\n",
state->isize, state->vname);
}
@@ -222,9 +224,29 @@
*/
static hxmc_t *btc_construct_vname(const char *cfile)
{
- hxmc_t *vname = HXmc_strinit(cfile);
+ const char *eof;
+ hxmc_t *vname;
+ int strip = btc_strip;
char *p;
+ /* move @cfile forward as many paths as btc_strip specifies */
+ for (; strip > 0; --strip) {
+ while (*cfile != '/' && *cfile != '\0')
+ ++cfile;
+ while (*cfile == '/')
+ ++cfile;
+ }
+ /* move @eof backward as many paths as btc_strip specifies */
+ eof = cfile + strlen(cfile) - 1;
+ for (; strip < 0; ++strip) {
+ while (eof >= cfile && *eof == '/')
+ --eof;
+ while (eof >= cfile && *eof != '/')
+ --eof;
+ cfile = eof + 1;
+ }
+
+ vname = HXmc_strinit(cfile);
if (vname == NULL)
return NULL;
if (!HX_isalpha(*cfile) && *cfile != '_') {
@@ -250,7 +272,6 @@
static int btc_process_single(struct btc_state *state)
{
struct stat sb;
- size_t input_len;
state->ifp = fopen(state->ifile, "r");
if (state->ifp == NULL) {
@@ -278,7 +299,6 @@
static int btc_start(const char **argv)
{
struct btc_state state;
- FILE *hfilp, *cfilp = NULL;
const char **arg;
char *result;
int ret = 0;
@@ -340,6 +360,8 @@
.help = "Name for the header's include guard"},
{.sh = 'H', .type = HXTYPE_MCSTR, .ptr = &btc_hfile,
.help = "Filename for the output .h file", .htyp = "FILE"},
+ {.sh = 'p', .type = HXTYPE_INT, .ptr = &btc_strip,
+ .help = "Strip N path components (keep -N if N is negative)", .htyp = "N"},
{.sh = 'v', .type = HXTYPE_NONE, .ptr = &btc_verbose,
.help = "Be verbose during operation"},
{.ln = "wxbitmap", .type = HXTYPE_NONE, .ptr = &btc_emit_wxbitmap,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/smath/Makefile.in new/hxtools-20140325/smath/Makefile.in
--- old/hxtools-20131222/smath/Makefile.in 2013-12-22 19:23:49.000000000 +0100
+++ new/hxtools-20140325/smath/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -174,9 +174,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/smm/Makefile.in new/hxtools-20140325/smm/Makefile.in
--- old/hxtools-20131222/smm/Makefile.in 2013-12-22 19:23:50.000000000 +0100
+++ new/hxtools-20140325/smm/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -222,9 +222,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/suser/Makefile.in new/hxtools-20140325/suser/Makefile.in
--- old/hxtools-20131222/suser/Makefile.in 2013-12-22 19:23:50.000000000 +0100
+++ new/hxtools-20140325/suser/Makefile.in 2014-03-25 19:40:06.000000000 +0100
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -214,9 +214,6 @@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
-HAVE_LIBMOUNT = @HAVE_LIBMOUNT@
-HAVE_LIBPCI = @HAVE_LIBPCI@
-HAVE_LIBXCB = @HAVE_LIBXCB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hxtools-20131222/suser/sysinfo.c new/hxtools-20140325/suser/sysinfo.c
--- old/hxtools-20131222/suser/sysinfo.c 2013-12-22 19:23:29.000000000 +0100
+++ new/hxtools-20140325/suser/sysinfo.c 2014-03-25 19:39:42.000000000 +0100
@@ -49,6 +49,7 @@
static const char *sy_cpuinfo_file = "/proc/cpuinfo";
static const char sysfs_cpu_dir[] = "/sys/devices/system/cpu";
+static unsigned int sy_verbose;
static void sy_num_cpu_threads(struct sy_block *sib)
{
@@ -246,6 +247,8 @@
iter = mnt_new_iter(MNT_ITER_FORWARD);
if (iter == NULL)
goto out;
+
+ sib->disk_total = 0;
while (mnt_table_next_fs(table, iter, &fs) == 0) {
const char *source = mnt_fs_get_source(fs);
const char *mntpt = mnt_fs_get_target(fs);
@@ -363,9 +366,12 @@
sib->mem_total / 1024);
/* disk */
- printf(" | Disk: %llu/%lluGB",
- sib->disk_used / (1024 * 1048576),
- sib->disk_total / (1024 * 1048576));
+ if (sib->disk_total != -1)
+ printf(" | Disk: %llu/%lluGB",
+ sib->disk_used / (1024 * 1048576),
+ sib->disk_total / (1024 * 1048576));
+ else if (sy_verbose)
+ printf(" | Disk: <libmount missing>");
/* gfx */
if (sib->gfx_hardware != NULL || sib->display_width != 0 ||
@@ -376,6 +382,14 @@
if (sib->display_width != 0 || sib->display_height != 0)
printf(" @ %ux%u", sib->display_width,
sib->display_height);
+ } else if (sy_verbose) {
+ printf(" | Gfx:");
+#ifndef HAVE_LIBPCI
+ printf(" <libpci missing>");
+#endif
+#ifndef HAVE_LIBXCB
+ printf(" <libxcb missing>");
+#endif
}
printf("\n");
}
@@ -385,6 +399,8 @@
static const struct HXoption options_table[] = {
{.sh = 'P', .type = HXTYPE_STRING, .ptr = &sy_cpuinfo_file,
.help = "Debug: specify alternate cpuinfo file", .htyp = "FILE"},
+ {.sh = 'v', .type = HXTYPE_NONE, .ptr = &sy_verbose,
+ .help = "Verbose reporting"},
HXOPT_AUTOHELP,
HXOPT_TABLEEND,
};
@@ -402,6 +418,7 @@
return EXIT_FAILURE;
memset(&sib, 0, sizeof(sib));
+ sib.disk_total = -1;
uname(&sib.uts);
sy_num_cpu_threads(&sib);
sy_proc_cpuinfo(&sib);
--
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 kcompletion for openSUSE:Factory checked in at 2014-04-02 17:22:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kcompletion (Old)
and /work/SRC/openSUSE:Factory/.kcompletion.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kcompletion"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kcompletion/kcompletion.changes 2014-03-10 12:17:41.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kcompletion.new/kcompletion.changes 2014-04-02 17:22:50.000000000 +0200
@@ -1,0 +2,11 @@
+Sat Mar 29 19:47:23 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+- Delete ki18n.patch, it was removed in previous change, but wasn't
+ removed
+
+-------------------------------------------------------------------
Old:
----
kcompletion-4.97.0.tar.xz
ki18n.patch
New:
----
kcompletion-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kcompletion.spec ++++++
--- /var/tmp/diff_new_pack.mPTAyE/_old 2014-04-02 17:22:50.000000000 +0200
+++ /var/tmp/diff_new_pack.mPTAyE/_new 2014-04-02 17:22:50.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Completion5
Name: kcompletion
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfig-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kcompletion-4.97.0.tar.xz -> kcompletion-4.98.0.tar.xz ++++++
++++ 3144 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 kguiaddons for openSUSE:Factory checked in at 2014-04-02 17:22:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kguiaddons (Old)
and /work/SRC/openSUSE:Factory/.kguiaddons.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kguiaddons"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kguiaddons/kguiaddons.changes 2014-03-10 12:17:28.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kguiaddons.new/kguiaddons.changes 2014-04-02 17:22:51.000000000 +0200
@@ -1,0 +2,22 @@
+Sat Mar 29 19:47:38 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+- Drop upstream patches:
+ 0001-Replace-use-of-QPA-headers-with-optional-dep-on-QX11.patch and
+ 0002-Port-KWordWrap-to-QExplicitelySharedDataPointer-to-a.patch
+
+-------------------------------------------------------------------
+Tue Mar 18 19:03:29 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Added patches from upstream:
+ 0001-Replace-use-of-QPA-headers-with-optional-dep-on-QX11.patch,
+ 0002-Port-KWordWrap-to-QExplicitelySharedDataPointer-to-a.patch:
+ first patch reimplements X11 usage (so QtGui private headers aren't
+ needed anymore, and X11Extras are used instead), second one
+ improves API
+
+-------------------------------------------------------------------
Old:
----
kguiaddons-4.97.0.tar.xz
New:
----
kguiaddons-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kguiaddons.spec ++++++
--- /var/tmp/diff_new_pack.2YV226/_old 2014-04-02 17:22:51.000000000 +0200
+++ /var/tmp/diff_new_pack.2YV226/_new 2014-04-02 17:22:51.000000000 +0200
@@ -18,21 +18,17 @@
%define lname libKF5GuiAddons5
Name: kguiaddons
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Gui) >= 5.2.0
# Tests
BuildRequires: pkgconfig(Qt5Test) >= 5.2.0
BuildRequires: pkgconfig(Qt5Widgets) >= 5.2.0
-# [ 142s] /home/abuild/rpmbuild/BUILD/kguiaddons-4.97.0/src/util/kmodifierkeyinfoprovider_x11.cpp:26:42:
-# fatal error: qpa/qplatformnativeinterface.h: No such file or directory
-#BuildRequires: libQt5Gui-private-headers-devel
-# TODO change to above once latest Qt5 is in O:F
-BuildRequires: libqt5-qtbase-private-headers-devel >= 5.2.0
+BuildRequires: pkgconfig(Qt5X11Extras) >= 5.2.0
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcb)
Summary: Utilities for graphical user interfaces
++++++ kguiaddons-4.97.0.tar.xz -> kguiaddons-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/CMakeLists.txt new/kguiaddons-4.98.0/CMakeLists.txt
--- old/kguiaddons-4.97.0/CMakeLists.txt 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/CMakeLists.txt 2014-03-28 19:16:51.000000000 +0100
@@ -2,7 +2,7 @@
project(KGuiAddons)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -21,7 +21,7 @@
include(GenerateExportHeader)
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KGUIADDONS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kguiaddons_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/autotests/kwordwraptest.cpp new/kguiaddons-4.98.0/autotests/kwordwraptest.cpp
--- old/kguiaddons-4.97.0/autotests/kwordwraptest.cpp 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/autotests/kwordwraptest.cpp 2014-03-28 19:16:51.000000000 +0100
@@ -45,17 +45,15 @@
QFontMetrics fm(font);
QRect r(0, 0, 100, -1);
QString str = "test wadabada [/foo/bar/waba]";
- KWordWrap *ww = KWordWrap::formatText(fm, r, 0, str);
- //qDebug() << str << " => " << ww->truncatedString();
- QVERIFY(ww->truncatedString().endsWith("..."));
- delete ww;
+ KWordWrap ww = KWordWrap::formatText(fm, r, 0, str);
+ //qDebug() << str << " => " << ww.truncatedString();
+ QVERIFY(ww.truncatedString().endsWith("..."));
str = "</p></p></p></p>";
for (; r.width() > 0; r.setWidth(r.width() - 10)) {
ww = KWordWrap::formatText(fm, r, 0, str);
- //qDebug() << str << " => " << ww->truncatedString();
- QVERIFY(ww->truncatedString().endsWith("..."));
- delete ww;
+ //qDebug() << str << " => " << ww.truncatedString();
+ QVERIFY(ww.truncatedString().endsWith("..."));
}
}
@@ -65,10 +63,9 @@
QFont font("helvetica", 12); // let's hope we all have the same...
QFontMetrics fm(font);
QString inputString = "The title here\nFoo (bar)\nFoo2 (bar2)";
- KWordWrap *ww = KWordWrap::formatText(fm, r, 0, inputString);
- QString str = ww->wrappedString();
+ KWordWrap ww = KWordWrap::formatText(fm, r, 0, inputString);
+ QString str = ww.wrappedString();
QCOMPARE(str, inputString);
- delete ww;
}
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/src/CMakeLists.txt new/kguiaddons-4.98.0/src/CMakeLists.txt
--- old/kguiaddons-4.97.0/src/CMakeLists.txt 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/src/CMakeLists.txt 2014-03-28 19:16:51.000000000 +0100
@@ -14,18 +14,21 @@
util/urlhandler.cpp
)
+set (kmodifierkeyinfoprovider_impl "dummy")
if (NOT APPLE AND X11_FOUND AND X11_Xkb_FOUND AND XCB_XCB_FOUND)
- include_directories (
- ${X11_Xkb_INCLUDE_PATH}
- ${X11_Xlib_INCLUDE_PATH}
- ${XCB_XCB_INCLUDE_DIR}
- ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
- )
- set(kguiaddons_LIB_SRCS ${kguiaddons_LIB_SRCS} util/kmodifierkeyinfoprovider_x11.cpp)
-else ()
- set (kguiaddons_LIB_SRCS ${kguiaddons_LIB_SRCS} util/kmodifierkeyinfoprovider_dummy.cpp)
+ find_package(Qt5X11Extras ${REQUIRED_QT_VERSION} NO_MODULE)
+ if (Qt5X11Extras_FOUND)
+ include_directories (
+ ${X11_Xkb_INCLUDE_PATH}
+ ${X11_Xlib_INCLUDE_PATH}
+ ${XCB_XCB_INCLUDE_DIR}
+ )
+ set (kmodifierkeyinfoprovider_impl "x11")
+ endif()
endif ()
+set (kguiaddons_LIB_SRCS ${kguiaddons_LIB_SRCS} util/kmodifierkeyinfoprovider_${kmodifierkeyinfoprovider_impl}.cpp)
+
add_library(KF5GuiAddons ${kguiaddons_LIB_SRCS})
generate_export_header(KF5GuiAddons BASE_NAME KGuiAddons)
@@ -42,8 +45,8 @@
target_compile_definitions(KF5GuiAddons INTERFACE "$<INSTALL_INTERFACE:KGUIADDONS_LIB>")
target_link_libraries(KF5GuiAddons PUBLIC Qt5::Gui)
-if(X11_FOUND AND X11_Xkb_FOUND)
- target_link_libraries(KF5GuiAddons LINK_PRIVATE ${X11_LIBRARIES} ${XCB_XCB_LIBRARY})
+if (kmodifierkeyinfoprovider_impl STREQUAL "x11")
+ target_link_libraries(KF5GuiAddons LINK_PRIVATE ${X11_LIBRARIES} ${XCB_XCB_LIBRARY} Qt5::X11Extras)
endif()
set_target_properties(KF5GuiAddons PROPERTIES VERSION ${KGUIADDONS_VERSION_STRING}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/src/colors/kcolorutils.cpp new/kguiaddons-4.98.0/src/colors/kcolorutils.cpp
--- old/kguiaddons-4.97.0/src/colors/kcolorutils.cpp 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/src/colors/kcolorutils.cpp 2014-03-28 19:16:51.000000000 +0100
@@ -24,13 +24,7 @@
#include <QColor>
#include <QImage>
-
-#include <math.h>
-
-#ifdef Q_CC_MSVC
-#include <float.h>
-#define isnan(n) _isnan(n)
-#endif
+#include <QtNumeric> // qIsNaN
// BEGIN internal helper functions
static inline qreal mixQreal(qreal a, qreal b, qreal bias)
@@ -112,7 +106,7 @@
if (amount >= 1.0) {
return color;
}
- if (isnan(amount)) {
+ if (qIsNaN(amount)) {
return base;
}
@@ -142,7 +136,7 @@
if (bias >= 1.0) {
return c2;
}
- if (isnan(bias)) {
+ if (qIsNaN(bias)) {
return c1;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/src/fonts/kfontutils.h new/kguiaddons-4.98.0/src/fonts/kfontutils.h
--- old/kguiaddons-4.97.0/src/fonts/kfontutils.h 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/src/fonts/kfontutils.h 2014-03-28 19:16:51.000000000 +0100
@@ -55,7 +55,7 @@
in the given dimensions. Can return smaller than minFontSize,
that means the text doesn't fit in the given rectangle. Can
return -1 on error
- @since KDE 4.7
+ @since 4.7
*/
qreal KGUIADDONS_EXPORT adaptFontSize(QPainter &painter,
const QString &text,
@@ -66,7 +66,7 @@
AdaptFontSizeOptions flags = NoFlags);
/** Convenience function for adaptFontSize that accepts a QSizeF instead two qreals
- @since KDE 4.7
+ @since 4.7
*/
qreal KGUIADDONS_EXPORT adaptFontSize(QPainter &painter,
const QString &text,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/src/text/kwordwrap.cpp new/kguiaddons-4.98.0/src/text/kwordwrap.cpp
--- old/kguiaddons-4.97.0/src/text/kwordwrap.cpp 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/src/text/kwordwrap.cpp 2014-03-28 19:16:51.000000000 +0100
@@ -21,7 +21,7 @@
#include <QPainter>
#include <QtCore/QVector>
-class KWordWrapPrivate
+class KWordWrapPrivate : public QSharedData
{
public:
QRect m_constrainingRect;
@@ -32,23 +32,23 @@
};
KWordWrap::KWordWrap(const QRect &r)
- : d(new KWordWrapPrivate)
+ : d(new KWordWrapPrivate)
{
d->m_constrainingRect = r;
}
-KWordWrap *KWordWrap::formatText(QFontMetrics &fm, const QRect &r, int /*flags*/, const QString &str, int len)
+KWordWrap KWordWrap::formatText(QFontMetrics &fm, const QRect &r, int /*flags*/, const QString &str, int len)
{
- KWordWrap *kw = new KWordWrap(r);
+ KWordWrap kw(r);
// The wordwrap algorithm
// The variable names and the global shape of the algorithm are inspired
// from QTextFormatterBreakWords::format().
//qDebug() << "KWordWrap::formatText " << str << " r=" << r.x() << "," << r.y() << " " << r.width() << "x" << r.height();
int height = fm.height();
if (len == -1) {
- kw->d->m_text = str;
+ kw.d->m_text = str;
} else {
- kw->d->m_text = str.left(len);
+ kw.d->m_text = str.left(len);
}
if (len == -1) {
len = str.length();
@@ -107,15 +107,15 @@
lastBreak = -1;
}
// remove the line feed from the string
- kw->d->m_text.remove(i, 1);
+ kw.d->m_text.remove(i, 1);
inputString.remove(i, 1);
len--;
}
if (breakAt != -1) {
//qDebug() << "KWordWrap::formatText breaking after " << breakAt;
- kw->d->m_breakPositions.append(breakAt);
+ kw.d->m_breakPositions.append(breakAt);
int thisLineWidth = lastBreak == -1 ? x + ww : lineWidth;
- kw->d->m_lineWidths.append(thisLineWidth);
+ kw.d->m_lineWidths.append(thisLineWidth);
textwidth = qMax(textwidth, thisLineWidth);
x = 0;
y += height;
@@ -136,7 +136,7 @@
wasParens = isParens;
}
textwidth = qMax(textwidth, x);
- kw->d->m_lineWidths.append(x);
+ kw.d->m_lineWidths.append(x);
y += height;
//qDebug() << "KWordWrap::formatText boundingRect:" << r.x() << "," << r.y() << " " << textwidth << "x" << y;
if (r.height() >= 0 && y > r.height()) {
@@ -149,13 +149,23 @@
}
realY = qMax(realY, 0);
}
- kw->d->m_boundingRect.setRect(0, 0, textwidth, realY);
+ kw.d->m_boundingRect.setRect(0, 0, textwidth, realY);
return kw;
}
KWordWrap::~KWordWrap()
{
- delete d;
+}
+
+KWordWrap::KWordWrap(const KWordWrap &other)
+ : d(other.d)
+{
+}
+
+KWordWrap &KWordWrap::operator=(const KWordWrap &other)
+{
+ d = other.d;
+ return *this;
}
QString KWordWrap::wrappedString() const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/src/text/kwordwrap.h new/kguiaddons-4.98.0/src/text/kwordwrap.h
--- old/kguiaddons-4.97.0/src/text/kwordwrap.h 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/src/text/kwordwrap.h 2014-03-28 19:16:51.000000000 +0100
@@ -20,13 +20,14 @@
#define kwordwrap_h
#include <kguiaddons_export.h>
-#include <qglobal.h>
+#include <QSharedDataPointer>
#include <qnamespace.h>
class QFontMetrics;
class QRect;
class QString;
class QPainter;
+class KWordWrapPrivate;
/**
* Word-wrap algorithm that takes into account beautifulness ;)
@@ -67,7 +68,7 @@
* @param len Length of text to wrap (default is -1 for all).
* @return a KWordWrap instance. The caller is responsible for storing and deleting the result.
*/
- static KWordWrap *formatText(QFontMetrics &fm, const QRect &r, int flags, const QString &str, int len = -1); // KDE5 TODO: return a value, not a pointer, and use QSharedDataPointer.
+ static KWordWrap formatText(QFontMetrics &fm, const QRect &r, int flags, const QString &str, int len = -1);
/**
* @return the bounding rect, calculated by formatText. The width is the
@@ -110,6 +111,15 @@
~KWordWrap();
/**
+ * Copy constructor
+ */
+ KWordWrap(const KWordWrap &other);
+ /**
+ * Assignment operator
+ */
+ KWordWrap &operator=(const KWordWrap &other);
+
+ /**
* Draws the string @p t at the given coordinates, if it does not
* @p fit into @p maxW the text will be faded out.
* @param p the painter to use. Must have set the pen for the text
@@ -136,9 +146,8 @@
const QString &t);
private:
- Q_DISABLE_COPY(KWordWrap)
KWordWrap(const QRect &r);
- class KWordWrapPrivate *const d;
+ QExplicitlySharedDataPointer<KWordWrapPrivate> d;
};
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kguiaddons-4.97.0/src/util/kmodifierkeyinfoprovider_x11.cpp new/kguiaddons-4.98.0/src/util/kmodifierkeyinfoprovider_x11.cpp
--- old/kguiaddons-4.97.0/src/util/kmodifierkeyinfoprovider_x11.cpp 2014-03-01 12:50:50.000000000 +0100
+++ new/kguiaddons-4.98.0/src/util/kmodifierkeyinfoprovider_x11.cpp 2014-03-28 19:16:51.000000000 +0100
@@ -23,7 +23,7 @@
#include "kmodifierkeyinfoprovider_p.h"
#include <QGuiApplication>
-#include <qpa/qplatformnativeinterface.h>
+#include <QX11Info>
#define XK_MISCELLANY
#define XK_XKB_KEYS
@@ -68,21 +68,6 @@
return mask;
}
-// same as QX11Info::display, reimplemented to not have to link QtX11Extras
-Display *display()
-{
- if (!qApp) {
- return NULL;
- }
- QPlatformNativeInterface *native = qApp->platformNativeInterface();
- if (!native) {
- return NULL;
- }
-
- void *display = native->nativeResourceForScreen(QByteArray("display"), QGuiApplication::primaryScreen());
- return reinterpret_cast<Display *>(display);
-}
-
KModifierKeyInfoProvider::KModifierKeyInfoProvider()
: QObject(0)
, QAbstractNativeEventFilter()
@@ -92,17 +77,17 @@
if (qApp) {
if (qApp->platformName() == QStringLiteral("xcb")) {
int code, xkberr, maj, min;
- m_xkbAvailable = XkbQueryExtension(display(), &code, &m_xkbEv, &xkberr, &maj, &min);
+ m_xkbAvailable = XkbQueryExtension(QX11Info::display(), &code, &m_xkbEv, &xkberr, &maj, &min);
}
}
if (m_xkbAvailable) {
- XkbSelectEvents(display(), XkbUseCoreKbd,
+ XkbSelectEvents(QX11Info::display(), XkbUseCoreKbd,
XkbStateNotifyMask | XkbMapNotifyMask,
XkbStateNotifyMask | XkbMapNotifyMask);
unsigned long int stateMask = XkbModifierStateMask | XkbModifierBaseMask |
XkbModifierLatchMask | XkbModifierLockMask |
XkbPointerButtonMask;
- XkbSelectEventDetails(display(), XkbUseCoreKbd, XkbStateNotifyMask,
+ XkbSelectEventDetails(QX11Info::display(), XkbUseCoreKbd, XkbStateNotifyMask,
stateMask, stateMask);
}
@@ -118,7 +103,7 @@
// get the initial state
if (m_xkbAvailable) {
XkbStateRec state;
- XkbGetState(display(), XkbUseCoreKbd, &state);
+ XkbGetState(QX11Info::display(), XkbUseCoreKbd, &state);
xkbModifierStateChanged(state.mods, state.latched_mods, state.locked_mods);
xkbButtonStateChanged(state.ptr_buttons);
@@ -139,7 +124,7 @@
return false;
}
- return XkbLatchModifiers(display(), XkbUseCoreKbd,
+ return XkbLatchModifiers(QX11Info::display(), XkbUseCoreKbd,
m_xkbModifiers[key], latched ? m_xkbModifiers[key] : 0);
}
@@ -149,7 +134,7 @@
return false;
}
- return XkbLockModifiers(display(), XkbUseCoreKbd,
+ return XkbLockModifiers(QX11Info::display(), XkbUseCoreKbd,
m_xkbModifiers[key], locked ? m_xkbModifiers[key] : 0);
}
@@ -328,7 +313,7 @@
<< ModifierDefinition(Qt::Key_CapsLock, LockMask, 0, 0)
<< ModifierDefinition(Qt::Key_ScrollLock, 0, "ScrollLock", XK_Scroll_Lock);
- XkbDescPtr xkb = XkbGetKeyboard(display(), XkbAllComponentsMask, XkbUseCoreKbd);
+ XkbDescPtr xkb = XkbGetKeyboard(QX11Info::display(), XkbAllComponentsMask, XkbUseCoreKbd);
QList<ModifierDefinition>::const_iterator it;
QList<ModifierDefinition>::const_iterator end = srcModifiers.constEnd();
@@ -340,13 +325,13 @@
mask = xkbVirtualModifier(xkb, it->name);
}
if (mask == 0 && it->keysym != 0) {
- mask = XkbKeysymToModifiers(display(), it->keysym);
+ mask = XkbKeysymToModifiers(QX11Info::display(), it->keysym);
} else if (mask == 0) {
// special case for AltGr
- mask = XkbKeysymToModifiers(display(), XK_Mode_switch) |
- XkbKeysymToModifiers(display(), XK_ISO_Level3_Shift) |
- XkbKeysymToModifiers(display(), XK_ISO_Level3_Latch) |
- XkbKeysymToModifiers(display(), XK_ISO_Level3_Lock);
+ mask = XkbKeysymToModifiers(QX11Info::display(), XK_Mode_switch) |
+ XkbKeysymToModifiers(QX11Info::display(), XK_ISO_Level3_Shift) |
+ XkbKeysymToModifiers(QX11Info::display(), XK_ISO_Level3_Latch) |
+ XkbKeysymToModifiers(QX11Info::display(), XK_ISO_Level3_Lock);
}
}
--
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 threadweaver for openSUSE:Factory checked in at 2014-04-02 17:22:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/threadweaver (Old)
and /work/SRC/openSUSE:Factory/.threadweaver.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "threadweaver"
Changes:
--------
--- /work/SRC/openSUSE:Factory/threadweaver/threadweaver.changes 2014-03-10 12:17:39.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.threadweaver.new/threadweaver.changes 2014-04-02 17:22:49.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:56 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
threadweaver-4.97.0.tar.xz
New:
----
threadweaver-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ threadweaver.spec ++++++
--- /var/tmp/diff_new_pack.i7bvZZ/_old 2014-04-02 17:22:50.000000000 +0200
+++ /var/tmp/diff_new_pack.i7bvZZ/_new 2014-04-02 17:22:50.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5ThreadWeaver5
Name: threadweaver
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ threadweaver-4.97.0.tar.xz -> threadweaver-4.98.0.tar.xz ++++++
++++ 4184 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 sonnet for openSUSE:Factory checked in at 2014-04-02 17:22:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sonnet (Old)
and /work/SRC/openSUSE:Factory/.sonnet.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sonnet"
Changes:
--------
--- /work/SRC/openSUSE:Factory/sonnet/sonnet.changes 2014-03-10 12:17:38.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.sonnet.new/sonnet.changes 2014-04-02 17:22:48.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:56 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
sonnet-4.97.0.tar.xz
New:
----
sonnet-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sonnet.spec ++++++
--- /var/tmp/diff_new_pack.TiSqMR/_old 2014-04-02 17:22:49.000000000 +0200
+++ /var/tmp/diff_new_pack.TiSqMR/_new 2014-04-02 17:22:49.000000000 +0200
@@ -18,13 +18,13 @@
%define sonum 5
Name: sonnet
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: aspell-devel
BuildRequires: cmake >= 2.8.12
# Enchant plugin is currently disabled upstream
#BuildRequires: enchant-devel
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ sonnet-4.97.0.tar.xz -> sonnet-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sonnet-4.97.0/CMakeLists.txt new/sonnet-4.98.0/CMakeLists.txt
--- old/sonnet-4.97.0/CMakeLists.txt 2014-03-01 12:51:54.000000000 +0100
+++ new/sonnet-4.98.0/CMakeLists.txt 2014-03-28 19:17:50.000000000 +0100
@@ -3,7 +3,7 @@
project(sonnet)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake )
@@ -20,7 +20,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX SONNET
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/sonnet_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sonnet-4.97.0/README.md new/sonnet-4.98.0/README.md
--- old/sonnet-4.97.0/README.md 2014-03-01 12:51:54.000000000 +0100
+++ new/sonnet-4.98.0/README.md 2014-03-28 19:17:50.000000000 +0100
@@ -1,5 +1,8 @@
-Sonnet
-======
+# Sonnet
+
+Multi-language spell checker
+
+## Introduction
Sonnet is a plugin-based spell checking library for Qt-based
applications. It supports several different plugins, including
@@ -11,8 +14,7 @@
The simplest way to use Sonnet in your application is to use the
SpellCheckDecorator class on your QTextEdit.
-Example
--------
+## Example
#include <QTextEdit>
#include <spellcheckdecorator.h>
@@ -23,9 +25,9 @@
Sonnet::SpellCheckDecorator *decorator = new Sonnet::SpellCheckDecorator(textEdit);
}
-
-Links
------
+## Links
- Home page: <https://projects.kde.org/projects/frameworks/sonnet>
-
+- Mailing list: <https://mail.kde.org/mailman/listinfo/kde-frameworks-devel>
+- IRC channel: #kde-devel on Freenode
+- Git repository: <https://projects.kde.org/projects/frameworks/sonnet/repository>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sonnet-4.97.0/docs/index.docbook new/sonnet-4.98.0/docs/index.docbook
--- old/sonnet-4.97.0/docs/index.docbook 2014-03-01 12:51:54.000000000 +0100
+++ new/sonnet-4.98.0/docs/index.docbook 2014-03-28 19:17:50.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY kappname "&sonnet;">
<!ENTITY % English "INCLUDE" > <!-- change language only here -->
<!ENTITY % addindex "IGNORE">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sonnet-4.97.0/src/Messages.sh new/sonnet-4.98.0/src/Messages.sh
--- old/sonnet-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/sonnet-4.98.0/src/Messages.sh 2014-03-28 19:17:50.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/sonnet5.pot
--
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 solid for openSUSE:Factory checked in at 2014-04-02 17:22:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/solid (Old)
and /work/SRC/openSUSE:Factory/.solid.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "solid"
Changes:
--------
--- /work/SRC/openSUSE:Factory/solid/solid.changes 2014-03-10 12:17:37.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.solid.new/solid.changes 2014-04-02 17:22:47.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:55 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
solid-4.97.0.tar.xz
New:
----
solid-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ solid.spec ++++++
--- /var/tmp/diff_new_pack.LukpS3/_old 2014-04-02 17:22:48.000000000 +0200
+++ /var/tmp/diff_new_pack.LukpS3/_new 2014-04-02 17:22:48.000000000 +0200
@@ -18,11 +18,11 @@
%define lname libKF5Solid5
Name: solid
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: bison
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: kf5-filesystem
@@ -74,6 +74,9 @@
%install
%kf5_makeinstall -C build
+ pushd %{buildroot}%{_kf5_bindir}
+ mv solid-hardware solid-hardware2
+ popd
%fdupes -s %{buildroot}
%post -n %lname -p /sbin/ldconfig
@@ -83,6 +86,7 @@
%files -n %lname
%defattr(-,root,root)
%doc COPYING*
+%{_kf5_bindir}/solid-hardware2
%{_kf5_libdir}/libKF5Solid.so.*
%{_kf5_qmldir}/
++++++ solid-4.97.0.tar.xz -> solid-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/CMakeLists.txt new/solid-4.98.0/CMakeLists.txt
--- old/solid-4.97.0/CMakeLists.txt 2014-03-01 12:51:52.000000000 +0100
+++ new/solid-4.98.0/CMakeLists.txt 2014-03-28 19:17:47.000000000 +0100
@@ -3,7 +3,7 @@
project(Solid)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
@@ -23,6 +23,7 @@
include(ECMPackageConfigHelpers)
include(ECMSetupVersion)
include(ECMGenerateHeaders)
+include(ECMMarkNonGuiExecutable)
if(NOT APPLE)
find_package(HUpnp 0.9)
@@ -67,7 +68,7 @@
############### Give the user the option to build the deprecated WMI solid backend instead of the new win backend ###############
option(WITH_SOLID_WMI "Enables the deprecated WMI backend on Windows")
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX SOLID
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/solid_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/src/CMakeLists.txt new/solid-4.98.0/src/CMakeLists.txt
--- old/solid-4.97.0/src/CMakeLists.txt 2014-03-01 12:51:52.000000000 +0100
+++ new/solid-4.98.0/src/CMakeLists.txt 2014-03-28 19:17:47.000000000 +0100
@@ -1,2 +1,3 @@
add_subdirectory(solid)
+add_subdirectory(tools)
add_subdirectory(imports)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/src/tools/CMakeLists.txt new/solid-4.98.0/src/tools/CMakeLists.txt
--- old/solid-4.97.0/src/tools/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/solid-4.98.0/src/tools/CMakeLists.txt 2014-03-28 19:17:47.000000000 +0100
@@ -0,0 +1 @@
+add_subdirectory(solid-hardware)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/src/tools/solid-hardware/CMakeLists.txt new/solid-4.98.0/src/tools/solid-hardware/CMakeLists.txt
--- old/solid-4.97.0/src/tools/solid-hardware/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/solid-4.98.0/src/tools/solid-hardware/CMakeLists.txt 2014-03-28 19:17:47.000000000 +0100
@@ -0,0 +1,7 @@
+add_executable(solid-hardware solid-hardware.cpp)
+ecm_mark_nongui_executable(solid-hardware)
+target_link_libraries(solid-hardware KF5::Solid)
+install(TARGETS solid-hardware ${INSTALL_TARGETS_DEFAULT_ARGS})
+
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/src/tools/solid-hardware/Messages.sh new/solid-4.98.0/src/tools/solid-hardware/Messages.sh
--- old/solid-4.97.0/src/tools/solid-hardware/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/solid-4.98.0/src/tools/solid-hardware/Messages.sh 2014-03-28 19:17:47.000000000 +0100
@@ -0,0 +1,2 @@
+#! /usr/bin/env bash
+$XGETTEXT solid-hardware.cpp -o $podir/solid-hardware.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/src/tools/solid-hardware/solid-hardware.cpp new/solid-4.98.0/src/tools/solid-hardware/solid-hardware.cpp
--- old/solid-4.97.0/src/tools/solid-hardware/solid-hardware.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/solid-4.98.0/src/tools/solid-hardware/solid-hardware.cpp 2014-03-28 19:17:47.000000000 +0100
@@ -0,0 +1,440 @@
+/* This file is part of the KDE project
+ Copyright (C) 2006 Kevin Ottens <ervin(a)kde.org>
+ Copyright (C) 2014 Alejandro Fiestas Olivares <afiestas(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License version 2 as published by the Free Software Foundation.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+
+*/
+
+#include "solid-hardware.h"
+
+
+#include <QString>
+#include <QStringList>
+#include <QMetaProperty>
+#include <QMetaEnum>
+#include <QTimer>
+
+#include <QCoreApplication>
+#include <QCommandLineParser>
+
+#include <solid/device.h>
+#include <solid/genericinterface.h>
+#include <solid/storageaccess.h>
+#include <solid/opticaldrive.h>
+
+#include <iostream>
+#include <solid/devicenotifier.h>
+using namespace std;
+
+static const char appName[] = "solid-hardware";
+
+static const char version[] = "0.1a";
+
+std::ostream &operator<<(std::ostream &out, const QString &msg)
+{
+ return (out << msg.toLocal8Bit().constData());
+}
+
+std::ostream &operator<<(std::ostream &out, const QVariant &value)
+{
+ switch (value.type())
+ {
+ case QVariant::StringList:
+ {
+ out << "{";
+
+ const QStringList list = value.toStringList();
+
+ QStringList::ConstIterator it = list.constBegin();
+ QStringList::ConstIterator end = list.constEnd();
+
+ for (; it!=end; ++it)
+ {
+ out << "'" << *it << "'";
+
+ if (it+1!=end)
+ {
+ out << ", ";
+ }
+ }
+
+ out << "} (string list)";
+ break;
+ }
+ case QVariant::Bool:
+ out << (value.toBool()?"true":"false") << " (bool)";
+ break;
+ case QVariant::Int:
+ case QVariant::LongLong:
+ out << value.toString()
+ << " (0x" << QString::number(value.toLongLong(), 16) << ") (" << QVariant::typeToName(value.type()) << ")";
+ break;
+ case QVariant::UInt:
+ case QVariant::ULongLong:
+ out << value.toString()
+ << " (0x" << QString::number(value.toULongLong(), 16) << ") (" << QVariant::typeToName(value.type()) << ")";
+ break;
+ case QVariant::UserType:
+ {
+ //qDebug() << "got variant type:" << value.typeName();
+ if (value.canConvert<QList<int> >())
+ {
+ QList<int> intlist = value.value<QList<int> >();
+ QStringList tmp;
+ foreach (int val, intlist)
+ tmp.append(QString::number(val));
+ out << "{" << tmp.join(",") << "} (int list)";
+ }
+ break;
+ }
+ default:
+ out << "'" << value.toString() << "' (string)";
+ break;
+ }
+
+ return out;
+}
+
+std::ostream &operator<<(std::ostream &out, const Solid::Device &device)
+{
+ out << " parent = " << QVariant(device.parentUdi()) << endl;
+ out << " vendor = " << QVariant(device.vendor()) << endl;
+ out << " product = " << QVariant(device.product()) << endl;
+ out << " description = " << QVariant(device.description()) << endl;
+
+ int index = Solid::DeviceInterface::staticMetaObject.indexOfEnumerator("Type");
+ QMetaEnum typeEnum = Solid::DeviceInterface::staticMetaObject.enumerator(index);
+
+ for (int i=0; i<typeEnum.keyCount(); i++)
+ {
+ Solid::DeviceInterface::Type type = (Solid::DeviceInterface::Type)typeEnum.value(i);
+ const Solid::DeviceInterface *interface = device.asDeviceInterface(type);
+
+ if (interface)
+ {
+ const QMetaObject *meta = interface->metaObject();
+
+ for (int i=meta->propertyOffset(); i<meta->propertyCount(); i++)
+ {
+ QMetaProperty property = meta->property(i);
+ out << " " << QString(meta->className()).mid(7) << "." << property.name()
+ << " = ";
+
+ QVariant value = property.read(interface);
+
+ if (property.isEnumType()) {
+ QMetaEnum metaEnum = property.enumerator();
+ if (metaEnum.isFlag()) {
+ out << "'" << metaEnum.valueToKeys(value.toInt()).constData() << "'"
+ << " (0x" << QString::number(value.toInt(), 16) << ") (flag)";
+ } else {
+ out << "'" << metaEnum.valueToKey(value.toInt()) << "'"
+ << " (0x" << QString::number(value.toInt(), 16) << ") (enum)";
+ }
+ out << endl;
+ } else {
+ out << value << endl;
+ }
+ }
+ }
+ }
+
+ return out;
+}
+
+std::ostream &operator<<(std::ostream &out, const QMap<QString,QVariant> &properties)
+{
+ Q_FOREACH (const QString &key, properties.keys())
+ {
+ out << " " << key << " = " << properties[key] << endl;
+ }
+
+ return out;
+}
+
+QString getUdiFromArguments(QCoreApplication &app, QCommandLineParser &parser)
+{
+ parser.addPositionalArgument("udi", app.tr("Device udi"));
+ parser.process(app);
+ if (parser.positionalArguments().count() < 2) {
+ parser.showHelp(1);
+ }
+ return parser.positionalArguments().at(1);
+}
+
+int main(int argc, char **argv)
+{
+ SolidHardware app(argc, argv);
+ app.setApplicationName(appName);
+ app.setApplicationVersion(version);
+
+ QCommandLineParser parser;
+ parser.setApplicationDescription(app.tr("KDE tool for querying your hardware from the command line"));
+ parser.addHelpOption();
+ parser.addVersionOption();
+ parser.addPositionalArgument("command", app.tr("Command to execute"));
+
+ QCommandLineOption commands("commands", app.tr("Show available commands"));
+ parser.addOption(commands);
+
+ parser.process(app);
+ if (parser.isSet(commands))
+ {
+ cout << endl << app.tr("Syntax:") << endl << endl;
+
+ cout << " solid-hardware list [details|nonportableinfo]" << endl;
+ cout << app.tr(" # List the hardware available in the system.\n"
+ " # - If the 'nonportableinfo' option is specified, the device\n"
+ " # properties are listed (be careful, in this case property names\n"
+ " # are backend dependent),\n"
+ " # - If the 'details' option is specified, the device interfaces\n"
+ " # and the corresponding properties are listed in a platform\n"
+ " # neutral fashion,\n"
+ " # - Otherwise only device UDIs are listed.\n") << endl;
+
+ cout << " solid-hardware details 'udi'" << endl;
+ cout << app.tr(" # Display all the interfaces and properties of the device\n"
+ " # corresponding to 'udi' in a platform neutral fashion.\n") << endl;
+
+ cout << " solid-hardware nonportableinfo 'udi'" << endl;
+ cout << app.tr(" # Display all the properties of the device corresponding to 'udi'\n"
+ " # (be careful, in this case property names are backend dependent).\n") << endl;
+
+ cout << " solid-hardware query 'predicate' ['parentUdi']" << endl;
+ cout << app.tr(" # List the UDI of devices corresponding to 'predicate'.\n"
+ " # - If 'parentUdi' is specified, the search is restricted to the\n"
+ " # branch of the corresponding device,\n"
+ " # - Otherwise the search is done on all the devices.\n") << endl;
+
+ cout << " solid-hardware mount 'udi'" << endl;
+ cout << app.tr(" # If applicable, mount the device corresponding to 'udi'.\n") << endl;
+
+ cout << " solid-hardware unmount 'udi'" << endl;
+ cout << app.tr(" # If applicable, unmount the device corresponding to 'udi'.\n") << endl;
+
+ cout << " solid-hardware eject 'udi'" << endl;
+ cout << app.tr(" # If applicable, eject the device corresponding to 'udi'.\n") << endl;
+
+ cout << " solid-hardware listen" << endl;
+ cout << app.tr(" # Listen to all add/remove events on supported hardware.") << endl;
+
+ return 0;
+ }
+
+ QStringList args = parser.positionalArguments();
+ if (args.count() < 1) {
+ parser.showHelp(1);
+ }
+
+ parser.clearPositionalArguments();
+
+ QString command(args.at(0));
+
+ if (command == "list")
+ {
+ parser.addPositionalArgument("details", app.tr("Show device details"));
+ parser.addPositionalArgument("nonportableinfo", app.tr("Show non portable information"));
+ parser.process(app);
+ args = parser.positionalArguments();
+ QByteArray extra(args.count() == 2 ? args.at(1).toLocal8Bit() : "");
+ return app.hwList(extra == "details", extra == "nonportableinfo");
+ } else if (command == "details") {
+ const QString udi = getUdiFromArguments(app, parser);
+ return app.hwCapabilities(udi);
+ } else if (command == "nonportableinfo") {
+ const QString udi = getUdiFromArguments(app, parser);
+ return app.hwProperties(udi);
+ } else if (command == "query") {
+ parser.addPositionalArgument("udi", app.tr("Device udi"));
+ parser.addPositionalArgument("parent", app.tr("Parent device udi"));
+ parser.process(app);
+ if (parser.positionalArguments().count() < 2 || parser.positionalArguments().count() > 3) {
+ parser.showHelp(1);
+ }
+
+ QString query = args.at(1);
+ QString parent;
+
+ if (args.count() == 3)
+ {
+ parent = args.at(2);
+ }
+
+ return app.hwQuery(parent, query);
+ } else if (command == "mount") {
+ const QString udi = getUdiFromArguments(app, parser);
+ return app.hwVolumeCall(SolidHardware::Mount, udi);
+ } else if (command == "unmount") {
+ const QString udi = getUdiFromArguments(app, parser);
+ return app.hwVolumeCall(SolidHardware::Unmount, udi);
+ } else if (command == "eject") {
+ const QString udi = getUdiFromArguments(app, parser);
+ return app.hwVolumeCall(SolidHardware::Eject, udi);
+ } else if (command == "listen") {
+ return app.listen();
+ }
+
+ cerr << app.tr("Syntax Error: Unknown command '%1'").arg(command) << endl;
+
+ return 1;
+}
+
+bool SolidHardware::hwList(bool interfaces, bool system)
+{
+ const QList<Solid::Device> all = Solid::Device::allDevices();
+
+ Q_FOREACH (const Solid::Device &device, all)
+ {
+ cout << "udi = '" << device.udi() << "'" << endl;
+
+ if (interfaces)
+ {
+ cout << device << endl;
+ }
+ else if (system && device.is<Solid::GenericInterface>())
+ {
+ QMap<QString,QVariant> properties = device.as<Solid::GenericInterface>()->allProperties();
+ cout << properties << endl;
+ }
+ }
+
+ return true;
+}
+
+bool SolidHardware::hwCapabilities(const QString &udi)
+{
+ const Solid::Device device(udi);
+
+ cout << "udi = '" << device.udi() << "'" << endl;
+ cout << device << endl;
+
+ return true;
+}
+
+bool SolidHardware::hwProperties(const QString &udi)
+{
+ const Solid::Device device(udi);
+
+ cout << "udi = '" << device.udi() << "'" << endl;
+ if (device.is<Solid::GenericInterface>()) {
+ QMap<QString,QVariant> properties = device.as<Solid::GenericInterface>()->allProperties();
+ cout << properties << endl;
+ }
+
+ return true;
+}
+
+bool SolidHardware::hwQuery(const QString &parentUdi, const QString &query)
+{
+ const QList<Solid::Device> devices
+ = Solid::Device::listFromQuery(query, parentUdi);
+
+ Q_FOREACH (const Solid::Device &device, devices)
+ {
+ cout << "udi = '" << device.udi() << "'" << endl;
+ }
+
+ return true;
+}
+
+bool SolidHardware::hwVolumeCall(SolidHardware::VolumeCallType type, const QString &udi)
+{
+ Solid::Device device(udi);
+
+ if (!device.is<Solid::StorageAccess>() && type!=Eject)
+ {
+ cerr << tr("Error: %1 does not have the interface StorageAccess.").arg(udi) << endl;
+ return false;
+ }
+ else if (!device.is<Solid::OpticalDrive>() && type==Eject)
+ {
+ cerr << tr("Error: %1 does not have the interface OpticalDrive.").arg(udi) << endl;
+ return false;
+ }
+
+ switch(type)
+ {
+ case Mount:
+ connect(device.as<Solid::StorageAccess>(),
+ SIGNAL(setupDone(Solid::ErrorType, QVariant, const QString &)),
+ this,
+ SLOT(slotStorageResult(Solid::ErrorType, QVariant)));
+ device.as<Solid::StorageAccess>()->setup();
+ break;
+ case Unmount:
+ connect(device.as<Solid::StorageAccess>(),
+ SIGNAL(teardownDone(Solid::ErrorType, QVariant, const QString &)),
+ this,
+ SLOT(slotStorageResult(Solid::ErrorType, QVariant)));
+ device.as<Solid::StorageAccess>()->teardown();
+ break;
+ case Eject:
+ connect(device.as<Solid::OpticalDrive>(),
+ SIGNAL(ejectDone(Solid::ErrorType, QVariant, const QString &)),
+ this,
+ SLOT(slotStorageResult(Solid::ErrorType, QVariant)));
+ device.as<Solid::OpticalDrive>()->eject();
+ break;
+ }
+
+ m_loop.exec();
+
+ if (m_error)
+ {
+ cerr << tr("Error: %1").arg(m_errorString) << endl;
+ return false;
+ }
+
+ return true;
+}
+
+bool SolidHardware::listen()
+{
+ Solid::DeviceNotifier *notifier = Solid::DeviceNotifier::instance();
+ bool a = connect(notifier, SIGNAL(deviceAdded(QString)), this, SLOT(deviceAdded(QString)));
+ bool d = connect(notifier, SIGNAL(deviceRemoved(QString)), this, SLOT(deviceRemoved(QString)));
+
+ if (!a || !d) {
+ return false;
+ }
+
+ cout << "Listening to add/remove events: " << endl;
+ m_loop.exec();
+ return true;
+}
+
+void SolidHardware::deviceAdded(const QString &udi)
+{
+ cout << "Device Added:" << endl;
+ cout << "udi = '" << udi << "'" << endl;
+}
+
+void SolidHardware::deviceRemoved(const QString &udi)
+{
+ cout << "Device Removed:" << endl;
+ cout << "udi = '" << udi << "'" << endl;
+}
+
+void SolidHardware::slotStorageResult(Solid::ErrorType error, const QVariant &errorData)
+{
+ if (error) {
+ m_error = 1;
+ m_errorString = errorData.toString();
+ }
+ m_loop.exit();
+}
+
+#include "solid-hardware.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/src/tools/solid-hardware/solid-hardware.h new/solid-4.98.0/src/tools/solid-hardware/solid-hardware.h
--- old/solid-4.97.0/src/tools/solid-hardware/solid-hardware.h 1970-01-01 01:00:00.000000000 +0100
+++ new/solid-4.98.0/src/tools/solid-hardware/solid-hardware.h 2014-03-28 19:17:47.000000000 +0100
@@ -0,0 +1,58 @@
+/* This file is part of the KDE project
+ Copyright (C) 2006 Kevin Ottens <ervin(a)kde.org>
+ Copyright (C) 2014 Alejandro Fiestas Olivares <afiestas(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License version 2 as published by the Free Software Foundation.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+
+*/
+
+#ifndef SOLID_HARDWARE_H
+#define SOLID_HARDWARE_H
+
+#include <QCoreApplication>
+#include <QEventLoop>
+
+#include <solid/storageaccess.h>
+
+class QCommandLineParser;
+class SolidHardware : public QCoreApplication
+{
+ Q_OBJECT
+public:
+ SolidHardware(int &argc, char **argv) : QCoreApplication(argc, argv), m_error(0) {}
+
+ bool hwList(bool interfaces, bool system);
+ bool hwCapabilities(const QString &udi);
+ bool hwProperties(const QString &udi);
+ bool hwQuery(const QString &parentUdi, const QString &query);
+ bool listen();
+
+ enum VolumeCallType { Mount, Unmount, Eject };
+ bool hwVolumeCall(VolumeCallType type, const QString &udi);
+
+private:
+ QEventLoop m_loop;
+ int m_error;
+ QString m_errorString;
+
+private Q_SLOTS:
+ void slotStorageResult(Solid::ErrorType error, const QVariant &errorData);
+ void deviceAdded(const QString &udi);
+ void deviceRemoved(const QString &udi);
+};
+
+Q_DECLARE_METATYPE(QList<int>)
+
+#endif // SOLID_HARDWARE_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/solid-4.97.0/tests/CMakeLists.txt new/solid-4.98.0/tests/CMakeLists.txt
--- old/solid-4.97.0/tests/CMakeLists.txt 2014-03-01 12:51:52.000000000 +0100
+++ new/solid-4.98.0/tests/CMakeLists.txt 2014-03-28 19:17:47.000000000 +0100
@@ -6,12 +6,12 @@
# solidnettestdbusservice.cpp )
-#QT4_ADD_DBUS_ADAPTOR(solidnettestdbusservice_SRCS ../src/solid/org.kde.Solid.Networking.Client.xml
+#qt5_add_dbus_adaptor(solidnettestdbusservice_SRCS ../src/solid/org.kde.Solid.Networking.Client.xml
# solidnettestdbusservice.h TestNetworkingService)
-#kde4_add_executable(solidnettestdbusservice TEST ${solidnettestdbusservice_SRCS})
-
-#target_link_libraries(solidnettestdbusservice Qt5::DBus Qt5::Xml Qt5::Test)
+#add_executable(solidnettestdbusservice ${solidnettestdbusservice_SRCS})
+#set_target_properties(solidnettestdbusservice PROPERTIES COMPILE_FLAGS -DSOLID_STATIC_DEFINE=1)
+#target_link_libraries(solidnettestdbusservice KF5Solid_static Qt5::DBus Qt5::Xml Qt5::Test)
########### networkingclient ###############
--
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 kxmlgui for openSUSE:Factory checked in at 2014-04-02 17:22:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kxmlgui (Old)
and /work/SRC/openSUSE:Factory/.kxmlgui.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kxmlgui"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kxmlgui/kxmlgui.changes 2014-03-10 12:18:27.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kxmlgui.new/kxmlgui.changes 2014-04-02 17:22:46.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:54 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kxmlgui-4.97.0.tar.xz
New:
----
kxmlgui-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kxmlgui.spec ++++++
--- /var/tmp/diff_new_pack.tZIdcH/_old 2014-04-02 17:22:46.000000000 +0200
+++ /var/tmp/diff_new_pack.tZIdcH/_new 2014-04-02 17:22:46.000000000 +0200
@@ -18,11 +18,11 @@
%define lname libKF5XmlGui5
Name: kxmlgui
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: attica-qt5-devel >= %{_kf5_version}
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfig-devel >= %{_kf5_version}
BuildRequires: kconfigwidgets-devel >= %{_kf5_version}
@@ -109,8 +109,7 @@
%defattr(-,root,root)
%doc COPYING* README*
%{_kf5_libdir}/libKF5XmlGui.so.*
-%dir %{_kf5_configdir}/ui
-%{_kf5_configdir}/ui/ui_standards.rc
+%{_kf5_configdir}/ui/
%{_kf5_libexecdir}/ksendbugmail
%dir %{_kf5_datadir}/kxmlgui
%dir %{_kf5_datadir}/kxmlgui/pics
++++++ kxmlgui-4.97.0.tar.xz -> kxmlgui-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/CMakeLists.txt new/kxmlgui-4.98.0/CMakeLists.txt
--- old/kxmlgui-4.97.0/CMakeLists.txt 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/CMakeLists.txt 2014-03-28 20:26:01.000000000 +0100
@@ -3,7 +3,7 @@
project(KXmlGui)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -16,7 +16,7 @@
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION}
VARIABLE_PREFIX KXMLGUI
@@ -25,8 +25,8 @@
SOVERSION 5)
# Dependencies
-set(QT_REQUIRED_VERSION 5.2.0)
-find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets DBus Xml Network PrintSupport)
+set(REQUIRED_QT_VERSION 5.2.0)
+find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets DBus Xml Network PrintSupport)
find_package(KF5ItemViews ${KF5_VERSION} REQUIRED)
find_package(KF5Config ${KF5_VERSION} REQUIRED)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/KF5XmlGuiConfig.cmake.in new/kxmlgui-4.98.0/KF5XmlGuiConfig.cmake.in
--- old/kxmlgui-4.97.0/KF5XmlGuiConfig.cmake.in 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/KF5XmlGuiConfig.cmake.in 2014-03-28 20:26:01.000000000 +0100
@@ -10,8 +10,8 @@
find_dependency(KF5TextWidgets "@KF5_VERSION@")
find_dependency(KF5WindowSystem "@KF5_VERSION@")
-find_dependency(Qt5DBus @QT_REQUIRED_VERSION@)
-find_dependency(Qt5Xml @QT_REQUIRED_VERSION@)
+find_dependency(Qt5DBus @REQUIRED_QT_VERSION@)
+find_dependency(Qt5Xml @REQUIRED_QT_VERSION@)
include("${CMAKE_CURRENT_LIST_DIR}/KF5XmlGuiTargets.cmake")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/autotests/icons/oxygen/index.theme new/kxmlgui-4.98.0/autotests/icons/oxygen/index.theme
--- old/kxmlgui-4.97.0/autotests/icons/oxygen/index.theme 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/autotests/icons/oxygen/index.theme 2014-03-28 20:26:01.000000000 +0100
@@ -2,6 +2,7 @@
Name=Oxygen
Name[bs]=Oxygen
Name[ca]=Oxygen
+Name[ca@valencia]=Oxygen
Name[cs]=Oxygen
Name[da]=Oxygen
Name[de]=Oxygen
@@ -12,13 +13,17 @@
Name[ga]=Oxygen
Name[hu]=Oxygen
Name[ia]=Oxygen
+Name[ko]=Oxygen
Name[nb]=Oxygen
Name[nds]=Oxygen
Name[nl]=Oxygen
Name[nn]=Oksygen
+Name[pa]=ਆਕਸੀਜਨ
Name[pl]=Oxygen
Name[pt]=Oxygen
Name[pt_BR]=Oxygen
+Name[ro]=Oxygen
+Name[ru]=Oxygen
Name[se]=Oksygena
Name[sk]=Oxygen
Name[sl]=Kisik
@@ -30,11 +35,13 @@
Name[uk]=Oxygen
Name[vi]=Oxy
Name[x-test]=xxOxygenxx
+Name[zh_CN]=Oxygen
Name[zh_TW]=Oxygen
Comment=Oxygen Team
Comment[bs]=Oxygen tim
Comment[ca]=Equip de l'Oxygen
+Comment[ca@valencia]=Equip de l'Oxygen
Comment[cs]=Tým Oxygen
Comment[da]=Oxygen-holdet
Comment[de]=Oxygen-Team
@@ -43,12 +50,16 @@
Comment[fi]=Oxygenin kehitysryhmä
Comment[hu]=Oxygen csapat
Comment[ia]=Equipa de Oxygen
+Comment[ko]=Oxygen 팀
Comment[nb]=Oxygen-laget
Comment[nds]=Oxygen-Koppel
Comment[nl]=Oxygen-team
+Comment[pa]=ਆਕਸੀਜਨ ਟੀਮ
Comment[pl]=Zespół Oxygen
Comment[pt]=Equipa do Oxygen
Comment[pt_BR]=Equipe do Oxygen
+Comment[ro]=Echipa Oxygen
+Comment[ru]=Команда Oxygen
Comment[sk]=Tím Oxygen
Comment[sl]=Ekipa Kisika
Comment[sr]=Тим Кисеоника
@@ -58,6 +69,7 @@
Comment[sv]=Oxygen-gruppen
Comment[uk]=Команда Oxygen
Comment[x-test]=xxOxygen Teamxx
+Comment[zh_CN]=Oxygen 团队
Comment[zh_TW]=Oxygen 開發團隊
DisplayDepth=32
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/autotests/kmainwindow_unittest.cpp new/kxmlgui-4.98.0/autotests/kmainwindow_unittest.cpp
--- old/kxmlgui-4.97.0/autotests/kmainwindow_unittest.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/autotests/kmainwindow_unittest.cpp 2014-03-28 20:26:01.000000000 +0100
@@ -32,6 +32,12 @@
void KMainWindow_UnitTest::initTestCase()
{
QStandardPaths::enableTestMode(true);
+ QFile::remove(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + QStringLiteral("/kmainwindow_unittestrc"));
+}
+
+void KMainWindow_UnitTest::cleanupTestCase()
+{
+ QFile::remove(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + QStringLiteral("/kmainwindow_unittestrc"));
}
void KMainWindow_UnitTest::testDefaultName()
@@ -128,6 +134,9 @@
// Send the pending resize event (resize() only sets Qt::WA_PendingResizeEvent)
QResizeEvent e(size(), oldSize);
QApplication::sendEvent(this, &e);
+
+ QCOMPARE(this->width(), width);
+ QCOMPARE(this->height(), height);
}
};
@@ -159,7 +168,8 @@
KToolBar *tb = new KToolBar(&mw); // we need a toolbar to trigger an old bug in saveMainWindowSettings
tb->setObjectName("testtb");
mw.reallyResize(800, 600);
- QTest::qWait(200);
+ QTRY_COMPARE(mw.size(), QSize(800, 600));
+ QTRY_COMPARE(mw.windowHandle()->size(), QSize(800, 600));
mw.saveMainWindowSettings(cfg);
mw.close();
}
@@ -170,8 +180,8 @@
tb->setObjectName("testtb");
mw2.resize(500, 500);
mw2.applyMainWindowSettings(cfg);
- QTest::qWait(200);
- QCOMPARE(mw2.size(), QSize(800, 600));
+
+ QTRY_COMPARE(mw2.size(), QSize(800, 600));
}
void KMainWindow_UnitTest::testAutoSaveSettings()
@@ -185,7 +195,6 @@
tb->setObjectName("testtb");
mw.setAutoSaveSettings(group);
mw.reallyResize(800, 600);
- QTest::qWait(200);
mw.close();
}
@@ -194,8 +203,7 @@
KToolBar *tb = new KToolBar(&mw2);
tb->setObjectName("testtb");
mw2.setAutoSaveSettings(group);
- QTest::qWait(200);
- QCOMPARE(mw2.size(), QSize(800, 600));
+ QTRY_COMPARE(mw2.size(), QSize(800, 600));
}
void KMainWindow_UnitTest::testNoAutoSave()
@@ -208,7 +216,6 @@
mw.show();
mw.setAutoSaveSettings(group, false);
mw.reallyResize(750, 550);
- QTest::qWait(200);
mw.close();
}
@@ -216,8 +223,7 @@
mw2.show();
mw2.setAutoSaveSettings(group, false);
// NOT 750, 550! (the 800,600 comes from testAutoSaveSettings)
- QTest::qWait(200);
- QCOMPARE(mw2.size(), QSize(800, 600));
+ QTRY_COMPARE(mw2.size(), QSize(800, 600));
}
void KMainWindow_UnitTest::testWidgetWithStatusBar()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/autotests/kmainwindow_unittest.h new/kxmlgui-4.98.0/autotests/kmainwindow_unittest.h
--- old/kxmlgui-4.97.0/autotests/kmainwindow_unittest.h 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/autotests/kmainwindow_unittest.h 2014-03-28 20:26:01.000000000 +0100
@@ -28,6 +28,7 @@
private Q_SLOTS:
void initTestCase();
+ void cleanupTestCase();
void testDefaultName();
void testFixedName();
void testNameWithSpecialChars();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/autotests/ktoolbar_unittest.cpp new/kxmlgui-4.98.0/autotests/ktoolbar_unittest.cpp
--- old/kxmlgui-4.97.0/autotests/ktoolbar_unittest.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/autotests/ktoolbar_unittest.cpp 2014-03-28 20:26:01.000000000 +0100
@@ -217,11 +217,12 @@
// Save settings
kmw.saveMainWindowSettings(group);
- QCOMPARE(group.groupList().count(), 2); // two subgroups (one for each toolbar)
// was it the default value?
if (iconSize == KIconLoader::global()->currentSize(KIconLoader::MainToolbar)) {
+ QCOMPARE(group.groupList().count(), 0); // nothing to save
QVERIFY(!group.group("Toolbar mainToolBar").hasKey("IconSize"));
} else {
+ QCOMPARE(group.groupList().count(), 2); // two subgroups (one for each toolbar)
QVERIFY(group.group("Toolbar mainToolBar").hasKey("IconSize"));
}
}
@@ -315,10 +316,10 @@
// Save settings
kmw.saveMainWindowSettings(group);
- QVERIFY(group.groupList().count() >= 6); // one subgroup for each toolbar
// was it the default size? (for the main toolbar, we only check that one)
const bool usingDefaultSize = iconSize == KIconLoader::global()->currentSize(KIconLoader::MainToolbar);
if (usingDefaultSize) {
+ QVERIFY(!group.groupList().contains("Toolbar mainToolBar"));
QVERIFY(!group.group("Toolbar mainToolBar").hasKey("IconSize"));
} else {
QVERIFY(group.group("Toolbar mainToolBar").hasKey("IconSize"));
@@ -402,10 +403,11 @@
// Save settings
kmw.saveMainWindowSettings(group);
- QCOMPARE(group.groupList().count(), 2); // two subgroups (one for each toolbar)
if (selectedDefaultForMainToolbar) {
+ QCOMPARE(group.groupList().count(), 0); // nothing to save
QVERIFY(!group.group("Toolbar mainToolBar").hasKey("ToolButtonStyle"));
} else {
+ QCOMPARE(group.groupList().count(), 2); // two subgroups (one for each toolbar)
QVERIFY(group.group("Toolbar mainToolBar").hasKey("ToolButtonStyle"));
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/CMakeLists.txt new/kxmlgui-4.98.0/src/CMakeLists.txt
--- old/kxmlgui-4.97.0/src/CMakeLists.txt 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/CMakeLists.txt 2014-03-28 20:26:01.000000000 +0100
@@ -52,7 +52,6 @@
kxmlguiwindow.cpp
kundoactions.cpp
kcheckaccelerators.cpp
- khelpclient.cpp
)
set(kxmlgui_UI
@@ -113,7 +112,6 @@
KXMLGUIFactory
KXmlGuiWindow
KUndoActions
- KHelpClient
REQUIRED_HEADERS KXmlGui_HEADERS
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/Messages.sh new/kxmlgui-4.98.0/src/Messages.sh
--- old/kxmlgui-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kxmlgui-4.98.0/src/Messages.sh 2014-03-28 20:26:01.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kxmlgui5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kcheckaccelerators.h new/kxmlgui-4.98.0/src/kcheckaccelerators.h
--- old/kxmlgui-4.97.0/src/kcheckaccelerators.h 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kcheckaccelerators.h 2014-03-28 20:26:01.000000000 +0100
@@ -63,7 +63,7 @@
COPY WIDGET TEXT:
You can copy widgets' texts to find them in translation files faster by middle-clicking them.
- Put the following lines in ~/.kde4/share/config/kdeglobals (or in rc file for specific app):
+ Put the following lines in ~/.config/kdeglobals (or in rc file for specific app):
\code
[Development]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/khelpclient.cpp new/kxmlgui-4.98.0/src/khelpclient.cpp
--- old/kxmlgui-4.97.0/src/khelpclient.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/khelpclient.cpp 1970-01-01 01:00:00.000000000 +0100
@@ -1,78 +0,0 @@
-/* This file is part of the KDE libraries
- * Copyright 2012 David Faure <faure(a)kde.org>
- *
- * This library is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License or ( at
- * your option ) version 3 or, at the discretion of KDE e.V. ( which shall
- * act as a proxy as in section 14 of the GPLv3 ), any later version.
- *
- * This library 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "khelpclient.h"
-
-#include "kdesktopfile.h"
-
-#include <QCoreApplication>
-#include <QUrl>
-#include <QDirIterator>
-#include <QUrlQuery>
-#include <QDesktopServices>
-
-void KHelpClient::invokeHelp(const QString &anchor, const QString &_appname)
-{
- QString appname;
- if (_appname.isEmpty()) {
- appname = QCoreApplication::instance()->applicationName();
- } else {
- appname = _appname;
- }
-
- // Look for the .desktop file of the application
-
- // was:
- //KService::Ptr service(KService::serviceByDesktopName(appname));
- //if (service)
- // docPath = service->docPath();
- // but we don't want to depend on KService here.
-
- QString docPath;
- const QStringList desktopDirs = QStandardPaths::standardLocations(QStandardPaths::ApplicationsLocation);
- Q_FOREACH (const QString &dir, desktopDirs) {
- QDirIterator it(dir, QStringList() << appname + QLatin1String(".desktop"), QDir::NoFilter, QDirIterator::Subdirectories);
- while (it.hasNext()) {
- const QString desktopPath(it.next());
- KDesktopFile desktopFile(desktopPath);
- docPath = desktopFile.readDocPath();
- break;
- }
- }
-
- // docPath could be a path or a full URL, I think.
-
- QUrl url;
- if (!docPath.isEmpty()) {
- url = QUrl(QLatin1String("help:/")).resolved(QUrl::fromUserInput(docPath));
- } else {
- url = QUrl(QString::fromLatin1("help:/%1/index.html").arg(appname));
- }
-
- if (!anchor.isEmpty()) {
- QUrlQuery query(url);
- query.addQueryItem(QString::fromLatin1("anchor"), anchor);
- url.setQuery(query);
- }
-
- // launch khelpcenter, or a browser for URIs not handled by khelpcenter
- QDesktopServices::openUrl(url);
-}
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/khelpclient.h new/kxmlgui-4.98.0/src/khelpclient.h
--- old/kxmlgui-4.97.0/src/khelpclient.h 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/khelpclient.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,47 +0,0 @@
-/* This file is part of the KDE libraries
- * Copyright 2012 David Faure <faure(a)kde.org>
- *
- * This library is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License or ( at
- * your option ) version 3 or, at the discretion of KDE e.V. ( which shall
- * act as a proxy as in section 14 of the GPLv3 ), any later version.
- *
- * This library 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef KHELPCLIENT_H
-#define KHELPCLIENT_H
-
-#include "kxmlgui_export.h"
-#include <QtCore/QString>
-#include <QtCore/QByteArray>
-
-namespace KHelpClient
-{
-/**
- * Invokes the KHelpCenter HTML help viewer from docbook sources.
- *
- * @param anchor This has to be a defined anchor in your
- * docbook sources. If empty the main index
- * is loaded
- * @param appname This allows you to show the help of another
- * application. If empty the current name() is
- * used
- * @param startup_id for app startup notification, "0" for none,
- * "" ( empty string ) is the default
- * @since 5.0
- */
-KXMLGUI_EXPORT void invokeHelp(const QString &anchor = QString(), const QString &appname = QString());
-}
-
-#endif /* KHELPCLIENT_H */
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kmainwindow.cpp new/kxmlgui-4.98.0/src/kmainwindow.cpp
--- old/kxmlgui-4.97.0/src/kmainwindow.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kmainwindow.cpp 2014-03-28 20:26:01.000000000 +0100
@@ -618,7 +618,7 @@
return true;
}
-void KMainWindow::applyMainWindowSettings(const KConfigGroup &cg, bool force)
+void KMainWindow::applyMainWindowSettings(const KConfigGroup &cg)
{
K_D(KMainWindow);
//qDebug(200) << "KMainWindow::applyMainWindowSettings " << cg.name();
@@ -670,7 +670,7 @@
group += (toolbar->objectName().isEmpty() ? QString::number(n) : QLatin1Char(' ') + toolbar->objectName());
KConfigGroup toolbarGroup(&cg, group);
- toolbar->applySettings(toolbarGroup, force);
+ toolbar->applySettings(toolbarGroup);
n++;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kmainwindow.h new/kxmlgui-4.98.0/src/kmainwindow.h
--- old/kxmlgui-4.97.0/src/kmainwindow.h 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kmainwindow.h 2014-03-28 20:26:01.000000000 +0100
@@ -371,9 +371,10 @@
* groups in the config file and apply them.
*
* @param config Config group to read the settings from.
- * @param forceGlobal see the same argument in KToolBar::applySettings
+ * KF5 porting note: the unused bool argument was removed, make sure to remove it from your
+ * reimplementations too! And add a Q_DECL_OVERRIDE for good measure.
*/
- virtual void applyMainWindowSettings(const KConfigGroup &config, bool forceGlobal = false);
+ virtual void applyMainWindowSettings(const KConfigGroup &config);
/**
* Save settings for statusbar, menubar and toolbar to their respective
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kshortcuteditwidget.cpp new/kxmlgui-4.98.0/src/kshortcuteditwidget.cpp
--- old/kxmlgui-4.97.0/src/kshortcuteditwidget.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kshortcuteditwidget.cpp 2014-03-28 20:26:01.000000000 +0100
@@ -81,8 +81,8 @@
this, SLOT(defaultToggled(bool)));
connect(m_customEditor, SIGNAL(keySequenceChanged(QKeySequence)),
this, SLOT(setCustom(QKeySequence)));
- connect(m_customEditor, SIGNAL(stealShortcut(QKeySequence,KAction*)),
- this, SIGNAL(stealShortcut(QKeySequence,KAction*)));
+ connect(m_customEditor, SIGNAL(stealShortcut(QKeySequence,QAction*)),
+ this, SIGNAL(stealShortcut(QKeySequence,QAction*)));
}
KKeySequenceWidget::ShortcutTypes ShortcutEditWidget::checkForConflictsAgainst() const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kshortcutsdialog.cpp new/kxmlgui-4.98.0/src/kshortcutsdialog.cpp
--- old/kxmlgui-4.97.0/src/kshortcutsdialog.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kshortcutsdialog.cpp 2014-03-28 20:26:01.000000000 +0100
@@ -72,7 +72,8 @@
: q(q),
m_keyChooser(0),
m_schemeEditor(0),
- m_detailsButton(0)
+ m_detailsButton(0),
+ m_saveSettings(false)
{
}
@@ -139,6 +140,7 @@
KShortcutsEditor *m_keyChooser; // ### move
KShortcutSchemesEditor *m_schemeEditor;
QPushButton *m_detailsButton;
+ bool m_saveSettings;
};
KShortcutsDialog::KShortcutsDialog(KShortcutsEditor::ActionTypes types, KShortcutsEditor::LetterShortcuts allowLetterShortcuts, QWidget *parent)
@@ -207,10 +209,7 @@
//FIXME should there be a setSaveSettings method?
bool KShortcutsDialog::configure(bool saveSettings)
{
- disconnect(this, SIGNAL(okClicked()), this, SLOT(save()));
- if (saveSettings) {
- connect(this, SIGNAL(okClicked()), this, SLOT(save()));
- }
+ d->m_saveSettings = saveSettings;
if (isModal()) {
int retcode = exec();
return retcode;
@@ -220,6 +219,14 @@
}
}
+void KShortcutsDialog::accept()
+{
+ if (d->m_saveSettings) {
+ d->save();
+ }
+ QDialog::accept();
+}
+
QSize KShortcutsDialog::sizeHint() const
{
return QSize(600, 480);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kshortcutsdialog.h new/kxmlgui-4.98.0/src/kshortcutsdialog.h
--- old/kxmlgui-4.97.0/src/kshortcutsdialog.h 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kshortcutsdialog.h 2014-03-28 20:26:01.000000000 +0100
@@ -125,6 +125,12 @@
static int configure(KActionCollection *collection, KShortcutsEditor::LetterShortcuts allowLetterShortcuts =
KShortcutsEditor::LetterShortcutsAllowed, QWidget *parent = 0, bool bSaveSettings = true);
+public Q_SLOTS:
+ /**
+ * @reimp
+ */
+ void accept() Q_DECL_OVERRIDE;
+
Q_SIGNALS:
/**
* emitted after ok is clicked and settings are saved
@@ -133,7 +139,6 @@
private:
Q_PRIVATE_SLOT(d, void changeShortcutScheme(const QString &))
- Q_PRIVATE_SLOT(d, void save())
Q_PRIVATE_SLOT(d, void undoChanges())
Q_PRIVATE_SLOT(d, void toggleDetails())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/ktoolbar.cpp new/kxmlgui-4.98.0/src/ktoolbar.cpp
--- old/kxmlgui-4.97.0/src/ktoolbar.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/ktoolbar.cpp 2014-03-28 20:26:01.000000000 +0100
@@ -146,6 +146,7 @@
static Qt::ToolButtonStyle toolButtonStyleFromString(const QString &style);
static QString toolButtonStyleToString(Qt::ToolButtonStyle);
static Qt::ToolBarArea positionFromString(const QString &position);
+ static Qt::ToolButtonStyle toolButtonStyleSetting();
KToolBar *q;
bool isMainToolBar : 1;
@@ -242,7 +243,6 @@
loadKDESettings();
// also read in our configurable settings (for non-xmlgui toolbars)
- // KDE5: we can probably remove this, if people save settings then they load them too, e.g. using KMainWindow's autosave.
if (readConfig) {
KConfigGroup cg(KSharedConfig::openConfig(), QString());
q->applySettings(cg);
@@ -514,12 +514,19 @@
applyCurrentSettings();
}
+Qt::ToolButtonStyle KToolBar::Private::toolButtonStyleSetting()
+{
+ KConfigGroup group(KSharedConfig::openConfig(), "Toolbar style");
+ const QString fallback = KToolBar::Private::toolButtonStyleToString(Qt::ToolButtonTextBesideIcon);
+ return KToolBar::Private::toolButtonStyleFromString(group.readEntry("ToolButtonStyle", fallback));
+}
+
void KToolBar::Private::loadKDESettings()
{
iconSizeSettings[Level_KDEDefault] = q->iconSizeDefault();
if (isMainToolBar) {
- toolButtonStyleSettings[Level_KDEDefault] = q->toolButtonStyleSetting();
+ toolButtonStyleSettings[Level_KDEDefault] = toolButtonStyleSetting();
} else {
const QString fallBack = toolButtonStyleToString(Qt::ToolButtonTextBesideIcon);
/**
@@ -849,8 +856,6 @@
{
Q_ASSERT(!cg.name().isEmpty());
- cg.deleteEntry("Hidden"); // remove old key to avoid bugs from the compat code in applySettings. KDE5: remove.
-
const int currentIconSize = iconSize().width();
//qDebug() << objectName() << currentIconSize << d->iconSizeSettings.toString() << "defaultValue=" << d->iconSizeSettings.defaultValue();
if (!cg.hasDefault("IconSize") && currentIconSize == d->iconSizeSettings.defaultValue()) {
@@ -908,13 +913,6 @@
QToolBar::contextMenuEvent(event);
}
-Qt::ToolButtonStyle KToolBar::toolButtonStyleSetting()
-{
- KConfigGroup group(KSharedConfig::openConfig(), "Toolbar style");
- const QString fallback = Private::toolButtonStyleToString(Qt::ToolButtonTextBesideIcon);
- return KToolBar::Private::toolButtonStyleFromString(group.readEntry("ToolButtonStyle", fallback));
-}
-
void KToolBar::loadState(const QDomElement &element)
{
QMainWindow *mw = mainWindow();
@@ -1065,22 +1063,9 @@
}
// called by KMainWindow::applyMainWindowSettings to read from the user settings
-void KToolBar::applySettings(const KConfigGroup &cg, bool forceGlobal)
+void KToolBar::applySettings(const KConfigGroup &cg)
{
Q_ASSERT(!cg.name().isEmpty());
- Q_UNUSED(forceGlobal); // KDE5: remove
-
- // a small leftover from kde3: separate bool for hidden/shown. But it's also part of saveMainWindowSettings,
- // it is not really useful anymore, except in the unlikely case where someone would call this by hand.
- // KDE5: remove the block below
- if (cg.hasKey("Hidden")) {
- const bool hidden = cg.readEntry("Hidden", false);
- if (hidden) {
- hide();
- } else {
- show();
- }
- }
if (cg.hasKey("IconSize")) {
d->iconSizeSettings[Level_UserSettings] = cg.readEntry("IconSize", 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/ktoolbar.h new/kxmlgui-4.98.0/src/ktoolbar.h
--- old/kxmlgui-4.97.0/src/ktoolbar.h 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/ktoolbar.h 2014-03-28 20:26:01.000000000 +0100
@@ -158,12 +158,8 @@
/**
* Read the toolbar settings from group @p configGroup in @p config
* and apply them.
- *
- * @param forceGlobal is deprecated. In kde3 it used to mean
- * "force global settings, i.e. ignore @p cg", but only for visibility/position/index,
- * not for icon size etc. Only visibility is still controlled by this.
*/
- void applySettings(const KConfigGroup &cg, bool forceGlobal = false);
+ void applySettings(const KConfigGroup &cg);
/**
* Sets the XML gui client.
@@ -201,12 +197,6 @@
bool eventFilter(QObject *watched, QEvent *event);
/**
- * Returns the global setting for "Icon Text" for the main toolbar
- * @return global setting for "Icon Text" for the main toolbar
- */
- static Qt::ToolButtonStyle toolButtonStyleSetting(); // KDE5: make private and file-static, nobody is calling this
-
- /**
* Returns whether the toolbars are currently editable (drag & drop of actions).
*/
static bool toolBarsEditable();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kxmlguiwindow.cpp new/kxmlgui-4.98.0/src/kxmlguiwindow.cpp
--- old/kxmlgui-4.97.0/src/kxmlguiwindow.cpp 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kxmlguiwindow.cpp 2014-03-28 20:26:01.000000000 +0100
@@ -368,10 +368,10 @@
}
}
-void KXmlGuiWindow::applyMainWindowSettings(const KConfigGroup &config, bool force)
+void KXmlGuiWindow::applyMainWindowSettings(const KConfigGroup &config)
{
K_D(KXmlGuiWindow);
- KMainWindow::applyMainWindowSettings(config, force);
+ KMainWindow::applyMainWindowSettings(config);
QStatusBar *sb = findChild<QStatusBar *>();
if (sb && d->showStatusBarAction) {
d->showStatusBarAction->setChecked(!sb->isHidden());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kxmlgui-4.97.0/src/kxmlguiwindow.h new/kxmlgui-4.98.0/src/kxmlguiwindow.h
--- old/kxmlgui-4.97.0/src/kxmlguiwindow.h 2014-03-01 12:51:50.000000000 +0100
+++ new/kxmlgui-4.98.0/src/kxmlguiwindow.h 2014-03-28 20:26:01.000000000 +0100
@@ -292,7 +292,7 @@
void finalizeGUI(bool force);
// reimplemented for internal reasons
- virtual void applyMainWindowSettings(const KConfigGroup &config, bool force = false);
+ void applyMainWindowSettings(const KConfigGroup &config) Q_DECL_OVERRIDE;
public Q_SLOTS:
/**
--
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 gnucash for openSUSE:Factory checked in at 2014-04-02 17:22:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnucash (Old)
and /work/SRC/openSUSE:Factory/.gnucash.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnucash"
Changes:
--------
--- /work/SRC/openSUSE:Factory/gnucash/gnucash.changes 2014-03-15 17:36:36.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.gnucash.new/gnucash.changes 2014-04-02 17:22:44.000000000 +0200
@@ -1,0 +2,16 @@
+Mon Mar 31 21:03:12 UTC 2014 - mgorse(a)suse.com
+
+- Update to version 2.6.3:
+ + Fix resizing of columns in budget view.
+ + Fix guile 2 stack overflow errors for large reports.
+ + Fix basis calculation for FIFO or LIFO when less than one lot
+ is sold.
+ + Update Window and Menu item from "Preconfigured-" to "Saved-"
+ Report and add lables to the dialog with help texts.
+ + Aqbanking: SEPA transfer improvements - fix origin labels and
+ add possibility to edit sender's name.
+ + Bugs fixed: bgo#721196, bgo#721654, bgo#723975, bgo#724995,
+ bgo#711567, bgo#726430, bgo#726891.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
gnucash-2.6.2.tar.bz2
New:
----
gnucash-2.6.3.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gnucash.spec ++++++
--- /var/tmp/diff_new_pack.iT93e4/_old 2014-04-02 17:22:45.000000000 +0200
+++ /var/tmp/diff_new_pack.iT93e4/_new 2014-04-02 17:22:45.000000000 +0200
@@ -17,13 +17,13 @@
Name: gnucash
-Version: 2.6.2
+Version: 2.6.3
Release: 0
Summary: Personal Finance Manager
License: SUSE-GPL-2.0-with-openssl-exception or SUSE-GPL-3.0-with-openssl-exception
Group: Productivity/Office/Finance
Url: http://www.gnucash.org/
-Source: http://downloads.sourceforge.net/project/gnucash/gnucash%20%28stable%29/2.6…
+Source: http://downloads.sourceforge.net/project/gnucash/gnucash%20%28stable%29/2.6…
Source1: %{name}-rpmlintrc
# PATCH-MISSING-TAG -- See http://wiki.opensuse.org/Packaging/Patches
Patch0: gnucash-cpan-warning.patch
++++++ gnucash-2.6.2.tar.bz2 -> gnucash-2.6.3.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/gnucash/gnucash-2.6.2.tar.bz2 /work/SRC/openSUSE:Factory/.gnucash.new/gnucash-2.6.3.tar.bz2 differ: char 11, line 1
--
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 kwindowsystem for openSUSE:Factory checked in at 2014-04-02 17:22:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kwindowsystem (Old)
and /work/SRC/openSUSE:Factory/.kwindowsystem.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kwindowsystem"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kwindowsystem/kwindowsystem.changes 2014-03-10 12:17:36.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kwindowsystem.new/kwindowsystem.changes 2014-04-02 17:22:43.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:54 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kwindowsystem-4.97.0.tar.xz
New:
----
kwindowsystem-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kwindowsystem.spec ++++++
--- /var/tmp/diff_new_pack.gWRXCw/_old 2014-04-02 17:22:44.000000000 +0200
+++ /var/tmp/diff_new_pack.gWRXCw/_new 2014-04-02 17:22:44.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5WindowSystem5
Name: kwindowsystem
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Test) >= 5.2.0
++++++ kwindowsystem-4.97.0.tar.xz -> kwindowsystem-4.98.0.tar.xz ++++++
++++ 3149 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 kwidgetsaddons for openSUSE:Factory checked in at 2014-04-02 17:22:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kwidgetsaddons (Old)
and /work/SRC/openSUSE:Factory/.kwidgetsaddons.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kwidgetsaddons"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kwidgetsaddons/kwidgetsaddons.changes 2014-03-10 12:17:34.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kwidgetsaddons.new/kwidgetsaddons.changes 2014-04-02 17:22:42.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:53 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kwidgetsaddons-4.97.0.tar.xz
New:
----
kwidgetsaddons-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kwidgetsaddons.spec ++++++
--- /var/tmp/diff_new_pack.PQVf86/_old 2014-04-02 17:22:43.000000000 +0200
+++ /var/tmp/diff_new_pack.PQVf86/_new 2014-04-02 17:22:43.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5WidgetsAddons5
Name: kwidgetsaddons
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Test) >= 5.2.0
++++++ kwidgetsaddons-4.97.0.tar.xz -> kwidgetsaddons-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/CMakeLists.txt new/kwidgetsaddons-4.98.0/CMakeLists.txt
--- old/kwidgetsaddons-4.97.0/CMakeLists.txt 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/CMakeLists.txt 2014-03-29 08:00:08.000000000 +0100
@@ -2,7 +2,7 @@
project(KWidgetsAddons)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -18,7 +18,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KWIDGETSADDONS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kwidgetsaddons_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/README.md new/kwidgetsaddons-4.98.0/README.md
--- old/kwidgetsaddons-4.97.0/README.md 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/README.md 2014-03-29 08:00:08.000000000 +0100
@@ -18,7 +18,7 @@
## Links
-- Home page: <https://projects.kde.org/projects/frameworks/kwidgetsaddon>
+- Home page: <https://projects.kde.org/projects/frameworks/kwidgetsaddons>
- Mailing list: <https://mail.kde.org/mailman/listinfo/kde-frameworks-devel>
- IRC channel: #kde-devel on Freenode
- Git repository: <https://projects.kde.org/projects/frameworks/kwidgetsaddons/repository>
Files old/kwidgetsaddons-4.97.0/docs/pics/kled.png and new/kwidgetsaddons-4.98.0/docs/pics/kled.png differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/Messages.sh new/kwidgetsaddons-4.98.0/src/Messages.sh
--- old/kwidgetsaddons-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/Messages.sh 2014-03-29 08:00:08.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kwidgetsaddons5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kassistantdialog.cpp new/kwidgetsaddons-4.98.0/src/kassistantdialog.cpp
--- old/kwidgetsaddons-4.97.0/src/kassistantdialog.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kassistantdialog.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -188,4 +188,19 @@
return d->appropriate.value(page, true);
}
+QPushButton* KAssistantDialog::backButton() const
+{
+ return d->backButton;
+}
+
+QPushButton* KAssistantDialog::nextButton() const
+{
+ return d->nextButton;
+}
+
+QPushButton* KAssistantDialog::finishButton() const
+{
+ return d->finishButton;
+}
+
#include "moc_kassistantdialog.cpp"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kassistantdialog.h new/kwidgetsaddons-4.98.0/src/kassistantdialog.h
--- old/kwidgetsaddons-4.97.0/src/kassistantdialog.h 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kassistantdialog.h 2014-03-29 08:00:08.000000000 +0100
@@ -26,22 +26,12 @@
/**
* This class provides a framework for assistant dialogs.
*
- * The use of this class is the same as KWizard in KDE3.
- * You should use the word "assistant" instead of "wizard" both in the source
- * and translatable strings.
- *
* An assistant dialog consists of a sequence of pages.
* Its purpose is to guide the user (assist) through a process step by step.
* Assistant dialogs are useful for complex or infrequently occurring tasks
* that people may find difficult to learn or do.
* Sometimes a task requires too many input fields to fit them on a single dialog.
*
- * KAssistantDialog provides page titles and displays Next, Back, Finish, Cancel,
- * and Help push buttons, as appropriate to the current position in the page sequence.
- * The Finish Button has the code KDialog::User1, The Next button is KDialog::User2
- * and the Back button is KDialog::User3.
- * The help button may be hidden using showButton(KDialog::Help, false)
- *
* Create and populate dialog pages that inherit from QWidget and add them
* to the assistant dialog using addPage().
*
@@ -106,6 +96,21 @@
*/
bool isAppropriate(KPageWidgetItem *page) const;
+ /**
+ * @returns the next button
+ */
+ QPushButton* nextButton() const;
+
+ /**
+ * @returns the finish button
+ */
+ QPushButton* backButton() const;
+
+ /**
+ * @returns the finish button
+ */
+ QPushButton* finishButton() const;
+
public Q_SLOTS:
/**
* Called when the user clicks the Back button.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kcharselectdata.cpp new/kwidgetsaddons-4.98.0/src/kcharselectdata.cpp
--- old/kwidgetsaddons-4.97.0/src/kcharselectdata.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kcharselectdata.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -71,11 +71,6 @@
QByteArray m_dataFile;
};
-inline QString tr(const char *s, const char *c = 0, int n = -1)
-{
- return QCoreApplication::translate("KCharSelectData", s, c, n);
-}
-
static const char JAMO_L_TABLE[][4] = {
"G", "GG", "N", "D", "DD", "R", "M", "B", "BB",
"S", "SS", "", "J", "JJ", "C", "K", "T", "P", "H"
@@ -232,7 +227,11 @@
QStringList list;
quint32 i = stringBegin;
while (i < stringEnd) {
- list.append(tr(data + 1, "KCharSelect section name"));
+ // FIXME: Is the content of data already marked as translatable,
+ // using "KCharSelectData" as context and "KCharSelct section name" as
+ // disambiguation string?
+ // If it is not then QCoreApplication::translate() will return it as is.
+ list.append(QCoreApplication::translate("KCharSelectData", data + 1, "KCharSelect section name"));
i += strlen(data + i) + 1;
}
@@ -276,13 +275,13 @@
return QLatin1String("HANGUL SYLLABLE ") + QLatin1String(JAMO_L_TABLE[LIndex])
+ QLatin1String(JAMO_V_TABLE[VIndex]) + QLatin1String(JAMO_T_TABLE[TIndex]);
} else if (unicode >= 0xD800 && unicode <= 0xDB7F) {
- return tr("<Non Private Use High Surrogate>");
+ return QCoreApplication::translate("KCharSelectData", "<Non Private Use High Surrogate>");
} else if (unicode >= 0xDB80 && unicode <= 0xDBFF) {
- return tr("<Private Use High Surrogate>");
+ return QCoreApplication::translate("KCharSelectData", "<Private Use High Surrogate>");
} else if (unicode >= 0xDC00 && unicode <= 0xDFFF) {
- return tr("<Low Surrogate>");
+ return QCoreApplication::translate("KCharSelectData", "<Low Surrogate>");
} else if (unicode >= 0xE000 && unicode <= 0xF8FF) {
- return tr("<Private Use>");
+ return QCoreApplication::translate("KCharSelectData", "<Private Use>");
}
// else if (unicode >= 0xF0000 && unicode <= 0xFFFFD) // 16 bit!
// return tr("<Plane 15 Private Use>");
@@ -313,7 +312,7 @@
}
if (s.isNull()) {
- return tr("<not assigned>");
+ return QCoreApplication::translate("KCharSelectData", "<not assigned>");
} else {
return s;
}
@@ -382,7 +381,7 @@
currIndex++;
}
- return tr(data + i, "KCharselect unicode block name");
+ return QCoreApplication::translate("KCharSelectData", data + i, "KCharselect unicode block name");
}
QString KCharSelectData::sectionName(int index)
@@ -404,7 +403,7 @@
currIndex++;
}
- return tr(data + i, "KCharselect unicode section name");
+ return QCoreApplication::translate("KCharSelectData", data + i, "KCharselect unicode section name");
}
QStringList KCharSelectData::aliases(const QChar &c)
@@ -649,7 +648,7 @@
bool KCharSelectData::isCombining(const QChar &c)
{
- return section(c) == tr("Combining Diacritical Marks", "KCharSelect section name");
+ return section(c) == QCoreApplication::translate("KCharSelectData", "Combining Diacritical Marks", "KCharSelect section name");
//FIXME: this is an imperfect test. There are many combining characters
// that are outside of this section. See Grapheme_Extend in
// http://www.unicode.org/Public/UNIDATA/DerivedCoreProperties.txt
@@ -658,7 +657,7 @@
QString KCharSelectData::display(const QChar &c, const QFont &font)
{
if (!isDisplayable(c)) {
- return QStringLiteral("<b>") + tr("Non-printable") + QStringLiteral("</b>");
+ return QStringLiteral("<b>") + QCoreApplication::translate("KCharSelectData", "Non-printable") + QStringLiteral("</b>");
} else {
QString s = QStringLiteral("<font size=\"+4\" face=\"") + font.family() + QStringLiteral("\">");
if (isCombining(c)) {
@@ -691,37 +690,37 @@
QString KCharSelectData::categoryText(QChar::Category category)
{
switch (category) {
- case QChar::Other_Control: return tr("Other, Control");
- case QChar::Other_Format: return tr("Other, Format");
- case QChar::Other_NotAssigned: return tr("Other, Not Assigned");
- case QChar::Other_PrivateUse: return tr("Other, Private Use");
- case QChar::Other_Surrogate: return tr("Other, Surrogate");
- case QChar::Letter_Lowercase: return tr("Letter, Lowercase");
- case QChar::Letter_Modifier: return tr("Letter, Modifier");
- case QChar::Letter_Other: return tr("Letter, Other");
- case QChar::Letter_Titlecase: return tr("Letter, Titlecase");
- case QChar::Letter_Uppercase: return tr("Letter, Uppercase");
- case QChar::Mark_SpacingCombining: return tr("Mark, Spacing Combining");
- case QChar::Mark_Enclosing: return tr("Mark, Enclosing");
- case QChar::Mark_NonSpacing: return tr("Mark, Non-Spacing");
- case QChar::Number_DecimalDigit: return tr("Number, Decimal Digit");
- case QChar::Number_Letter: return tr("Number, Letter");
- case QChar::Number_Other: return tr("Number, Other");
- case QChar::Punctuation_Connector: return tr("Punctuation, Connector");
- case QChar::Punctuation_Dash: return tr("Punctuation, Dash");
- case QChar::Punctuation_Close: return tr("Punctuation, Close");
- case QChar::Punctuation_FinalQuote: return tr("Punctuation, Final Quote");
- case QChar::Punctuation_InitialQuote: return tr("Punctuation, Initial Quote");
- case QChar::Punctuation_Other: return tr("Punctuation, Other");
- case QChar::Punctuation_Open: return tr("Punctuation, Open");
- case QChar::Symbol_Currency: return tr("Symbol, Currency");
- case QChar::Symbol_Modifier: return tr("Symbol, Modifier");
- case QChar::Symbol_Math: return tr("Symbol, Math");
- case QChar::Symbol_Other: return tr("Symbol, Other");
- case QChar::Separator_Line: return tr("Separator, Line");
- case QChar::Separator_Paragraph: return tr("Separator, Paragraph");
- case QChar::Separator_Space: return tr("Separator, Space");
- default: return tr("Unknown");
+ case QChar::Other_Control: return QCoreApplication::translate("KCharSelectData", "Other, Control");
+ case QChar::Other_Format: return QCoreApplication::translate("KCharSelectData", "Other, Format");
+ case QChar::Other_NotAssigned: return QCoreApplication::translate("KCharSelectData", "Other, Not Assigned");
+ case QChar::Other_PrivateUse: return QCoreApplication::translate("KCharSelectData", "Other, Private Use");
+ case QChar::Other_Surrogate: return QCoreApplication::translate("KCharSelectData", "Other, Surrogate");
+ case QChar::Letter_Lowercase: return QCoreApplication::translate("KCharSelectData", "Letter, Lowercase");
+ case QChar::Letter_Modifier: return QCoreApplication::translate("KCharSelectData", "Letter, Modifier");
+ case QChar::Letter_Other: return QCoreApplication::translate("KCharSelectData", "Letter, Other");
+ case QChar::Letter_Titlecase: return QCoreApplication::translate("KCharSelectData", "Letter, Titlecase");
+ case QChar::Letter_Uppercase: return QCoreApplication::translate("KCharSelectData", "Letter, Uppercase");
+ case QChar::Mark_SpacingCombining: return QCoreApplication::translate("KCharSelectData", "Mark, Spacing Combining");
+ case QChar::Mark_Enclosing: return QCoreApplication::translate("KCharSelectData", "Mark, Enclosing");
+ case QChar::Mark_NonSpacing: return QCoreApplication::translate("KCharSelectData", "Mark, Non-Spacing");
+ case QChar::Number_DecimalDigit: return QCoreApplication::translate("KCharSelectData", "Number, Decimal Digit");
+ case QChar::Number_Letter: return QCoreApplication::translate("KCharSelectData", "Number, Letter");
+ case QChar::Number_Other: return QCoreApplication::translate("KCharSelectData", "Number, Other");
+ case QChar::Punctuation_Connector: return QCoreApplication::translate("KCharSelectData", "Punctuation, Connector");
+ case QChar::Punctuation_Dash: return QCoreApplication::translate("KCharSelectData", "Punctuation, Dash");
+ case QChar::Punctuation_Close: return QCoreApplication::translate("KCharSelectData", "Punctuation, Close");
+ case QChar::Punctuation_FinalQuote: return QCoreApplication::translate("KCharSelectData", "Punctuation, Final Quote");
+ case QChar::Punctuation_InitialQuote: return QCoreApplication::translate("KCharSelectData", "Punctuation, Initial Quote");
+ case QChar::Punctuation_Other: return QCoreApplication::translate("KCharSelectData", "Punctuation, Other");
+ case QChar::Punctuation_Open: return QCoreApplication::translate("KCharSelectData", "Punctuation, Open");
+ case QChar::Symbol_Currency: return QCoreApplication::translate("KCharSelectData", "Symbol, Currency");
+ case QChar::Symbol_Modifier: return QCoreApplication::translate("KCharSelectData", "Symbol, Modifier");
+ case QChar::Symbol_Math: return QCoreApplication::translate("KCharSelectData", "Symbol, Math");
+ case QChar::Symbol_Other: return QCoreApplication::translate("KCharSelectData", "Symbol, Other");
+ case QChar::Separator_Line: return QCoreApplication::translate("KCharSelectData", "Separator, Line");
+ case QChar::Separator_Paragraph: return QCoreApplication::translate("KCharSelectData", "Separator, Paragraph");
+ case QChar::Separator_Space: return QCoreApplication::translate("KCharSelectData", "Separator, Space");
+ default: return QCoreApplication::translate("KCharSelectData", "Unknown");
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kcolorcombo.cpp new/kwidgetsaddons-4.98.0/src/kcolorcombo.cpp
--- old/kwidgetsaddons-4.97.0/src/kcolorcombo.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kcolorcombo.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -336,7 +336,7 @@
void KColorComboPrivate::addColors()
{
- q->addItem(q->tr("Custom...", "Custom color"));
+ q->addItem(KColorCombo::tr("Custom...", "Custom color"));
if (colorList.isEmpty()) {
for (int i = 0; i < STANDARD_PALETTE_SIZE; ++i) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kdatecombobox.cpp new/kwidgetsaddons-4.98.0/src/kdatecombobox.cpp
--- old/kwidgetsaddons-4.97.0/src/kdatecombobox.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kdatecombobox.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -161,17 +161,18 @@
if ((m_options & KDateComboBox::DateKeywords) == KDateComboBox::DateKeywords) {
if (m_dateMap.isEmpty()) {
- addMenuAction(q->tr("Next Year", "@option next year"), m_date.addYears(1));
- addMenuAction(q->tr("Next Month", "@option next month"), m_date.addMonths(1));
- addMenuAction(q->tr("Next Week", "@option next week"), m_date.addDays(7));
- addMenuAction(q->tr("Tomorrow", "@option tomorrow"), m_date.addDays(1));
- addMenuAction(q->tr("Today", "@option today"), m_date);
- addMenuAction(q->tr("Yesterday", "@option yesterday"), m_date.addDays(-1));
- addMenuAction(q->tr("Last Week", "@option last week"), m_date.addDays(-7));
- addMenuAction(q->tr("Last Month", "@option last month"), m_date.addMonths(-1));
- addMenuAction(q->tr("Last Year", "@option last year"), m_date.addYears(-1));
+ addMenuAction(KDateComboBox::tr("Next Year", "@option next year"), m_date.addYears(1));
+ addMenuAction(KDateComboBox::tr("Next Month", "@option next month"), m_date.addMonths(1));
+ addMenuAction(KDateComboBox::tr("Next Week", "@option next week"), m_date.addDays(7));
+ addMenuAction(KDateComboBox::tr("Tomorrow", "@option tomorrow"), m_date.addDays(1));
+ addMenuAction(KDateComboBox::tr("Today", "@option today"), m_date);
+ addMenuAction(KDateComboBox::tr("Yesterday", "@option yesterday"), m_date.addDays(-1));
+ addMenuAction(KDateComboBox::tr("Last Week", "@option last week"), m_date.addDays(-7));
+ addMenuAction(KDateComboBox::tr("Last Month", "@option last month"), m_date.addMonths(-1));
+ addMenuAction(KDateComboBox::tr("Last Year", "@option last year"), m_date.addYears(-1));
m_dateMenu->addSeparator();
- addMenuAction(q->tr("No Date", "@option do not specify a date"), QDate());
+ addMenuAction(KDateComboBox::tr("No Date", "@option do not specify a date"), QDate());
+
} else {
QMapIterator<QDate, QString> i(m_dateMap);
while (i.hasNext()) {
@@ -268,17 +269,17 @@
(m_options & KDateComboBox::WarnOnInvalid) == KDateComboBox::WarnOnInvalid) {
QString warnMsg;
if (!m_date.isValid()) {
- warnMsg = q->tr("The date you entered is invalid", "@info");
+ warnMsg = KDateComboBox::tr("The date you entered is invalid", "@info");
} else if (m_minDate.isValid() && m_date < m_minDate) {
if (m_minWarnMsg.isEmpty()) {
- warnMsg = q->tr("Date cannot be earlier than %1", "@info").arg(formatDate(m_minDate));
+ warnMsg = KDateComboBox::tr("Date cannot be earlier than %1", "@info").arg(formatDate(m_minDate));
} else {
warnMsg = m_minWarnMsg;
warnMsg.replace(QStringLiteral("%1"), formatDate(m_minDate));
}
} else if (m_maxDate.isValid() && m_date > m_maxDate) {
if (m_maxWarnMsg.isEmpty()) {
- warnMsg = q->tr("Date cannot be later than %1", "@info").arg(formatDate(m_maxDate));
+ warnMsg = KDateComboBox::tr("Date cannot be later than %1", "@info").arg(formatDate(m_maxDate));
} else {
warnMsg = m_maxWarnMsg;
warnMsg.replace(QStringLiteral("%1"), formatDate(m_maxDate));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kdatetimeedit.cpp new/kwidgetsaddons-4.98.0/src/kdatetimeedit.cpp
--- old/kwidgetsaddons-4.97.0/src/kdatetimeedit.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kdatetimeedit.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -186,8 +186,8 @@
{
ui.m_timeZoneCombo->blockSignals(true);
ui.m_timeZoneCombo->clear();
- ui.m_timeZoneCombo->addItem(q->tr("UTC", "UTC time zone"), QByteArray("UTC"));
- ui.m_timeZoneCombo->addItem(q->tr("Floating", "No specific time zone"), QByteArray());
+ ui.m_timeZoneCombo->addItem(KDateTimeEdit::tr("UTC", "UTC time zone"), QByteArray("UTC"));
+ ui.m_timeZoneCombo->addItem(KDateTimeEdit::tr("Floating", "No specific time zone"), QByteArray());
foreach (const QTimeZone &zone, m_zones) {
ui.m_timeZoneCombo->addItem(QString::fromUtf8(zone.id()), zone.id());
}
@@ -227,7 +227,7 @@
if (m_minWarnMsg.isEmpty()) {
//TODO Add datetime to string
//warnMsg = q->tr("Date and time cannot be earlier than %1", "@info").arg(formatDate(m_minDate));
- warnMsg = q->tr("The entered date and time is before the minimum allowed date and time.", "@info");
+ warnMsg = KDateTimeEdit::tr("The entered date and time is before the minimum allowed date and time.", "@info");
} else {
warnMsg = m_minWarnMsg;
//TODO localize properly
@@ -237,7 +237,7 @@
if (m_maxWarnMsg.isEmpty()) {
//TODO Add datetime to string
//warnMsg = q->tr("Date cannot be later than %1", "@info").arg(formatDate(m_maxDate));
- warnMsg = q->tr("The entered date and time is after the maximum allowed date and time.", "@info");
+ warnMsg = KDateTimeEdit::tr("The entered date and time is after the maximum allowed date and time.", "@info");
} else {
warnMsg = m_maxWarnMsg;
warnMsg.replace(QStringLiteral("%1"), q->locale().toString(m_maxDateTime));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kfontchooser.cpp new/kwidgetsaddons-4.98.0/src/kfontchooser.cpp
--- old/kwidgetsaddons-4.97.0/src/kfontchooser.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kfontchooser.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -156,7 +156,7 @@
d(new KFontChooser::Private(this))
{
d->usingFixed = flags & FixedFontsOnly;
- setWhatsThis(tr("Here you can choose the font to be used.", "@info:whatsthis"));
+ setWhatsThis(KFontChooser::tr("Here you can choose the font to be used.", "@info:whatsthis"));
// The top layout is divided vertically into a splitter with font
// attribute widgets and preview on the top, and XLFD data at the bottom.
@@ -178,7 +178,7 @@
QGridLayout *gridLayout;
int row = 0;
if (flags & DisplayFrame) {
- page = new QGroupBox(tr("Requested Font"), this);
+ page = new QGroupBox(KFontChooser::tr("Requested Font"), this);
splitter->addWidget(page);
gridLayout = new QGridLayout(page);
row = 1;
@@ -195,32 +195,32 @@
QHBoxLayout *familyLayout = new QHBoxLayout();
familyLayout->addSpacing(checkBoxGap);
if (flags & ShowDifferences) {
- d->familyCheckbox = new QCheckBox(tr("Font", "@option:check"), page);
+ d->familyCheckbox = new QCheckBox(KFontChooser::tr("Font", "@option:check"), page);
connect(d->familyCheckbox, SIGNAL(toggled(bool)),
this, SLOT(_k_toggled_checkbox()));
familyLayout->addWidget(d->familyCheckbox, 0, Qt::AlignLeft);
- d->familyCheckbox->setWhatsThis(tr("Enable this checkbox to change the font family settings.", "@info:whatsthis"));
- d->familyCheckbox->setToolTip(tr("Change font family?", "@info:tooltip"));
+ d->familyCheckbox->setWhatsThis(KFontChooser::tr("Enable this checkbox to change the font family settings.", "@info:whatsthis"));
+ d->familyCheckbox->setToolTip(KFontChooser::tr("Change font family?", "@info:tooltip"));
d->familyLabel = 0;
} else {
d->familyCheckbox = 0;
- d->familyLabel = new QLabel(tr("Font:", "@label"), page);
+ d->familyLabel = new QLabel(KFontChooser::tr("Font:", "@label"), page);
familyLayout->addWidget(d->familyLabel, 1, Qt::AlignLeft);
}
gridLayout->addLayout(familyLayout, row, 0);
QHBoxLayout *styleLayout = new QHBoxLayout();
if (flags & ShowDifferences) {
- d->styleCheckbox = new QCheckBox(tr("Font style", "@option:check"), page);
+ d->styleCheckbox = new QCheckBox(KFontChooser::tr("Font style", "@option:check"), page);
connect(d->styleCheckbox, SIGNAL(toggled(bool)),
this, SLOT(_k_toggled_checkbox()));
styleLayout->addWidget(d->styleCheckbox, 0, Qt::AlignLeft);
- d->styleCheckbox->setWhatsThis(tr("Enable this checkbox to change the font style settings.", "@info:whatsthis"));
- d->styleCheckbox->setToolTip(tr("Change font style?", "@info:tooltip"));
+ d->styleCheckbox->setWhatsThis(KFontChooser::tr("Enable this checkbox to change the font style settings.", "@info:whatsthis"));
+ d->styleCheckbox->setToolTip(KFontChooser::tr("Change font style?", "@info:tooltip"));
d->styleLabel = 0;
} else {
d->styleCheckbox = 0;
- d->styleLabel = new QLabel(tr("Font style:"), page);
+ d->styleLabel = new QLabel(KFontChooser::tr("Font style:"), page);
styleLayout->addWidget(d->styleLabel, 1, Qt::AlignLeft);
}
styleLayout->addSpacing(checkBoxGap);
@@ -228,16 +228,16 @@
QHBoxLayout *sizeLayout = new QHBoxLayout();
if (flags & ShowDifferences) {
- d->sizeCheckbox = new QCheckBox(tr("Size", "@option:check"), page);
+ d->sizeCheckbox = new QCheckBox(KFontChooser::tr("Size", "@option:check"), page);
connect(d->sizeCheckbox, SIGNAL(toggled(bool)),
this, SLOT(_k_toggled_checkbox()));
sizeLayout->addWidget(d->sizeCheckbox, 0, Qt::AlignLeft);
- d->sizeCheckbox->setWhatsThis(tr("Enable this checkbox to change the font size settings.", "@info:whatsthis"));
- d->sizeCheckbox->setToolTip(tr("Change font size?", "@info:tooltip"));
+ d->sizeCheckbox->setWhatsThis(KFontChooser::tr("Enable this checkbox to change the font size settings.", "@info:whatsthis"));
+ d->sizeCheckbox->setToolTip(KFontChooser::tr("Change font size?", "@info:tooltip"));
d->sizeLabel = 0;
} else {
d->sizeCheckbox = 0;
- d->sizeLabel = new QLabel(tr("Size:", "@label:listbox Font size"), page);
+ d->sizeLabel = new QLabel(KFontChooser::tr("Size:", "@label:listbox Font size"), page);
sizeLayout->addWidget(d->sizeLabel, 1, Qt::AlignLeft);
}
sizeLayout->addSpacing(checkBoxGap);
@@ -253,7 +253,7 @@
d->familyListBox->setEnabled(flags ^ ShowDifferences);
gridLayout->addWidget(d->familyListBox, row, 0);
QString fontFamilyWhatsThisText(
- tr("Here you can choose the font family to be used.", "@info:whatsthis"));
+ KFontChooser::tr("Here you can choose the font family to be used.", "@info:whatsthis"));
d->familyListBox->setWhatsThis(fontFamilyWhatsThisText);
if (flags & ShowDifferences) {
@@ -277,7 +277,7 @@
d->styleListBox = new QListWidget(page);
d->styleListBox->setEnabled(flags ^ ShowDifferences);
gridLayout->addWidget(d->styleListBox, row, 1);
- d->styleListBox->setWhatsThis(tr("Here you can choose the font style to be used.", "@info:whatsthis"));
+ d->styleListBox->setWhatsThis(KFontChooser::tr("Here you can choose the font style to be used.", "@info:whatsthis"));
if (flags & ShowDifferences) {
((QWidget *)d->styleCheckbox)->setWhatsThis(fontFamilyWhatsThisText);
} else {
@@ -285,11 +285,11 @@
}
// Populate usual styles, to determine minimum list width;
// will be replaced later with correct styles.
- d->styleListBox->addItem(TR_NOX("Normal", "QFontDatabase"));
- d->styleListBox->addItem(tr("Italic", "@item font"));
- d->styleListBox->addItem(tr("Oblique", "@item font"));
- d->styleListBox->addItem(tr("Bold", "@item font"));
- d->styleListBox->addItem(tr("Bold Italic", "@item font"));
+ d->styleListBox->addItem(KFontChooser::tr("Normal", "QFontDatabase"));
+ d->styleListBox->addItem(KFontChooser::tr("Italic", "@item font"));
+ d->styleListBox->addItem(KFontChooser::tr("Oblique", "@item font"));
+ d->styleListBox->addItem(KFontChooser::tr("Bold", "@item font"));
+ d->styleListBox->addItem(KFontChooser::tr("Bold Italic", "@item font"));
d->styleListBox->setMinimumWidth(minimumListWidth(d->styleListBox));
d->styleListBox->setMinimumHeight(
minimumListHeight(d->styleListBox, visibleListSize));
@@ -308,11 +308,11 @@
d->sizeOfFont->setEnabled(flags ^ ShowDifferences);
if (sizeIsRelativeState) {
QString sizeIsRelativeCBText =
- tr("Relative", "@item font size");
+ KFontChooser::tr("Relative", "@item font size");
QString sizeIsRelativeCBToolTipText =
- tr("Font size<br /><i>fixed</i> or <i>relative</i><br />to environment");
+ KFontChooser::tr("Font size<br /><i>fixed</i> or <i>relative</i><br />to environment");
QString sizeIsRelativeCBWhatsThisText =
- tr("Here you can switch between fixed font size and font size "
+ KFontChooser::tr("Here you can switch between fixed font size and font size "
"to be calculated dynamically and adjusted to changing "
"environment (e.g. widget dimensions, paper size).");
d->sizeIsRelativeCheckBox = new QCheckBox(sizeIsRelativeCBText,
@@ -336,7 +336,7 @@
sizeLayout2->addWidget(d->sizeListBox, 1, 0);
}
QString fontSizeWhatsThisText =
- tr("Here you can choose the font size to be used.");
+ KFontChooser::tr("Here you can choose the font size to be used.");
d->sizeListBox->setWhatsThis(fontSizeWhatsThisText);
if (flags & ShowDifferences) {
@@ -374,10 +374,10 @@
// Replace it with a sample text in your language, such that it is
// representative of language's writing system.
// If you wish, you can input several lines of text separated by \n.
- setSampleText(tr("The Quick Brown Fox Jumps Over The Lazy Dog"));
+ setSampleText(KFontChooser::tr("The Quick Brown Fox Jumps Over The Lazy Dog"));
d->sampleEdit->setTextCursor(QTextCursor(d->sampleEdit->document()));
QString sampleEditWhatsThisText =
- tr("This sample text illustrates the current settings. "
+ KFontChooser::tr("This sample text illustrates the current settings. "
"You may edit it to test special characters.");
d->sampleEdit->setWhatsThis(sampleEditWhatsThisText);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kled.cpp new/kwidgetsaddons-4.98.0/src/kled.cpp
--- old/kwidgetsaddons-4.97.0/src/kled.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kled.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -41,8 +41,6 @@
Shape shape;
QPixmap cachedPixmap[2]; // for both states
- QStyle::ControlElement ce_indicatorLedCircular;
- QStyle::ControlElement ce_indicatorLedRectangular;
};
KLed::KLed(QWidget *parent)
@@ -76,84 +74,6 @@
delete d;
}
-void KLed::paintEvent(QPaintEvent *)
-{
- switch (d->shape) {
- case Rectangular:
- switch (d->look) {
- case Sunken:
- paintRectFrame(false);
- break;
- case Raised:
- paintRectFrame(true);
- break;
- case Flat:
- paintRect();
- break;
- }
- break;
- case Circular:
- switch (d->look) {
- case Flat:
- paintFlat();
- break;
- case Raised:
- paintRaised();
- break;
- case Sunken:
- paintSunken();
- break;
- }
- break;
- }
-}
-
-int KLed::ledWidth() const
-{
- // Make sure the LED is round!
- int size = qMin(width(), height());
-
- // leave one pixel border
- size -= 2;
-
- return qMax(0, size);
-}
-
-bool KLed::paintCachedPixmap()
-{
- if (d->cachedPixmap[d->state].isNull()) {
- return false;
- }
- QPainter painter(this);
- painter.drawPixmap(1, 1, d->cachedPixmap[d->state]);
- return true;
-}
-
-void KLed::paintFlat()
-{
- paintLed(Circular, Flat);
-}
-
-void KLed::paintRaised()
-{
- paintLed(Circular, Raised);
-}
-
-void KLed::paintSunken()
-{
- paintLed(Circular, Sunken);
-}
-
-void KLed::paintRect()
-{
- paintLed(Rectangular, Flat);
-}
-
-void KLed::paintRectFrame(bool raised)
-{
- paintLed(Rectangular, raised ? Raised : Sunken);
-}
-
KLed::State KLed::state() const
{
return d->state;
@@ -270,16 +190,19 @@
update();
}
-void KLed::paintLed(Shape shape, Look look)
+void KLed::paintEvent(QPaintEvent *)
{
- if (paintCachedPixmap()) {
+ if (!d->cachedPixmap[d->state].isNull()) {
+ QPainter painter(this);
+ painter.drawPixmap(1, 1, d->cachedPixmap[d->state]);
return;
}
QSize size(width() - 2, height() - 2);
- if (shape == Circular) {
- const int width = ledWidth();
- size = QSize(width, width);
+ if (d->shape == Circular) {
+ // Make sure the LED is round
+ const int dim = qMin(width(), height()) - 2;
+ size = QSize(dim, dim);
}
QPointF center(size.width() / 2.0, size.height() / 2.0);
const int smallestSize = qMin(size.width(), size.height());
@@ -294,7 +217,7 @@
fillGradient.setColorAt(0.5, fillColor.light(130));
fillGradient.setColorAt(1.0, fillColor);
- QConicalGradient borderGradient(center, look == Sunken ? 90 : -90);
+ QConicalGradient borderGradient(center, d->look == Sunken ? 90 : -90);
QColor borderColor = palette().color(QPalette::Dark);
if (d->state == On) {
QColor glowOverlay = fillColor;
@@ -319,12 +242,12 @@
painter.begin(&image);
painter.setRenderHint(QPainter::Antialiasing);
- painter.setBrush(look == Flat ? QBrush(fillColor) : QBrush(fillGradient));
- const QBrush penBrush = (look == Flat) ? QBrush(borderColor) : QBrush(borderGradient);
+ painter.setBrush(d->look == Flat ? QBrush(fillColor) : QBrush(fillGradient));
+ const QBrush penBrush = (d->look == Flat) ? QBrush(borderColor) : QBrush(borderGradient);
const qreal penWidth = smallestSize / 8.0;
painter.setPen(QPen(penBrush, penWidth));
QRectF r(penWidth / 2.0, penWidth / 2.0, size.width() - penWidth, size.height() - penWidth);
- if (shape == Rectangular) {
+ if (d->shape == Rectangular) {
painter.drawRect(r);
} else {
painter.drawEllipse(r);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kled.h new/kwidgetsaddons-4.98.0/src/kled.h
--- old/kwidgetsaddons-4.97.0/src/kled.h 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kled.h 2014-03-29 08:00:08.000000000 +0100
@@ -261,57 +261,15 @@
void off();
protected:
- /**
- * Returns the width of the led.
- */
- virtual int ledWidth() const;
-
- /**
- * Paints a circular, flat LED.
- */
- virtual void paintFlat();
-
- /**
- * Paints a circular, raised LED.
- */
- virtual void paintRaised();
-
- /**
- * Paints a circular, sunken LED.
- */
- virtual void paintSunken();
-
- /**
- * Paints a rectangular, flat LED.
- */
- virtual void paintRect();
-
- /**
- * Paints a rectangular LED, either raised or
- * sunken, depending on its argument.
- */
- virtual void paintRectFrame(bool raised);
-
void paintEvent(QPaintEvent *);
void resizeEvent(QResizeEvent *);
/**
- * Paint the cached antialiased pixmap corresponding to the state if any
- * @return true if the pixmap was painted, false if it hasn't been created yet
- */
- bool paintCachedPixmap();
-
- /**
* @internal
* invalidates caches after property changes and calls update()
*/
void updateCachedPixmap();
- /**
- * @internal
- */
- void paintLed(Shape shape, Look look);
-
private:
class Private;
Private *const d;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kmessagebox.h new/kwidgetsaddons-4.98.0/src/kmessagebox.h
--- old/kwidgetsaddons-4.97.0/src/kmessagebox.h 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kmessagebox.h 2014-03-29 08:00:08.000000000 +0100
@@ -48,19 +48,6 @@
* be plaintext or richtext. If the text is plaintext, a newline-character
* may be used to indicate the end of a paragraph.
*
- * @port4 Where applicable, the functions now take an additional
- * argument to specify the cancel button. Since a default argument is
- * provided, this will affect your code only, if you specified
- * dontAskAgainName and/or options. In those cases, adding an additional
- * parameter KStandardGuiItem::cancel() leads to the old behavior. The
- * following functions are affected (omitting function arguments in the
- * list): questionYesNoCancel(), questionYesNoCancelWId(),
- * warningContinueCancel(), warningContinueCancelWId(),
- * warningContinueCancelList(), warningContinueCancelListWId(),
- * warningYesNoCancel(), warningYesNoCancelWId(),
- * warningYesNoCancelList(), warningYesNoCancelListWId(), messageBox(),
- * messageBoxWId().
- *
* \image html kmessagebox.png "KDE Message Box (using questionYesNo())"
*
* @author Waldo Bastian (bastian(a)kde.org)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kmessagewidget.cpp new/kwidgetsaddons-4.98.0/src/kmessagewidget.cpp
--- old/kwidgetsaddons-4.97.0/src/kmessagewidget.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kmessagewidget.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -87,8 +87,8 @@
QObject::connect(textLabel, SIGNAL(linkHovered(QString)), q, SIGNAL(linkHovered(QString)));
QAction *closeAction = new QAction(q);
- closeAction->setText(q->tr("&Close"));
- closeAction->setToolTip(q->tr("Close message"));
+ closeAction->setText(KMessageWidget::tr("&Close"));
+ closeAction->setToolTip(KMessageWidget::tr("Close message"));
closeAction->setIcon(q->style()->standardIcon(QStyle::SP_DialogCloseButton));
QObject::connect(closeAction, SIGNAL(triggered(bool)), q, SLOT(animatedHide()));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/knewpassworddialog.cpp new/kwidgetsaddons-4.98.0/src/knewpassworddialog.cpp
--- old/kwidgetsaddons-4.97.0/src/knewpassworddialog.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/knewpassworddialog.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -158,7 +158,7 @@
} else {
if (ui.linePassword->text().length() < minPasswordLength) {
ui.labelMatch->setPixmap(QIcon::fromTheme(QStringLiteral("dialog-error")));
- ui.labelMatch->setText(tr("Password must be at least %1 character(s) long").arg(minimumPasswordLength));
+ ui.labelMatch->setText(tr("Password must be at least %n character(s) long", "", minimumPasswordLength));
} else {
ui.labelMatch->setPixmap(match ? QIcon::fromTheme(QStringLiteral("dialog-ok")) : QIcon::fromTheme(QStringLiteral("dialog-error")));
ui.labelMatch->setText(match ? tr("Passwords match")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kpassworddialog.cpp new/kwidgetsaddons-4.98.0/src/kpassworddialog.cpp
--- old/kwidgetsaddons-4.97.0/src/kpassworddialog.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kpassworddialog.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -401,4 +401,9 @@
return true;
}
+QDialogButtonBox *KPasswordDialog::buttonBox() const
+{
+ return d->ui.buttonBox;
+}
+
#include "moc_kpassworddialog.cpp"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kpassworddialog.h new/kwidgetsaddons-4.98.0/src/kpassworddialog.h
--- old/kwidgetsaddons-4.97.0/src/kpassworddialog.h 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kpassworddialog.h 2014-03-29 08:00:08.000000000 +0100
@@ -267,6 +267,16 @@
*/
void accept();
+ /**
+ * Returns the button box used in the dialog.
+ * This can be used to add new buttons.
+ *
+ * @return the button box
+ *
+ * @since 5.0
+ */
+ QDialogButtonBox *buttonBox() const;
+
Q_SIGNALS:
/**
* emitted when the dialog has been accepted
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kpopupframe.cpp new/kwidgetsaddons-4.98.0/src/kpopupframe.cpp
--- old/kwidgetsaddons-4.97.0/src/kpopupframe.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kpopupframe.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -115,6 +115,11 @@
}
}
+void KPopupFrame::hideEvent(QHideEvent *e)
+{
+ QFrame::hideEvent(e);
+}
+
void KPopupFrame::close(int r)
{
d->result = r;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kpopupframe.h new/kwidgetsaddons-4.98.0/src/kpopupframe.h
--- old/kwidgetsaddons-4.97.0/src/kpopupframe.h 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kpopupframe.h 2014-03-29 08:00:08.000000000 +0100
@@ -39,6 +39,11 @@
*/
virtual void keyPressEvent(QKeyEvent *e);
+ /**
+ * Catch hide events.
+ */
+ virtual void hideEvent(QHideEvent *e);
+
public Q_SLOTS:
/**
* Close the popup window. This is called from the main widget, usually.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/kselectaction.h new/kwidgetsaddons-4.98.0/src/kselectaction.h
--- old/kwidgetsaddons-4.97.0/src/kselectaction.h 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/kselectaction.h 2014-03-29 08:00:08.000000000 +0100
@@ -296,12 +296,19 @@
void setMaxComboViewCount(int n);
/**
- * Clears up all the items in this action.
- * \warning The actions will be deleted for backwards compatibility with KDE3.
- * If you just want to remove all actions, use removeAllActions()
+ * Remove and delete all the items in this action.
+ *
+ * @see removeAllActions()
*/
void clear();
+ /**
+ * Remove all the items in this action.
+ *
+ * Unlike clear(), this will not delete the actions.
+ *
+ * @see clear()
+ */
void removeAllActions();
/**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/ktimecombobox.cpp new/kwidgetsaddons-4.98.0/src/ktimecombobox.cpp
--- old/kwidgetsaddons-4.97.0/src/ktimecombobox.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/ktimecombobox.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -249,17 +249,17 @@
(m_options & KTimeComboBox::WarnOnInvalid) == KTimeComboBox::WarnOnInvalid) {
QString warnMsg;
if (!m_time.isValid()) {
- warnMsg = q->tr("The time you entered is invalid", "@info");
+ warnMsg = KTimeComboBox::tr("The time you entered is invalid", "@info");
} else if (m_time < m_minTime) {
if (m_minWarnMsg.isEmpty()) {
- warnMsg = q->tr("Time cannot be earlier than %1", "@info").arg(formatTime(m_minTime));
+ warnMsg = KTimeComboBox::tr("Time cannot be earlier than %1", "@info").arg(formatTime(m_minTime));
} else {
warnMsg = m_minWarnMsg;
warnMsg.replace(QStringLiteral("%1"), formatTime(m_minTime));
}
} else if (m_time > m_maxTime) {
if (m_maxWarnMsg.isEmpty()) {
- warnMsg = q->tr("Time cannot be later than %1", "@info").arg(formatTime(m_maxTime));
+ warnMsg = KTimeComboBox::tr("Time cannot be later than %1", "@info").arg(formatTime(m_maxTime));
} else {
warnMsg = m_maxWarnMsg;
warnMsg.replace(QStringLiteral("%1"), formatTime(m_maxTime));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/ktoolbarlabelaction.h new/kwidgetsaddons-4.98.0/src/ktoolbarlabelaction.h
--- old/kwidgetsaddons-4.97.0/src/ktoolbarlabelaction.h 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/ktoolbarlabelaction.h 2014-03-29 08:00:08.000000000 +0100
@@ -34,15 +34,15 @@
*
* \code
*
- * KHistoryCombo* findCombo = new KHistoryCombo( true, this );
+ * KHistoryComboBox *findCombo = new KHistoryComboBox(true, this);
*
- * KWidgetAction* action = new KWidgetAction( findCombo, i18n("Find Combo"),
- * Qt::Key_F6, this, SLOT( slotFocus() ),
+ * KWidgetAction *action = new KWidgetAction(findCombo, i18n("Find Combo"),
+ * Qt::Key_F6, this, SLOT( slotFocus()),
* actionCollection(), "find_combo");
*
- * QAction *action = new KToolBarLabelAction( action, i18n( "Find "), "find_label" );
- * action->setShortcut( Qt::Key_F6 );
- * connect( action, SIGNAL( triggered() ), this, SLOT( slotFocus() ) );
+ * QAction *action = new KToolBarLabelAction(action, i18n("Find "), "find_label");
+ * action->setShortcut(Qt::Key_F6);
+ * connect(action, SIGNAL(triggered()), this, SLOT(slotFocus()));
*
* \endcode
*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwidgetsaddons-4.97.0/src/lineediturldropeventfilter.cpp new/kwidgetsaddons-4.98.0/src/lineediturldropeventfilter.cpp
--- old/kwidgetsaddons-4.97.0/src/lineediturldropeventfilter.cpp 2014-03-01 12:51:46.000000000 +0100
+++ new/kwidgetsaddons-4.98.0/src/lineediturldropeventfilter.cpp 2014-03-29 08:00:08.000000000 +0100
@@ -25,7 +25,7 @@
#include <qmimedata.h>
#include <QDropEvent>
-static const char s_kdeUriListMime[] = "application/x-kde4-urilist";
+static const char s_kdeUriListMime[] = "application/x-kde4-urilist"; // keep this name "kde4" for compat.
LineEditUrlDropEventFilter::LineEditUrlDropEventFilter(QObject *parent)
: QObject(parent)
--
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 kwallet for openSUSE:Factory checked in at 2014-04-02 17:22:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kwallet (Old)
and /work/SRC/openSUSE:Factory/.kwallet.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kwallet"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kwallet/kwallet.changes 2014-03-10 12:17:53.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kwallet.new/kwallet.changes 2014-04-02 17:22:40.000000000 +0200
@@ -1,0 +2,10 @@
+Sat Mar 29 19:47:53 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+- Added libgcrypt-devel >= 1.5.0 BuildRequires
+
+-------------------------------------------------------------------
Old:
----
kwallet-4.97.0.tar.xz
New:
----
kwallet-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kwallet.spec ++++++
--- /var/tmp/diff_new_pack.QW1Cgc/_old 2014-04-02 17:22:41.000000000 +0200
+++ /var/tmp/diff_new_pack.QW1Cgc/_new 2014-04-02 17:22:41.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Wallet5
Name: kwallet
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfig-devel >= %{_kf5_version}
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
@@ -33,6 +33,7 @@
BuildRequires: kservice-devel >= %{_kf5_version}
BuildRequires: kwidgetsaddons-devel >= %{_kf5_version}
BuildRequires: kwindowsystem-devel >= %{_kf5_version}
+BuildRequires: libgcrypt-devel >= 1.5.0
BuildRequires: pkgconfig(Qt5DBus) >= 5.2.0
BuildRequires: pkgconfig(Qt5Test) >= 5.2.0
BuildRequires: pkgconfig(Qt5Widgets) >= 5.2.0
@@ -120,6 +121,7 @@
%{_kf5_servicesdir}/kwalletd5.desktop
%{_kf5_datadir}/kwalletd/
%{_kf5_datadir}/dbus-1/services/org.kde.kwalletd5.service
+%{_kf5_datadir}/kconf_update/
%files -n %lname
%defattr(-,root,root)
++++++ kwallet-4.97.0.tar.xz -> kwallet-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/.reviewboardrc new/kwallet-4.98.0/.reviewboardrc
--- old/kwallet-4.97.0/.reviewboardrc 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/.reviewboardrc 2014-03-29 08:12:43.000000000 +0100
@@ -1,4 +1,4 @@
REVIEWBOARD_URL = "https://git.reviewboard.kde.org"
-REPOSITORY = 'git://anongit.kde.org/kwallet-framework'
+REPOSITORY = 'git://anongit.kde.org/kwallet'
BRANCH = 'master'
TARGET_GROUPS = 'kdeframeworks'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/CMakeLists.txt new/kwallet-4.98.0/CMakeLists.txt
--- old/kwallet-4.97.0/CMakeLists.txt 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/CMakeLists.txt 2014-03-29 08:12:43.000000000 +0100
@@ -1,23 +1,29 @@
cmake_minimum_required(VERSION 2.8.12)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
-set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
+set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
set(REQUIRED_QT_VERSION 5.2.0)
find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets DBus)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
include(KDEInstallDirs)
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
+include(FeatureSummary)
option(BUILD_KWALLETD "Build the kwallet daemon" ON)
+find_package(LibGcrypt 1.5.0 REQUIRED QUIET)
+set_package_properties(LibGcrypt PROPERTIES DESCRIPTION "Libgcrypt is a general purpose cryptographic library based on the code from GnuPG."
+ URL "http://www.gnu.org/software/libgcrypt/"
+ TYPE REQUIRED
+ PURPOSE "kwalletd needs libgcrypt to perform PBKDF2-SHA512 hashing"
+ )
+
add_subdirectory(src)
add_subdirectory(autotests)
add_subdirectory(tests)
-if ("${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
- feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
-endif()
+feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/cmake/FindLibGcrypt.cmake new/kwallet-4.98.0/cmake/FindLibGcrypt.cmake
--- old/kwallet-4.97.0/cmake/FindLibGcrypt.cmake 1970-01-01 01:00:00.000000000 +0100
+++ new/kwallet-4.98.0/cmake/FindLibGcrypt.cmake 2014-03-29 08:12:43.000000000 +0100
@@ -0,0 +1,61 @@
+
+# - Try to find the Gcrypt library
+# Once run this will define
+#
+# LIBGCRYPT_FOUND - set if the system has the gcrypt library
+# LIBGCRYPT_CFLAGS - the required gcrypt compilation flags
+# LIBGCRYPT_LIBRARIES - the linker libraries needed to use the gcrypt library
+#
+# Copyright (c) 2006 Brad Hards <bradh(a)kde.org>
+#
+# Redistribution and use is allowed according to the terms of the BSD license.
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+
+# libgcrypt is moving to pkg-config, but earlier version don't have it
+
+if(NOT LibGcrypt_FIND_VERSION)
+ set(LibGcrypt_FIND_VERSION "1.5.0")
+endif()
+
+#search in typical paths for libgcrypt-config
+FIND_PROGRAM(LIBGCRYPTCONFIG_EXECUTABLE NAMES libgcrypt-config)
+
+#reset variables
+set(LIBGCRYPT_LIBRARIES)
+set(LIBGCRYPT_CFLAGS)
+
+# if libgcrypt-config has been found
+IF(LIBGCRYPTCONFIG_EXECUTABLE)
+
+ # workaround for MinGW/MSYS
+ # CMake can't starts shell scripts on windows so it need to use sh.exe
+ EXECUTE_PROCESS(COMMAND sh ${LIBGCRYPTCONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE LIBGCRYPT_LIBRARIES OUTPUT_STRIP_TRAILING_WHITESPACE)
+ EXECUTE_PROCESS(COMMAND sh ${LIBGCRYPTCONFIG_EXECUTABLE} --cflags RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE LIBGCRYPT_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
+ EXECUTE_PROCESS(COMMAND sh ${LIBGCRYPTCONFIG_EXECUTABLE} --version RESULT_VARIABLE _return_VALUEVersion OUTPUT_VARIABLE LIBGCRYPT_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+ IF(NOT LIBGCRYPT_CFLAGS AND NOT _return_VALUE)
+ SET(LIBGCRYPT_CFLAGS " ")
+ ENDIF(NOT LIBGCRYPT_CFLAGS AND NOT _return_VALUE)
+
+ IF(LIBGCRYPT_LIBRARIES AND LIBGCRYPT_CFLAGS)
+ SET(LIBGCRYPT_FOUND TRUE)
+ ENDIF(LIBGCRYPT_LIBRARIES AND LIBGCRYPT_CFLAGS)
+
+ if(LIBGCRYPT_VERSION VERSION_LESS ${LibGcrypt_FIND_VERSION})
+ message(WARNING "libgcrypt found but version is less than required, Found ${LIBGCRYPT_VERSION} Required ${LibGcrypt_FIND_VERSION}")
+ SET(LIBGCRYPT_FOUND FALSE)
+ endif()
+
+ENDIF(LIBGCRYPTCONFIG_EXECUTABLE)
+
+if (LIBGCRYPT_FOUND)
+ if (NOT LibGcrypt_FIND_QUIETLY)
+ message(STATUS "Found libgcrypt: ${LIBGCRYPT_LIBRARIES}")
+ endif (NOT LibGcrypt_FIND_QUIETLY)
+else (LIBGCRYPT_FOUND)
+ if (LibGcrypt_FIND_REQUIRED)
+ message(WARNING "Could not find libgcrypt libraries")
+ endif (LibGcrypt_FIND_REQUIRED)
+endif (LIBGCRYPT_FOUND)
+
+MARK_AS_ADVANCED(LIBGCRYPT_CFLAGS LIBGCRYPT_LIBRARIES)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/api/KWallet/KF5WalletConfig.cmake.in new/kwallet-4.98.0/src/api/KWallet/KF5WalletConfig.cmake.in
--- old/kwallet-4.97.0/src/api/KWallet/KF5WalletConfig.cmake.in 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/api/KWallet/KF5WalletConfig.cmake.in 2014-03-29 08:12:43.000000000 +0100
@@ -5,6 +5,7 @@
find_dependency(Qt5Core @REQUIRED_QT_VERSION@)
+set(KWALLET_DBUS_INTERFACES_DIR "${PACKAGE_PREFIX_DIR}/@DBUS_INTERFACES_INSTALL_DIR@")
include("${CMAKE_CURRENT_LIST_DIR}/KF5WalletTargets.cmake")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/api/KWallet/kwallet.h new/kwallet-4.98.0/src/api/KWallet/kwallet.h
--- old/kwallet-4.97.0/src/api/KWallet/kwallet.h 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/api/KWallet/kwallet.h 2014-03-29 08:12:43.000000000 +0100
@@ -189,7 +189,7 @@
/**
* Request to the wallet service to change the password of
* the wallet @p name.
- * @param name The the wallet to change the password of.
+ * @param name The wallet to change the password of.
* @param w The window id to associate any dialogs with. You can pass
* 0 if you don't have a window the password dialog should
* associate with.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/CMakeLists.txt new/kwallet-4.98.0/src/runtime/kwalletd/CMakeLists.txt
--- old/kwallet-4.97.0/src/runtime/kwalletd/CMakeLists.txt 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/CMakeLists.txt 2014-03-29 08:12:43.000000000 +0100
@@ -102,4 +102,5 @@
install( FILES kwalletd5.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
install( FILES kwalletd.notifyrc DESTINATION ${DATA_INSTALL_DIR}/kwalletd )
+install( FILES kwallet-4.13.upd DESTINATION ${DATA_INSTALL_DIR}/kconf_update)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/Messages.sh new/kwallet-4.98.0/src/runtime/kwalletd/Messages.sh
--- old/kwallet-4.97.0/src/runtime/kwalletd/Messages.sh 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/Messages.sh 2014-03-29 08:12:43.000000000 +0100
@@ -1,3 +1,3 @@
#! /usr/bin/env bash
$EXTRACTRC `find . -name \*.ui` >> rc.cpp || exit 11
-$XGETTEXT `find . -name "*.cpp" -o -name "*.cc" | grep -v "/tests"` -o $podir/kwalletd.pot
+$XGETTEXT `find . -name "*.cpp" -o -name "*.cc" | grep -v "/tests"` -o $podir/kwalletd5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/backend/CMakeLists.txt new/kwallet-4.98.0/src/runtime/kwalletd/backend/CMakeLists.txt
--- old/kwallet-4.97.0/src/runtime/kwalletd/backend/CMakeLists.txt 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/backend/CMakeLists.txt 2014-03-29 08:12:43.000000000 +0100
@@ -41,7 +41,7 @@
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KWALLETBACKEND SOVERSION 5)
-target_link_libraries(kwalletbackend5 Qt5::Widgets KF5::WidgetsAddons KF5::CoreAddons KF5::Notifications KF5::I18n)
+target_link_libraries(kwalletbackend5 Qt5::Widgets KF5::WidgetsAddons KF5::CoreAddons KF5::Notifications KF5::I18n ${LIBGCRYPT_LIBRARIES})
if(QGPGME_FOUND)
target_link_libraries(kwalletbackend5 ${QGPGME_LIBRARIES} )
endif(QGPGME_FOUND)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/backend/backendpersisthandler.cpp new/kwallet-4.98.0/src/runtime/kwalletd/backend/backendpersisthandler.cpp
--- old/kwallet-4.97.0/src/runtime/kwalletd/backend/backendpersisthandler.cpp 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/backend/backendpersisthandler.cpp 2014-03-29 08:12:43.000000000 +0100
@@ -51,6 +51,7 @@
#define KWALLET_HASH_SHA1 0
#define KWALLET_HASH_MD5 1 // unsupported
+#define KWALLET_HASH_PBKDF2_SHA512 2 // used when using kwallet with pam or since 4.13 version
namespace KWallet {
@@ -169,7 +170,7 @@
BackendPersistHandler *BackendPersistHandler::getPersistHandler(char magicBuf[12])
{
if (magicBuf[2] == KWALLET_CIPHER_BLOWFISH_CBC &&
- magicBuf[3] == KWALLET_HASH_SHA1) {
+ (magicBuf[3] == KWALLET_HASH_SHA1 || magicBuf[3] == KWALLET_HASH_PBKDF2_SHA512)) {
if (0 == blowfishHandler)
blowfishHandler = new BlowfishPersistHandler;
return blowfishHandler;
@@ -190,7 +191,12 @@
assert(wb->_cipherType == BACKEND_CIPHER_BLOWFISH);
version[2] = KWALLET_CIPHER_BLOWFISH_CBC;
- version[3] = KWALLET_HASH_SHA1;
+ if(!wb->_useNewHash) {
+ version[3] = KWALLET_HASH_SHA1;
+ } else {
+ version[3] = KWALLET_HASH_PBKDF2_SHA512;//Since 4.13 we always use PBKDF2_SHA512
+ }
+
if (sf.write(version) != 4) {
sf.cancelWriting();
return -4; // write error
@@ -497,14 +503,14 @@
qDebug() << "initGpgME returned " << err.code();
KMessageBox::errorWId( w, i18n("<qt>Error when attempting to initialize OpenPGP while attempting to save the wallet <b>%1</b>. Error code is <b>%2</b>. Please fix your system configuration, then try again!</qt>", Qt::escape(wb->_name), err.code()));
sf.cancelWriting();
- return -1;
+ return -5;
}
boost::shared_ptr< GpgME::Context > ctx( GpgME::Context::createForProtocol(GpgME::OpenPGP) );
if (0 == ctx) {
qDebug() << "Cannot setup OpenPGP context!";
KMessageBox::errorWId(w, i18n("<qt>Error when attempting to initialize OpenPGP while attempting to save the wallet <b>%1</b>. Please fix your system configuration, then try again!</qt>"), Qt::escape(wb->_name));
- return -1;
+ return -6;
}
assert(wb->_cipherType == BACKEND_CIPHER_GPG);
@@ -558,7 +564,7 @@
Qt::escape(wb->_name), gpgerr, gpgme_strerror(gpgerr)));
qDebug() << "GpgME encryption error: " << res.error().code();
sf.cancelWriting();
- return -1;
+ return -7;
}
char buffer[4096];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/backend/kwalletbackend.cc new/kwallet-4.98.0/src/runtime/kwalletd/backend/kwalletbackend.cc
--- old/kwallet-4.97.0/src/runtime/kwalletd/backend/kwalletbackend.cc 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/backend/kwalletbackend.cc 2014-03-29 08:12:43.000000000 +0100
@@ -23,10 +23,10 @@
#include <stdlib.h>
#include <QSaveFile>
-//#include <kstandarddirs.h>
#ifdef HAVE_QGPGME
#include <gpgme++/key.h>
#endif
+#include <gcrypt.h>
#include <KNotification>
#include <KLocalizedString>
@@ -52,8 +52,7 @@
#endif
#define KWALLET_VERSION_MAJOR 0
-#define KWALLET_VERSION_MINOR 0
-
+#define KWALLET_VERSION_MINOR 1
using namespace KWallet;
@@ -68,7 +67,12 @@
// KGlobal::dirs()->addResourceType("kwallet", 0, "share/apps/kwallet");
// }
-Backend::Backend(const QString& name, bool isPath) : d(0), _name(name), _ref(0), _cipherType(KWallet::BACKEND_CIPHER_UNKNOWN) {
+Backend::Backend(const QString& name, bool isPath)
+ : d(0),
+ _name(name),
+ _useNewHash(false),
+ _ref(0),
+ _cipherType(KWallet::BACKEND_CIPHER_UNKNOWN) {
// initKWalletDir();
if (isPath) {
_path = name;
@@ -109,6 +113,34 @@
_cipherType = ct;
}
+static int password2PBKDF2_SHA512(const QByteArray &password, QByteArray& hash, const QByteArray &salt)
+{
+ if (!gcry_check_version("1.5.0")) {
+ printf("libcrypt version is too old \n");
+ return GPG_ERR_USER_2;
+ }
+
+ gcry_error_t error;
+ bool static gcry_secmem_init = false;
+ if (!gcry_secmem_init) {
+ error = gcry_control(GCRYCTL_INIT_SECMEM, 32768, 0);
+ if (error != 0) {
+ qWarning() << "Can't get secure memory:" << error;
+ return error;
+ }
+ gcry_secmem_init = true;
+ }
+
+ gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0);
+
+ error = gcry_kdf_derive(password.constData(), password.size(),
+ GCRY_KDF_PBKDF2, GCRY_MD_SHA512,
+ salt.data(), salt.size(),
+ PBKDF2_SHA512_ITERATIONS, PBKDF2_SHA512_KEYSIZE, hash.data());
+
+ return error;
+}
+
// this should be SHA-512 for release probably
static int password2hash(const QByteArray& password, QByteArray& hash) {
SHA1 sha;
@@ -279,6 +311,9 @@
}
_passhash = passwordHash;
+ _newPassHash = passwordHash;
+ _useNewHash = true;//Only new hash is supported
+
return openInternal();
}
@@ -294,10 +329,8 @@
}
newfile.close();
_open = true;
- if (sync(w)) {
+ if (sync(w) != 0) {
return -2;
- } else {
- return 1; // new file opened, but OK
}
}
@@ -320,9 +353,14 @@
return -4; // unknown version
}
- if (magicBuf[1] != KWALLET_VERSION_MINOR) {
- return -4; // unknown version
- }
+ //0 has been the MINOR version until 4.13, from that point we use it to upgrade the hash
+ if (magicBuf[1] == 1) {
+ qDebug() << "Wallet new enough, using new hash";
+ swapToNewHash();
+ } else if (magicBuf[1] != 0){
+ qDebug() << "Wallet is old, sad panda :(";
+ return -4; // unknown version
+ }
BackendPersistHandler *phandler = BackendPersistHandler::getPersistHandler(magicBuf);
if (0 == phandler){
@@ -331,6 +369,38 @@
return phandler->read(this, db, w);
}
+void Backend::swapToNewHash()
+{
+ //Runtime error happened and we can't use the new hash
+ if (!_useNewHash) {
+ qDebug() << "Runtime error on the new hash";
+ return;
+ }
+ _passhash.fill(0);//Making sure the old passhash is not around in memory
+ _passhash = _newPassHash;//Use the new hash, means the wallet is modern enough
+}
+
+QByteArray Backend::createAndSaveSalt(const QString& path) const
+{
+ QFile saltFile(path);
+ saltFile.remove();
+
+ if (!saltFile.open(QIODevice::WriteOnly)) {
+ return QByteArray();
+ }
+
+ char *randomData = (char*) gcry_random_bytes(PBKDF2_SHA512_SALTSIZE, GCRY_STRONG_RANDOM);
+ QByteArray salt(randomData, PBKDF2_SHA512_SALTSIZE);
+ free(randomData);
+
+ if (saltFile.write(salt) != PBKDF2_SHA512_SALTSIZE) {
+ return QByteArray();
+ }
+
+ saltFile.close();
+
+ return salt;
+}
int Backend::sync(WId w) {
if (!_open) {
@@ -352,7 +422,14 @@
// Write the version number
QByteArray version(4, 0);
version[0] = KWALLET_VERSION_MAJOR;
- version[1] = KWALLET_VERSION_MINOR;
+ if (_useNewHash) {
+ version[1] = KWALLET_VERSION_MINOR;
+ //Use the sync to update the hash to PBKDF2_SHA512
+ swapToNewHash();
+ } else {
+ version[1] = 0; //was KWALLET_VERSION_MINOR before the new hash
+ }
+
BackendPersistHandler *phandler = BackendPersistHandler::getPersistHandler(_cipherType);
if (0 == phandler) {
@@ -389,6 +466,7 @@
// empty the password hash
_passhash.fill(0);
+ _newPassHash.fill(0);
_open = false;
@@ -593,7 +671,27 @@
BlowFish _bf;
CipherBlockChain bf(&_bf);
_passhash.resize(bf.keyLen()/8);
+ _newPassHash.resize(bf.keyLen()/8);
+ _newPassHash.fill(0);
+
password2hash(password, _passhash);
+
+ QByteArray salt;
+ QFile saltFile(getSaveLocation() + QDir::separator() + _name + ".salt");
+ if (!saltFile.exists() || saltFile.size() == 0) {
+ salt = createAndSaveSalt(saltFile.fileName());
+ } else {
+ if (!saltFile.open(QIODevice::ReadOnly)) {
+ salt = createAndSaveSalt(saltFile.fileName());
+ } else {
+ salt = saltFile.readAll();
+ }
+ }
+
+ if (!salt.isEmpty() && password2PBKDF2_SHA512(password, _newPassHash, salt) == 0) {
+ qDebug() << "Setting useNewHash to true";
+ _useNewHash = true;
+ }
}
#ifdef HAVE_QGPGME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/backend/kwalletbackend.h new/kwallet-4.98.0/src/runtime/kwalletd/backend/kwalletbackend.h
--- old/kwallet-4.97.0/src/runtime/kwalletd/backend/kwalletbackend.h 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/backend/kwalletbackend.h 2014-03-29 08:12:43.000000000 +0100
@@ -33,6 +33,10 @@
#include <gpgme++/key.h>
#endif // HAVE_QGPGME
+#define PBKDF2_SHA512_KEYSIZE 56
+#define PBKDF2_SHA512_SALTSIZE 56
+#define PBKDF2_SHA512_ITERATIONS 50000
+
namespace KWallet {
/**
@@ -169,6 +173,7 @@
QString _name;
QString _path;
bool _open;
+ bool _useNewHash;
QString _folder;
int _ref;
// Map Folder->Entries
@@ -178,6 +183,7 @@
typedef QMap<MD5Digest, QList<MD5Digest> > HashMap;
HashMap _hashes;
QByteArray _passhash; // password hash used for saving the wallet
+ QByteArray _newPassHash; //Modern hash using KWALLET_HASH_PBKDF2_SHA512
BackendCipherType _cipherType; // the kind of encryption used for this wallet
#ifdef HAVE_QGPGME
GpgME::Key _gpgKey;
@@ -188,6 +194,8 @@
// open the wallet with the password already set. This is
// called internally by both open and openPreHashed.
int openInternal(WId w=0);
+ void swapToNewHash();
+ QByteArray createAndSaveSalt(const QString &path) const;
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kbetterthankdialog.cpp new/kwallet-4.98.0/src/runtime/kwalletd/kbetterthankdialog.cpp
--- old/kwallet-4.97.0/src/runtime/kwalletd/kbetterthankdialog.cpp 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kbetterthankdialog.cpp 2014-03-29 08:12:43.000000000 +0100
@@ -1,19 +1,18 @@
/* This file is part of the KDE libraries
Copyright (C) 2004 George Staikos <staikos(a)kde.org>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#include "kbetterthankdialog.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kbetterthankdialog.h new/kwallet-4.98.0/src/runtime/kwalletd/kbetterthankdialog.h
--- old/kwallet-4.97.0/src/runtime/kwalletd/kbetterthankdialog.h 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kbetterthankdialog.h 2014-03-29 08:12:43.000000000 +0100
@@ -1,19 +1,18 @@
/* This file is part of the KDE libraries
Copyright (C) 2004 George Staikos <staikos(a)kde.org>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef KBETTERTHANKDIALOG_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/knewwalletdialog.cpp new/kwallet-4.98.0/src/runtime/kwalletd/knewwalletdialog.cpp
--- old/kwallet-4.97.0/src/runtime/kwalletd/knewwalletdialog.cpp 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/knewwalletdialog.cpp 2014-03-29 08:12:43.000000000 +0100
@@ -143,7 +143,7 @@
GpgME::Key k = _ctx->nextKey(err);
if (err)
break;
- if (!k.isInvalid() && k.canEncrypt()) {
+ if (!k.isInvalid() && k.canEncrypt() && (k.ownerTrust() == GpgME::Key::Ultimate)) {
keys.push_back(k);
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/knewwalletdialoggpg.ui new/kwallet-4.98.0/src/runtime/kwalletd/knewwalletdialoggpg.ui
--- old/kwallet-4.97.0/src/runtime/kwalletd/knewwalletdialoggpg.ui 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/knewwalletdialoggpg.ui 2014-03-29 08:12:43.000000000 +0100
@@ -19,6 +19,13 @@
</widget>
</item>
<item>
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string><html><head/><body><p><span style=" font-weight:600;">NOTE:</span> this list shows only &quot;ultimate-level&quot; trusted keys</p></body></html></string>
+ </property>
+ </widget>
+ </item>
+ <item>
<widget class="QTableWidget" name="listCertificates">
<property name="showDropIndicator" stdset="0">
<bool>false</bool>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kwallet-4.13.upd new/kwallet-4.98.0/src/runtime/kwalletd/kwallet-4.13.upd
--- old/kwallet-4.97.0/src/runtime/kwalletd/kwallet-4.13.upd 1970-01-01 01:00:00.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kwallet-4.13.upd 2014-03-29 08:12:43.000000000 +0100
@@ -0,0 +1,5 @@
+# We changed the default in 4.13
+Id=kde4.13
+File=kwalletrc
+Group=Wallet
+RemoveKey=Launch Manager
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kwalletd.cpp new/kwallet-4.98.0/src/runtime/kwalletd/kwalletd.cpp
--- old/kwallet-4.97.0/src/runtime/kwalletd/kwalletd.cpp 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kwalletd.cpp 2014-03-29 08:12:43.000000000 +0100
@@ -33,6 +33,7 @@
#include <ktoolinvocation.h>
#include <kconfig.h>
+#include <ksharedconfig.h>
#include <kconfiggroup.h>
#include <kdirwatch.h>
#include <kmessagebox.h>
@@ -1453,7 +1454,7 @@
KConfigGroup walletGroup(&cfg, "Wallet");
_firstUse = walletGroup.readEntry("First Use", true);
_enabled = walletGroup.readEntry("Enabled", true);
- _launchManager = walletGroup.readEntry("Launch Manager", true);
+ _launchManager = walletGroup.readEntry("Launch Manager", false);
_leaveOpen = walletGroup.readEntry("Leave Open", false);
bool idleSave = _closeIdle;
_closeIdle = walletGroup.readEntry("Close When Idle", false);
@@ -1619,50 +1620,59 @@
int KWalletD::pamOpen(const QString &wallet, const QByteArray &passwordHash, int sessionTimeout)
{
- // don't do anything if transactions are already being processed!
- if (_processing) {
- return -1;
- }
-
- // check if the wallet is already open
- QPair<int, KWallet::Backend*> walletInfo = findWallet(wallet);
- int rc = walletInfo.first;
- if (rc == -1) {
- if (_wallets.count() > 20) {
- qDebug() << "Too many wallets open.";
- return -1;
- }
-
- if (!QRegExp("^[\\w\\^\\&\\'\\(a)\\{\\}\\[\\]\\,\\$\\=\\!\\-\\#\\(\\)\\%\\.\\+\\_\\s]+$").exactMatch(wallet) ||
- !KWallet::Backend::exists(wallet)) {
- return -1;
- }
-
- KWallet::Backend *b = new KWallet::Backend(wallet);
- int openrc = b->openPreHashed(passwordHash);
- if (openrc == 0 && b->isOpen()) {
- // opening the wallet was successful
- int handle = generateHandle();
- _wallets.insert(handle, b);
- _syncTimers.addTimer(handle, _syncTime);
-
- // don't reference the wallet or add a session so it
- // can be reclosed easily.
-
- if (sessionTimeout > 0) {
- _closeTimers.addTimer(handle, sessionTimeout);
- } else if (_closeIdle) {
- _closeTimers.addTimer(handle, _idleTime);
- }
- emit walletOpened(wallet);
- if (_wallets.count() == 1 && _launchManager) {
- KToolInvocation::startServiceByDesktopName("kwalletmanager-kwalletd");
- }
- return handle;
- }
- }
+ if (_processing) {
+ return -1;
+ }
+
+ if (!QRegExp("^[\\w\\^\\&\\'\\(a)\\{\\}\\[\\]\\,\\$\\=\\!\\-\\#\\(\\)\\%\\.\\+\\_\\s]+$").exactMatch(wallet)) {
+ return -1;
+ }
+
+ // check if the wallet is already open
+ QPair<int, KWallet::Backend*> walletInfo = findWallet(wallet);
+ int rc = walletInfo.first;
+ if (rc != -1) {
+ return rc;//Wallet already opened, return handle
+ }
+
+ KWallet::Backend *b = 0;
+ //If the wallet we want to open does not exists. create it and set pam hash
+ if (!wallets().contains(wallet)) {
+ b = new KWallet::Backend(wallet);
+ b->setCipherType(KWallet::BACKEND_CIPHER_BLOWFISH);
+ } else {
+ b = new KWallet::Backend(wallet);
+ }
+
+ if (_wallets.count() > 20) {
+ return -1;
+ }
+
+ int openrc = b->openPreHashed(passwordHash);
+ if (openrc != 0 || !b->isOpen()) {
+ return -1;
+ }
+
+ // opening the wallet was successful
+ int handle = generateHandle();
+ _wallets.insert(handle, b);
+ _syncTimers.addTimer(handle, _syncTime);
+
+ // don't reference the wallet or add a session so it
+ // can be reclosed easily.
+
+ if (sessionTimeout > 0) {
+ _closeTimers.addTimer(handle, sessionTimeout);
+ } else if (_closeIdle) {
+ _closeTimers.addTimer(handle, _idleTime);
+ }
+ emit walletOpened(wallet);
+
+ if (_wallets.count() == 1 && _launchManager) {
+ KToolInvocation::startServiceByDesktopName("kwalletmanager-kwalletd");
+ }
- return -1;
+ return handle;
}
#include "kwalletd.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kwalletd.notifyrc new/kwallet-4.98.0/src/runtime/kwalletd/kwalletd.notifyrc
--- old/kwallet-4.97.0/src/runtime/kwalletd/kwalletd.notifyrc 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kwalletd.notifyrc 2014-03-29 08:12:43.000000000 +0100
@@ -306,15 +306,18 @@
Name[hu]=A szinkronizálás meghiúsult
Name[ia]=Il falleva synchronisar
Name[kk]=Қадамдастыру жаңылды
+Name[ko]=동기화 실패
Name[lt]=Sinchronizavimas nepavyko
Name[nb]=Synkronisering mislyktes
Name[nds]=Synkroniseren is fehlslaan
Name[nl]=Synchronisatie mislukt
Name[nn]=Feil ved synkronisering
+Name[pa]=ਸਿੰਕ ਫੇਲ੍ਹ ਹੈ
Name[pl]=Nieudana synchronizacja
Name[pt]=A Sincronização Falhou
Name[pt_BR]=Falha na sincronização
Name[ro]=Sincronizare eșuată
+Name[ru]=Ошибка синхронизации бумажника
Name[sk]=Synchronizácia zlyhala
Name[sl]=Uskladitev spodletela
Name[sr]=Синхронизација пропала
@@ -342,14 +345,17 @@
Comment[hu]=A KDE jelszókezelő rendszer nem tudta szinkronizálni a jelszófájlt a lemezre
Comment[ia]=Le sistema de portafolio de KDE (KDE Wallet System) falleva synchronisar un file de portafolio con le disco
Comment[kk]=KDE әмиян жүйесінің дискідегі әмиян файлымен қадамдастыру жаңылысы
+Comment[ko]=KDE 지갑 시스템에서 지갑 파일을 디스크에 동기화할 수 없음
Comment[nb]=KDE Wallet System klarte ikke å synkronisere en lommebokfil til disk
Comment[nds]=Binnen KDE sien Knippsystem lett sik en Knipp nich mit de Datei op de Fastplaat synkroniseren
Comment[nl]=Het lukte het KDE portefeuillesysteem niet om een portefeuillebestand naar schijf te synchroniseren
Comment[nn]=Lommeboktenesta klarte ikkje synkronisera lommebokfila til disken
+Comment[pa]=ਕੇਡੀਈ ਵਾਲਿਟ ਸਿਸਟਮ ਵਾਲਿਟ ਫਾਇਲ ਨੂੰ ਡਿਸਕ ਉੱਤੇ ਸਿੰਕ ਕਰਨ ਲਈ ਫੇਲ੍ਹ ਹੈ
Comment[pl]=Synchronizacja pliku portfela na dysku przez System portfela KDE zakończyła się niepowodzeniem
Comment[pt]=O sistema da Carteira do KDE não conseguiu sincronizar um ficheiro da carteira para o disco
Comment[pt_BR]=O Sistema da Carteiras do KDE não conseguiu sincronizar um arquivo de carteira com o disco
Comment[ro]=Sistemul de portofele KDE nu a putut sincroniza fișierul unui portofel cu discul
+Comment[ru]=Не удалось сохранить бумажник в соответствующий ему файл на диске
Comment[sk]=Systému KDE peňaženky sa nepodarilo synchronizovať súbor peňaženky na disk
Comment[sl]=Sistem listnic za KDE ni uspel uskladiti datoteke z listnico na disku
Comment[sr]=К‑новчаник не може да синхронизује фајл новчаника на диск
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kwalletwizard.cpp new/kwallet-4.98.0/src/runtime/kwalletd/kwalletwizard.cpp
--- old/kwallet-4.97.0/src/runtime/kwalletd/kwalletwizard.cpp 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kwalletwizard.cpp 2014-03-29 08:12:43.000000000 +0100
@@ -1,19 +1,18 @@
/* This file is part of the KDE libraries
Copyright (C) 2004 George Staikos <staikos(a)kde.org>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#include "kwalletwizard.h"
@@ -172,7 +171,7 @@
GpgME::Key k = ctx->nextKey(err);
if (err)
break;
- if (!k.isInvalid() && k.canEncrypt()) {
+ if (!k.isInvalid() && k.canEncrypt() && (k.ownerTrust() == GpgME::Key::Ultimate)) {
keys.push_back(k);
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kwalletwizard.h new/kwallet-4.98.0/src/runtime/kwalletd/kwalletwizard.h
--- old/kwallet-4.97.0/src/runtime/kwalletd/kwalletwizard.h 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kwalletwizard.h 2014-03-29 08:12:43.000000000 +0100
@@ -1,19 +1,18 @@
/* This file is part of the KDE libraries
Copyright (C) 2004 George Staikos <staikos(a)kde.org>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef KWALLETWIZARD_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/src/runtime/kwalletd/kwalletwizardpagegpgkey.ui new/kwallet-4.98.0/src/runtime/kwalletd/kwalletwizardpagegpgkey.ui
--- old/kwallet-4.97.0/src/runtime/kwalletd/kwalletwizardpagegpgkey.ui 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/src/runtime/kwalletd/kwalletwizardpagegpgkey.ui 2014-03-29 08:12:43.000000000 +0100
@@ -21,7 +21,10 @@
<item>
<widget class="QLabel" name="label_3">
<property name="text">
- <string><html><head/><body><p>The GPG-based wallet use a GPG encryption key to securely encrypt data on disk. The key must be available when decrypting is needed or your wallet will not be accessible. For example, if you choose a SmartCard-based encryption key, the GPG system will prompt you to enter it and its associated PIN when attempting to open the wallet.</p></body></html></string>
+ <string><html><head/><body><p>The GPG-based wallet use a GPG encryption key to securely encrypt data on disk. The key must be available when decrypting is needed or your wallet will not be accessible. For example, if you choose a SmartCard-based encryption key, the GPG system will prompt you to enter it and its associated PIN when attempting to open the wallet. <span style=" font-weight:600;">NOTE:</span> this list contains only &quot;ultimate-level&quot; trusted keys.</p></body></html></string>
+ </property>
+ <property name="textFormat">
+ <enum>Qt::AutoText</enum>
</property>
<property name="wordWrap">
<bool>true</bool>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwallet-4.97.0/tests/kwalletd/CMakeLists.txt new/kwallet-4.98.0/tests/kwalletd/CMakeLists.txt
--- old/kwallet-4.97.0/tests/kwalletd/CMakeLists.txt 2014-03-01 12:51:44.000000000 +0100
+++ new/kwallet-4.98.0/tests/kwalletd/CMakeLists.txt 2014-03-29 08:12:43.000000000 +0100
@@ -28,7 +28,7 @@
)
if (QGPGME_FOUND)
- kde4_add_ui_files(kwalletwizardtest_SRCS
+ qt5_wrap_ui(kwalletwizardtest_SRCS
../../src/runtime/kwalletd/kwalletwizardpagepasswordgpg.ui)
endif(QGPGME_FOUND)
--
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 kunitconversion for openSUSE:Factory checked in at 2014-04-02 17:22:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kunitconversion (Old)
and /work/SRC/openSUSE:Factory/.kunitconversion.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kunitconversion"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kunitconversion/kunitconversion.changes 2014-03-10 12:17:48.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kunitconversion.new/kunitconversion.changes 2014-04-02 17:22:39.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:52 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kunitconversion-4.97.0.tar.xz
New:
----
kunitconversion-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kunitconversion.spec ++++++
--- /var/tmp/diff_new_pack.uhaTcb/_old 2014-04-02 17:22:40.000000000 +0200
+++ /var/tmp/diff_new_pack.uhaTcb/_new 2014-04-02 17:22:40.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5UnitConversion5
Name: kunitconversion
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfig-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kunitconversion-4.97.0.tar.xz -> kunitconversion-4.98.0.tar.xz ++++++
++++ 10068 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 ktextwidgets for openSUSE:Factory checked in at 2014-04-02 17:22:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ktextwidgets (Old)
and /work/SRC/openSUSE:Factory/.ktextwidgets.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ktextwidgets"
Changes:
--------
--- /work/SRC/openSUSE:Factory/ktextwidgets/ktextwidgets.changes 2014-03-10 12:18:17.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ktextwidgets.new/ktextwidgets.changes 2014-04-02 17:22:38.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:52 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
ktextwidgets-4.97.0.tar.xz
New:
----
ktextwidgets-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ktextwidgets.spec ++++++
--- /var/tmp/diff_new_pack.ioZXoX/_old 2014-04-02 17:22:39.000000000 +0200
+++ /var/tmp/diff_new_pack.ioZXoX/_new 2014-04-02 17:22:39.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5TextWidgets5
Name: ktextwidgets
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcompletion-devel >= %{_kf5_version}
BuildRequires: kconfig-devel >= %{_kf5_version}
++++++ ktextwidgets-4.97.0.tar.xz -> ktextwidgets-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ktextwidgets-4.97.0/CMakeLists.txt new/ktextwidgets-4.98.0/CMakeLists.txt
--- old/ktextwidgets-4.97.0/CMakeLists.txt 2014-03-01 12:51:40.000000000 +0100
+++ new/ktextwidgets-4.98.0/CMakeLists.txt 2014-03-28 19:17:34.000000000 +0100
@@ -3,7 +3,7 @@
project(KTextWidgets)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(KDEInstallDirs)
@@ -15,7 +15,7 @@
include(ECMGenerateHeaders)
include(ECMPackageConfigHelpers)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION}
VARIABLE_PREFIX KTEXTWIDGETS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ktextwidgets-4.97.0/src/Messages.sh new/ktextwidgets-4.98.0/src/Messages.sh
--- old/ktextwidgets-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/ktextwidgets-4.98.0/src/Messages.sh 2014-03-28 19:17:34.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/ktextwidgets5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ktextwidgets-4.97.0/src/findreplace/kfind.h new/ktextwidgets-4.98.0/src/findreplace/kfind.h
--- old/ktextwidgets-4.97.0/src/findreplace/kfind.h 2014-03-01 12:51:40.000000000 +0100
+++ new/ktextwidgets-4.98.0/src/findreplace/kfind.h 2014-03-28 19:17:34.000000000 +0100
@@ -59,8 +59,8 @@
* this, SLOT( slotFindNext() ) );
* \endcode
*
- * If you are using a non-modal find dialog (the recommended new way
- * in KDE-3.2), you should call right away m_find->closeFindNextDialog().
+ * If you are using a non-modal find dialog (recommended),
+ * you should call right away m_find->closeFindNextDialog().
*
* Then initialize the variables determining the "current position"
* (to the cursor, if the option FromCursor is set,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ktextwidgets-4.97.0/src/kregexpeditor/kregexpeditorinterface.h new/ktextwidgets-4.98.0/src/kregexpeditor/kregexpeditorinterface.h
--- old/ktextwidgets-4.97.0/src/kregexpeditor/kregexpeditorinterface.h 2014-03-01 12:51:40.000000000 +0100
+++ new/ktextwidgets-4.98.0/src/kregexpeditor/kregexpeditorinterface.h 2014-03-28 19:17:34.000000000 +0100
@@ -148,13 +148,7 @@
* This method allows for future changes that will not break binary
* compatibility. DO NOT USE!
*
- * KDE has a policy of keeping binary compatibility for all major
- * version of KDE. This means that new methods can not be added to this
- * API before KDE version 4.0.
- *
- * This method is an escape door for that.
- *
- * Conclusion: You should not use this method in this version of KDE!
+ * See http://techbase.kde.org/Policies/Binary_Compatibility_Issues_With_C++
*/
virtual void doSomething(const QString& method, void *arguments) = 0;
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ktextwidgets-4.97.0/src/widgets/ktextedit.cpp new/ktextwidgets-4.98.0/src/widgets/ktextedit.cpp
--- old/ktextwidgets-4.97.0/src/widgets/ktextedit.cpp 2014-03-01 12:51:40.000000000 +0100
+++ new/ktextwidgets-4.98.0/src/widgets/ktextedit.cpp 2014-03-28 19:17:34.000000000 +0100
@@ -80,14 +80,6 @@
KConfig sonnetKConfig(QLatin1String("sonnetrc"));
KConfigGroup group(&sonnetKConfig, "Spelling");
checkSpellingEnabled = group.readEntry("checkerEnabledByDefault", false);
-
- // i18n: Placeholder text in text edit widgets is the text appearing
- // before any user input, briefly explaining to the user what to type
- // (e.g. "Enter message").
- // By default the text is set in italic, which may not be appropriate
- // for some languages and scripts (e.g. for CJK ideographs).
- QString metaMsg = i18nc("Italic placeholder text in line edits: 0 no, 1 yes", "1");
- italicizePlaceholder = (metaMsg.trimmed() != QString(QLatin1Char('0')));
}
~Private()
@@ -129,8 +121,6 @@
void slotAllowTab();
void menuActivated(QAction *action);
- QRect clickMessageRect() const;
-
void init();
void checkSpelling(bool force);
@@ -138,8 +128,6 @@
QAction *autoSpellCheckAction;
QAction *allowTab;
QAction *spellCheckAction;
- QString clickMessage;
- bool italicizePlaceholder : 1;
bool customPalette : 1;
bool checkSpellingEnabled : 1;
@@ -303,13 +291,6 @@
lastReplacedPosition = replacementIndex;
}
-QRect KTextEdit::Private::clickMessageRect() const
-{
- int margin = int(parent->document()->documentMargin());
- QRect rect = parent->viewport()->rect().adjusted(margin, margin, -margin, -margin);
- return parent->fontMetrics().boundingRect(rect, Qt::AlignTop | Qt::TextWordWrap, clickMessage);
-}
-
void KTextEdit::Private::init()
{
KCursor::setAutoHideCursor(parent, true, false);
@@ -1004,49 +985,6 @@
}
}
-void KTextEdit::setClickMessage(const QString &msg)
-{
- if (msg != d->clickMessage) {
- if (!d->clickMessage.isEmpty()) {
- viewport()->update(d->clickMessageRect());
- }
- d->clickMessage = msg;
- if (!d->clickMessage.isEmpty()) {
- viewport()->update(d->clickMessageRect());
- }
- }
-}
-
-QString KTextEdit::clickMessage() const
-{
- return d->clickMessage;
-}
-
-void KTextEdit::paintEvent(QPaintEvent *ev)
-{
- QTextEdit::paintEvent(ev);
-
- if (!d->clickMessage.isEmpty() && document()->isEmpty()) {
- QPainter p(viewport());
-
- QFont f = font();
- f.setItalic(d->italicizePlaceholder);
- p.setFont(f);
-
- QColor color(palette().color(viewport()->foregroundRole()));
- color.setAlphaF(0.5);
- p.setPen(color);
-
- QRect cr = d->clickMessageRect();
- p.drawText(cr, Qt::AlignTop | Qt::TextWordWrap, d->clickMessage);
- }
-}
-
-void KTextEdit::focusOutEvent(QFocusEvent *ev)
-{
- QTextEdit::focusOutEvent(ev);
-}
-
void KTextEdit::showAutoCorrectButton(bool show)
{
d->showAutoCorrectionButton = show;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ktextwidgets-4.97.0/src/widgets/ktextedit.h new/ktextwidgets-4.98.0/src/widgets/ktextedit.h
--- old/ktextwidgets-4.97.0/src/widgets/ktextedit.h 2014-03-01 12:51:40.000000000 +0100
+++ new/ktextwidgets-4.98.0/src/widgets/ktextedit.h 2014-03-28 19:17:34.000000000 +0100
@@ -48,7 +48,9 @@
class KTEXTWIDGETS_EXPORT KTextEdit : public QTextEdit //krazy:exclude=qclasses
{
Q_OBJECT
+ #ifndef KTEXTWIDGETS_NO_DEPRECATED
Q_PROPERTY(QString clickMessage READ clickMessage WRITE setClickMessage)
+ #endif
Q_PROPERTY(bool checkSpellingEnabled READ checkSpellingEnabled WRITE setCheckSpellingEnabled)
Q_PROPERTY(QString spellCheckingLanguage READ spellCheckingLanguage WRITE setSpellCheckingLanguage)
@@ -186,15 +188,19 @@
* This makes the text edit display a grayed-out hinting text as long as
* the user didn't enter any text. It is often used as indication about
* the purpose of the text edit.
- * @since 4.4
+ * @deprecated since 5.0, use QTextEdit::setPlaceholderText instead
*/
- void setClickMessage(const QString &msg);
+#ifndef KTEXTWIDGETS_NO_DEPRECATED
+ inline KTEXTWIDGETS_DEPRECATED void setClickMessage(const QString &msg) {setPlaceholderText(msg);}
+#endif
/**
* @return the message set with setClickMessage
- * @since 4.4
+ * @deprecated since 5.0, use QTextEdit::placeholderText instead
*/
- QString clickMessage() const;
+#ifndef KTEXTWIDGETS_NO_DEPRECATED
+ inline KTEXTWIDGETS_DEPRECATED QString clickMessage() const {return placeholderText();}
+#endif
/**
* @since 4.10
@@ -329,12 +335,6 @@
virtual bool event(QEvent *);
/**
- * Reimplemented to paint clickMessage.
- */
- virtual void paintEvent(QPaintEvent *);
- virtual void focusOutEvent(QFocusEvent *);
-
- /**
* Reimplemented for internal reasons
*/
virtual void keyPressEvent(QKeyEvent *);
--
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 kservice for openSUSE:Factory checked in at 2014-04-02 17:22:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kservice (Old)
and /work/SRC/openSUSE:Factory/.kservice.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kservice"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kservice/kservice.changes 2014-03-10 12:18:16.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kservice.new/kservice.changes 2014-04-02 17:22:36.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:51 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kservice-4.97.0.tar.xz
New:
----
kservice-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kservice.spec ++++++
--- /var/tmp/diff_new_pack.2Bs4k1/_old 2014-04-02 17:22:37.000000000 +0200
+++ /var/tmp/diff_new_pack.2Bs4k1/_new 2014-04-02 17:22:37.000000000 +0200
@@ -17,10 +17,10 @@
Name: kservice
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfig-devel >= %{_kf5_version}
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
++++++ kservice-4.97.0.tar.xz -> kservice-4.98.0.tar.xz ++++++
++++ 3408 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 kross for openSUSE:Factory checked in at 2014-04-02 17:22:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kross (Old)
and /work/SRC/openSUSE:Factory/.kross.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kross"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kross/kross.changes 2014-03-10 12:18:15.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kross.new/kross.changes 2014-04-02 17:22:34.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:49 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kross-4.97.0.tar.xz
New:
----
kross-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kross.spec ++++++
--- /var/tmp/diff_new_pack.CaPcMM/_old 2014-04-02 17:22:35.000000000 +0200
+++ /var/tmp/diff_new_pack.CaPcMM/_new 2014-04-02 17:22:35.000000000 +0200
@@ -17,10 +17,10 @@
Name: kross
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcompletion-devel >= %{_kf5_version}
BuildRequires: kdoctools-devel >= %{_kf5_version}
++++++ kross-4.97.0.tar.xz -> kross-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kross-4.97.0/CMakeLists.txt new/kross-4.98.0/CMakeLists.txt
--- old/kross-4.97.0/CMakeLists.txt 2014-03-01 12:51:33.000000000 +0100
+++ new/kross-4.98.0/CMakeLists.txt 2014-03-28 19:17:27.000000000 +0100
@@ -2,7 +2,7 @@
project(Kross)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -16,7 +16,7 @@
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KROSS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kross_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5KrossConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kross-4.97.0/docs/kross/man-kf5kross.1.docbook new/kross-4.98.0/docs/kross/man-kf5kross.1.docbook
--- old/kross-4.97.0/docs/kross/man-kf5kross.1.docbook 2014-03-01 12:51:33.000000000 +0100
+++ new/kross-4.98.0/docs/kross/man-kf5kross.1.docbook 2014-03-28 19:17:27.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE"><!-- change language only here -->
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kross-4.97.0/src/Messages.sh new/kross-4.98.0/src/Messages.sh
--- old/kross-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kross-4.98.0/src/Messages.sh 2014-03-28 19:17:27.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kross5.pot
--
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 kpty for openSUSE:Factory checked in at 2014-04-02 17:22:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kpty (Old)
and /work/SRC/openSUSE:Factory/.kpty.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kpty"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kpty/kpty.changes 2014-03-10 12:17:49.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kpty.new/kpty.changes 2014-04-02 17:22:33.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:49 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kpty-4.97.0.tar.xz
New:
----
kpty-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kpty.spec ++++++
--- /var/tmp/diff_new_pack.HxuzPT/_old 2014-04-02 17:22:34.000000000 +0200
+++ /var/tmp/diff_new_pack.HxuzPT/_new 2014-04-02 17:22:34.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Pty5
Name: kpty
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kpty-4.97.0.tar.xz -> kpty-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpty-4.97.0/CMakeLists.txt new/kpty-4.98.0/CMakeLists.txt
--- old/kpty-4.97.0/CMakeLists.txt 2014-03-01 12:51:31.000000000 +0100
+++ new/kpty-4.98.0/CMakeLists.txt 2014-03-28 19:17:25.000000000 +0100
@@ -2,11 +2,11 @@
project(KPty)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION 5.2)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
include(KDEInstallDirs)
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpty-4.97.0/autotests/kptyprocesstest.cpp new/kpty-4.98.0/autotests/kptyprocesstest.cpp
--- old/kpty-4.97.0/autotests/kptyprocesstest.cpp 2014-03-01 12:51:31.000000000 +0100
+++ new/kpty-4.98.0/autotests/kptyprocesstest.cpp 2014-03-28 19:17:25.000000000 +0100
@@ -75,12 +75,11 @@
p2.start();
// read the second processes greeting from the first process' pty
- QVERIFY(p.pty()->waitForReadyRead(1500));
for (int i = 0; i < 5; ++i) {
+ QVERIFY(p.pty()->waitForReadyRead(500));
if (p.pty()->canReadLine()) {
break;
}
- QThread::msleep(500);
}
QCOMPARE(p.pty()->readAll(), QByteArray("hello from me\r\n"));
@@ -89,12 +88,11 @@
QVERIFY(p2.pty()->waitForBytesWritten(1000));
// read the result back from the first process' pty
- QVERIFY(p.pty()->waitForReadyRead(1500));
for (int i = 0; i < 5; ++i) {
+ QVERIFY(p.pty()->waitForReadyRead(500));
if (p.pty()->canReadLine()) {
break;
}
- QThread::msleep(500);
}
QCOMPARE(p.pty()->readAll(), QByteArray("hello from process 2\r\n"));
@@ -103,12 +101,11 @@
QVERIFY(p.pty()->waitForBytesWritten(1000));
// read the result back from the second process' pty
- QVERIFY(p2.pty()->waitForReadyRead(1500));
for (int i = 0; i < 5; ++i) {
- if (p.pty()->canReadLine()) {
+ QVERIFY(p2.pty()->waitForReadyRead(500));
+ if (p2.pty()->canReadLine()) {
break;
}
- QThread::msleep(500);
}
QCOMPARE(p2.pty()->readAll(), QByteArray("hi from process 1\r\n"));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpty-4.97.0/src/Messages.sh new/kpty-4.98.0/src/Messages.sh
--- old/kpty-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kpty-4.98.0/src/Messages.sh 2014-03-28 19:17:25.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kpty5.pot
--
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 kplotting for openSUSE:Factory checked in at 2014-04-02 17:22:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kplotting (Old)
and /work/SRC/openSUSE:Factory/.kplotting.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kplotting"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kplotting/kplotting.changes 2014-03-10 12:17:33.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kplotting.new/kplotting.changes 2014-04-02 17:22:32.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:48 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kplotting-4.97.0.tar.xz
New:
----
kplotting-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kplotting.spec ++++++
--- /var/tmp/diff_new_pack.5qJOXk/_old 2014-04-02 17:22:33.000000000 +0200
+++ /var/tmp/diff_new_pack.5qJOXk/_new 2014-04-02 17:22:33.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Plotting5
Name: kplotting
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Test) >= 5.2.0
++++++ kplotting-4.97.0.tar.xz -> kplotting-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kplotting-4.97.0/CMakeLists.txt new/kplotting-4.98.0/CMakeLists.txt
--- old/kplotting-4.97.0/CMakeLists.txt 2014-03-01 12:51:27.000000000 +0100
+++ new/kplotting-4.98.0/CMakeLists.txt 2014-03-28 19:17:23.000000000 +0100
@@ -2,7 +2,7 @@
project(KPlotting)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -19,7 +19,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KPLOTTING
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kplotting_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kplotting-4.97.0/MAINTAINER new/kplotting-4.98.0/MAINTAINER
--- old/kplotting-4.97.0/MAINTAINER 2014-03-01 12:51:27.000000000 +0100
+++ new/kplotting-4.98.0/MAINTAINER 1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-
-Current kplotting maintainer is: Benjamin Port <benjamin.port(a)ben2367.fr>
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kplotting-4.97.0/src/kplotobject.h new/kplotting-4.98.0/src/kplotobject.h
--- old/kplotting-4.97.0/src/kplotobject.h 2014-03-01 12:51:27.000000000 +0100
+++ new/kplotting-4.98.0/src/kplotobject.h 2014-03-28 19:17:23.000000000 +0100
@@ -83,7 +83,7 @@
Hexagon = 6,
Asterisk = 7,
Star = 8,
- UnknwonPoint
+ UnknownPoint
};
/**
@@ -95,7 +95,7 @@
* @param size the size to use for plotted points, in pixels
* @param ps The PointStyle describing the shape for plotted points
*/
- explicit KPlotObject(const QColor &color = Qt::white, PlotType otype = Points, double size = 2, PointStyle ps = Circle);
+ explicit KPlotObject(const QColor &color = Qt::white, PlotType otype = Points, double size = 2.0, PointStyle ps = Circle);
/**
* Destructor.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kplotting-4.97.0/src/kplotwidget.h new/kplotting-4.98.0/src/kplotwidget.h
--- old/kplotting-4.97.0/src/kplotwidget.h 2014-03-01 12:51:27.000000000 +0100
+++ new/kplotting-4.98.0/src/kplotwidget.h 2014-03-28 19:17:23.000000000 +0100
@@ -370,7 +370,7 @@
* @param value Allows you to determine how strongly the rectangle
* should be avoided. Larger values are avoided more strongly.
*/
- void maskRect(const QRectF &r, float value = 1.0);
+ void maskRect(const QRectF &r, float value = 1.0f);
/**
* Indicate that object labels should try to avoid the line
@@ -383,7 +383,7 @@
* @param value Allows you to determine how strongly the line
* should be avoided. Larger values are avoided more strongly.
*/
- void maskAlongLine(const QPointF &p1, const QPointF &p2, float value = 1.0);
+ void maskAlongLine(const QPointF &p1, const QPointF &p2, float value = 1.0f);
/**
* Place an object label optimally in the plot. This function will
--
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 kparts for openSUSE:Factory checked in at 2014-04-02 17:22:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kparts (Old)
and /work/SRC/openSUSE:Factory/.kparts.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kparts"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kparts/kparts.changes 2014-03-10 12:18:13.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kparts.new/kparts.changes 2014-04-02 17:22:30.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:48 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kparts-4.97.0.tar.xz
New:
----
kparts-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kparts.spec ++++++
--- /var/tmp/diff_new_pack.pqMpmk/_old 2014-04-02 17:22:32.000000000 +0200
+++ /var/tmp/diff_new_pack.pqMpmk/_new 2014-04-02 17:22:32.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Parts5
Name: kparts
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kbookmarks-devel >= %{_kf5_version}
BuildRequires: kcompletion-devel >= %{_kf5_version}
++++++ kparts-4.97.0.tar.xz -> kparts-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/CMakeLists.txt new/kparts-4.98.0/CMakeLists.txt
--- old/kparts-4.97.0/CMakeLists.txt 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/CMakeLists.txt 2014-03-29 08:15:31.000000000 +0100
@@ -2,7 +2,7 @@
project(KParts)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -17,7 +17,7 @@
include(ECMSetupVersion)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KPARTS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kparts_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5PartsConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/autotests/openorsavequestion_unittest.cpp new/kparts-4.98.0/autotests/openorsavequestion_unittest.cpp
--- old/kparts-4.97.0/autotests/openorsavequestion_unittest.cpp 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/autotests/openorsavequestion_unittest.cpp 2014-03-29 08:15:31.000000000 +0100
@@ -23,6 +23,7 @@
#include <qtest_widgets.h>
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#include <QDebug>
#include <QDialog>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/src/Messages.sh new/kparts-4.98.0/src/Messages.sh
--- old/kparts-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kparts-4.98.0/src/Messages.sh 2014-03-29 08:15:31.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kparts5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/src/browserextension.cpp new/kparts-4.98.0/src/browserextension.cpp
--- old/kparts-4.97.0/src/browserextension.cpp 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/src/browserextension.cpp 2014-03-29 08:15:31.000000000 +0100
@@ -125,25 +125,15 @@
BrowserExtensionPrivate::createActionSlotMap();
}
- // Build list with this extension's slot names.
- QList<QByteArray> slotNames;
- int methodCount = metaObject()->methodCount();
- int methodOffset = metaObject()->methodOffset();
- for (int i = 0; i < methodCount; ++i) {
- QMetaMethod method = metaObject()->method(methodOffset + i);
- if (method.methodType() == QMetaMethod::Slot) {
- slotNames.append(method.methodSignature());
- }
- }
-
// Set the initial status of the actions depending on whether
// they're supported or not
+ const QMetaObject *metaobj = metaObject();
ActionSlotMap::ConstIterator it = s_actionSlotMap()->constBegin();
ActionSlotMap::ConstIterator itEnd = s_actionSlotMap()->constEnd();
for (int i = 0; it != itEnd; ++it, ++i) {
// Does the extension have a slot with the name of this action ?
- // ######### KDE4 TODO: use QMetaObject::indexOfMethod() #######
- d->m_actionStatus.setBit(i, slotNames.contains(it.key() + "()"));
+ QByteArray slotSig = it.key() + "()";
+ d->m_actionStatus.setBit(i, metaobj->indexOfMethod(slotSig.constData()) != -1);
}
connect(d->m_part, SIGNAL(completed()),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/src/browseropenorsavequestion.cpp new/kparts-4.98.0/src/browseropenorsavequestion.cpp
--- old/kparts-4.97.0/src/browseropenorsavequestion.cpp 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/src/browseropenorsavequestion.cpp 2014-03-29 08:15:31.000000000 +0100
@@ -21,6 +21,7 @@
#include "browseropenorsavequestion.h"
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#include <klocalizedstring.h>
#include <kfileitemactions.h>
#include <ksqueezedtextlabel.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/src/browserrun.cpp new/kparts-4.98.0/src/browserrun.cpp
--- old/kparts-4.97.0/src/browserrun.cpp 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/src/browserrun.cpp 2014-03-29 08:15:31.000000000 +0100
@@ -22,6 +22,7 @@
#include "browseropenorsavequestion.h"
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#include <kmessagebox.h>
#include <kio/job.h>
#include <kio/jobuidelegate.h>
@@ -513,11 +514,6 @@
newURL.setFragment(cleanedOrigUrl);
return newURL;
-
- // The kde3 approach broke with invalid urls, now that they become empty in qt4.
- //QList<QUrl> lst;
- //lst << newURL << runURL;
- //return KUrl::join(lst);
}
void BrowserRun::redirectToError(int error, const QString &errorText)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/src/mainwindow.h new/kparts-4.98.0/src/mainwindow.h
--- old/kparts-4.97.0/src/mainwindow.h 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/src/mainwindow.h 2014-03-29 08:15:31.000000000 +0100
@@ -81,10 +81,8 @@
/**
* Rebuilds the GUI after KEditToolbar changed the toolbar layout.
* @see configureToolbars()
- * KDE4: make this virtual. (For now we rely on the fact that it's called
- * as a slot, so the metaobject finds it here).
*/
- void saveNewToolbarConfig();
+ void saveNewToolbarConfig() Q_DECL_OVERRIDE;
protected:
virtual void createShellGUI(bool create = true);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/src/partmanager.h new/kparts-4.98.0/src/partmanager.h
--- old/kparts-4.97.0/src/partmanager.h 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/src/partmanager.h 2014-03-29 08:15:31.000000000 +0100
@@ -139,9 +139,7 @@
/**
* Adds a part to the manager.
*
- * Sets it to the active part automatically if @p setActive is true (default ).
- * Behavior fix in KDE3.4: the part's widget is shown only if setActive is true,
- * it used to be shown in all cases before.
+ * Sets it to the active part automatically if @p setActive is true (default).
*/
virtual void addPart(Part *part, bool setActive = true);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kparts-4.97.0/src/plugin.cpp new/kparts-4.98.0/src/plugin.cpp
--- old/kparts-4.97.0/src/plugin.cpp 2014-03-01 12:51:25.000000000 +0100
+++ new/kparts-4.98.0/src/plugin.cpp 2014-03-29 08:15:31.000000000 +0100
@@ -27,6 +27,7 @@
#include <kxmlguifactory.h>
#include <klocalizedstring.h>
#include <kdesktopfile.h>
+#include <ksharedconfig.h>
#include <kconfiggroup.h>
#include <kaboutdata.h>
--
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 knotifyconfig for openSUSE:Factory checked in at 2014-04-02 17:22:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/knotifyconfig (Old)
and /work/SRC/openSUSE:Factory/.knotifyconfig.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "knotifyconfig"
Changes:
--------
--- /work/SRC/openSUSE:Factory/knotifyconfig/knotifyconfig.changes 2014-03-10 12:18:12.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.knotifyconfig.new/knotifyconfig.changes 2014-04-02 17:22:30.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:47 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
knotifyconfig-4.97.0.tar.xz
New:
----
knotifyconfig-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ knotifyconfig.spec ++++++
--- /var/tmp/diff_new_pack.YQqC2W/_old 2014-04-02 17:22:30.000000000 +0200
+++ /var/tmp/diff_new_pack.YQqC2W/_new 2014-04-02 17:22:30.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5NotifyConfig5
Name: knotifyconfig
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kbookmarks-devel >= %{_kf5_version}
BuildRequires: kcompletion-devel >= %{_kf5_version}
++++++ knotifyconfig-4.97.0.tar.xz -> knotifyconfig-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifyconfig-4.97.0/CMakeLists.txt new/knotifyconfig-4.98.0/CMakeLists.txt
--- old/knotifyconfig-4.97.0/CMakeLists.txt 2014-03-01 12:51:23.000000000 +0100
+++ new/knotifyconfig-4.98.0/CMakeLists.txt 2014-03-28 19:17:20.000000000 +0100
@@ -3,11 +3,11 @@
project(KNotifyConfig)
# Dependencies
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION "5.2.0")
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
# Required Qt5 components to build this framework
find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Widgets DBus)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifyconfig-4.97.0/src/Messages.sh new/knotifyconfig-4.98.0/src/Messages.sh
--- old/knotifyconfig-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/knotifyconfig-4.98.0/src/Messages.sh 2014-03-28 19:17:20.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/knotifyconfig5.pot
--
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 knotifications for openSUSE:Factory checked in at 2014-04-02 17:22:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/knotifications (Old)
and /work/SRC/openSUSE:Factory/.knotifications.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "knotifications"
Changes:
--------
--- /work/SRC/openSUSE:Factory/knotifications/knotifications.changes 2014-03-10 12:17:47.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.knotifications.new/knotifications.changes 2014-04-02 17:22:29.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:47 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
knotifications-4.97.0.tar.xz
New:
----
knotifications-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ knotifications.spec ++++++
--- /var/tmp/diff_new_pack.pym5Fx/_old 2014-04-02 17:22:29.000000000 +0200
+++ /var/tmp/diff_new_pack.pym5Fx/_new 2014-04-02 17:22:29.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Notifications5
Name: knotifications
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcodecs-devel >= %{_kf5_version}
BuildRequires: kconfig-devel >= %{_kf5_version}
++++++ knotifications-4.97.0.tar.xz -> knotifications-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/CMakeLists.txt new/knotifications-4.98.0/CMakeLists.txt
--- old/knotifications-4.97.0/CMakeLists.txt 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/CMakeLists.txt 2014-03-28 19:17:18.000000000 +0100
@@ -3,15 +3,15 @@
project(KNotifications)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
-set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
+set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(FeatureSummary)
include(GenerateExportHeader)
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION}
VARIABLE_PREFIX KNOTIFICATIONS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/cmake/FindDBusMenuQt5.cmake new/knotifications-4.98.0/cmake/FindDBusMenuQt5.cmake
--- old/knotifications-4.97.0/cmake/FindDBusMenuQt5.cmake 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/cmake/FindDBusMenuQt5.cmake 1970-01-01 01:00:00.000000000 +0100
@@ -1,71 +0,0 @@
-# - Try to find dbusmenu-qt5
-# This module helps finding an installation of the DBusMenuQt library (see https://launchpad.net/libdbusmenu-qt/)
-# Once done this will define
-#
-# DBusMenuQt5_FOUND - system has dbusmenu-qt
-# DBusMenuQt5_INCLUDE_DIRS - the dbusmenu-qt include directory
-# DBusMenuQt5_LIBRARIES - the libraries needed to use dbusmenu-qt
-# DBusMenuQt5_DEFINITIONS - Compiler switches required for using dbusmenu-qt
-#
-# The minimum required version of DBusMenuQt can be specified using the
-# standard syntax, e.g. find_package(DBusMenuQt5 0.6)
-#
-
-# Copyright (c) 2009, Canonical Ltd.
-# - Author: Aurélien Gâteau <aurelien.gateau(a)canonical.com>
-#
-# Based on FindQCA2.cmake
-# Copyright (c) 2006, Michael Larouche, <michael.larouche(a)kdemail.net>
-#
-# Redistribution and use is allowed according to the terms of the BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-include(FindPackageHandleStandardArgs)
-
-find_package(PkgConfig)
-pkg_check_modules(PC_DBusMenuQt5 QUIET dbusmenu-qt5)
-
-
-set(DBusMenuQt5_DEFINITIONS ${PC_DBusMenuQt5_CFLAGS_OTHER})
-
-find_library(DBusMenuQt5_LIBRARY
- NAMES dbusmenu-qt5 dbusmenu-qt5d
- HINTS ${PC_DBusMenuQt5_LIBDIR} ${PC_DBusMenuQt5_LIBRARY_DIRS}
- )
-
-find_path(DBusMenuQt5_INCLUDE_DIR dbusmenuexporter.h
- HINTS ${PC_DBusMenuQt5_INCLUDEDIR} ${PC_DBusMenuQt5_INCLUDE_DIRS}
- PATH_SUFFIXES dbusmenu-qt5 dbusmenu-qt
- )
-
- message(STATUS "DBusMenuQt5_INCLUDE_DIR=${DBusMenuQt5_INCLUDE_DIR} DBusMenuQt5_LIBRARY=${DBusMenuQt5_LIBRARY} DBusMenuQt5_VERSION=${DBusMenuQt5_VERSION}")
-
-# find the version number from dbusmenu_version.h and store it in the cache
-if(DBusMenuQt5_INCLUDE_DIR AND NOT DBusMenuQt5_VERSION)
- # parse the version number out from dbusmenu_version:
- if(EXISTS ${DBusMenuQt5_INCLUDE_DIR}/dbusmenu_version.h)
- file(READ "${DBusMenuQt5_INCLUDE_DIR}/dbusmenu_version.h" DBusMenuQt5_VERSION_CONTENT)
-
- string(REGEX MATCH "#define +DBUSMENUQT_VERSION_MAJOR +([0-9]+)" _dummy "${DBusMenuQt5_VERSION_CONTENT}")
- set(DBusMenuQt5_VERSION_MAJOR "${CMAKE_MATCH_1}")
-
- string(REGEX MATCH "#define +DBUSMENUQT_VERSION_MINOR +([0-9]+)" _dummy "${DBusMenuQt5_VERSION_CONTENT}")
- set(DBusMenuQt5_VERSION_MINOR "${CMAKE_MATCH_1}")
-
- string(REGEX MATCH "#define +DBUSMENUQT_VERSION_PATCH +([0-9]+)" _dummy "${DBusMenuQt5_VERSION_CONTENT}")
- set(DBusMenuQt5_VERSION_PATCH "${CMAKE_MATCH_1}")
-
- endif()
-
- set(DBusMenuQt5_VERSION "${DBusMenuQt5_VERSION_MAJOR}.${DBusMenuQt5_VERSION_MINOR}.${DBusMenuQt5_VERSION_PATCH}" CACHE STRING "Version number of DBusMenuQt5" FORCE)
- message(STATUS "NOW DBusMenuQt5_VERSION=${DBusMenuQt5_VERSION}")
-endif()
-
-
-find_package_handle_standard_args(DBusMenuQt5 REQUIRED_VARS DBusMenuQt5_LIBRARY DBusMenuQt5_INCLUDE_DIR
- VERSION_VAR DBusMenuQt5_VERSION FOUND_VAR DBusMenuQt5_FOUND)
-
-set(DBusMenuQt5_LIBRARIES ${DBusMenuQt5_LIBRARY})
-set(DBusMenuQt5_INCLUDE_DIRS ${DBusMenuQt5_INCLUDE_DIR})
-
-mark_as_advanced(DBusMenuQt5_INCLUDE_DIR DBusMenuQt5_LIBRARY DBusMenuQt5_VERSION)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/knotifications.yaml new/knotifications-4.98.0/knotifications.yaml
--- old/knotifications-4.97.0/knotifications.yaml 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/knotifications.yaml 2014-03-28 19:17:18.000000000 +0100
@@ -1 +1 @@
-tier: 2
+tier: 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/CMakeLists.txt new/knotifications-4.98.0/src/CMakeLists.txt
--- old/knotifications-4.97.0/src/CMakeLists.txt 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/CMakeLists.txt 2014-03-28 19:17:18.000000000 +0100
@@ -19,13 +19,14 @@
notifybyaudio.cpp
)
-find_package(DBusMenuQt5)
-set_package_properties(DBusMenuQt5 PROPERTIES DESCRIPTION "DBusMenuQt"
+find_package(dbusmenu-qt5 CONFIG)
+set_package_properties(dbusmenu-qt5 PROPERTIES DESCRIPTION "DBusMenuQt"
URL "https://launchpad.net/libdbusmenu-qt" TYPE OPTIONAL
PURPOSE "Support for notification area menus via the DBusMenu protocol")
-if (DBusMenuQt5_FOUND)
+if (dbusmenu-qt5_FOUND)
+ message("dbusmenu-qt5_FOUND")
set(HAVE_DBUSMENUQT 1)
- include_directories(${DBusMenuQt5_INCLUDE_DIRS})
+ include_directories(${dbusmenu-qt5_INCLUDE_DIRS})
else()
set(HAVE_DBUSMENUQT 0)
endif()
@@ -70,7 +71,7 @@
endif()
if(HAVE_DBUSMENUQT)
- target_link_libraries(KF5Notifications PRIVATE ${DBusMenuQt5_LIBRARIES})
+ target_link_libraries(KF5Notifications PRIVATE dbusmenu-qt5)
endif()
set_target_properties(KF5Notifications PROPERTIES VERSION ${KNOTIFICATIONS_VERSION_STRING}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/Messages.sh new/knotifications-4.98.0/src/Messages.sh
--- old/knotifications-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/knotifications-4.98.0/src/Messages.sh 2014-03-28 19:17:18.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/knotifications5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/knotificationmanager.cpp new/knotifications-4.98.0/src/knotificationmanager.cpp
--- old/knotifications-4.97.0/src/knotificationmanager.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/knotificationmanager.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -106,7 +106,7 @@
void KNotificationManager::notifyPluginFinished(KNotification *notification)
{
- if (!d->notifications.contains(notification->id())) {
+ if (!notification || !d->notifications.contains(notification->id())) {
return;
}
@@ -118,8 +118,8 @@
if (d->notifications.contains(id)) {
qDebug() << id << " " << action;
KNotification *n = d->notifications[id];
- d->notifications.remove(id);
n->activate(action);
+ close(id);
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/knotifyconfig.cpp new/knotifications-4.98.0/src/knotifyconfig.cpp
--- old/knotifications-4.97.0/src/knotifyconfig.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/knotifyconfig.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2009 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/knotifyconfig.h new/knotifications-4.98.0/src/knotifyconfig.h
--- old/knotifications-4.97.0/src/knotifyconfig.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/knotifyconfig.h 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2009 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/knotifyplugin.cpp new/knotifications-4.98.0/src/knotifyplugin.cpp
--- old/knotifications-4.97.0/src/knotifyplugin.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/knotifyplugin.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/knotifyplugin.h new/knotifications-4.98.0/src/knotifyplugin.h
--- old/knotifications-4.97.0/src/knotifyplugin.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/knotifyplugin.h 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/kstatusnotifieritem.cpp new/knotifications-4.98.0/src/kstatusnotifieritem.cpp
--- old/knotifications-4.97.0/src/kstatusnotifieritem.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/kstatusnotifieritem.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -721,7 +721,7 @@
q->setContextMenu(m);
QAction *action = new QAction(q);
- action->setText(q->tr("Quit"));
+ action->setText(KStatusNotifierItem::tr("Quit"));
action->setIcon(QIcon::fromTheme("application-exit"));
QObject::connect(action, SIGNAL(triggered()), q, SLOT(maybeQuit()));
actionCollection.insert("quit", action);
@@ -894,9 +894,9 @@
if (associatedWidget && associatedWidget != menu) {
QAction *action = actionCollection.value("minimizeRestore");
if (checkVisibility(QPoint(0, 0), false)) {
- action->setText(q->tr("&Restore"));
+ action->setText(KStatusNotifierItem::tr("&Restore"));
} else {
- action->setText(q->tr("&Minimize"));
+ action->setText(KStatusNotifierItem::tr("&Minimize"));
}
}
}
@@ -908,10 +908,10 @@
caption = QCoreApplication::applicationName();
}
- QString query = q->tr("<qt>Are you sure you want to quit <b>%1</b>?</qt>", caption.toUtf8());
+ QString query = KStatusNotifierItem::tr("<qt>Are you sure you want to quit <b>%1</b>?</qt>").arg(caption);
if (QMessageBox::question(associatedWidget,
- q->tr("Confirm Quit From System Tray"), query)) {
+ KStatusNotifierItem::tr("Confirm Quit From System Tray"), query)) {
qApp->quit();
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybyaudio.cpp new/knotifications-4.98.0/src/notifybyaudio.cpp
--- old/knotifications-4.97.0/src/notifybyaudio.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybyaudio.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -2,20 +2,21 @@
Copyright 2014 by Martin Klapetek <mklapetek(a)kde.org>
This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License (LGPL) as published by the Free Software Foundation;
- either version 2 of the License, or (at your option) any later
- version.
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
This library 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
- Library General Public License for more details.
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
- You should have received a copy of the GNU Library General Public License
- along with this library; see the file COPYING.LIB. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
*/
#include "notifybyaudio.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybyaudio.h new/knotifications-4.98.0/src/notifybyaudio.h
--- old/knotifications-4.97.0/src/notifybyaudio.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybyaudio.h 2014-03-28 19:17:18.000000000 +0100
@@ -2,20 +2,21 @@
Copyright 2014 by Martin Klapetek <mklapetek(a)kde.org>
This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License (LGPL) as published by the Free Software Foundation;
- either version 2 of the License, or (at your option) any later
- version.
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
This library 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
- Library General Public License for more details.
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
- You should have received a copy of the GNU Library General Public License
- along with this library; see the file COPYING.LIB. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybyexecute.cpp new/knotifications-4.98.0/src/notifybyexecute.cpp
--- old/knotifications-4.97.0/src/notifybyexecute.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybyexecute.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybyexecute.h new/knotifications-4.98.0/src/notifybyexecute.h
--- old/knotifications-4.97.0/src/notifybyexecute.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybyexecute.h 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybyktts.cpp new/knotifications-4.98.0/src/notifybyktts.cpp
--- old/knotifications-4.97.0/src/notifybyktts.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybyktts.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -2,20 +2,21 @@
Copyright (C) 2007 by Olivier Goffart <ogoffart at kde.org>
Copyright (C) 2009 by Laurent Montel <montel(a)kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#include "notifybyktts.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybyktts.h new/knotifications-4.98.0/src/notifybyktts.h
--- old/knotifications-4.97.0/src/notifybyktts.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybyktts.h 2014-03-28 19:17:18.000000000 +0100
@@ -2,19 +2,21 @@
Copyright (C) 2007 by Olivier Goffart <ogoffart at kde.org>
Copyright (C) 2009 by Laurent Montel <montel(a)kde.org>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybylogfile.cpp new/knotifications-4.98.0/src/notifybylogfile.cpp
--- old/knotifications-4.97.0/src/notifybylogfile.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybylogfile.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybylogfile.h new/knotifications-4.98.0/src/notifybylogfile.h
--- old/knotifications-4.97.0/src/notifybylogfile.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybylogfile.h 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybypopup.cpp new/knotifications-4.98.0/src/notifybypopup.cpp
--- old/knotifications-4.97.0/src/notifybypopup.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybypopup.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -3,19 +3,21 @@
Copyright (C) 2008 by Dmitry Suzdalev <dimsuz(a)gmail.com>
Copyright (C) 2014 by Martin Klapetek <mklapetek(a)kde.org>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
@@ -447,6 +449,12 @@
}
d->galagoNotifications.remove(dbus_id);
finished(n);
+ // The popup bubble is the only user facing part of a notification,
+ // if the user closes the popup, it means he wants to get rid
+ // of the notification completely, including playing sound etc
+ // Therefore we close the KNotification completely after closing
+ // the popup
+ n->close();
}
void NotifyByPopup::onGalagoServerReply(QDBusPendingCallWatcher *watcher)
@@ -645,7 +653,9 @@
void NotifyByPopupPrivate::closeGalagoNotification(KNotification *notification)
{
- if (notification->id() == 0) {
+ uint galagoId = galagoNotifications.key(notification, 0);
+
+ if (galagoId == 0) {
qDebug() << "not found dbus id to close" << notification->id();
return;
}
@@ -653,7 +663,7 @@
QDBusMessage m = QDBusMessage::createMethodCall(dbusServiceName, dbusPath,
dbusInterfaceName, "CloseNotification");
QList<QVariant> args;
- args.append(notification->id());
+ args.append(galagoId);
m.setArguments(args);
// send(..) does not block
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybypopup.h new/knotifications-4.98.0/src/notifybypopup.h
--- old/knotifications-4.97.0/src/notifybypopup.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybypopup.h 2014-03-28 19:17:18.000000000 +0100
@@ -3,20 +3,21 @@
Copyright (C) 2008 by Dmitry Suzdalev <dimsuz(a)gmail.com>
Copyright (C) 2014 by Martin Klapetek <mklapetek(a)kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybypopupgrowl.cpp new/knotifications-4.98.0/src/notifybypopupgrowl.cpp
--- old/knotifications-4.97.0/src/notifybypopupgrowl.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybypopupgrowl.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -1,19 +1,21 @@
/*
Copyright (C) 2010 by Sjors Gielen <dazjorz(a)dazjorz.com>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybypopupgrowl.h new/knotifications-4.98.0/src/notifybypopupgrowl.h
--- old/knotifications-4.97.0/src/notifybypopupgrowl.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybypopupgrowl.h 2014-03-28 19:17:18.000000000 +0100
@@ -1,19 +1,21 @@
/*
Copyright (C) 2010 by Sjors Gielen <dazjorz(a)dazjorz.com>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybytaskbar.cpp new/knotifications-4.98.0/src/notifybytaskbar.cpp
--- old/knotifications-4.97.0/src/notifybytaskbar.cpp 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybytaskbar.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/notifybytaskbar.h new/knotifications-4.98.0/src/notifybytaskbar.h
--- old/knotifications-4.97.0/src/notifybytaskbar.h 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/notifybytaskbar.h 2014-03-28 19:17:18.000000000 +0100
@@ -1,20 +1,21 @@
/*
Copyright (C) 2005-2006 by Olivier Goffart <ogoffart at kde.org>
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
+ This library 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.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/org.freedesktop.Notifications.xml new/knotifications-4.98.0/src/org.freedesktop.Notifications.xml
--- old/knotifications-4.97.0/src/org.freedesktop.Notifications.xml 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/org.freedesktop.Notifications.xml 2014-03-28 19:17:18.000000000 +0100
@@ -10,7 +10,7 @@
<arg name="action_key" type="s" direction="out"/>
</signal>
<method name="Notify">
- <annotation name="com.trolltech.QtDBus.QtTypeName.In6" value="QVariantMap"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.In6" value="QVariantMap"/>
<arg type="u" direction="out"/>
<arg name="app_name" type="s" direction="in"/>
<arg name="replaces_id" type="u" direction="in"/>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/org.kde.StatusNotifierItem.xml new/knotifications-4.98.0/src/org.kde.StatusNotifierItem.xml
--- old/knotifications-4.97.0/src/org.kde.StatusNotifierItem.xml 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/org.kde.StatusNotifierItem.xml 2014-03-28 19:17:18.000000000 +0100
@@ -20,13 +20,13 @@
<!--struct containing width, height and image data-->
<property name="IconPixmap" type="(iiay)" access="read">
- <annotation name="com.trolltech.QtDBus.QtTypeName" value="KDbusImageVector"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusImageVector"/>
</property>
<property name="OverlayIconName" type="s" access="read"/>
<property name="OverlayIconPixmap" type="(iiay)" access="read">
- <annotation name="com.trolltech.QtDBus.QtTypeName" value="KDbusImageVector"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusImageVector"/>
</property>
@@ -35,7 +35,7 @@
<!--same definition as image-->
<property name="AttentionIconPixmap" type="(iiay)" access="read">
- <annotation name="com.trolltech.QtDBus.QtTypeName" value="KDbusImageVector"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusImageVector"/>
</property>
<property name="AttentionMovieName" type="s" access="read"/>
@@ -46,7 +46,7 @@
<!--(iiay) is an image-->
<property name="ToolTip" type="(s(iiay)ss)" access="read">
- <annotation name="com.trolltech.QtDBus.QtTypeName" value="KDbusToolTipStruct"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusToolTipStruct"/>
</property>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/src/org.kde.StatusNotifierWatcher.xml new/knotifications-4.98.0/src/org.kde.StatusNotifierWatcher.xml
--- old/knotifications-4.97.0/src/org.kde.StatusNotifierWatcher.xml 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/src/org.kde.StatusNotifierWatcher.xml 2014-03-28 19:17:18.000000000 +0100
@@ -15,7 +15,7 @@
<!-- properties -->
<property name="RegisteredStatusNotifierItems" type="as" access="read">
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QStringList"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QStringList"/>
</property>
<property name="IsStatusNotifierHostRegistered" type="b" access="read"/>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/tests/CMakeLists.txt new/knotifications-4.98.0/tests/CMakeLists.txt
--- old/knotifications-4.97.0/tests/CMakeLists.txt 2014-03-03 17:23:43.000000000 +0100
+++ new/knotifications-4.98.0/tests/CMakeLists.txt 2014-03-28 19:17:18.000000000 +0100
@@ -7,7 +7,7 @@
macro(knotifications_executable_tests)
foreach(_testname ${ARGN})
add_executable(${_testname} ${_testname}.cpp)
- target_link_libraries(${_testname} Qt5::Test KF5::Notifications)
+ target_link_libraries(${_testname} Qt5::Test Qt5::DBus KF5::Notifications)
ecm_mark_as_test(${_testname})
endforeach(_testname)
endmacro()
@@ -16,6 +16,7 @@
knotificationrestrictionstest
kpassivepopuptest
kstatusnotifieritemtest
+ knotificationdbustest
)
target_link_libraries(kpassivepopuptest KF5::WindowSystem)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knotifications-4.97.0/tests/knotificationdbustest.cpp new/knotifications-4.98.0/tests/knotificationdbustest.cpp
--- old/knotifications-4.97.0/tests/knotificationdbustest.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/knotifications-4.98.0/tests/knotificationdbustest.cpp 2014-03-28 19:17:18.000000000 +0100
@@ -0,0 +1,103 @@
+/*
+ Copyright 2014 Martin Klapetek <mklapetek(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include <knotification.h>
+#include <QTimer>
+
+#include <QApplication>
+#include <QLabel>
+#include <QDebug>
+#include <QtDBus/QDBusConnection>
+#include <QtDBus/QDBusMessage>
+
+static const char dbusServiceName[] = "org.freedesktop.Notifications";
+static const char dbusInterfaceName[] = "org.freedesktop.Notifications";
+static const char dbusPath[] = "/org/freedesktop/Notifications";
+
+void notificationDBusCall(const QString &iconName, const QString &title, const QString &body, const QStringList &actions, bool persistent = false)
+{
+ QDBusMessage dbusNotificationMessage = QDBusMessage::createMethodCall(dbusServiceName, dbusPath, dbusInterfaceName, "Notify");
+
+ QList<QVariant> args;
+
+ args.append(QString()); // app_name
+ args.append((uint)0); // notification to update
+ args.append(iconName); // app_icon
+ args.append(title); // summary
+ args.append(body); // body
+
+ QStringList actionList;
+ int actId = 0;
+ Q_FOREACH (const QString &actionName, actions) {
+ actId++;
+ actionList.append(QString::number(actId));
+ actionList.append(actionName);
+ }
+
+ args.append(actionList); // actions
+
+ args.append(QVariantMap()); // hints
+
+ // Persistent => 0 == infinite timeout
+ // CloseOnTimeout => -1 == let the server decide
+ int timeout = persistent ? 0 : -1;
+
+ args.append(timeout); // expire timout
+
+ dbusNotificationMessage.setArguments(args);
+
+ QDBusMessage reply = QDBusConnection::sessionBus().call(dbusNotificationMessage, QDBus::Block, 4000);
+ if (reply.type() == QDBusMessage::ErrorMessage) {
+ qDebug() << "Error sending notification:" << reply.errorMessage();
+ }
+}
+
+int main(int argc, char *argv[])
+{
+ QApplication app(argc, argv);
+
+ notificationDBusCall("amarok",
+ "Testing notification #1",
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. In condimentum",
+ QStringList() << "action1" << "action2");
+
+ // wait a little before sending another notification
+ QEventLoop a;
+ QTimer::singleShot(500, &a, SLOT(quit()));
+ a.exec();
+
+ notificationDBusCall("kwalletmanager",
+ "Testing notification #2",
+ "Praesent odio ipsum, posuere a magna ac, egestas vehicula lectus",
+ QStringList() << "action1" << "action2");
+
+ QTimer::singleShot(1000, &a, SLOT(quit()));
+ a.exec();
+
+ notificationDBusCall("preferences-desktop-accessibility",
+ "Testing notification #3",
+ "Fusce hendrerit egestas pellentesque",
+ QStringList(),
+ true);
+
+ return app.exec();
+
+ QTimer::singleShot(2000, &app, SLOT(quit()));
+}
+
--
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 knewstuff for openSUSE:Factory checked in at 2014-04-02 17:22:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/knewstuff (Old)
and /work/SRC/openSUSE:Factory/.knewstuff.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "knewstuff"
Changes:
--------
--- /work/SRC/openSUSE:Factory/knewstuff/knewstuff.changes 2014-03-10 12:18:11.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.knewstuff.new/knewstuff.changes 2014-04-02 17:22:28.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:46 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
knewstuff-4.97.0.tar.xz
New:
----
knewstuff-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ knewstuff.spec ++++++
--- /var/tmp/diff_new_pack.heiiJS/_old 2014-04-02 17:22:28.000000000 +0200
+++ /var/tmp/diff_new_pack.heiiJS/_new 2014-04-02 17:22:28.000000000 +0200
@@ -18,11 +18,11 @@
%define lname libKF5NewStuff5
Name: knewstuff
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: attica-qt5-devel >= %{_kf5_version}
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: karchive-devel >= %{_kf5_version}
BuildRequires: kcompletion-devel >= %{_kf5_version}
++++++ knewstuff-4.97.0.tar.xz -> knewstuff-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/CMakeLists.txt new/knewstuff-4.98.0/CMakeLists.txt
--- old/knewstuff-4.97.0/CMakeLists.txt 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/CMakeLists.txt 2014-03-28 19:17:16.000000000 +0100
@@ -2,7 +2,7 @@
project(KNewStuff)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(KDEInstallDirs)
@@ -13,7 +13,7 @@
find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED COMPONENTS Widgets Xml)
# Not part of kdelibs
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
find_package(KF5Archive ${KF5_VERSION} REQUIRED)
find_package(KF5Completion ${KF5_VERSION} REQUIRED)
find_package(KF5Config ${KF5_VERSION} REQUIRED)
@@ -46,7 +46,10 @@
add_subdirectory(data)
add_subdirectory(src)
-add_subdirectory(tests)
+if (BUILD_TESTING)
+ add_subdirectory(autotests)
+ add_subdirectory(tests)
+endif()
set(CMAKECONFIG_INSTALL_DIR "${CMAKECONFIG_INSTALL_PREFIX}/KF5NewStuff")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/autotests/CMakeLists.txt new/knewstuff-4.98.0/autotests/CMakeLists.txt
--- old/knewstuff-4.97.0/autotests/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/knewstuff-4.98.0/autotests/CMakeLists.txt 2014-03-28 19:17:16.000000000 +0100
@@ -0,0 +1,23 @@
+include(ECMMarkAsTest)
+
+find_package(Qt5Test ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED)
+set_package_properties(Qt5Test PROPERTIES
+ TYPE REQUIRED
+ PURPOSE "Required for unit tests")
+
+macro(knewstuff_unit_tests)
+ foreach(_testname ${ARGN})
+ add_executable(${_testname} ${_testname}.cpp)
+ add_test("knewstuff-${_testname}" ${_testname})
+ ecm_mark_as_test(${_testname})
+ target_link_libraries(${_testname} KF5::NewStuff Qt5::Xml Qt5::Test)
+ endforeach()
+endmacro()
+
+# FIXME: port to new API
+#knewstuff_unit_tests(
+# knewstuffauthortest
+# knewstuffentrytest
+# testTranslatable
+#)
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/autotests/knewstuffauthortest.cpp new/knewstuff-4.98.0/autotests/knewstuffauthortest.cpp
--- old/knewstuff-4.97.0/autotests/knewstuffauthortest.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/knewstuff-4.98.0/autotests/knewstuffauthortest.cpp 2014-03-28 19:17:16.000000000 +0100
@@ -0,0 +1,85 @@
+/*
+ This file is part of KNewStuff2.
+ Copyright (c) 2008 Jeremy Whiting <jpwhiting(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library 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
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+// unit test for author
+
+#include <QtTest>
+#include <QtCore>
+
+#include <qtest_kde.h>
+
+#include "../knewstuff2/core/author.h"
+
+const QString name = "Name";
+const QString email = "Email(a)nowhere.com";
+const QString jabber = "something(a)kdetalk.net";
+const QString homepage = "http://www.myhomepage.com";
+
+class testAuthor: public QObject
+{
+ Q_OBJECT
+private Q_SLOTS:
+ void testProperties();
+ void testCopy();
+ void testAssignment();
+};
+
+void testAuthor::testProperties()
+{
+ KNS::Author author;
+ author.setName(name);
+ author.setEmail(email);
+ author.setJabber(jabber);
+ author.setHomepage(homepage);
+ QCOMPARE(author.name(), name);
+ QCOMPARE(author.email(), email);
+ QCOMPARE(author.jabber(), jabber);
+ QCOMPARE(author.homepage(), homepage);
+}
+
+void testAuthor::testCopy()
+{
+ KNS::Author author;
+ author.setName(name);
+ author.setEmail(email);
+ author.setJabber(jabber);
+ author.setHomepage(homepage);
+ KNS::Author author2(author);
+ QCOMPARE(author.name(), author2.name());
+ QCOMPARE(author.email(), author2.email());
+ QCOMPARE(author.jabber(), author2.jabber());
+ QCOMPARE(author.homepage(), author2.homepage());
+}
+
+void testAuthor::testAssignment()
+{
+ KNS::Author author;
+ KNS::Author author2;
+ author.setName(name);
+ author.setEmail(email);
+ author.setJabber(jabber);
+ author.setHomepage(homepage);
+ author2 = author;
+ QCOMPARE(author.name(), author2.name());
+ QCOMPARE(author.email(), author2.email());
+ QCOMPARE(author.jabber(), author2.jabber());
+ QCOMPARE(author.homepage(), author2.homepage());
+}
+
+QTEST_KDEMAIN_CORE(testAuthor)
+#include "knewstuffauthortest.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/autotests/knewstuffentrytest.cpp new/knewstuff-4.98.0/autotests/knewstuffentrytest.cpp
--- old/knewstuff-4.97.0/autotests/knewstuffentrytest.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/knewstuff-4.98.0/autotests/knewstuffentrytest.cpp 2014-03-28 19:17:16.000000000 +0100
@@ -0,0 +1,149 @@
+/*
+ This file is part of KNewStuff2.
+ Copyright (c) 2008 Jeremy Whiting <jpwhiting(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library 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
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+// unit test for entry
+
+#include <QtTest>
+#include <QtCore>
+
+#include <qtest_kde.h>
+
+#include "../knewstuff2/core/entry.h"
+#include "../knewstuff2/core/ktranslatable.h"
+
+const QString name = "Name";
+const QString category = "Category";
+const QString license = "GPLv2+";
+const QString summary1 = "Summary of contents";
+const QString summary2lang = "de";
+const QString summary2 = "Translated summary of contents";
+const QString version = "v0.1";
+const int release = 1;
+const QDate releasedate = QDate::currentDate();
+const int rating = 80;
+const int downloads = 5000;
+const QString checksum = "BAADF00D";
+const QString signature = "DEADBEEF";
+
+class testEntry: public QObject
+{
+ Q_OBJECT
+private Q_SLOTS:
+ void testProperties();
+ void testCopy();
+ void testAssignment();
+};
+
+void testEntry::testProperties()
+{
+ KNS::Entry entry;
+ entry.setName(KNS::KTranslatable(name));
+ entry.setCategory(category);
+ entry.setLicense(license);
+ KNS::KTranslatable summary(summary1);
+ summary.addString(summary2lang, summary2);
+ entry.setSummary(summary);
+ entry.setVersion(version);
+ entry.setRelease(release);
+ entry.setReleaseDate(releasedate);
+ entry.setRating(rating);
+ entry.setDownloads(downloads);
+ entry.setChecksum(checksum);
+ entry.setSignature(signature);
+
+ QCOMPARE(entry.name().representation(), name);
+ QCOMPARE(entry.category(), category);
+ QCOMPARE(entry.license(), license);
+ QCOMPARE(entry.summary().representation(), summary1);
+ QCOMPARE(entry.summary().translated(summary2lang), summary2);
+ QCOMPARE(entry.version(), version);
+ QCOMPARE(entry.release(), release);
+ QCOMPARE(entry.releaseDate(), releasedate);
+ QCOMPARE(entry.rating(), rating);
+ QCOMPARE(entry.downloads(), downloads);
+ QCOMPARE(entry.checksum(), checksum);
+ QCOMPARE(entry.signature(), signature);
+}
+
+void testEntry::testCopy()
+{
+ KNS::Entry entry;
+ entry.setName(KNS::KTranslatable(name));
+ entry.setCategory(category);
+ entry.setLicense(license);
+ KNS::KTranslatable summary(summary1);
+ summary.addString(summary2lang, summary2);
+ entry.setSummary(summary);
+ entry.setVersion(version);
+ entry.setRelease(release);
+ entry.setReleaseDate(releasedate);
+ entry.setRating(rating);
+ entry.setDownloads(downloads);
+ entry.setChecksum(checksum);
+ entry.setSignature(signature);
+ KNS::Entry entry2(entry);
+
+ QCOMPARE(entry.name().representation(), entry2.name().representation());
+ QCOMPARE(entry.category(), entry2.category());
+ QCOMPARE(entry.license(), entry2.license());
+ QCOMPARE(entry.summary().representation(), entry2.summary().representation());
+ QCOMPARE(entry.summary().translated(summary2lang), entry2.summary().translated(summary2lang));
+ QCOMPARE(entry.version(), entry2.version());
+ QCOMPARE(entry.release(), entry2.release());
+ QCOMPARE(entry.releaseDate(), entry2.releaseDate());
+ QCOMPARE(entry.rating(), entry2.rating());
+ QCOMPARE(entry.downloads(), entry2.downloads());
+ QCOMPARE(entry.checksum(), entry2.checksum());
+ QCOMPARE(entry.signature(), entry2.signature());
+}
+
+void testEntry::testAssignment()
+{
+ KNS::Entry entry;
+ KNS::Entry entry2;;
+ entry.setName(KNS::KTranslatable(name));
+ entry.setCategory(category);
+ entry.setLicense(license);
+ KNS::KTranslatable summary(summary1);
+ summary.addString(summary2lang, summary2);
+ entry.setSummary(summary);
+ entry.setVersion(version);
+ entry.setRelease(release);
+ entry.setReleaseDate(releasedate);
+ entry.setRating(rating);
+ entry.setDownloads(downloads);
+ entry.setChecksum(checksum);
+ entry.setSignature(signature);
+ entry2 = entry;
+
+ QCOMPARE(entry.name().representation(), entry2.name().representation());
+ QCOMPARE(entry.category(), entry2.category());
+ QCOMPARE(entry.license(), entry2.license());
+ QCOMPARE(entry.summary().representation(), entry2.summary().representation());
+ QCOMPARE(entry.summary().translated(summary2lang), entry2.summary().translated(summary2lang));
+ QCOMPARE(entry.version(), entry2.version());
+ QCOMPARE(entry.release(), entry2.release());
+ QCOMPARE(entry.releaseDate(), entry2.releaseDate());
+ QCOMPARE(entry.rating(), entry2.rating());
+ QCOMPARE(entry.downloads(), entry2.downloads());
+ QCOMPARE(entry.checksum(), entry2.checksum());
+ QCOMPARE(entry.signature(), entry2.signature());
+}
+
+QTEST_KDEMAIN_CORE(testEntry)
+#include "knewstuffentrytest.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/autotests/testTranslatable.cpp new/knewstuff-4.98.0/autotests/testTranslatable.cpp
--- old/knewstuff-4.97.0/autotests/testTranslatable.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/knewstuff-4.98.0/autotests/testTranslatable.cpp 2014-03-28 19:17:16.000000000 +0100
@@ -0,0 +1,52 @@
+/*
+ This file is part of KNewStuff2.
+ Copyright (c) 2008 Jeremy Whiting <jpwhiting(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library 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
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+// unit test for ktranslatable
+
+#include <QtTest>
+#include <QtCore>
+
+#include <qtest_kde.h>
+
+#include "../knewstuff2/core/ktranslatable.h"
+
+class testTranslatable: public QObject
+{
+ Q_OBJECT
+private Q_SLOTS:
+ void testAddString();
+ void testRepresentation();
+};
+
+void testTranslatable::testRepresentation()
+{
+ KNS::KTranslatable translatable("testRepresentation");
+ QCOMPARE(translatable.representation(), QString("testRepresentation"));
+}
+
+void testTranslatable::testAddString()
+{
+ KNS::KTranslatable translatable;
+ translatable.addString("", "testRepresentation");
+ translatable.addString("1", "1");
+ QCOMPARE(translatable.representation(), QString("testRepresentation"));
+ QCOMPARE(translatable.translated("1"), QString("1"));
+}
+
+QTEST_KDEMAIN_CORE(testTranslatable)
+#include "testTranslatable.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/docs/README.kdxs new/knewstuff-4.98.0/docs/README.kdxs
--- old/knewstuff-4.97.0/docs/README.kdxs 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/docs/README.kdxs 1970-01-01 01:00:00.000000000 +0100
@@ -1,34 +0,0 @@
-KNewStuff2: Desktop Exchange Service implementation (KDXS)
-Josef Spillner <spillner(a)kde.org>
-----------------------------------------------------------------------------
-This is a tech demo which will be folded into the KNewStuff library
-for KDE 4.
-It facilitates the access to the DXS webservice which allows for
-better interaction between the service and its users and contributors.
-DXS is like an interactive interface to a GHNS repository.
-
-To use it, you need Hotstuff installed, which as of now is released with
-the version number 0.9, although updates might be available from KStuff CVS.
-You also need dxs-perl installed from ghns.berlios.de until it gets merged
-into Hotstuff (before 1.0). Also, dxs-perl contains 'dxsclient.pl' to test
-the web service functionality in case KDXS doesn't work.
-A public GHNS repository with DXS currently runs on http://new.kstuff.org.
-
-Some class documentation:
--------------------------
-
-Read src/CLASSES and src/knewstuff2/CLASSES.
-
-Todo:
------
-
-- remove all engine stuff from dialog, make dialog API accessible
-- improved error handling in kdxs
-- implementation of categories() and list() web service methods
-- automatic "upgrade" to cDXS, and "downgrade" to SOAP in soap.cpp
-- automatic recognition of web service capabilities (i.e. ro and rw)
-- automatic user authorisation (how to get user info from kded?)
-- finally, port to KDE 4 and merge into trunk/kdelibs/knewstuff
-
-- [ghns.fd.o] finish WSDL file
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/src/Messages.sh new/knewstuff-4.98.0/src/Messages.sh
--- old/knewstuff-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/knewstuff-4.98.0/src/Messages.sh 2014-03-28 19:17:16.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/knewstuff5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/src/core/engine.cpp new/knewstuff-4.98.0/src/core/engine.cpp
--- old/knewstuff-4.97.0/src/core/engine.cpp 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/src/core/engine.cpp 2014-03-28 19:17:16.000000000 +0100
@@ -99,10 +99,8 @@
qCritical() << "No knsrc file named '" << configfile << "' was found." << endl;
return false;
}
- // FIXME: accessMode() doesn't return NoAccess for non-existing files
- // - bug in kdecore?
- // - this needs to be looked at again until KConfig backend changes for KDE 4
- // the check below is a workaround
+ // KConfig does not actually tell us whether the config file exists, so
+ // we check ourselves for better error messages.
if (QStandardPaths::locate(QStandardPaths::GenericConfigLocation, configfile).isEmpty()) {
emit signalError(i18n("Configuration file not found: \"%1\"", configfile));
qCritical() << "No knsrc file named '" << configfile << "' was found." << endl;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/src/staticxml/staticxmlprovider.cpp new/knewstuff-4.98.0/src/staticxml/staticxmlprovider.cpp
--- old/knewstuff-4.97.0/src/staticxml/staticxmlprovider.cpp 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/src/staticxml/staticxmlprovider.cpp 2014-03-28 19:17:16.000000000 +0100
@@ -72,12 +72,10 @@
mDownloadUrls.insert("downloads", QUrl(url));
}
- // FIXME: what exactly is the following condition supposed to do?
- // FIXME: make sure new QUrl in KDE 4 handles this right
// FIXME: this depends on freedesktop.org icon naming... introduce 'desktopicon'?
QUrl iconurl(xmldata.attribute("icon"));
if (!iconurl.isValid()) {
- iconurl.setPath(xmldata.attribute("icon"));
+ iconurl = QUrl::fromLocalFile(xmldata.attribute("icon"));
}
mIcon = iconurl;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/src/uploaddialog.cpp new/knewstuff-4.98.0/src/uploaddialog.cpp
--- old/knewstuff-4.97.0/src/uploaddialog.cpp 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/src/uploaddialog.cpp 2014-03-28 19:17:16.000000000 +0100
@@ -82,10 +82,8 @@
qCritical() << "No knsrc file named '" << configfile << "' was found." << endl;
success = false;
}
- // FIXME: accessMode() doesn't return NoAccess for non-existing files
- // - bug in kdecore?
- // - this needs to be looked at again until KConfig backend changes for KDE 4
- // the check below is a workaround
+ // KConfig does not actually tell us whether the config file exists, so
+ // we check ourselves for better error messages.
if (QStandardPaths::locate(QStandardPaths::GenericConfigLocation, configfile).isEmpty()) {
qCritical() << "No knsrc file named '" << configfile << "' was found." << endl;
success = false;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/tests/CMakeLists.txt new/knewstuff-4.98.0/tests/CMakeLists.txt
--- old/knewstuff-4.97.0/tests/CMakeLists.txt 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/tests/CMakeLists.txt 2014-03-28 19:17:16.000000000 +0100
@@ -1,61 +1,27 @@
-project(knewstuff2tests)
-set(CMAKE_AUTOMOC TRUE)
+macro(knewstuff_executable_tests)
+ foreach(_testname ${ARGN})
+ add_executable(${_testname} ${_testname}.cpp)
+ target_link_libraries(${_testname} KF5::NewStuff Qt5::Xml Qt5::Test)
+ target_compile_definitions(${_testname} PRIVATE
+ KNSSRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}/\\""
+ KNSBUILDDIR="\\"${CMAKE_CURRENT_BINARY_DIR}\\"")
+ endforeach()
+endmacro()
-include(ECMMarkAsTest)
-
-set(CMAKE_SKIP_RPATH TRUE)
-
-MACRO(KNEWSTUFF_UNIT_TESTS)
- FOREACH(_testname ${ARGN})
- add_executable(${_testname} ${_testname}.cpp)
- add_test("knewstuff2-${_testname}" ${_testname})
- ecm_mark_as_test(${_testname})
- target_link_libraries(${_testname} knewstuff2 Qt5::Xml Qt5::Test)
- set_target_properties(${_testname} PROPERTIES COMPILE_FLAGS -DKNSSRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}/\\""\ -DKNSBUILDDIR="\\"${CMAKE_CURRENT_BINARY_DIR}\\"")
- ENDFOREACH(_testname)
-ENDMACRO(KNEWSTUFF_UNIT_TESTS)
-
-MACRO(KNEWSTUFF_EXECUTABLE_TESTS)
- FOREACH(_testname ${ARGN})
- add_executable(${_testname} ${_testname}.cpp)
- ecm_mark_as_test(${_testname})
- target_link_libraries(${_testname} knewstuff2 Qt5::Xml Qt5::Test)
- set_target_properties(${_testname} PROPERTIES COMPILE_FLAGS -DKNSSRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}/\\""\ -DKNSBUILDDIR="\\"${CMAKE_CURRENT_BINARY_DIR}\\"")
- ENDFOREACH(_testname)
-ENDMACRO(KNEWSTUFF_EXECUTABLE_TESTS)
-
-##########################
-
-# unit tests
-
-if(NOT KDE_NO_DEPRECATED)
-
-# KNEWSTUFF_UNIT_TESTS(
-# knewstuffauthortest
-# knewstuffentrytest
-# testTranslatable
-# )
-#
-# KNEWSTUFF_EXECUTABLE_TESTS(
+# FIXME: port to new API
+#knewstuff_executable_tests(
# knewstuff2_test
# knewstuff2_download
# knewstuff2_standard
# knewstuff2_cache
-# )
-
-##########################
+#)
#set(kdxspreview_SRCS
# kdxspreview.cpp
# kdxsview.cpp
#)
-
-#add_definitions(-DKNSSRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\")
-#set(CMAKE_SKIP_RPATH TRUE)
-
-#kde4_add_executable(kdxspreview TEST ${kdxspreview_SRCS})
-
-#target_link_libraries(kdxspreview knewstuff2)
+#add_executable(kdxspreview ${kdxspreview_SRCS})
+#target_link_libraries(kdxspreview KF5::NewStuff)
+# FIXME: test data should not be installed
#install(FILES kdxspreviewrc DESTINATION ${CONFIG_INSTALL_DIR})
-endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/tests/README.tests new/knewstuff-4.98.0/tests/README.tests
--- old/knewstuff-4.97.0/tests/README.tests 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/tests/README.tests 2014-03-28 19:17:16.000000000 +0100
@@ -1,8 +1,6 @@
KNewStuff2 test applications
============================
-If you want the test apps, set -DKDE4_BUILD_TESTS=ON for cmake.
-
In order to understand the test structure, remember the engine class
hierarchy of the library:
KNS::CoreEngine - GHNS provider loading/upload/download
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/tests/knewstuffauthortest.cpp new/knewstuff-4.98.0/tests/knewstuffauthortest.cpp
--- old/knewstuff-4.97.0/tests/knewstuffauthortest.cpp 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/tests/knewstuffauthortest.cpp 1970-01-01 01:00:00.000000000 +0100
@@ -1,85 +0,0 @@
-/*
- This file is part of KNewStuff2.
- Copyright (c) 2008 Jeremy Whiting <jpwhiting(a)kde.org>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// unit test for author
-
-#include <QtTest>
-#include <QtCore>
-
-#include <qtest_kde.h>
-
-#include "../knewstuff2/core/author.h"
-
-const QString name = "Name";
-const QString email = "Email(a)nowhere.com";
-const QString jabber = "something(a)kdetalk.net";
-const QString homepage = "http://www.myhomepage.com";
-
-class testAuthor: public QObject
-{
- Q_OBJECT
-private Q_SLOTS:
- void testProperties();
- void testCopy();
- void testAssignment();
-};
-
-void testAuthor::testProperties()
-{
- KNS::Author author;
- author.setName(name);
- author.setEmail(email);
- author.setJabber(jabber);
- author.setHomepage(homepage);
- QCOMPARE(author.name(), name);
- QCOMPARE(author.email(), email);
- QCOMPARE(author.jabber(), jabber);
- QCOMPARE(author.homepage(), homepage);
-}
-
-void testAuthor::testCopy()
-{
- KNS::Author author;
- author.setName(name);
- author.setEmail(email);
- author.setJabber(jabber);
- author.setHomepage(homepage);
- KNS::Author author2(author);
- QCOMPARE(author.name(), author2.name());
- QCOMPARE(author.email(), author2.email());
- QCOMPARE(author.jabber(), author2.jabber());
- QCOMPARE(author.homepage(), author2.homepage());
-}
-
-void testAuthor::testAssignment()
-{
- KNS::Author author;
- KNS::Author author2;
- author.setName(name);
- author.setEmail(email);
- author.setJabber(jabber);
- author.setHomepage(homepage);
- author2 = author;
- QCOMPARE(author.name(), author2.name());
- QCOMPARE(author.email(), author2.email());
- QCOMPARE(author.jabber(), author2.jabber());
- QCOMPARE(author.homepage(), author2.homepage());
-}
-
-QTEST_KDEMAIN_CORE(testAuthor)
-#include "knewstuffauthortest.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/tests/knewstuffentrytest.cpp new/knewstuff-4.98.0/tests/knewstuffentrytest.cpp
--- old/knewstuff-4.97.0/tests/knewstuffentrytest.cpp 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/tests/knewstuffentrytest.cpp 1970-01-01 01:00:00.000000000 +0100
@@ -1,149 +0,0 @@
-/*
- This file is part of KNewStuff2.
- Copyright (c) 2008 Jeremy Whiting <jpwhiting(a)kde.org>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// unit test for entry
-
-#include <QtTest>
-#include <QtCore>
-
-#include <qtest_kde.h>
-
-#include "../knewstuff2/core/entry.h"
-#include "../knewstuff2/core/ktranslatable.h"
-
-const QString name = "Name";
-const QString category = "Category";
-const QString license = "GPLv2+";
-const QString summary1 = "Summary of contents";
-const QString summary2lang = "de";
-const QString summary2 = "Translated summary of contents";
-const QString version = "v0.1";
-const int release = 1;
-const QDate releasedate = QDate::currentDate();
-const int rating = 80;
-const int downloads = 5000;
-const QString checksum = "BAADF00D";
-const QString signature = "DEADBEEF";
-
-class testEntry: public QObject
-{
- Q_OBJECT
-private Q_SLOTS:
- void testProperties();
- void testCopy();
- void testAssignment();
-};
-
-void testEntry::testProperties()
-{
- KNS::Entry entry;
- entry.setName(KNS::KTranslatable(name));
- entry.setCategory(category);
- entry.setLicense(license);
- KNS::KTranslatable summary(summary1);
- summary.addString(summary2lang, summary2);
- entry.setSummary(summary);
- entry.setVersion(version);
- entry.setRelease(release);
- entry.setReleaseDate(releasedate);
- entry.setRating(rating);
- entry.setDownloads(downloads);
- entry.setChecksum(checksum);
- entry.setSignature(signature);
-
- QCOMPARE(entry.name().representation(), name);
- QCOMPARE(entry.category(), category);
- QCOMPARE(entry.license(), license);
- QCOMPARE(entry.summary().representation(), summary1);
- QCOMPARE(entry.summary().translated(summary2lang), summary2);
- QCOMPARE(entry.version(), version);
- QCOMPARE(entry.release(), release);
- QCOMPARE(entry.releaseDate(), releasedate);
- QCOMPARE(entry.rating(), rating);
- QCOMPARE(entry.downloads(), downloads);
- QCOMPARE(entry.checksum(), checksum);
- QCOMPARE(entry.signature(), signature);
-}
-
-void testEntry::testCopy()
-{
- KNS::Entry entry;
- entry.setName(KNS::KTranslatable(name));
- entry.setCategory(category);
- entry.setLicense(license);
- KNS::KTranslatable summary(summary1);
- summary.addString(summary2lang, summary2);
- entry.setSummary(summary);
- entry.setVersion(version);
- entry.setRelease(release);
- entry.setReleaseDate(releasedate);
- entry.setRating(rating);
- entry.setDownloads(downloads);
- entry.setChecksum(checksum);
- entry.setSignature(signature);
- KNS::Entry entry2(entry);
-
- QCOMPARE(entry.name().representation(), entry2.name().representation());
- QCOMPARE(entry.category(), entry2.category());
- QCOMPARE(entry.license(), entry2.license());
- QCOMPARE(entry.summary().representation(), entry2.summary().representation());
- QCOMPARE(entry.summary().translated(summary2lang), entry2.summary().translated(summary2lang));
- QCOMPARE(entry.version(), entry2.version());
- QCOMPARE(entry.release(), entry2.release());
- QCOMPARE(entry.releaseDate(), entry2.releaseDate());
- QCOMPARE(entry.rating(), entry2.rating());
- QCOMPARE(entry.downloads(), entry2.downloads());
- QCOMPARE(entry.checksum(), entry2.checksum());
- QCOMPARE(entry.signature(), entry2.signature());
-}
-
-void testEntry::testAssignment()
-{
- KNS::Entry entry;
- KNS::Entry entry2;;
- entry.setName(KNS::KTranslatable(name));
- entry.setCategory(category);
- entry.setLicense(license);
- KNS::KTranslatable summary(summary1);
- summary.addString(summary2lang, summary2);
- entry.setSummary(summary);
- entry.setVersion(version);
- entry.setRelease(release);
- entry.setReleaseDate(releasedate);
- entry.setRating(rating);
- entry.setDownloads(downloads);
- entry.setChecksum(checksum);
- entry.setSignature(signature);
- entry2 = entry;
-
- QCOMPARE(entry.name().representation(), entry2.name().representation());
- QCOMPARE(entry.category(), entry2.category());
- QCOMPARE(entry.license(), entry2.license());
- QCOMPARE(entry.summary().representation(), entry2.summary().representation());
- QCOMPARE(entry.summary().translated(summary2lang), entry2.summary().translated(summary2lang));
- QCOMPARE(entry.version(), entry2.version());
- QCOMPARE(entry.release(), entry2.release());
- QCOMPARE(entry.releaseDate(), entry2.releaseDate());
- QCOMPARE(entry.rating(), entry2.rating());
- QCOMPARE(entry.downloads(), entry2.downloads());
- QCOMPARE(entry.checksum(), entry2.checksum());
- QCOMPARE(entry.signature(), entry2.signature());
-}
-
-QTEST_KDEMAIN_CORE(testEntry)
-#include "knewstuffentrytest.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knewstuff-4.97.0/tests/testTranslatable.cpp new/knewstuff-4.98.0/tests/testTranslatable.cpp
--- old/knewstuff-4.97.0/tests/testTranslatable.cpp 2014-03-01 12:51:19.000000000 +0100
+++ new/knewstuff-4.98.0/tests/testTranslatable.cpp 1970-01-01 01:00:00.000000000 +0100
@@ -1,52 +0,0 @@
-/*
- This file is part of KNewStuff2.
- Copyright (c) 2008 Jeremy Whiting <jpwhiting(a)kde.org>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// unit test for ktranslatable
-
-#include <QtTest>
-#include <QtCore>
-
-#include <qtest_kde.h>
-
-#include "../knewstuff2/core/ktranslatable.h"
-
-class testTranslatable: public QObject
-{
- Q_OBJECT
-private Q_SLOTS:
- void testAddString();
- void testRepresentation();
-};
-
-void testTranslatable::testRepresentation()
-{
- KNS::KTranslatable translatable("testRepresentation");
- QCOMPARE(translatable.representation(), QString("testRepresentation"));
-}
-
-void testTranslatable::testAddString()
-{
- KNS::KTranslatable translatable;
- translatable.addString("", "testRepresentation");
- translatable.addString("1", "1");
- QCOMPARE(translatable.representation(), QString("testRepresentation"));
- QCOMPARE(translatable.translated("1"), QString("1"));
-}
-
-QTEST_KDEMAIN_CORE(testTranslatable)
-#include "testTranslatable.moc"
--
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 kmediaplayer for openSUSE:Factory checked in at 2014-04-02 17:22:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kmediaplayer (Old)
and /work/SRC/openSUSE:Factory/.kmediaplayer.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kmediaplayer"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kmediaplayer/kmediaplayer.changes 2014-03-10 12:18:10.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kmediaplayer.new/kmediaplayer.changes 2014-04-02 17:22:27.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:46 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kmediaplayer-4.97.0.tar.xz
New:
----
kmediaplayer-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kmediaplayer.spec ++++++
--- /var/tmp/diff_new_pack.u1hPZw/_old 2014-04-02 17:22:28.000000000 +0200
+++ /var/tmp/diff_new_pack.u1hPZw/_new 2014-04-02 17:22:28.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5MediaPlayer5
Name: kmediaplayer
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kbookmarks-devel >= %{_kf5_version}
BuildRequires: kcompletion-devel >= %{_kf5_version}
++++++ kmediaplayer-4.97.0.tar.xz -> kmediaplayer-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kmediaplayer-4.97.0/CMakeLists.txt new/kmediaplayer-4.98.0/CMakeLists.txt
--- old/kmediaplayer-4.97.0/CMakeLists.txt 2014-03-01 12:51:17.000000000 +0100
+++ new/kmediaplayer-4.98.0/CMakeLists.txt 2014-03-28 19:17:15.000000000 +0100
@@ -6,7 +6,7 @@
#
# CMake stuff from ECM
#
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(KDEInstallDirs)
@@ -19,7 +19,7 @@
include(ECMGenerateHeaders)
include(ECMPackageConfigHelpers)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
#
# Version info
@@ -38,9 +38,9 @@
#
# Dependencies
#
-set(QT_REQUIRED_VERSION 5.2.0)
-find_package(Qt5DBus ${QT_REQUIRED_VERSION} REQUIRED NO_MODULE)
-find_package(Qt5Widgets ${QT_REQUIRED_VERSION} REQUIRED NO_MODULE)
+set(REQUIRED_QT_VERSION 5.2.0)
+find_package(Qt5DBus ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
+find_package(Qt5Widgets ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
find_package(KF5Parts ${KF5_VERSION} REQUIRED)
find_package(KF5XmlGui ${KF5_VERSION} REQUIRED)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kmediaplayer-4.97.0/autotests/CMakeLists.txt new/kmediaplayer-4.98.0/autotests/CMakeLists.txt
--- old/kmediaplayer-4.97.0/autotests/CMakeLists.txt 2014-03-01 12:51:17.000000000 +0100
+++ new/kmediaplayer-4.98.0/autotests/CMakeLists.txt 2014-03-28 19:17:15.000000000 +0100
@@ -1,4 +1,4 @@
-find_package(Qt5Test ${QT_REQUIRED_VERSION} REQUIRED NO_MODULE)
+find_package(Qt5Test ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
include(ECMMarkAsTest)
macro(KMEDIAPLAYER_EXECUTABLE_TESTS)
--
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 kjsembed for openSUSE:Factory checked in at 2014-04-02 17:22:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kjsembed (Old)
and /work/SRC/openSUSE:Factory/.kjsembed.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kjsembed"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kjsembed/kjsembed.changes 2014-03-10 12:17:51.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kjsembed.new/kjsembed.changes 2014-04-02 17:22:26.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:45 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kjsembed-4.97.0.tar.xz
New:
----
kjsembed-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kjsembed.spec ++++++
--- /var/tmp/diff_new_pack.haEP3O/_old 2014-04-02 17:22:27.000000000 +0200
+++ /var/tmp/diff_new_pack.haEP3O/_new 2014-04-02 17:22:27.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5JsEmbed5
Name: kjsembed
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kdoctools-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kjsembed-4.97.0.tar.xz -> kjsembed-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjsembed-4.97.0/CMakeLists.txt new/kjsembed-4.98.0/CMakeLists.txt
--- old/kjsembed-4.97.0/CMakeLists.txt 2014-03-01 15:43:08.000000000 +0100
+++ new/kjsembed-4.98.0/CMakeLists.txt 2014-03-28 19:17:13.000000000 +0100
@@ -2,11 +2,11 @@
project(KJsEmbed)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION "5.2")
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
find_package(Qt5 "${REQUIRED_QT_VERSION}" CONFIG REQUIRED UiTools Widgets Xml Svg)
include(KDEInstallDirs)
include(KDEFrameworkCompilerSettings)
@@ -18,7 +18,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KJSEMBED
#VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kjsembed_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5JsEmbedConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjsembed-4.97.0/docs/kjscmd/man-kjscmd5.1.docbook new/kjsembed-4.98.0/docs/kjscmd/man-kjscmd5.1.docbook
--- old/kjsembed-4.97.0/docs/kjscmd/man-kjscmd5.1.docbook 2014-03-01 15:43:08.000000000 +0100
+++ new/kjsembed-4.98.0/docs/kjscmd/man-kjscmd5.1.docbook 2014-03-28 19:17:13.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE"><!-- change language only here -->
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjsembed-4.97.0/kjsembed.yaml new/kjsembed-4.98.0/kjsembed.yaml
--- old/kjsembed-4.97.0/kjsembed.yaml 2014-03-01 15:43:08.000000000 +0100
+++ new/kjsembed-4.98.0/kjsembed.yaml 2014-03-28 19:17:13.000000000 +0100
@@ -1 +1,3 @@
tier: 3
+framework-dependencies:
+ - kdoctools
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjsembed-4.97.0/src/Messages.sh new/kjsembed-4.98.0/src/Messages.sh
--- old/kjsembed-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kjsembed-4.98.0/src/Messages.sh 2014-03-28 19:17:13.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kjsembed5.pot
--
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 kjs for openSUSE:Factory checked in at 2014-04-02 17:22:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kjs (Old)
and /work/SRC/openSUSE:Factory/.kjs.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kjs"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kjs/kjs.changes 2014-03-10 12:17:31.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kjs.new/kjs.changes 2014-04-02 17:22:25.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:45 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kjs-4.97.0.tar.xz
New:
----
kjs-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kjs.spec ++++++
--- /var/tmp/diff_new_pack.vdbPyk/_old 2014-04-02 17:22:25.000000000 +0200
+++ /var/tmp/diff_new_pack.vdbPyk/_new 2014-04-02 17:22:25.000000000 +0200
@@ -18,10 +18,10 @@
%define sonum 5
Name: kjs
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pcre-devel
++++++ kjs-4.97.0.tar.xz -> kjs-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjs-4.97.0/CMakeLists.txt new/kjs-4.98.0/CMakeLists.txt
--- old/kjs-4.97.0/CMakeLists.txt 2014-03-01 12:51:13.000000000 +0100
+++ new/kjs-4.98.0/CMakeLists.txt 2014-03-28 19:17:11.000000000 +0100
@@ -3,7 +3,7 @@
project(KJS)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
include(FeatureSummary)
@@ -12,7 +12,7 @@
include(ECMSetupVersion)
include(ECMMarkNonGuiExecutable)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KJS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kjs_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjs-4.97.0/src/kjs/CMakeLists.txt new/kjs-4.98.0/src/kjs/CMakeLists.txt
--- old/kjs-4.97.0/src/kjs/CMakeLists.txt 2014-03-01 12:51:13.000000000 +0100
+++ new/kjs-4.98.0/src/kjs/CMakeLists.txt 2014-03-28 19:17:11.000000000 +0100
@@ -203,15 +203,11 @@
set(kjs_SRCS kjs.cpp)
-#required by win32 see kdelibs/cmake/modules/kde4Macros.cmake kde4_add_manifest
-set (kjs_bin_OUTPUT_NAME kjs5)
-
# 'kjs_bin' because cmake doesn't like having a lib and app with the same name
# This is a developer tool, not intended for normal user installs
add_executable(kjs_bin ${kjs_SRCS})
ecm_mark_nongui_executable(kjs_bin)
-
-set_target_properties(kjs_bin PROPERTIES RUNTIME_OUTPUT_NAME ${kjs_bin_OUTPUT_NAME})
+set_target_properties(kjs_bin PROPERTIES RUNTIME_OUTPUT_NAME kjs5)
target_link_libraries(kjs_bin KF5JS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjs-4.97.0/src/kjs/create_hash_table new/kjs-4.98.0/src/kjs/create_hash_table
--- old/kjs-4.97.0/src/kjs/create_hash_table 2014-03-01 12:51:13.000000000 +0100
+++ new/kjs-4.98.0/src/kjs/create_hash_table 2014-03-28 19:17:11.000000000 +0100
@@ -245,7 +245,7 @@
if (defined($entry)) {
my $key = $keys[$entry];
print " \{ \"" . $key . "\"";
- print ", " . $values[$entry];
+ print ", static_cast<int>(" . $values[$entry] . ")";
my $kjsattrs = $attrs[$entry];
if ($kjsattrs ne "0") {
$kjsattrs =~ s/([^|]+)/KJS::$1/g; # DontDelete|Function -> KJS::DontDelete|KJS::Function
--
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 kjobwidgets for openSUSE:Factory checked in at 2014-04-02 17:22:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kjobwidgets (Old)
and /work/SRC/openSUSE:Factory/.kjobwidgets.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kjobwidgets"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kjobwidgets/kjobwidgets.changes 2014-03-10 12:17:46.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kjobwidgets.new/kjobwidgets.changes 2014-04-02 17:22:24.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:44 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kjobwidgets-4.97.0.tar.xz
New:
----
kjobwidgets-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kjobwidgets.spec ++++++
--- /var/tmp/diff_new_pack.1Qd408/_old 2014-04-02 17:22:24.000000000 +0200
+++ /var/tmp/diff_new_pack.1Qd408/_new 2014-04-02 17:22:24.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5JobWidgets5
Name: kjobwidgets
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kjobwidgets-4.97.0.tar.xz -> kjobwidgets-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjobwidgets-4.97.0/CMakeLists.txt new/kjobwidgets-4.98.0/CMakeLists.txt
--- old/kjobwidgets-4.97.0/CMakeLists.txt 2014-03-01 12:51:11.000000000 +0100
+++ new/kjobwidgets-4.98.0/CMakeLists.txt 2014-03-28 19:17:09.000000000 +0100
@@ -2,7 +2,7 @@
project(KJobWidgets)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -10,10 +10,10 @@
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
-set(QT_REQUIRED_VERSION 5.2.0)
-find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets DBus)
+set(REQUIRED_QT_VERSION 5.2.0)
+find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets DBus)
if (NOT APPLE)
find_package(X11)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjobwidgets-4.97.0/KF5JobWidgetsConfig.cmake.in new/kjobwidgets-4.98.0/KF5JobWidgetsConfig.cmake.in
--- old/kjobwidgets-4.97.0/KF5JobWidgetsConfig.cmake.in 2014-03-01 12:51:11.000000000 +0100
+++ new/kjobwidgets-4.98.0/KF5JobWidgetsConfig.cmake.in 2014-03-28 19:17:09.000000000 +0100
@@ -2,7 +2,7 @@
set(KJOBWIDGETS_DBUS_INTERFACES_DIR "${PACKAGE_PREFIX_DIR}/@DBUS_INTERFACES_INSTALL_DIR@")
-find_dependency(Qt5Widgets @QT_REQUIRED_VERSION@)
+find_dependency(Qt5Widgets @REQUIRED_QT_VERSION@)
find_dependency(KF5CoreAddons "@KF5_VERSION@")
find_dependency(KF5WidgetsAddons "@KF5_VERSION@")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjobwidgets-4.97.0/src/Messages.sh new/kjobwidgets-4.98.0/src/Messages.sh
--- old/kjobwidgets-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kjobwidgets-4.98.0/src/Messages.sh 2014-03-28 19:17:09.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kjobwidgets5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjobwidgets-4.97.0/src/kjobtrackerformatters.cpp new/kjobwidgets-4.98.0/src/kjobtrackerformatters.cpp
--- old/kjobwidgets-4.97.0/src/kjobtrackerformatters.cpp 2014-03-01 12:51:11.000000000 +0100
+++ new/kjobwidgets-4.98.0/src/kjobtrackerformatters.cpp 2014-03-28 19:17:09.000000000 +0100
@@ -26,23 +26,18 @@
#include <QCoreApplication>
-static QString tr(const char *message, const char *disambiguation = 0, int n = -1)
-{
- return QCoreApplication::translate("KJobTrackerFormatters", message, disambiguation, n);
-}
-
QString KJobTrackerFormatters::byteSize(double size)
{
QList<QString> units;
- units << tr("%1 B")
- << tr("%1 KiB")
- << tr("%1 MiB")
- << tr("%1 GiB")
- << tr("%1 TiB")
- << tr("%1 PiB")
- << tr("%1 EiB")
- << tr("%1 ZiB")
- << tr("%1 YiB");
+ units << QCoreApplication::translate("KJobTrackerFormatters", "%1 B")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 KiB")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 MiB")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 GiB")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 TiB")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 PiB")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 EiB")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 ZiB")
+ << QCoreApplication::translate("KJobTrackerFormatters", "%1 YiB");
int unit = 0; // Selects what unit to use
const double multiplier = 1024.0;
@@ -62,22 +57,22 @@
QString KJobTrackerFormatters::daysDuration(int n)
{
- return tr("%n day(s)", "@item:intext", n);
+ return QCoreApplication::translate("KJobTrackerFormatters", "%n day(s)", "@item:intext", n);
}
QString KJobTrackerFormatters::hoursDuration(int n)
{
- return tr("%n hour(s)", "@item:intext", n);
+ return QCoreApplication::translate("KJobTrackerFormatters", "%n hour(s)", "@item:intext", n);
}
QString KJobTrackerFormatters::minutesDuration(int n)
{
- return tr("%n minute(s)", "@item:intext", n);
+ return QCoreApplication::translate("KJobTrackerFormatters", "%n minute(s)", "@item:intext", n);
}
QString KJobTrackerFormatters::secondsDuration(int n)
{
- return tr("%n second(s)", "@item:intext", n);
+ return QCoreApplication::translate("KJobTrackerFormatters", "%n second(s)", "@item:intext", n);
}
QString KJobTrackerFormatters::duration(unsigned long mSec)
@@ -98,15 +93,15 @@
}
if (days && hours) {
- return tr("%1 and %2", "@item:intext days and hours.").arg(daysDuration(days)).arg(hoursDuration(hours));
+ return QCoreApplication::translate("KJobTrackerFormatters", "%1 and %2", "@item:intext days and hours.").arg(daysDuration(days)).arg(hoursDuration(hours));
} else if (days) {
return daysDuration(days);
} else if (hours && minutes) {
- return tr("%1 and %2", "@item:intext hours and minutes.").arg(hoursDuration(hours)).arg(minutesDuration(minutes));
+ return QCoreApplication::translate("KJobTrackerFormatters", "%1 and %2", "@item:intext hours and minutes.").arg(hoursDuration(hours)).arg(minutesDuration(minutes));
} else if (hours) {
return hoursDuration(hours);
} else if (minutes && seconds) {
- return tr("%1 and %2", "@item:intext minutes and seconds.").arg(minutesDuration(minutes)).arg(secondsDuration(seconds));
+ return QCoreApplication::translate("KJobTrackerFormatters", "%1 and %2", "@item:intext minutes and seconds.").arg(minutesDuration(minutes)).arg(secondsDuration(seconds));
} else if (minutes) {
return minutesDuration(minutes);
} else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjobwidgets-4.97.0/src/kstatusbarjobtracker.cpp new/kjobwidgets-4.98.0/src/kstatusbarjobtracker.cpp
--- old/kjobwidgets-4.97.0/src/kstatusbarjobtracker.cpp 2014-03-01 12:51:11.000000000 +0100
+++ new/kjobwidgets-4.98.0/src/kstatusbarjobtracker.cpp 2014-03-28 19:17:09.000000000 +0100
@@ -23,6 +23,7 @@
#include "kstatusbarjobtracker_p.h"
#include "kjobtrackerformatters_p.h"
+#include <QCoreApplication>
#include <QObject>
#include <QWidget>
#include <QPushButton>
@@ -159,7 +160,7 @@
box->addWidget(stack);
if (q->d->showStopButton) {
- button = new QPushButton(tr("Stop"), widget);
+ button = new QPushButton(QCoreApplication::translate("KStatusBarJobTracker", "Stop"), widget);
box->addWidget(button);
connect(button, SIGNAL(clicked(bool)),
this, SLOT(killJob()));
@@ -240,9 +241,9 @@
void KStatusBarJobTracker::Private::ProgressWidget::speed(unsigned long value)
{
if (value == 0) { // speed is measured in bytes-per-second
- label->setText(tr(" Stalled "));
+ label->setText(QCoreApplication::translate("KStatusBarJobTracker", " Stalled "));
} else {
- label->setText(tr(" %1/s ").arg(KJobTrackerFormatters::byteSize(value)));
+ label->setText(QCoreApplication::translate("KStatusBarJobTracker", " %1/s ").arg(KJobTrackerFormatters::byteSize(value)));
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kjobwidgets-4.97.0/src/kwidgetjobtracker.cpp new/kjobwidgets-4.98.0/src/kwidgetjobtracker.cpp
--- old/kjobwidgets-4.97.0/src/kwidgetjobtracker.cpp 2014-03-01 12:51:11.000000000 +0100
+++ new/kjobwidgets-4.98.0/src/kwidgetjobtracker.cpp 2014-03-28 19:17:09.000000000 +0100
@@ -24,6 +24,7 @@
#include "kwidgetjobtracker_p.h"
#include "kjobtrackerformatters_p.h"
+#include <QCoreApplication>
#include <QDir>
#include <QProcess>
#include <QTimer>
@@ -265,7 +266,10 @@
{
setWindowTitle(title);
caption = title;
- sourceInvite->setText(tr("%1:", QString("%1 is the label, we add a ':' to it").arg(field1.first).toLatin1().data()).arg(field1.first));
+ sourceInvite->setText(
+ QCoreApplication::translate("KWidgetJobTracker",
+ "%1:", "%1 is the label, we add a ':' to it"
+ ).arg(field1.first));
sourceEdit->setText(field1.second);
if (field2.first.isEmpty()) {
@@ -273,7 +277,10 @@
} else {
setDestVisible(true);
checkDestination(QUrl(field2.second));
- destInvite->setText(tr("%1:", QString("%1 is the label, we add a ':' to it").arg(field2.first).toLatin1().data()).arg(field2.first));
+ destInvite->setText(
+ QCoreApplication::translate("KWidgetJobTracker",
+ "%1:", "%1 is the label, we add a ':' to it"
+ ).arg(field2.first));
destEdit->setText(field2.second);
}
}
@@ -323,7 +330,7 @@
processedSize = amount;
if (totalSizeKnown) {
- tmp = tr("%1 of %2 complete", "", amount)
+ tmp = QCoreApplication::translate("KWidgetJobTracker", "%1 of %2 complete", "", amount)
.arg(KJobTrackerFormatters::byteSize(amount))
.arg(KJobTrackerFormatters::byteSize(totalSize));
} else {
@@ -341,9 +348,9 @@
}
processedDirs = amount;
- tmp = tr("%1 / %n folder(s)", "", totalDirs).arg(processedDirs);
+ tmp = QCoreApplication::translate("KWidgetJobTracker", "%1 / %n folder(s)", "", totalDirs).arg(processedDirs);
tmp += " ";
- tmp += tr("%1 / %n file(s)", "", totalFiles).arg(processedFiles);
+ tmp += QCoreApplication::translate("KWidgetJobTracker", "%1 / %n file(s)", "", totalFiles).arg(processedFiles);
progressLabel->setText(tmp);
break;
@@ -354,10 +361,10 @@
processedFiles = amount;
if (totalDirs > 1) {
- tmp = tr("%1 / %n folder(s)", "", totalDirs).arg(processedDirs);
+ tmp = QCoreApplication::translate("KWidgetJobTracker", "%1 / %n folder(s)", "", totalDirs).arg(processedDirs);
tmp += " ";
}
- tmp += tr("%1 / %n file(s)", "", totalFiles).arg(processedFiles);
+ tmp += QCoreApplication::translate("KWidgetJobTracker", "%1 / %n file(s)", "", totalFiles).arg(processedFiles);
progressLabel->setText(tmp);
}
}
@@ -367,12 +374,12 @@
QString title = caption + " (";
if (totalSizeKnown) {
- title += tr("%1% of %2").arg(percent).arg(
+ title += QCoreApplication::translate("KWidgetJobTracker", "%1% of %2").arg(percent).arg(
KJobTrackerFormatters::byteSize(totalSize));
} else if (totalFiles) {
- title += tr("%1% of %n file(s)", "", totalFiles).arg(percent);
+ title += QCoreApplication::translate("KWidgetJobTracker", "%1% of %n file(s)", "", totalFiles).arg(percent);
} else {
- title += tr("%1%").arg(percent);
+ title += QCoreApplication::translate("KWidgetJobTracker", "%1%").arg(percent);
}
title += ')';
@@ -385,15 +392,15 @@
void KWidgetJobTracker::Private::ProgressWidget::speed(unsigned long value)
{
if (value == 0) {
- speedLabel->setText(tr("Stalled"));
+ speedLabel->setText(QCoreApplication::translate("KWidgetJobTracker", "Stalled"));
} else {
const QString speedStr = KJobTrackerFormatters::byteSize(value);
if (totalSizeKnown) {
const int remaining = 1000 * (totalSize - processedSize) / value;
- speedLabel->setText(tr("%1/s (%2 remaining)", "", remaining).arg(speedStr).arg(
+ speedLabel->setText(QCoreApplication::translate("KWidgetJobTracker", "%1/s (%2 remaining)", "", remaining).arg(speedStr).arg(
KJobTrackerFormatters::duration(remaining)));
} else { // total size is not known (#24228)
- speedLabel->setText(tr("%1/s", "speed in bytes per second").arg(speedStr));
+ speedLabel->setText(QCoreApplication::translate("KWidgetJobTracker", "%1/s", "speed in bytes per second").arg(speedStr));
}
}
}
@@ -401,9 +408,9 @@
void KWidgetJobTracker::Private::ProgressWidget::slotClean()
{
percent(100);
- cancelClose->setText(tr("&Close"));
+ cancelClose->setText(QCoreApplication::translate("KWidgetJobTracker", "&Close"));
cancelClose->setIcon(QIcon::fromTheme("window-close"));
- cancelClose->setToolTip(tr("Close the current window or document"));
+ cancelClose->setToolTip(QCoreApplication::translate("KWidgetJobTracker", "Close the current window or document"));
openFile->setEnabled(true);
if (!totalSizeKnown || totalSize < processedSize) {
totalSize = processedSize;
@@ -416,20 +423,20 @@
if (!s) {
s = 1;
}
- speedLabel->setText(tr("%1/s (done)").arg(
+ speedLabel->setText(QCoreApplication::translate("KWidgetJobTracker", "%1/s (done)").arg(
KJobTrackerFormatters::byteSize(1000 * totalSize / s)));
}
}
void KWidgetJobTracker::Private::ProgressWidget::suspended()
{
- pauseButton->setText(tr("&Resume"));
+ pauseButton->setText(QCoreApplication::translate("KWidgetJobTracker", "&Resume"));
suspendedProperty = true;
}
void KWidgetJobTracker::Private::ProgressWidget::resumed()
{
- pauseButton->setText(tr("&Pause"));
+ pauseButton->setText(QCoreApplication::translate("KWidgetJobTracker", "&Pause"));
suspendedProperty = false;
}
@@ -453,7 +460,7 @@
const int spacingHint = style()->pixelMetric(QStyle::PM_DefaultLayoutSpacing);
grid->addItem(new QSpacerItem(spacingHint, 0), 0, 1);
// filenames or action name
- sourceInvite = new QLabel(tr("Source:", "The source url of a job"), this);
+ sourceInvite = new QLabel(QCoreApplication::translate("KWidgetJobTracker", "Source:", "The source url of a job"), this);
grid->addWidget(sourceInvite, 0, 0);
sourceEdit = new KSqueezedTextLabel(this);
@@ -461,7 +468,7 @@
sourceEdit->installEventFilter(this);
grid->addWidget(sourceEdit, 0, 2);
- destInvite = new QLabel(tr("Destination:", "The destination url of a job"), this);
+ destInvite = new QLabel(QCoreApplication::translate("KWidgetJobTracker", "Destination:", "The destination url of a job"), this);
grid->addWidget(destInvite, 1, 0);
destEdit = new KSqueezedTextLabel(this);
@@ -485,7 +492,7 @@
arrowButton = new QPushButton(this);
arrowButton->setMaximumSize(QSize(32, 25));
arrowButton->setIcon(QIcon::fromTheme("arrow-down"));
- arrowButton->setToolTip(tr("Click this to expand the dialog, to show details"));
+ arrowButton->setToolTip(QCoreApplication::translate("KWidgetJobTracker", "Click this to expand the dialog, to show details"));
arrowState = Qt::DownArrow;
connect(arrowButton, SIGNAL(clicked()), this, SLOT(_k_arrowToggled()));
hBox->addWidget(arrowButton);
@@ -500,7 +507,7 @@
resumeLabel = new QLabel(this);
hBox->addWidget(resumeLabel);
- pauseButton = new QPushButton(tr("&Pause"), this);
+ pauseButton = new QPushButton(QCoreApplication::translate("KWidgetJobTracker", "&Pause"), this);
connect(pauseButton, SIGNAL(clicked()), this, SLOT(_k_pauseResumeClicked()));
hBox->addWidget(pauseButton);
@@ -519,7 +526,7 @@
hBox->addWidget(progressLabel);
progressLabel->hide();
- keepOpenCheck = new QCheckBox(tr("&Keep this window open after transfer is complete"), this);
+ keepOpenCheck = new QCheckBox(QCoreApplication::translate("KWidgetJobTracker", "&Keep this window open after transfer is complete"), this);
connect(keepOpenCheck, SIGNAL(toggled(bool)), this, SLOT(_k_keepOpenToggled(bool)));
topLayout->addWidget(keepOpenCheck);
keepOpenCheck->hide();
@@ -527,13 +534,13 @@
hBox = new QHBoxLayout();
topLayout->addLayout(hBox);
- openFile = new QPushButton(tr("Open &File"), this);
+ openFile = new QPushButton(QCoreApplication::translate("KWidgetJobTracker", "Open &File"), this);
connect(openFile, SIGNAL(clicked()), this, SLOT(_k_openFile()));
hBox->addWidget(openFile);
openFile->setEnabled(false);
openFile->hide();
- openLocation = new QPushButton(tr("Open &Destination"), this);
+ openLocation = new QPushButton(QCoreApplication::translate("KWidgetJobTracker", "Open &Destination"), this);
connect(openLocation, SIGNAL(clicked()), this, SLOT(_k_openLocation()));
hBox->addWidget(openLocation);
openLocation->hide();
@@ -541,7 +548,7 @@
hBox->addStretch(1);
cancelClose = new QPushButton(this);
- cancelClose->setText(tr("&Cancel"));
+ cancelClose->setText(QCoreApplication::translate("KWidgetJobTracker", "&Cancel"));
cancelClose->setIcon(QIcon::fromTheme("dialog-cancel"));
connect(cancelClose, SIGNAL(clicked()), this, SLOT(_k_stop()));
hBox->addWidget(cancelClose);
@@ -549,7 +556,7 @@
resize(sizeHint());
setMaximumHeight(sizeHint().height());
- setWindowTitle(tr("Progress Dialog")); // show something better than kuiserver
+ setWindowTitle(QCoreApplication::translate("KWidgetJobTracker", "Progress Dialog")); // show something better than kuiserver
}
void KWidgetJobTracker::Private::ProgressWidget::showTotals()
@@ -562,9 +569,9 @@
if (totalDirs > 1)
// that we have a singular to translate looks weired but is only logical
{
- tmps = tr("%n folder(s)", "", totalDirs) + " ";
+ tmps = QCoreApplication::translate("KWidgetJobTracker", "%n folder(s)", "", totalDirs) + " ";
}
- tmps += tr("%n file(s)", "", totalFiles);
+ tmps += QCoreApplication::translate("KWidgetJobTracker", "%n file(s)", "", totalFiles);
progressLabel->setText(tmps);
}
}
@@ -650,14 +657,14 @@
progressLabel->show();
speedLabel->show();
arrowButton->setIcon(QIcon::fromTheme("arrow-up"));
- arrowButton->setToolTip(tr("Click this to collapse the dialog, to hide details"));
+ arrowButton->setToolTip(QCoreApplication::translate("KWidgetJobTracker", "Click this to collapse the dialog, to hide details"));
arrowState = Qt::UpArrow;
} else {
//Collapse the dialog
progressLabel->hide();
speedLabel->hide();
arrowButton->setIcon(QIcon::fromTheme("arrow-down"));
- arrowButton->setToolTip(tr("Click this to expand the dialog, to show details"));
+ arrowButton->setToolTip(QCoreApplication::translate("KWidgetJobTracker", "Click this to expand the dialog, to show details"));
arrowState = Qt::DownArrow;
}
setMaximumHeight(sizeHint().height());
--
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 kitemviews for openSUSE:Factory checked in at 2014-04-02 17:22:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kitemviews (Old)
and /work/SRC/openSUSE:Factory/.kitemviews.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kitemviews"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kitemviews/kitemviews.changes 2014-03-10 12:17:20.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kitemviews.new/kitemviews.changes 2014-04-02 17:22:23.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:43 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kitemviews-4.97.0.tar.xz
New:
----
kitemviews-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kitemviews.spec ++++++
--- /var/tmp/diff_new_pack.fAK1uM/_old 2014-04-02 17:22:23.000000000 +0200
+++ /var/tmp/diff_new_pack.fAK1uM/_new 2014-04-02 17:22:23.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5ItemViews5
Name: kitemviews
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Test) >= 5.2.0
++++++ kitemviews-4.97.0.tar.xz -> kitemviews-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemviews-4.97.0/CMakeLists.txt new/kitemviews-4.98.0/CMakeLists.txt
--- old/kitemviews-4.97.0/CMakeLists.txt 2014-03-01 12:51:08.000000000 +0100
+++ new/kitemviews-4.98.0/CMakeLists.txt 2014-03-28 19:17:07.000000000 +0100
@@ -2,7 +2,7 @@
project(KItemViews)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION "5.2.0")
@@ -16,7 +16,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KITEMVIEWS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kitemviews_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5ItemViewsConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemviews-4.97.0/src/Messages.sh new/kitemviews-4.98.0/src/Messages.sh
--- old/kitemviews-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kitemviews-4.98.0/src/Messages.sh 2014-03-28 19:17:07.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kitemviews5.pot
--
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 kitemmodels for openSUSE:Factory checked in at 2014-04-02 17:22:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kitemmodels (Old)
and /work/SRC/openSUSE:Factory/.kitemmodels.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kitemmodels"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kitemmodels/kitemmodels.changes 2014-03-10 12:17:19.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kitemmodels.new/kitemmodels.changes 2014-04-02 17:22:22.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:43 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kitemmodels-4.97.0.tar.xz
New:
----
kitemmodels-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kitemmodels.spec ++++++
--- /var/tmp/diff_new_pack.IsrBoR/_old 2014-04-02 17:22:22.000000000 +0200
+++ /var/tmp/diff_new_pack.IsrBoR/_new 2014-04-02 17:22:22.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5ItemModels5
Name: kitemmodels
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ kitemmodels-4.97.0.tar.xz -> kitemmodels-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/CMakeLists.txt new/kitemmodels-4.98.0/CMakeLists.txt
--- old/kitemmodels-4.97.0/CMakeLists.txt 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/CMakeLists.txt 2014-03-28 19:35:13.000000000 +0100
@@ -2,7 +2,7 @@
project(KItemModels)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -19,7 +19,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KITEMMODELS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kitemmodels_version.h"
@@ -28,8 +28,9 @@
add_subdirectory(src)
-# TODO re-enable, after grantlee is ported to Qt5
-#add_subdirectory(autotests)
+if (BUILD_TESTING)
+ add_subdirectory(autotests)
+endif()
# create a Config.cmake and a ConfigVersion.cmake file and install them
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/CMakeLists.txt new/kitemmodels-4.98.0/autotests/CMakeLists.txt
--- old/kitemmodels-4.97.0/autotests/CMakeLists.txt 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/CMakeLists.txt 2014-03-28 19:35:13.000000000 +0100
@@ -27,7 +27,11 @@
kitemmodels_proxymodel_tests(
kdescendantsproxymodeltest
klinkitemselectionmodeltest
- kselectionproxymodeltest
+ # TODO fix this test - or the code that it tests!
+ # FAIL! : SelectionProxyModelTest::testMoveFromRoot(move01) 'signalList.isEmpty()' returned FALSE. ()
+ # Loc: [/srv/jenkins/workspace/kitemmodels_master_qt5/autotests/proxymodeltestsuite/proxymodeltest.cpp(569)]
+ # QFATAL : SelectionProxyModelTest::testMoveFromRoot(move02) ASSERT: "m_unchangedIndexes.isEmpty()" in file proxymodeltestsuite/modelspy.cpp, line 253
+ #kselectionproxymodeltest
testmodelqueuedconnections
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/bihash/CMakeLists.txt new/kitemmodels-4.98.0/autotests/bihash/CMakeLists.txt
--- old/kitemmodels-4.97.0/autotests/bihash/CMakeLists.txt 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/bihash/CMakeLists.txt 2014-03-28 19:35:13.000000000 +0100
@@ -2,10 +2,6 @@
cmake_minimum_required(VERSION 2.8.12)
-find_package(Qt4)
-
-include(${QT_USE_FILE})
-
set(functionalitytest_srcs
functionalitytest.cpp
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/klinkitemselectionmodeltest.cpp new/kitemmodels-4.98.0/autotests/klinkitemselectionmodeltest.cpp
--- old/kitemmodels-4.97.0/autotests/klinkitemselectionmodeltest.cpp 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/klinkitemselectionmodeltest.cpp 2014-03-28 19:35:13.000000000 +0100
@@ -20,14 +20,13 @@
#include "klinkitemselectionmodeltest.h"
#include <klinkitemselectionmodel.h>
-#include <qtest_kde.h>
#include <QItemSelectionModel>
#include <QSortFilterProxyModel>
#include <QStandardItem>
#include <QStandardItemModel>
-QTEST_KDEMAIN(KLinkItemSelectionModelTest, GUI)
+#include <QTest>
void KLinkItemSelectionModelTest::init()
{
@@ -106,3 +105,5 @@
QCOMPARE(mainIndex, m_mainModel->index(m_mainModel->rowCount() - 1, 0));
}
+QTEST_MAIN(KLinkItemSelectionModelTest)
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/kselectionproxymodeltestsuite.h new/kitemmodels-4.98.0/autotests/kselectionproxymodeltestsuite.h
--- old/kitemmodels-4.97.0/autotests/kselectionproxymodeltestsuite.h 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/kselectionproxymodeltestsuite.h 2014-03-28 19:35:13.000000000 +0100
@@ -54,7 +54,10 @@
m_modelSelector->setWatch(true);
m_proxyModel = new KSelectionProxyModel(m_selectionModel, this);
- m_proxyModel->setFilterBehavior(m_modelSelector->filterBehaviour());
+ QVariant filterBehaviour = m_modelSelector->property("filterBehaviour");
+ if (!filterBehaviour.isNull()) {
+ m_proxyModel->setFilterBehavior(static_cast<KSelectionProxyModel::FilterBehavior>(filterBehaviour.toInt()));
+ }
return m_proxyModel;
}
@@ -88,11 +91,7 @@
TestData(ProxyModelTest *proxyModelTest)
: SelectorStrategy(proxyModelTest)
{
- }
-
- /* reimp */ KSelectionProxyModel::FilterBehavior filterBehaviour()
- {
- return _filterBehaviour;
+ SelectorStrategy::setProperty("filterBehaviour", QVariant(int(_filterBehaviour)));
}
/* reimp */ void testInsertWhenEmptyData()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/CMakeLists.txt new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/CMakeLists.txt
--- old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/CMakeLists.txt 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/CMakeLists.txt 2014-03-28 19:35:13.000000000 +0100
@@ -1,20 +1,3 @@
-project(proxymodeltestsuite)
-
-if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
-
- # Building the test suite standalone
- set(proxymodeltestsuite_standalone TRUE)
-
- find_package(Qt4 REQUIRED)
- find_package(Automoc4 REQUIRED)
- cmake_minimum_required(VERSION 2.8.12)
-endif()
-
-include_directories(
- ${CMAKE_CURRENT_SOURCE_DIR}/../../src
- ${CMAKE_CURRENT_BINARY_DIR}/../../src
-)
-
set(proxymodeltestsuite_SRCS
dynamictreemodel.cpp
dynamictreewidget.cpp
@@ -37,17 +20,10 @@
${eventlogger_RCSS}
)
-if(proxymodeltestsuite_standalone)
- set(GRANTLEE_FIND_ARG REQUIRED)
-else ()
- set(GRANTLEE_FIND_ARG QUIET)
-endif()
-
-# Grantlee is used for generating compilable code by the ModelEventLogger.
-# If Grantlee is not found, the logger does nothing.
-find_package(Grantlee ${GRANTLEE_FIND_ARG} NO_MODULE)
-
-if(NOT proxymodeltestsuite_standalone)
+if(FALSE)
+ # Grantlee is used for generating compilable code by the ModelEventLogger.
+ # If Grantlee is not found, the logger does nothing.
+ #find_package(Grantlee QUIET NO_MODULE)
# TODO: Put this part in Grantlee
set_package_properties(Grantlee PROPERTIES
URL "http://www.grantlee.org"
@@ -84,32 +60,3 @@
${Grantlee_CORE_LIBRARIES}
)
-if(proxymodeltestsuite_standalone)
-
- set( LIB_SUFFIX "" CACHE STRING "Define suffix of library directory name (eg. '64')")
- set( INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include )
-
- install(TARGETS proxymodeltestsuite
- RUNTIME DESTINATION bin
- LIBRARY DESTINATION lib${LIB_SUFFIX}
- ARCHIVE DESTINATION lib${LIB_SUFFIX}
- COMPONENT Devel
- )
-
- install(FILES
- dynamictreemodel.h
- dynamictreewidget.h
- modelcommander.h
- modelspy.h
- modelselector.h
- modeltest.h
- proxymodeltest.h
- ${CMAKE_CURRENT_BINARY_DIR}/proxymodeltestsuite_export.h
- modeldumper.h
- modeleventlogger.h
- eventloggerregister.h
- indexfinder.h
- DESTINATION ${INCLUDE_INSTALL_DIR}
- )
-endif()
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/eventloggerregister.cpp new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/eventloggerregister.cpp
--- old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/eventloggerregister.cpp 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/eventloggerregister.cpp 2014-03-28 19:35:13.000000000 +0100
@@ -64,22 +64,21 @@
}
}
-void myMessageOutput(QtMsgType type, const char *msg)
+void myMessageOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg)
{
+ QByteArray localMsg = msg.toLocal8Bit();
switch (type) {
case QtDebugMsg:
- fprintf(stderr, "Debug: %s\n", msg);
+ fprintf(stderr, "Debug: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
break;
case QtWarningMsg:
- fprintf(stderr, "Warning: %s\n", msg);
+ fprintf(stderr, "Warning: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
break;
case QtCriticalMsg:
- fprintf(stderr, "Critical: %s\n", msg);
+ fprintf(stderr, "Critical: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
break;
case QtFatalMsg:
- EventLoggerRegister::instance()->writeLogs();
- fprintf(stderr, "Fatal: %s\n", msg);
-
+ fprintf(stderr, "Fatal: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
abort();
}
}
@@ -87,6 +86,6 @@
EventLoggerRegister::EventLoggerRegister(Behaviour behaviour)
{
if (behaviour == InstallMsgHandler) {
- qInstallMsgHandler(myMessageOutput);
+ qInstallMessageHandler(myMessageOutput);
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/modelselector.h new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/modelselector.h
--- old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/modelselector.h 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/modelselector.h 2014-03-28 19:35:13.000000000 +0100
@@ -22,7 +22,7 @@
#include <QItemSelectionModel>
-#include <kselectionproxymodel.h>
+//#include <kselectionproxymodel.h>
#include "proxymodeltest.h"
@@ -55,7 +55,7 @@
void setWatch(bool watch);
- virtual KSelectionProxyModel::FilterBehavior filterBehaviour() = 0;
+ //virtual KSelectionProxyModel::FilterBehavior filterBehaviour() = 0;
public Q_SLOTS:
void rowsInserted(const QModelIndex &parent, int start, int end);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/modeltest.cpp new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/modeltest.cpp
--- old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/modeltest.cpp 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/modeltest.cpp 2014-03-28 19:35:13.000000000 +0100
@@ -1,121 +1,83 @@
/****************************************************************************
**
-** Copyright (C) 2007 Trolltech ASA. All rights reserved.
-** Copyright (C) 2010 Stephen Kelly <steveire(a)gmail.com>
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
**
-** This file is part of the Qt Concurrent project on Trolltech Labs.
+** This file is part of the test suite of the Qt Toolkit.
**
-** This file may be used under the terms of the GNU General Public
-** License version 2.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of
-** this file. Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-** http://www.trolltech.com/products/qt/opensource.html
-**
-** If you are unsure which license is appropriate for your use, please
-** review the following information:
-** http://www.trolltech.com/products/qt/licensing.html or contact the
-** sales department at sales(a)trolltech.com.
-**
-** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
-** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file COPYING.LIB included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
****************************************************************************/
-#include <QtCore/QAbstractEventDispatcher>
-#include <QtCore/QTimer>
-#include <QDebug>
-#include <QStringList>
-#include <QSize>
-
#include "modeltest.h"
+#include <QtCore/QtCore>
+#include <QtTest/QtTest>
+
/*!
Connect to all of the models signals. Whenever anything happens recheck everything.
*/
-ModelTest::ModelTest(QAbstractItemModel *_model, Mode testType, QObject *parent)
- : QObject(parent),
- model(_model),
- fetchingMore(false),
- pedantic(testType == Pedantic)
-{
- init();
- if (pedantic) {
- refreshStatus();
- // This is almost certainly not needed.
-// connect(QAbstractEventDispatcher::instance(), SIGNAL(awake()), SLOT(ensureSteady()));
- }
-}
-
-ModelTest::ModelTest(QAbstractItemModel *_model, QObject *parent)
- : QObject(parent),
- model(_model),
- fetchingMore(false),
- pedantic(false)
-{
- init();
-}
-
-void ModelTest::init()
+ModelTest::ModelTest ( QAbstractItemModel *_model, QObject *parent ) : QObject ( parent ), model ( _model ), fetchingMore ( false )
{
- Q_ASSERT(model);
+ if (!model)
+ qFatal("%s: model must not be null", Q_FUNC_INFO);
connect(model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(columnsInserted(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(columnsRemoved(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(dataChanged(QModelIndex,QModelIndex)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)),
- this, SLOT(runAllTests()));
- connect(model, SIGNAL(layoutAboutToBeChanged()), this, SLOT(runAllTests()));
- connect(model, SIGNAL(layoutChanged()), this, SLOT(runAllTests()));
- connect(model, SIGNAL(modelReset()), this, SLOT(runAllTests()));
- connect(model, SIGNAL(modelAboutToBeReset()), this, SLOT(modelAboutToBeReset()));
- connect(model, SIGNAL(modelReset()), this, SLOT(modelReset()));
+ this, SLOT(runAllTests()) );
+ connect(model, SIGNAL(layoutAboutToBeChanged()), this, SLOT(runAllTests()) );
+ connect(model, SIGNAL(layoutChanged()), this, SLOT(runAllTests()) );
+ connect(model, SIGNAL(modelReset()), this, SLOT(runAllTests()) );
connect(model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(rowsInserted(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
connect(model, SIGNAL(rowsRemoved(QModelIndex,int,int)),
- this, SLOT(runAllTests()));
+ this, SLOT(runAllTests()) );
- // Special checks for inserting/removing
+ // Special checks for changes
connect(model, SIGNAL(layoutAboutToBeChanged()),
- this, SLOT(layoutAboutToBeChanged()));
+ this, SLOT(layoutAboutToBeChanged()) );
connect(model, SIGNAL(layoutChanged()),
- this, SLOT(layoutChanged()));
+ this, SLOT(layoutChanged()) );
connect(model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)),
- this, SLOT(rowsAboutToBeInserted(QModelIndex,int,int)));
+ this, SLOT(rowsAboutToBeInserted(QModelIndex,int,int)) );
connect(model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),
- this, SLOT(rowsAboutToBeRemoved(QModelIndex,int,int)));
+ this, SLOT(rowsAboutToBeRemoved(QModelIndex,int,int)) );
connect(model, SIGNAL(rowsInserted(QModelIndex,int,int)),
- this, SLOT(rowsInserted(QModelIndex,int,int)));
+ this, SLOT(rowsInserted(QModelIndex,int,int)) );
connect(model, SIGNAL(rowsRemoved(QModelIndex,int,int)),
- this, SLOT(rowsRemoved(QModelIndex,int,int)));
-
- connect(model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)),
- this, SLOT(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)));
- connect(model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)),
- this, SLOT(rowsMoved(QModelIndex,int,int,QModelIndex,int)));
+ this, SLOT(rowsRemoved(QModelIndex,int,int)) );
+ connect(model, SIGNAL(dataChanged(QModelIndex,QModelIndex)),
+ this, SLOT(dataChanged(QModelIndex,QModelIndex)) );
+ connect(model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)),
+ this, SLOT(headerDataChanged(Qt::Orientation,int,int)) );
runAllTests();
}
void ModelTest::runAllTests()
{
-
-// qDebug() << "rats";
- if (fetchingMore) {
+ if ( fetchingMore )
return;
- }
nonDestructiveBasicTest();
rowCount();
columnCount();
@@ -131,32 +93,32 @@
*/
void ModelTest::nonDestructiveBasicTest()
{
- Q_ASSERT(model->buddy(QModelIndex()) == QModelIndex());
- model->canFetchMore(QModelIndex());
- Q_ASSERT(model->columnCount(QModelIndex()) >= 0);
- Q_ASSERT(model->data(QModelIndex()) == QVariant());
+ QVERIFY( model->buddy ( QModelIndex() ) == QModelIndex() );
+ model->canFetchMore ( QModelIndex() );
+ QVERIFY( model->columnCount ( QModelIndex() ) >= 0 );
+ QVERIFY( model->data ( QModelIndex() ) == QVariant() );
fetchingMore = true;
- model->fetchMore(QModelIndex());
+ model->fetchMore ( QModelIndex() );
fetchingMore = false;
- Qt::ItemFlags flags = model->flags(QModelIndex());
- Q_ASSERT(flags == Qt::ItemIsDropEnabled || flags == 0);
- model->hasChildren(QModelIndex());
- model->hasIndex(0, 0);
- model->headerData(0, Qt::Horizontal);
- model->index(0, 0);
- model->itemData(QModelIndex());
+ Qt::ItemFlags flags = model->flags ( QModelIndex() );
+ QVERIFY( flags == Qt::ItemIsDropEnabled || flags == 0 );
+ model->hasChildren ( QModelIndex() );
+ model->hasIndex ( 0, 0 );
+ model->headerData ( 0, Qt::Horizontal );
+ model->index ( 0, 0 );
+ model->itemData ( QModelIndex() );
QVariant cache;
- model->match(QModelIndex(), -1, cache);
+ model->match ( QModelIndex(), -1, cache );
model->mimeTypes();
- Q_ASSERT(model->parent(QModelIndex()) == QModelIndex());
- Q_ASSERT(model->rowCount() >= 0);
+ QVERIFY( model->parent ( QModelIndex() ) == QModelIndex() );
+ QVERIFY( model->rowCount() >= 0 );
QVariant variant;
- model->setData(QModelIndex(), variant, -1);
- model->setHeaderData(-1, Qt::Horizontal, QVariant());
- model->setHeaderData(999999, Qt::Horizontal, QVariant());
+ model->setData ( QModelIndex(), variant, -1 );
+ model->setHeaderData ( -1, Qt::Horizontal, QVariant() );
+ model->setHeaderData ( 999999, Qt::Horizontal, QVariant() );
QMap<int, QVariant> roles;
- model->sibling(0, 0, QModelIndex());
- model->span(QModelIndex());
+ model->sibling ( 0, 0, QModelIndex() );
+ model->span ( QModelIndex() );
model->supportedDropActions();
}
@@ -169,20 +131,19 @@
{
// qDebug() << "rc";
// check top row
- QModelIndex topIndex = model->index(0, 0, QModelIndex());
- int rows = model->rowCount(topIndex);
- Q_ASSERT(rows >= 0);
-
- Q_ASSERT(model->hasChildren(topIndex) == (rows > 0));
+ QModelIndex topIndex = model->index ( 0, 0, QModelIndex() );
+ int rows = model->rowCount ( topIndex );
+ QVERIFY( rows >= 0 );
+ if ( rows > 0 )
+ QVERIFY( model->hasChildren ( topIndex ) );
- QModelIndex secondLevelIndex = model->index(0, 0, topIndex);
- if (secondLevelIndex.isValid()) { // not the top level
+ QModelIndex secondLevelIndex = model->index ( 0, 0, topIndex );
+ if ( secondLevelIndex.isValid() ) { // not the top level
// check a row count where parent is valid
- rows = model->rowCount(secondLevelIndex);
- Q_ASSERT(rows >= 0);
- if (rows > 0) {
- Q_ASSERT(model->hasChildren(secondLevelIndex) == true);
- }
+ rows = model->rowCount ( secondLevelIndex );
+ QVERIFY( rows >= 0 );
+ if ( rows > 0 )
+ QVERIFY( model->hasChildren ( secondLevelIndex ) );
}
// The models rowCount() is tested more extensively in checkChildren(),
@@ -195,14 +156,13 @@
void ModelTest::columnCount()
{
// check top row
- QModelIndex topIndex = model->index(0, 0, QModelIndex());
- Q_ASSERT(model->columnCount(topIndex) >= 0);
+ QModelIndex topIndex = model->index ( 0, 0, QModelIndex() );
+ QVERIFY( model->columnCount ( topIndex ) >= 0 );
// check a column count where parent is valid
- QModelIndex childIndex = model->index(0, 0, topIndex);
- if (childIndex.isValid()) {
- Q_ASSERT(model->columnCount(childIndex) >= 0);
- }
+ QModelIndex childIndex = model->index ( 0, 0, topIndex );
+ if ( childIndex.isValid() )
+ QVERIFY( model->columnCount ( childIndex ) >= 0 );
// columnCount() is tested more extensively in checkChildren(),
// but this catches the big mistakes
@@ -215,18 +175,19 @@
{
// qDebug() << "hi";
// Make sure that invalid values returns an invalid index
- Q_ASSERT(model->hasIndex(-2, -2) == false);
- Q_ASSERT(model->hasIndex(-2, 0) == false);
- Q_ASSERT(model->hasIndex(0, -2) == false);
+ QVERIFY( !model->hasIndex ( -2, -2 ) );
+ QVERIFY( !model->hasIndex ( -2, 0 ) );
+ QVERIFY( !model->hasIndex ( 0, -2 ) );
int rows = model->rowCount();
int columns = model->columnCount();
// check out of bounds
- Q_ASSERT(model->hasIndex(rows, columns) == false);
- Q_ASSERT(model->hasIndex(rows + 1, columns + 1) == false);
+ QVERIFY( !model->hasIndex ( rows, columns ) );
+ QVERIFY( !model->hasIndex ( rows + 1, columns + 1 ) );
- Q_ASSERT(model->hasIndex(0, 0) == (rows > 0));
+ if ( rows > 0 )
+ QVERIFY( model->hasIndex ( 0, 0 ) );
// hasIndex() is tested more extensively in checkChildren(),
// but this catches the big mistakes
@@ -239,25 +200,24 @@
{
// qDebug() << "i";
// Make sure that invalid values returns an invalid index
- Q_ASSERT(model->index(-2, -2) == QModelIndex());
- Q_ASSERT(model->index(-2, 0) == QModelIndex());
- Q_ASSERT(model->index(0, -2) == QModelIndex());
+ QVERIFY( model->index ( -2, -2 ) == QModelIndex() );
+ QVERIFY( model->index ( -2, 0 ) == QModelIndex() );
+ QVERIFY( model->index ( 0, -2 ) == QModelIndex() );
int rows = model->rowCount();
int columns = model->columnCount();
- if (rows == 0) {
+ if ( rows == 0 )
return;
- }
// Catch off by one errors
- Q_ASSERT(model->index(rows, columns) == QModelIndex());
- Q_ASSERT(model->index(0, 0).isValid() == true);
+ QVERIFY( model->index ( rows, columns ) == QModelIndex() );
+ QVERIFY( model->index ( 0, 0 ).isValid() );
// Make sure that the same index is *always* returned
- QModelIndex a = model->index(0, 0);
- QModelIndex b = model->index(0, 0);
- Q_ASSERT(a == b);
+ QModelIndex a = model->index ( 0, 0 );
+ QModelIndex b = model->index ( 0, 0 );
+ QVERIFY( a == b );
// index() is tested more extensively in checkChildren(),
// but this catches the big mistakes
@@ -269,13 +229,12 @@
void ModelTest::parent()
{
// qDebug() << "p";
- // Make sure the model wont crash and will return an invalid QModelIndex
+ // Make sure the model won't crash and will return an invalid QModelIndex
// when asked for the parent of an invalid index.
- Q_ASSERT(model->parent(QModelIndex()) == QModelIndex());
+ QVERIFY( model->parent ( QModelIndex() ) == QModelIndex() );
- if (model->rowCount() == 0) {
+ if ( model->rowCount() == 0 )
return;
- }
// Column 0 | Column 1 |
// QModelIndex() | |
@@ -284,32 +243,29 @@
// Common error test #1, make sure that a top level index has a parent
// that is a invalid QModelIndex.
- QModelIndex topIndex = model->index(0, 0, QModelIndex());
- Q_ASSERT(model->parent(topIndex) == QModelIndex());
+ QModelIndex topIndex = model->index ( 0, 0, QModelIndex() );
+ QVERIFY( model->parent ( topIndex ) == QModelIndex() );
// Common error test #2, make sure that a second level index has a parent
// that is the first level index.
- if (model->rowCount(topIndex) > 0) {
- QModelIndex childIndex = model->index(0, 0, topIndex);
- if (model->parent(childIndex) != topIndex) {
- qDebug() << model->parent(childIndex) << topIndex << topIndex.data();
- }
- Q_ASSERT(model->parent(childIndex) == topIndex);
+ if ( model->rowCount ( topIndex ) > 0 ) {
+ QModelIndex childIndex = model->index ( 0, 0, topIndex );
+ QVERIFY( model->parent ( childIndex ) == topIndex );
}
// Common error test #3, the second column should NOT have the same children
// as the first column in a row.
// Usually the second column shouldn't have children.
- QModelIndex topIndex1 = model->index(0, 1, QModelIndex());
- if (model->rowCount(topIndex1) > 0) {
- QModelIndex childIndex = model->index(0, 0, topIndex);
- QModelIndex childIndex1 = model->index(0, 0, topIndex1);
- Q_ASSERT(childIndex != childIndex1);
+ QModelIndex topIndex1 = model->index ( 0, 1, QModelIndex() );
+ if ( model->rowCount ( topIndex1 ) > 0 ) {
+ QModelIndex childIndex = model->index ( 0, 0, topIndex );
+ QModelIndex childIndex1 = model->index ( 0, 0, topIndex1 );
+ QVERIFY( childIndex != childIndex1 );
}
// Full test, walk n levels deep through the model making sure that all
// parent's children correctly specify their parent.
- checkChildren(QModelIndex());
+ checkChildren ( QModelIndex() );
}
/*!
@@ -326,96 +282,101 @@
found the basic bugs because it is easier to figure out the problem in
those tests then this one.
*/
-void ModelTest::checkChildren(const QModelIndex &parent, int currentDepth)
+void ModelTest::checkChildren ( const QModelIndex &parent, int currentDepth )
{
// First just try walking back up the tree.
QModelIndex p = parent;
- while (p.isValid()) {
+ while ( p.isValid() )
p = p.parent();
- }
// For models that are dynamically populated
- if (model->canFetchMore(parent)) {
+ if ( model->canFetchMore ( parent ) ) {
fetchingMore = true;
- model->fetchMore(parent);
+ model->fetchMore ( parent );
fetchingMore = false;
}
- int rows = model->rowCount(parent);
- int columns = model->columnCount(parent);
+ int rows = model->rowCount ( parent );
+ int columns = model->columnCount ( parent );
+
+ if ( rows > 0 )
+ QVERIFY( model->hasChildren ( parent ) );
// Some further testing against rows(), columns(), and hasChildren()
- Q_ASSERT(rows >= 0);
- Q_ASSERT(columns >= 0);
- Q_ASSERT(model->hasChildren(parent) == (rows > 0));
-
- qDebug() << "parent:" << model->data(parent).toString() << "rows:" << rows
- << "columns:" << columns << "parent column:" << parent.column();
-
- Q_ASSERT(model->hasIndex(rows, 0, parent) == false);
- Q_ASSERT(model->index(rows, 0, parent).isValid() == false);
- for (int r = 0; r < rows; ++r) {
- if (model->canFetchMore(parent)) {
+ QVERIFY( rows >= 0 );
+ QVERIFY( columns >= 0 );
+ if ( rows > 0 )
+ QVERIFY( model->hasChildren ( parent ) );
+
+ //qDebug() << "parent:" << model->data(parent).toString() << "rows:" << rows
+ // << "columns:" << columns << "parent column:" << parent.column();
+
+ const QModelIndex topLeftChild = model->index( 0, 0, parent );
+
+ QVERIFY( !model->hasIndex ( rows + 1, 0, parent ) );
+ for ( int r = 0; r < rows; ++r ) {
+ if ( model->canFetchMore ( parent ) ) {
fetchingMore = true;
- model->fetchMore(parent);
+ model->fetchMore ( parent );
fetchingMore = false;
}
- Q_ASSERT(model->hasIndex(r, columns, parent) == false);
- Q_ASSERT(model->index(r, columns, parent).isValid() == false);
-// qDebug() << "Cols" << columns;
- for (int c = 0; c < columns; ++c) {
-// qDebug() << "has" << r << c << parent;
- Q_ASSERT(model->hasIndex(r, c, parent) == true);
- QModelIndex index = model->index(r, c, parent);
+ QVERIFY( !model->hasIndex ( r, columns + 1, parent ) );
+ for ( int c = 0; c < columns; ++c ) {
+ QVERIFY( model->hasIndex ( r, c, parent ) );
+ QModelIndex index = model->index ( r, c, parent );
// rowCount() and columnCount() said that it existed...
- Q_ASSERT(index.isValid() == true);
+ QVERIFY( index.isValid() );
// index() should always return the same index when called twice in a row
- QModelIndex modifiedIndex = model->index(r, c, parent);
- Q_ASSERT(index == modifiedIndex);
+ QModelIndex modifiedIndex = model->index ( r, c, parent );
+ QVERIFY( index == modifiedIndex );
// Make sure we get the same index if we request it twice in a row
- QModelIndex a = model->index(r, c, parent);
- QModelIndex b = model->index(r, c, parent);
- Q_ASSERT(a == b);
+ QModelIndex a = model->index ( r, c, parent );
+ QModelIndex b = model->index ( r, c, parent );
+ QVERIFY( a == b );
+
+ {
+ const QModelIndex sibling = model->sibling( r, c, topLeftChild );
+ QVERIFY( index == sibling );
+ }
+ {
+ const QModelIndex sibling = topLeftChild.sibling( r, c );
+ QVERIFY( index == sibling );
+ }
// Some basic checking on the index that is returned
- Q_ASSERT(index.model() == model);
-// qDebug() << index.row() << r;
- Q_ASSERT(index.row() == r);
- Q_ASSERT(index.column() == c);
+ QVERIFY( index.model() == model );
+ QCOMPARE( index.row(), r );
+ QCOMPARE( index.column(), c );
// While you can technically return a QVariant usually this is a sign
- // of an bug in data() Disable if this really is ok in your model.
- if (!model->data(index, Qt::DisplayRole).isValid()) {
- qDebug() << index << index.data() << index.parent();
- }
- Q_ASSERT(model->data(index, Qt::DisplayRole).isValid() == true);
+ // of a bug in data(). Disable if this really is ok in your model.
+// QVERIFY( model->data ( index, Qt::DisplayRole ).isValid() );
// If the next test fails here is some somewhat useful debug you play with.
- /*
+
if (model->parent(index) != parent) {
qDebug() << r << c << currentDepth << model->data(index).toString()
<< model->data(parent).toString();
qDebug() << index << parent << model->parent(index);
- // And a view that you can even use to show the model.
- //QTreeView view;
- //view.setModel(model);
- //view.show();
- }*/
+// And a view that you can even use to show the model.
+// QTreeView view;
+// view.setModel(model);
+// view.show();
+ }
// Check that we can get back our real parent.
-// qDebug() << index.data() << parent << model->parent ( index ) << parent.data() << model->parent ( index ).data() << r << rows << c << columns;
- Q_ASSERT(model->parent(index) == parent);
+ QCOMPARE( model->parent ( index ), parent );
// recursively go down the children
- if (model->hasChildren(index) && currentDepth < 10) {
-// qDebug() << r << c << "has children" << model->rowCount(index);
- checkChildren(index, ++currentDepth);
+ if ( model->hasChildren ( index ) && currentDepth < 10 ) {
+ //qDebug() << r << c << "has children" << model->rowCount(index);
+ checkChildren ( index, ++currentDepth );
}/* else { if (currentDepth >= 10) qDebug() << "checked 10 deep"; };*/
// make sure that after testing the children that the index doesn't change.
- QModelIndex newerIndex = model->index(r, c, parent);
- Q_ASSERT(index == newerIndex);
+ QModelIndex newerIndex = model->index ( r, c, parent );
+ QVERIFY( index == newerIndex );
}
}
}
@@ -426,69 +387,68 @@
void ModelTest::data()
{
// Invalid index should return an invalid qvariant
- Q_ASSERT(!model->data(QModelIndex()).isValid());
+ QVERIFY( !model->data ( QModelIndex() ).isValid() );
- if (model->rowCount() == 0) {
+ if ( model->rowCount() == 0 )
return;
- }
// A valid index should have a valid QVariant data
- Q_ASSERT(model->index(0, 0).isValid());
+ QVERIFY( model->index ( 0, 0 ).isValid() );
// shouldn't be able to set data on an invalid index
- Q_ASSERT(model->setData(QModelIndex(), QLatin1String("foo"), Qt::DisplayRole) == false);
+ QVERIFY( !model->setData ( QModelIndex(), QLatin1String ( "foo" ), Qt::DisplayRole ) );
// General Purpose roles that should return a QString
- QVariant variant = model->data(model->index(0, 0), Qt::ToolTipRole);
- if (variant.isValid()) {
- Q_ASSERT(variant.canConvert<QString>());
- }
- variant = model->data(model->index(0, 0), Qt::StatusTipRole);
- if (variant.isValid()) {
- Q_ASSERT(variant.canConvert<QString>());
- }
- variant = model->data(model->index(0, 0), Qt::WhatsThisRole);
- if (variant.isValid()) {
- Q_ASSERT(variant.canConvert<QString>());
+ QVariant variant = model->data ( model->index ( 0, 0 ), Qt::ToolTipRole );
+ if ( variant.isValid() ) {
+ QVERIFY( variant.canConvert<QString>() );
+ }
+ variant = model->data ( model->index ( 0, 0 ), Qt::StatusTipRole );
+ if ( variant.isValid() ) {
+ QVERIFY( variant.canConvert<QString>() );
+ }
+ variant = model->data ( model->index ( 0, 0 ), Qt::WhatsThisRole );
+ if ( variant.isValid() ) {
+ QVERIFY( variant.canConvert<QString>() );
}
// General Purpose roles that should return a QSize
- variant = model->data(model->index(0, 0), Qt::SizeHintRole);
- if (variant.isValid()) {
- Q_ASSERT(variant.canConvert<QSize>());
+ variant = model->data ( model->index ( 0, 0 ), Qt::SizeHintRole );
+ if ( variant.isValid() ) {
+ QVERIFY( variant.canConvert<QSize>() );
}
// General Purpose roles that should return a QFont
- QVariant fontVariant = model->data(model->index(0, 0), Qt::FontRole);
- if (fontVariant.isValid()) {
- Q_ASSERT(fontVariant.canConvert<QFont>());
+ QVariant fontVariant = model->data ( model->index ( 0, 0 ), Qt::FontRole );
+ if ( fontVariant.isValid() ) {
+ QVERIFY( fontVariant.canConvert<QFont>() );
}
// Check that the alignment is one we know about
- QVariant textAlignmentVariant = model->data(model->index(0, 0), Qt::TextAlignmentRole);
- if (textAlignmentVariant.isValid()) {
+ QVariant textAlignmentVariant = model->data ( model->index ( 0, 0 ), Qt::TextAlignmentRole );
+ if ( textAlignmentVariant.isValid() ) {
int alignment = textAlignmentVariant.toInt();
- Q_ASSERT(alignment == (alignment & (Qt::AlignHorizontal_Mask | Qt::AlignVertical_Mask)));
+ QCOMPARE( alignment, ( alignment & ( Qt::AlignHorizontal_Mask | Qt::AlignVertical_Mask ) ) );
}
// General Purpose roles that should return a QColor
- QVariant colorVariant = model->data(model->index(0, 0), Qt::BackgroundColorRole);
- if (colorVariant.isValid()) {
- Q_ASSERT(colorVariant.canConvert<QColor>());
+ QVariant colorVariant = model->data ( model->index ( 0, 0 ), Qt::BackgroundColorRole );
+ if ( colorVariant.isValid() ) {
+ QVERIFY( colorVariant.canConvert<QColor>() );
}
- colorVariant = model->data(model->index(0, 0), Qt::TextColorRole);
- if (colorVariant.isValid()) {
- Q_ASSERT(colorVariant.canConvert<QColor>());
+ colorVariant = model->data ( model->index ( 0, 0 ), Qt::TextColorRole );
+ if ( colorVariant.isValid() ) {
+ QVERIFY( colorVariant.canConvert<QColor>() );
}
// Check that the "check state" is one we know about.
- QVariant checkStateVariant = model->data(model->index(0, 0), Qt::CheckStateRole);
- if (checkStateVariant.isValid()) {
+ QVariant checkStateVariant = model->data ( model->index ( 0, 0 ), Qt::CheckStateRole );
+ if ( checkStateVariant.isValid() ) {
int state = checkStateVariant.toInt();
- Q_ASSERT(state == Qt::Unchecked ||
+ QVERIFY( state == Qt::Unchecked ||
state == Qt::PartiallyChecked ||
- state == Qt::Checked);
+ state == Qt::Checked );
}
}
@@ -497,23 +457,18 @@
\sa rowsInserted()
*/
-void ModelTest::rowsAboutToBeInserted(const QModelIndex &parent, int start, int end)
+void ModelTest::rowsAboutToBeInserted ( const QModelIndex &parent, int start, int /* end */)
{
// Q_UNUSED(end);
- qDebug() << "rowsAboutToBeInserted" << "start=" << start << "end=" << end << "parent=" << model->data(parent).value<QString>()
- << "current count of parent=" << model->rowCount(parent); // << "display of last=" << model->data( model->index(start-1, 0, parent) );
+// qDebug() << "rowsAboutToBeInserted" << "start=" << start << "end=" << end << "parent=" << model->data ( parent ).toString()
+// << "current count of parent=" << model->rowCount ( parent ); // << "display of last=" << model->data( model->index(start-1, 0, parent) );
// qDebug() << model->index(start-1, 0, parent) << model->data( model->index(start-1, 0, parent) );
Changing c;
c.parent = parent;
- c.oldSize = model->rowCount(parent);
- c.last = model->data(model->index(start - 1, 0, parent));
- c.next = model->data(model->index(start, 0, parent));
- qDebug() << "last=" << c.last << c.next;
- insert.push(c);
- if (pedantic) {
- ensureConsistent();
- status.type = Status::InsertingRows;
- }
+ c.oldSize = model->rowCount ( parent );
+ c.last = model->data ( model->index ( start - 1, 0, parent ) );
+ c.next = model->data ( model->index ( start, 0, parent ) );
+ insert.push ( c );
}
/*!
@@ -521,145 +476,45 @@
\sa rowsAboutToBeInserted()
*/
-void ModelTest::rowsInserted(const QModelIndex &parent, int start, int end)
+void ModelTest::rowsInserted ( const QModelIndex & parent, int start, int end )
{
Changing c = insert.pop();
- Q_ASSERT(c.parent == parent);
- qDebug() << "rowsInserted" << "start=" << start << "end=" << end << "oldsize=" << c.oldSize
- << "parent=" << model->data(parent).value<QString>() << "current rowcount=" << model->rowCount(parent);
+ QVERIFY( c.parent == parent );
+// qDebug() << "rowsInserted" << "start=" << start << "end=" << end << "oldsize=" << c.oldSize
+// << "parent=" << model->data ( parent ).toString() << "current rowcount of parent=" << model->rowCount ( parent );
+
+// for (int ii=start; ii <= end; ii++)
+// {
+// qDebug() << "itemWasInserted:" << ii << model->data ( model->index ( ii, 0, parent ));
+// }
+// qDebug();
- for (int ii = start; ii <= end; ii++) {
- qDebug() << "itemWasInserted:" << model->data(model->index(ii, 0, parent));
- }
+ QVERIFY( c.oldSize + ( end - start + 1 ) == model->rowCount ( parent ) );
+ QVERIFY( c.last == model->data ( model->index ( start - 1, 0, c.parent ) ) );
- Q_ASSERT(c.oldSize + (end - start + 1) == model->rowCount(parent));
- Q_ASSERT(c.last == model->data(model->index(start - 1, 0, c.parent)));
- /*
if (c.next != model->data(model->index(end + 1, 0, c.parent))) {
qDebug() << start << end;
for (int i=0; i < model->rowCount(); ++i)
qDebug() << model->index(i, 0).data().toString();
qDebug() << c.next << model->data(model->index(end + 1, 0, c.parent));
}
- */
- qDebug() << c.next << model->data(model->index(end + 1, 0, c.parent));
- Q_ASSERT(c.next == model->data(model->index(end + 1, 0, c.parent)));
-
- if (pedantic) {
- Q_ASSERT(status.type == Status::InsertingRows);
- refreshStatus();
- }
-}
-
-void ModelTest::modelAboutToBeReset()
-{
- qDebug() << "@@@@@@@@@@@" << "modelAboutToBeReset";
- if (pedantic) {
- ensureConsistent();
- status.type = Status::Resetting;
- }
-}
-
-void ModelTest::modelReset()
-{
- qDebug() << "@@@@@@@@@@@" << "modelReset";
- if (pedantic) {
- Q_ASSERT(status.type == Status::Resetting);
- refreshStatus();
- }
+ QVERIFY( c.next == model->data ( model->index ( end + 1, 0, c.parent ) ) );
}
void ModelTest::layoutAboutToBeChanged()
{
- qDebug() << "@@@@@@@@@@@" << "layoutAboutToBeChanged";
-
- if (pedantic) {
- ensureConsistent();
- status.type = Status::ChangingLayout;
- }
- for (int i = 0; i < qBound(0, model->rowCount(), 100); ++i) {
-// qDebug() << "persisting" << model->index ( i, 0 ) << model->index ( i, 0 ).data();
- changing.append(QPersistentModelIndex(model->index(i, 0)));
- }
+ for ( int i = 0; i < qBound ( 0, model->rowCount(), 100 ); ++i )
+ changing.append ( QPersistentModelIndex ( model->index ( i, 0 ) ) );
}
void ModelTest::layoutChanged()
{
- qDebug() << "@@@@@@@@@@@" << "layoutAboutToBeChanged";
-// qDebug() << "B";
- for (int i = 0; i < changing.count(); ++i) {
+ for ( int i = 0; i < changing.count(); ++i ) {
QPersistentModelIndex p = changing[i];
-// qDebug() << "Bp" << p;
-// qDebug() << "p" << p << p.data();
-// qDebug() << "Ap";
- Q_ASSERT(p == model->index(p.row(), p.column(), p.parent()));
+ QVERIFY( p == model->index ( p.row(), p.column(), p.parent() ) );
}
changing.clear();
-
- if (pedantic) {
- Q_ASSERT(status.type == Status::ChangingLayout);
- refreshStatus();
- }
-
-// qDebug() << "A";
-}
-
-void ModelTest::rowsAboutToBeMoved(const QModelIndex &srcParent, int start, int end, const QModelIndex &destParent, int destinationRow)
-{
- qDebug() << "rowsAboutToBeMoved" << srcParent << start << end << destParent << destinationRow;
-
- for (int row = start, dr = destinationRow; row <= end; ++row, ++dr) {
- qDebug() << "row" << model->index(row, 0, srcParent).data() << "in " << srcParent << "will be moved to " << destParent << dr;
- }
-
- Changing cs;
- cs.parent = srcParent;
- cs.oldSize = model->rowCount(srcParent);
- cs.last = model->data(model->index(start - 1, 0, srcParent));
- cs.next = model->data(model->index(end + 1, 0, srcParent));
- remove.push(cs);
- Changing cd;
- cd.parent = destParent;
- cd.oldSize = model->rowCount(destParent);
- cd.last = model->data(model->index(destinationRow - 1, 0, destParent));
- cd.next = model->data(model->index(destinationRow, 0, destParent));
- insert.push(cd);
-}
-
-void ModelTest::rowsMoved(const QModelIndex &srcParent, int start, int end, const QModelIndex &destParent, int destinationRow)
-{
- qDebug() << "rowsMoved" << srcParent << start << end << destParent << destinationRow;
-
- Changing cd = insert.pop();
- Q_ASSERT(cd.parent == destParent);
- if (srcParent == destParent) {
- Q_ASSERT(cd.oldSize == model->rowCount(destParent));
-
- // TODO: Find out what I can assert here about last and next.
-// Q_ASSERT ( cd.last == model->data ( model->index ( destinationRow - 1, 0, cd.parent ) ) );
-// Q_ASSERT ( cd.next == model->data ( model->index ( destinationRow + (end - start + 1), 0, cd.parent ) ) );
-
- } else {
- qDebug() << cd.oldSize << end << start << model->rowCount(destParent) << destParent.data() << "#########";
- Q_ASSERT(cd.oldSize + (end - start + 1) == model->rowCount(destParent));
-
- Q_ASSERT(cd.last == model->data(model->index(destinationRow - 1, 0, cd.parent)));
- Q_ASSERT(cd.next == model->data(model->index(destinationRow + (end - start + 1), 0, cd.parent)));
- }
- Changing cs = remove.pop();
-
- Q_ASSERT(cs.parent == srcParent);
- if (srcParent == destParent) {
- Q_ASSERT(cs.oldSize == model->rowCount(srcParent));
- } else {
- Q_ASSERT(cs.oldSize - (end - start + 1) == model->rowCount(srcParent));
-
- Q_ASSERT(cs.last == model->data(model->index(start - 1, 0, srcParent)));
-// qDebug() << cs.next << model->data ( model->index ( start, 0, srcParent ) );
- Q_ASSERT(cs.next == model->data(model->index(start, 0, srcParent)));
- }
-
}
/*!
@@ -667,24 +522,15 @@
\sa rowsRemoved()
*/
-void ModelTest::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end)
+void ModelTest::rowsAboutToBeRemoved ( const QModelIndex &parent, int start, int end )
{
- qDebug() << "ratbr" << parent << start << end;
- for (int ii = start; ii <= end; ii++) {
- qDebug() << "itemwillbe removed:" << model->data(model->index(ii, 0, parent));
- }
-
- if (pedantic) {
- ensureConsistent();
- status.type = Status::RemovingRows;
- }
-
+qDebug() << "ratbr" << parent << start << end;
Changing c;
c.parent = parent;
- c.oldSize = model->rowCount(parent);
- c.last = model->data(model->index(start - 1, 0, parent));
- c.next = model->data(model->index(end + 1, 0, parent));
- remove.push(c);
+ c.oldSize = model->rowCount ( parent );
+ c.last = model->data ( model->index ( start - 1, 0, parent ) );
+ c.next = model->data ( model->index ( end + 1, 0, parent ) );
+ remove.push ( c );
}
/*!
@@ -692,59 +538,37 @@
\sa rowsAboutToBeRemoved()
*/
-void ModelTest::rowsRemoved(const QModelIndex &parent, int start, int end)
+void ModelTest::rowsRemoved ( const QModelIndex & parent, int start, int end )
{
- qDebug() << "rr" << parent << start << end;
+ qDebug() << "rr" << parent << start << end;
Changing c = remove.pop();
- Q_ASSERT(c.parent == parent);
- qDebug() << (c.oldSize - (end - start + 1)) << model->rowCount(parent);
- Q_ASSERT(c.oldSize - (end - start + 1) == model->rowCount(parent));
- Q_ASSERT(c.last == model->data(model->index(start - 1, 0, c.parent)));
- Q_ASSERT(c.next == model->data(model->index(start, 0, c.parent)));
-
- if (pedantic) {
- Q_ASSERT(status.type == Status::RemovingRows);
- refreshStatus();
- }
-}
-
-void ModelTest::refreshStatus()
-{
- status.type = Status::Idle;
- status.nonPersistent.clear();
- status.persistent.clear();
-
- persistStatus(QModelIndex());
-}
-
-void ModelTest::persistStatus(const QModelIndex &index)
-{
- const int rowCount = model->rowCount(index);
- for (int row = 0; row < rowCount; ++row) {
- // TODO: Test multi columns
- static const int column = 0;
- QPersistentModelIndex idx = model->index(row, column, index);
- status.persistent.append(idx);
- status.nonPersistent.append(idx);
- persistStatus(idx);
- }
-}
-
-void ModelTest::ensureSteady()
-{
- Q_ASSERT(insert.isEmpty());
- Q_ASSERT(remove.isEmpty());
- Q_ASSERT(changing.isEmpty());
- ensureConsistent();
-}
-
-void ModelTest::ensureConsistent()
-{
- Q_ASSERT(status.type == Status::Idle);
-
- Q_ASSERT(status.nonPersistent.size() == status.persistent.size());
- for (int i = 0; i < status.nonPersistent.size(); ++i) {
- Q_ASSERT(status.nonPersistent.at(i) == status.persistent.at(i));
- }
+ QVERIFY( c.parent == parent );
+ QVERIFY( c.oldSize - ( end - start + 1 ) == model->rowCount ( parent ) );
+ QVERIFY( c.last == model->data ( model->index ( start - 1, 0, c.parent ) ) );
+ QVERIFY( c.next == model->data ( model->index ( start, 0, c.parent ) ) );
+}
+
+void ModelTest::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight)
+{
+ QVERIFY(topLeft.isValid());
+ QVERIFY(bottomRight.isValid());
+ QModelIndex commonParent = bottomRight.parent();
+ QVERIFY(topLeft.parent() == commonParent);
+ QVERIFY(topLeft.row() <= bottomRight.row());
+ QVERIFY(topLeft.column() <= bottomRight.column());
+ int rowCount = model->rowCount(commonParent);
+ int columnCount = model->columnCount(commonParent);
+ QVERIFY(bottomRight.row() < rowCount);
+ QVERIFY(bottomRight.column() < columnCount);
+}
+
+void ModelTest::headerDataChanged(Qt::Orientation orientation, int start, int end)
+{
+ QVERIFY(start >= 0);
+ QVERIFY(end >= 0);
+ QVERIFY(start <= end);
+ int itemCount = orientation == Qt::Vertical ? model->rowCount() : model->columnCount();
+ QVERIFY(start < itemCount);
+ QVERIFY(end < itemCount);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/modeltest.h new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/modeltest.h
--- old/kitemmodels-4.97.0/autotests/proxymodeltestsuite/modeltest.h 2014-03-01 12:51:06.000000000 +0100
+++ new/kitemmodels-4.98.0/autotests/proxymodeltestsuite/modeltest.h 2014-03-28 19:35:13.000000000 +0100
@@ -1,27 +1,21 @@
/****************************************************************************
**
-** Copyright (C) 2007 Trolltech ASA. All rights reserved.
-** Copyright (C) 2010 Stephen Kelly <steveire(a)gmail.com>
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
**
-** This file is part of the Qt Concurrent project on Trolltech Labs.
+** This file is part of the test suite of the Qt Toolkit.
**
-** This file may be used under the terms of the GNU General Public
-** License version 2.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of
-** this file. Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-** http://www.trolltech.com/products/qt/opensource.html
-**
-** If you are unsure which license is appropriate for your use, please
-** review the following information:
-** http://www.trolltech.com/products/qt/licensing.html or contact the
-** sales department at sales(a)trolltech.com.
-**
-** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
-** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file COPYING.LIB included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
****************************************************************************/
+
#ifndef MODELTEST_H
#define MODELTEST_H
@@ -29,83 +23,50 @@
#include <QtCore/QAbstractItemModel>
#include <QtCore/QStack>
-#include "proxymodeltestsuite_export.h"
-
-class PROXYMODELTESTSUITE_EXPORT ModelTest : public QObject
+class ModelTest : public QObject
{
- Q_OBJECT
+ Q_OBJECT
public:
- enum Mode {
- Normal,
- Pedantic
- };
-
- ModelTest(QAbstractItemModel *model, QObject *parent = 0);
- ModelTest(QAbstractItemModel *model, Mode testType, QObject *parent = 0);
+ ModelTest( QAbstractItemModel *model, QObject *parent = 0 );
private Q_SLOTS:
- void nonDestructiveBasicTest();
- void rowCount();
- void columnCount();
- void hasIndex();
- void index();
- void parent();
- void data();
+ void nonDestructiveBasicTest();
+ void rowCount();
+ void columnCount();
+ void hasIndex();
+ void index();
+ void parent();
+ void data();
protected Q_SLOTS:
- void runAllTests();
- void layoutAboutToBeChanged();
- void layoutChanged();
- void modelAboutToBeReset();
- void modelReset();
- void rowsAboutToBeInserted(const QModelIndex &parent, int start, int end);
- void rowsInserted(const QModelIndex &parent, int start, int end);
- void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end);
- void rowsRemoved(const QModelIndex &parent, int start, int end);
- void rowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int);
- void rowsMoved(const QModelIndex &, int, int, const QModelIndex &, int);
-
- void ensureConsistent();
- void ensureSteady();
+ void runAllTests();
+ void layoutAboutToBeChanged();
+ void layoutChanged();
+ void rowsAboutToBeInserted( const QModelIndex &parent, int start, int end );
+ void rowsInserted( const QModelIndex & parent, int start, int end );
+ void rowsAboutToBeRemoved( const QModelIndex &parent, int start, int end );
+ void rowsRemoved( const QModelIndex & parent, int start, int end );
+ void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight);
+ void headerDataChanged(Qt::Orientation orientation, int start, int end);
private:
- void checkChildren(const QModelIndex &parent, int currentDepth = 0);
- void refreshStatus();
- void persistStatus(const QModelIndex &index);
- void init();
-
- QAbstractItemModel *const model;
-
- struct Status {
- enum Type {
- Idle,
- InsertingRows,
- RemovingRows,
- MovingRows,
- ChangingLayout,
- Resetting
- };
-
- Type type;
-
- QList<QPersistentModelIndex> persistent;
- QList<QModelIndex> nonPersistent;
- } status;
-
- struct Changing {
- QPersistentModelIndex parent;
- int oldSize;
- QVariant last;
- QVariant next;
- };
- QStack<Changing> insert;
- QStack<Changing> remove;
+ void checkChildren( const QModelIndex &parent, int currentDepth = 0 );
+
+ QAbstractItemModel *model;
+
+ struct Changing {
+ QModelIndex parent;
+ int oldSize;
+ QVariant last;
+ QVariant next;
+ };
+ QStack<Changing> insert;
+ QStack<Changing> remove;
- bool fetchingMore;
- const bool pedantic;
+ bool fetchingMore;
- QList<QPersistentModelIndex> changing;
+ QList<QPersistentModelIndex> changing;
};
#endif
--
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 kio for openSUSE:Factory checked in at 2014-04-02 17:22:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kio (Old)
and /work/SRC/openSUSE:Factory/.kio.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kio"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kio/kio.changes 2014-03-10 12:18:08.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kio.new/kio.changes 2014-04-02 17:22:20.000000000 +0200
@@ -1,0 +2,10 @@
+Sat Mar 29 19:47:42 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+- Added kwallet-devel BuildRequires
+
+-------------------------------------------------------------------
Old:
----
kio-4.97.0.tar.xz
New:
----
kio-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kio.spec ++++++
--- /var/tmp/diff_new_pack.DchLT8/_old 2014-04-02 17:22:21.000000000 +0200
+++ /var/tmp/diff_new_pack.DchLT8/_new 2014-04-02 17:22:21.000000000 +0200
@@ -17,10 +17,10 @@
Name: kio
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: karchive-devel >= %{_kf5_version}
BuildRequires: kbookmarks-devel >= %{_kf5_version}
@@ -40,6 +40,7 @@
BuildRequires: krb5-devel
BuildRequires: kservice-devel >= %{_kf5_version}
BuildRequires: ktextwidgets-devel >= %{_kf5_version}
+BuildRequires: kwallet-devel >= %{_kf5_version}
BuildRequires: kwidgetsaddons-devel >= %{_kf5_version}
BuildRequires: kwindowsystem-devel >= %{_kf5_version}
BuildRequires: kxmlgui-devel >= %{_kf5_version}
@@ -116,6 +117,7 @@
%{_kf5_servicetypesdir}/kpropertiesdialogplugin.desktop
%{_kf5_servicetypesdir}/kurifilterplugin.desktop
%{_kf5_plugindir}/kio_file.so
+%{_kf5_plugindir}/kded_kpasswdserver.so
%{_kf5_servicesdir}/file.protocol
%{_kf5_plugindir}/kio_help.so
%{_kf5_plugindir}/kio_ghelp.so
@@ -134,6 +136,7 @@
%{_kf5_datadir}/khtml/domain_info
%dir %{_kf5_servicesdir}/kded
%{_kf5_servicesdir}/kded/kcookiejar.desktop
+%{_kf5_servicesdir}/kded/kpasswdserver.desktop
%dir %{_kf5_datadir}/kconf_update
%{_kf5_datadir}/kconf_update/kcookiescfg.upd
%{_kf5_datadir}/kconf_update/kcookiescfg.pl
@@ -154,6 +157,7 @@
%{_kf5_plugindir}/kded_proxyscout.so
%{_kf5_libexecdir}/kpac_dhcp_helper
%{_kf5_libexecdir}/kioslave
+%{_kf5_libexecdir}/kioexec
%dir %{_kf5_datadir}/proxyscout
%{_kf5_datadir}/proxyscout/proxyscout.notifyrc
%{_kf5_servicesdir}/kded/proxyscout.desktop
@@ -172,6 +176,7 @@
%dir %{_kf5_htmldir}/en
%dir %{_kf5_htmldir}
%{_kf5_htmldir}/en/kioslave/
+%{_kf5_htmldir}/en/khelpcenter/
%{_kf5_dbusinterfacesdir}/kf5_org.kde.KDirNotify.xml
%{_kf5_dbusinterfacesdir}/kf5_org.kde.KPasswdServer.xml
%{_kf5_dbusinterfacesdir}/kf5_org.kde.KSlaveLauncher.xml
++++++ kio-4.97.0.tar.xz -> kio-4.98.0.tar.xz ++++++
++++ 5023 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 kinit for openSUSE:Factory checked in at 2014-04-02 17:22:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kinit (Old)
and /work/SRC/openSUSE:Factory/.kinit.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kinit"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kinit/kinit.changes 2014-03-25 13:22:40.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kinit.new/kinit.changes 2014-04-02 17:22:19.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:41 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kinit-4.97.0.tar.xz
New:
----
kinit-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kinit.spec ++++++
--- /var/tmp/diff_new_pack.oUlTjj/_old 2014-04-02 17:22:20.000000000 +0200
+++ /var/tmp/diff_new_pack.oUlTjj/_new 2014-04-02 17:22:20.000000000 +0200
@@ -17,10 +17,10 @@
Name: kinit
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcrash-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
@@ -28,12 +28,12 @@
BuildRequires: kio-devel >= %{_kf5_version}
BuildRequires: kservice-devel >= %{_kf5_version}
BuildRequires: kwindowsystem-devel >= %{_kf5_version}
+BuildRequires: libcap-devel
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
BuildRequires: pkgconfig(Qt5DBus) >= 5.2.0
BuildRequires: pkgconfig(Qt5Gui) >= 5.2.0
BuildRequires: pkgconfig(Qt5Widgets) >= 5.2.0
BuildRequires: pkgconfig(x11)
-BuildRequires: libcap-devel
#PreReq: permissions
Summary: Helper library to speed up start of applications on KDE workspaces
License: LGPL-2.1+
++++++ kinit-4.97.0.tar.xz -> kinit-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/CMakeLists.txt new/kinit-4.98.0/CMakeLists.txt
--- old/kinit-4.97.0/CMakeLists.txt 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/CMakeLists.txt 2014-03-28 19:17:02.000000000 +0100
@@ -2,11 +2,11 @@
project(KInit)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION "5.2")
-find_package(Qt5 "${REQUIRED_QT_VERSION}" CONFIG REQUIRED Core Gui Widgets DBus)
+find_package(Qt5 "${REQUIRED_QT_VERSION}" CONFIG REQUIRED Core Gui DBus)
include(KDEInstallDirs)
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
@@ -15,7 +15,7 @@
include(ECMPackageConfigHelpers)
include(ECMSetupVersion)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KINIT
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kinit_version.h"
@@ -44,6 +44,7 @@
find_package(KF5I18n ${KF5_VERSION} REQUIRED)
find_package(KF5WindowSystem ${KF5_VERSION} REQUIRED)
find_package(KF5Crash ${KF5_VERSION} REQUIRED)
+ find_package(KF5Config ${KF5_VERSION} REQUIRED)
# Due to a CMake bug, we need to explicitly find private dependencies of our dependencies
# Remove when we depend on CMake 3.0.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/ConfigureChecks.cmake new/kinit-4.98.0/ConfigureChecks.cmake
--- old/kinit-4.97.0/ConfigureChecks.cmake 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/ConfigureChecks.cmake 2014-03-28 19:17:02.000000000 +0100
@@ -1,15 +1,17 @@
-include (CheckFunctionExists)
-include (CheckIncludeFiles)
-include (CheckVariableExists)
+include(CheckFunctionExists)
+include(CheckIncludeFiles)
+include(CheckVariableExists)
include(CheckLibraryExists)
check_variable_exists(__progname HAVE___PROGNAME)
-check_variable_exists(__progname_full HAVE___PROGNAME_FULL)
check_include_files(sys/pstat.h HAVE_SYS_PSTAT_H)
-check_include_files(sys/types.h HAVE_SYS_TYPES_H)
-check_include_files(unistd.h HAVE_UNISTD_H)
check_include_files(sys/select.h HAVE_SYS_SELECT_H)
-check_include_files(sys/exec.h HAVE_SYS_EXEC_H)
check_function_exists(pstat HAVE_PSTAT)
check_function_exists(setproctitle HAVE_SETPROCTITLE)
check_library_exists(socket connect "" HAVE_SOCKET_LIBRARY)
+
+if(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "Darwin")
+ set(CAN_CLOBBER_ARGV TRUE)
+else()
+ set(CAN_CLOBBER_ARGV FALSE)
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/KF5InitMacros.cmake new/kinit-4.98.0/KF5InitMacros.cmake
--- old/kinit-4.97.0/KF5InitMacros.cmake 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/KF5InitMacros.cmake 2014-03-28 19:17:02.000000000 +0100
@@ -34,6 +34,7 @@
endif(NOT _res_position EQUAL -1)
_FIND_KDEINIT_FILE(_KDE5INIT_WIN32_DUMMY_FILEPATH "_win32lib")
+ set(_KDEINIT5_TARGET_NAME_ ${_target_NAME})
configure_file(${_KDE5INIT_WIN32_DUMMY_FILEPATH} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp)
add_library(kdeinit_${_target_NAME} STATIC ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/README.autostart new/kinit-4.98.0/README.autostart
--- old/kinit-4.97.0/README.autostart 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/README.autostart 1970-01-01 01:00:00.000000000 +0100
@@ -1,62 +0,0 @@
-KDE SESSION AUTOSTART
-=====================
-
-KDE session startup occurs in the following sequence:
-
- Window manager startup
- Autostart phase 1
- Session restoration
- Autostart phase 2
-
-Applications may be scheduled to be automatically run at KDE session startup
-in either autostart phase 1 or phase 2. Autostart phase 1 is the original
-autostart phase; phase 2 was introduced in KDE 3. To run in either phase, an
-application's .desktop file must be located in a KDE autostart directory such
-as $KDEDIR/share/autostart or $KDEHOME/share/autostart. The .desktop file can
-contain the following optional entries to control its autostart:
-
- X-KDE-autostart-condition = rcfile:group:entry:default
-
- rcfile = name of a config file (including path if necessary)
- group = name of a group within the config file
- entry = name of a boolean entry within the group
- default = true or false
-
- Starts the application only if the specified boolean entry in the
- specified config file has the value 'true'. If the specified entry is
- missing from the config file, the application will only be started if
- 'default' is 'true'.
- If the entry is not within a group, the group entry can be left empty.
-
- X-KDE-autostart-after = desktop_name
-
- desktop_name = the name of another .desktop file excluding path and
- the .desktop suffix. E.g. panel.desktop would appear
- as 'X-KDE-autostart-after=panel'
-
- Waits until the .desktop file specified by 'desktop_name' has been
- autostarted. The entry is ignored if the specified application is not
- scheduled in the same autostart phase as this .desktop file.
-
- X-KDE-autostart-phase = phase
-
- phase = 1 or 2
-
- Starts the application in the autostart phase specified by 'phase'.
- If this entry is missing or 'phase' < 1, 'phase' defaults to 1. If
- 'phase' > 2 the application will not be autostarted since the specified
- autostart phase will never be reached.
-
-
- Hidden = true
-
- Disables autostarting the application.
-
-
-KUniqueApplication and session restoration
-------------------------------------------
-
-If KUniqueApplication applications are autostarted before they are restored
-from the previous session, they will never see the session restoration command.
-So if you need to autostart a KUniqueApplication which may also be restored
-in session restoration, you should schedule it for autostart in phase 2.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/README.wrapper new/kinit-4.98.0/README.wrapper
--- old/kinit-4.97.0/README.wrapper 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/README.wrapper 1970-01-01 01:00:00.000000000 +0100
@@ -1,38 +0,0 @@
-README
-
-kdeinit4_wrapper, kshell4 and kwrapper4 are programs that
-start programs via kdeinit4.
-
-E.g. You can make a symbolic link from $KDEDIR/bin/konsole to
-$KDEDIR/bin/kdeinit4_wrapper. Typing 'konsole' on the command line
-will then start 'konsole.so' through kdeinit instead.
-
-kdeinit4_wrapper is the simplest form, it only passes the program
-and arguments to kdeinit, nothing else
-
-kshell is usually the best choice, it passes the program,
-arguments, complete environment ( $PATH, etc. ) and current
-working directory to kdeinit
-
-kwrapper tries to make the program look like it was actually
-really started directly and not via kdeinit. In addition to
-what kshell does, it also tries to redirect the program
-output to the console from which kwrapper was started, it waits
-for the program started via kdeinit to finish and only after then
-it exits ( it doesn't return its return value though ), and
-it also passes most signals it gets to the process of the started
-program ( thus allowing you to break it using Ctrl+C or stopping
-it using Ctrl+Z ). The drawbacks of this are that you'll have one
-more process running, and also the signal passing and output
-redirection may not work 100% reliably
-
-
-TODO
-====
-
-* There is no portable way to read out the complete environment and
- pass it to kdeinit. - kdeinit should probably unset every
- variable that's not set in the environment it gets from kshell or
- kwrapper
-* stdout/stderr of the started application goes to the console where
- kdeinit was started. - done, I hope it's ok
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/docs/session-autostart.txt new/kinit-4.98.0/docs/session-autostart.txt
--- old/kinit-4.97.0/docs/session-autostart.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kinit-4.98.0/docs/session-autostart.txt 2014-03-28 19:17:02.000000000 +0100
@@ -0,0 +1,62 @@
+KDE SESSION AUTOSTART
+=====================
+
+KDE session startup occurs in the following sequence:
+
+ Window manager startup
+ Autostart phase 1
+ Session restoration
+ Autostart phase 2
+
+Applications may be scheduled to be automatically run at KDE session startup
+in either autostart phase 1 or phase 2. Autostart phase 1 is the original
+autostart phase; phase 2 was introduced in KDE 3. To run in either phase, an
+application's .desktop file must be located in a KDE autostart directory such
+as $KDEDIR/share/autostart or $KDEHOME/share/autostart. The .desktop file can
+contain the following optional entries to control its autostart:
+
+ X-KDE-autostart-condition = rcfile:group:entry:default
+
+ rcfile = name of a config file (including path if necessary)
+ group = name of a group within the config file
+ entry = name of a boolean entry within the group
+ default = true or false
+
+ Starts the application only if the specified boolean entry in the
+ specified config file has the value 'true'. If the specified entry is
+ missing from the config file, the application will only be started if
+ 'default' is 'true'.
+ If the entry is not within a group, the group entry can be left empty.
+
+ X-KDE-autostart-after = desktop_name
+
+ desktop_name = the name of another .desktop file excluding path and
+ the .desktop suffix. E.g. panel.desktop would appear
+ as 'X-KDE-autostart-after=panel'
+
+ Waits until the .desktop file specified by 'desktop_name' has been
+ autostarted. The entry is ignored if the specified application is not
+ scheduled in the same autostart phase as this .desktop file.
+
+ X-KDE-autostart-phase = phase
+
+ phase = 1 or 2
+
+ Starts the application in the autostart phase specified by 'phase'.
+ If this entry is missing or 'phase' < 1, 'phase' defaults to 1. If
+ 'phase' > 2 the application will not be autostarted since the specified
+ autostart phase will never be reached.
+
+
+ Hidden = true
+
+ Disables autostarting the application.
+
+
+KUniqueApplication and session restoration
+------------------------------------------
+
+If KUniqueApplication applications are autostarted before they are restored
+from the previous session, they will never see the session restoration command.
+So if you need to autostart a KUniqueApplication which may also be restored
+in session restoration, you should schedule it for autostart in phase 2.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/docs/wrapper.txt new/kinit-4.98.0/docs/wrapper.txt
--- old/kinit-4.97.0/docs/wrapper.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kinit-4.98.0/docs/wrapper.txt 2014-03-28 19:17:02.000000000 +0100
@@ -0,0 +1,36 @@
+README
+
+kdeinit5_wrapper, kshell5 and kwrapper5 are programs that
+start programs via kdeinit.
+
+E.g. You can make a symbolic link from $KDEDIR/bin/konsole to
+$KDEDIR/bin/kdeinit5_wrapper. Typing 'konsole' on the command line
+will then start 'konsole.so' through kdeinit instead.
+
+kdeinit5_wrapper is the simplest form, it only passes the program
+and arguments to kdeinit, nothing else
+
+kshell5 is usually the best choice, it passes the program,
+arguments, complete environment ( $PATH, etc. ) and current
+working directory to kdeinit
+
+kwrapper5 tries to make the program look like it was actually
+really started directly and not via kdeinit. In addition to
+what kshell5 does, it also tries to redirect the program
+output to the console from which kwrapper5 was started, it waits
+for the program started via kdeinit to finish and only after then
+it exits ( it doesn't return its return value though ), and
+it also passes most signals it gets to the process of the started
+program ( thus allowing you to break it using Ctrl+C or stopping
+it using Ctrl+Z ). The drawbacks of this are that you'll have one
+more process running, and also the signal passing and output
+redirection may not work 100% reliably.
+
+
+TODO
+====
+
+* There is no portable way to read out the complete environment and
+ pass it to kdeinit. - kdeinit should probably unset every
+ variable that's not set in the environment it gets from kshell or
+ kwrapper
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/kde5init_win32lib_dummy.cpp.in new/kinit-4.98.0/kde5init_win32lib_dummy.cpp.in
--- old/kinit-4.97.0/kde5init_win32lib_dummy.cpp.in 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/kde5init_win32lib_dummy.cpp.in 2014-03-28 19:17:02.000000000 +0100
@@ -1,5 +1,5 @@
/* dummy file, used by KF5_ADD_KDEINIT_EXECUTABLE() under Windows,
* so that the created static library is not completely empty */
-extern "C" int kdeinit_${_KDEINIT4_TARGET_NAME_}_dummy(void) { return 42; }
+extern "C" int kdeinit_${_KDEINIT5_TARGET_NAME_}_dummy(void) { return 42; }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/src/Messages.sh new/kinit-4.98.0/src/Messages.sh
--- old/kinit-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kinit-4.98.0/src/Messages.sh 2014-03-28 19:17:02.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kinit5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/src/config-kdeinit.h.cmake new/kinit-4.98.0/src/config-kdeinit.h.cmake
--- old/kinit-4.97.0/src/config-kdeinit.h.cmake 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/src/config-kdeinit.h.cmake 2014-03-28 19:17:02.000000000 +0100
@@ -7,13 +7,13 @@
/* These are for proctitle.cpp: */
#cmakedefine01 HAVE___PROGNAME
-#cmakedefine01 HAVE___PROGNAME_FULL
#cmakedefine01 HAVE_SYS_PSTAT_H
#cmakedefine01 HAVE_PSTAT
#cmakedefine01 HAVE_SETPROCTITLE
+#cmakedefine01 CAN_CLOBBER_ARGV
+
#cmakedefine01 HAVE_X11
#cmakedefine01 HAVE_SYS_SELECT_H
-#cmakedefine01 HAVE_SYS_EXEC_H
/* for start_kdeinit */
#cmakedefine01 KDEINIT_OOM_PROTECT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/src/kdeinit/CMakeLists.txt new/kinit-4.98.0/src/kdeinit/CMakeLists.txt
--- old/kinit-4.97.0/src/kdeinit/CMakeLists.txt 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/src/kdeinit/CMakeLists.txt 2014-03-28 19:17:02.000000000 +0100
@@ -22,16 +22,18 @@
target_link_libraries(kdeinit5 ${kdeinit_LIBS} ${KINIT_SOCKET_LIBRARY}
Qt5::Gui #QFont::initialize
- KF5::Service #KLibrary
KF5::WindowSystem # KStartupInfo
KF5::Crash # KCrash::loadedByKdeinit
KF5::I18n #i18n() used on some error messages
+ KF5::ConfigCore
Qt5::DBus
)
-if(WIN32)
- target_compile_definitions(kdeinit5 PRIVATE CMAKE_INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}")
-endif()
+target_compile_definitions(kdeinit5 PRIVATE
+ CMAKE_INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}"
+ LIB_INSTALL_DIR="${LIB_INSTALL_DIR}"
+ LIBEXEC_INSTALL_DIR="${LIBEXEC_INSTALL_DIR}"
+)
if (X11_FOUND)
target_link_libraries(kdeinit5 ${X11_X11_LIB})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/src/kdeinit/kinit.cpp new/kinit-4.98.0/src/kdeinit/kinit.cpp
--- old/kinit-4.97.0/src/kdeinit/kinit.cpp 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/src/kdeinit/kinit.cpp 2014-03-28 19:17:02.000000000 +0100
@@ -52,7 +52,6 @@
#include <QtCore/QRegExp>
#include <QFont>
#include <kcrash.h>
-#include <klibrary.h>
#include <kconfig.h>
#include <klocalizedstring.h>
#include <QDebug>
@@ -88,10 +87,10 @@
#ifdef Q_OS_UNIX
//TODO: make sure what libraries we want here...
static const char *extra_libs[] = {
- "libKIOCore.so.5",
- "libKParts.so.5",
+ "libKF5KIOCore.so.5",
+ "libKF5Parts.so.5",
//#ifdef __KDE_HAVE_GCC_VISIBILITY // Removed for KF5, we'll see.
- "libPlasma.so.5"
+ "libKF5Plasma.so.5"
//#endif
};
#endif
@@ -472,34 +471,34 @@
{
QString lib;
QByteArray name;
- QByteArray exec;
QString libpath;
QByteArray execpath;
+ bool libpath_relative = false;
if (_name[0] != '/') {
name = _name;
lib = QFile::decodeName(name);
- exec = name;
- KLibrary klib(QLatin1String("libkdeinit5_") + lib);
- libpath = klib.fileName();
- if (libpath.isEmpty()) {
- KLibrary klib(lib);
- libpath = klib.fileName(); // this is really just a way to call findLibraryInternal
- }
- execpath = execpath_avoid_loops(exec, envc, envs, avoid_loops);
- if (libpath.isEmpty() && execpath.isEmpty()) {
- fprintf(stderr, "Didn't find \"%s\", neither as an executable nor as a plugin. Please check $PATH and $QT_PLUGIN_PATH.\n", name.constData());
- }
+ libpath = QLatin1String("libkdeinit5_") + lib;
+ libpath_relative = true;
+ execpath = execpath_avoid_loops(name, envc, envs, avoid_loops);
} else {
name = _name;
lib = QFile::decodeName(name);
name = name.mid(name.lastIndexOf('/') + 1);
- exec = _name;
+
+ // FIXME: this .so extension stuff is very Linux-specific
if (lib.endsWith(QLatin1String(".so"))) {
libpath = lib;
} else {
- // try to match an absolute path to an executable binary (either in bin/ or in libexec/)
- // to a kdeinit module in the same prefix
+ execpath = _name;
+
+ // Try to match an absolute path to an executable binary (either in
+ // bin/ or in libexec/) to a kdeinit module in the same prefix.
+ //
+ // Note that these *_INSTALL_DIR values should normally relative to
+ // the install prefix, although this may not be the case if the user
+ // has overridden them, and so this search is inherently fragile in
+ // the face of unusual installation layouts.
if (lib.contains(QLatin1String(LIBEXEC_INSTALL_DIR))) {
libpath = QString(lib).replace(QLatin1String(LIBEXEC_INSTALL_DIR),
QLatin1String(LIB_INSTALL_DIR "/libkdeinit5_")) + QLatin1String(".so");
@@ -511,7 +510,6 @@
if (!QFile::exists(libpath)) {
libpath.clear();
}
- execpath = exec;
}
}
#ifndef NDEBUG
@@ -630,12 +628,12 @@
/* set the process name, so that killall works like intended */
r = prctl(PR_SET_NAME, (unsigned long) name.data(), 0, 0, 0);
if (r == 0) {
- proctitle_set("%s [kdeinit]%s", name.data(), procTitle.data() ? procTitle.data() : "");
+ proctitle_set("-%s [kdeinit5]%s", name.data(), procTitle.data() ? procTitle.data() : "");
} else {
- proctitle_set("kdeinit5: %s%s", name.data(), procTitle.data() ? procTitle.data() : "");
+ proctitle_set("%s%s", name.data(), procTitle.data() ? procTitle.data() : "");
}
#else
- proctitle_set("kdeinit5: %s%s", name.data(), procTitle.data() ? procTitle.data() : "");
+ proctitle_set("%s%s", name.data(), procTitle.data() ? procTitle.data() : "");
#endif
#endif
}
@@ -652,7 +650,20 @@
QLibrary l(libpath);
if (!libpath.isEmpty()) {
- if (!l.load() || !l.isLoaded()) {
+ if (!l.load()) {
+ if (libpath_relative) {
+ // NB: Because Qt makes the actual dlopen() call, the
+ // RUNPATH of kdeinit is *not* respected - see
+ // https://sourceware.org/bugzilla/show_bug.cgi?id=13945
+ // - so we try hacking it in ourselves
+ QString install_lib_dir = QFile::decodeName(
+ CMAKE_INSTALL_PREFIX "/" LIB_INSTALL_DIR "/");
+ libpath = install_lib_dir + libpath;
+ l.setFileName(libpath);
+ l.load();
+ }
+ }
+ if (!l.isLoaded()) {
QString ltdlError(l.errorString());
if (execpath.isEmpty()) {
// Error
@@ -660,7 +671,7 @@
exitWithErrorMsg(errorMsg);
} else {
// Print warning
- fprintf(stderr, "Could not open library %s: %s\n", qPrintable(lib),
+ fprintf(stderr, "Could not open %s using a library: %s\n", qPrintable(lib),
qPrintable(ltdlError));
}
}
@@ -883,17 +894,6 @@
exit(255);
}
}
-#if 0 // obsolete in kde4. Should we check writing to another file instead?
- path = qgetenv("ICEAUTHORITY");
- if (path.isEmpty()) {
- path = home_dir;
- path += "/.ICEauthority";
- }
- if (access(path.data(), R_OK | W_OK) && (errno != ENOENT)) {
- fprintf(stderr, "kdeinit5: Aborting. No write access to '%s'.\n", path.data());
- exit(255);
- }
-#endif
}
/** Test if socket file is already present
@@ -1380,62 +1380,9 @@
}
}
-static void kdeinit_library_path()
+static void generate_socket_name()
{
- const QStringList ltdl_library_path =
- QFile::decodeName(qgetenv("LTDL_LIBRARY_PATH")).split(QLatin1Char(':'), QString::SkipEmptyParts);
-#ifdef Q_OS_DARWIN
- const QByteArray ldlibpath = qgetenv("DYLD_LIBRARY_PATH");
-#else
- const QByteArray ldlibpath = qgetenv("LD_LIBRARY_PATH");
-#endif
- const QStringList ld_library_path =
- QFile::decodeName(ldlibpath).split(QLatin1Char(':'), QString::SkipEmptyParts);
-
-#if 0 // unused
-
- QByteArray extra_path;
- const QStringList candidates = s_instance->dirs()->resourceDirs("lib");
- for (QStringList::ConstIterator it = candidates.begin();
- it != candidates.end();
- ++it) {
- QString d = *it;
- if (ltdl_library_path.contains(d)) {
- continue;
- }
- if (ld_library_path.contains(d)) {
- continue;
- }
- if (d[d.length() - 1] == QLatin1Char('/')) {
- d.truncate(d.length() - 1);
- if (ltdl_library_path.contains(d)) {
- continue;
- }
- if (ld_library_path.contains(d)) {
- continue;
- }
- }
- if ((d == QLatin1String("/lib")) || (d == QLatin1String("/usr/lib"))) {
- continue;
- }
-
- QByteArray dir = QFile::encodeName(d);
-
- if (access(dir, R_OK)) {
- continue;
- }
-
- if (!extra_path.isEmpty()) {
- extra_path += ':';
- }
- extra_path += dir;
- }
-#endif
-
-// if (!extra_path.isEmpty())
-// lt_dlsetsearchpath(extra_path.data());
-
QByteArray display = qgetenv(displayEnvVarName().constData());
if (display.isEmpty()) {
#if HAVE_X11 // qt5: see displayEnvVarName()
@@ -1677,7 +1624,7 @@
}
-int main(int argc, char **argv, char **envp)
+int main(int argc, char **argv)
{
#ifndef _WIN32_WCE
setlocale(LC_ALL, "");
@@ -1687,10 +1634,7 @@
pid_t pid;
bool do_fork = true;
int launch_klauncher = 1;
- // KDE5 TODO: make this 0 by default, so that a random kde app doesn't start kded5 upfront,
- // but on demand when a service needs it. In startkde, however, use +kded5 or --kded.
- // (+kded5 might not work because it doesn't fork on startup anymore)
- int launch_kded = 1;
+ int launch_kded = 0;
int keep_running = 1;
d.suicide = false;
@@ -1701,16 +1645,17 @@
if (strcmp(safe_argv[i], "--no-klauncher") == 0) {
launch_klauncher = 0;
}
- if (strcmp(safe_argv[i], "--no-kded") == 0) {
- launch_kded = 0;
+ if (strcmp(safe_argv[i], "--kded") == 0) {
+ launch_kded = 1;
}
-#ifdef Q_OS_MAC
- // make it nofork to match KUniqueApplication, technically command-line incompatible
- if (strcmp(safe_argv[i], "--nofork") == 0)
-#else
- if (strcmp(safe_argv[i], "--no-fork") == 0)
-#endif
+ // allow both nofork and no-fork for compatibility with
+ // old versions (both of this and of KUniqueApplication)
+ if (strcmp(safe_argv[i], "--nofork") == 0) {
+ do_fork = false;
+ }
+ if (strcmp(safe_argv[i], "--no-fork") == 0) {
do_fork = false;
+ }
if (strcmp(safe_argv[i], "--suicide") == 0) {
d.suicide = true;
}
@@ -1729,13 +1674,9 @@
#endif
if (strcmp(safe_argv[i], "--help") == 0) {
printf("Usage: kdeinit5 [options]\n");
-#ifdef Q_OS_MAC
- printf(" --nofork Do not fork\n");
-#else
printf(" --no-fork Do not fork\n");
-#endif
// printf(" --no-klauncher Do not start klauncher\n");
- printf(" --no-kded Do not start kded\n");
+ printf(" --kded Start kded\n");
printf(" --suicide Terminate when no KDE applications are left running\n");
printf(" --version Show version information\n");
// printf(" --exit Terminate when kded has run\n");
@@ -1786,10 +1727,9 @@
/** Prepare to change process name **/
#ifndef SKIP_PROCTITLE
- proctitle_init(argc, argv, envp);
+ proctitle_init(argc, argv);
#endif
- kdeinit_library_path();
// don't change envvars before proctitle_init()
unsetenv("LD_BIND_NOW");
unsetenv("DYLD_BIND_AT_LAUNCH");
@@ -1808,6 +1748,7 @@
setupX();
#endif
+ generate_socket_name();
if (keep_running) {
/*
* Create ~/.kde/tmp-<hostname>/kdeinit5-<display> socket for incoming wrapper
@@ -1894,7 +1835,7 @@
free(safe_argv);
#ifndef SKIP_PROCTITLE
- proctitle_set("kdeinit5 Running...");
+ proctitle_set("Running...");
#endif
if (!keep_running) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/src/kdeinit/proctitle.cpp new/kinit-4.98.0/src/kdeinit/proctitle.cpp
--- old/kinit-4.97.0/src/kdeinit/proctitle.cpp 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/src/kdeinit/proctitle.cpp 2014-03-28 19:17:02.000000000 +0100
@@ -1,234 +1,211 @@
+/* Based on setproctitle.c from OpenSSH 6.6p1 */
+
/*
- * ProFTPD - FTP server daemon
- * Copyright (c) 2007 The ProFTPD Project team //krazy:exclude=copyright
- * Copyright (c) 2007 Alex Merry <alex.merry(a)kdemail.net>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
+ * Copyright 2014 Alex Merry <alex.merry(a)kde.org>
+ * Copyright 2003 Damien Miller
+ * Copyright (c) 1983, 1995-1997 Eric P. Allman
+ * Copyright (c) 1988, 1993
+ * The Regents of the University of California. All rights reserved.
*
- * 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.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
*
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the
- * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301 USA
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
*/
#include "proctitle.h"
#include <config-kdeinit.h>
-#include <QByteArray>
+#define PT_NONE 0 /* don't use it at all */
+#define PT_PSTAT 1 /* use pstat(PSTAT_SETCMD, ...) */
+#define PT_REUSEARGV 2 /* cover argv with title information */
+#define PT_SETPROCTITLE 3 /* forward onto the native setproctitle */
-#include <string.h>
-#include <stdio.h>
#include <stdarg.h>
+#include <stdio.h>
#include <stdlib.h>
-
-#define PF_ARGV_NONE 0
-#define PF_ARGV_NEW 1
-#define PF_ARGV_WRITEABLE 2
-#define PF_ARGV_PSTAT 3
-#define PF_ARGV_PSSTRINGS 4
+#include <sys/types.h>
+#include <unistd.h>
+#include <string.h>
#if HAVE_SETPROCTITLE
-# define PF_ARGV_TYPE PF_ARGV_NONE
-# if HAVE_SYS_TYPES_H
-# include <sys/types.h>
-# endif /* HAVE_SYS_TYPES_H */
-# if HAVE_UNISTD_H
-# include <unistd.h>
-# endif /* HAVE_UNISTD_H */
-
-#else /* HAVE_SETPROCTITLE */
-# ifdef __GNU_HURD__
-# define PF_ARGV_TYPE PF_ARGV_NEW
-# else /* __GNU_HURD__ */
-# define PF_ARGV_TYPE PF_ARGV_WRITEABLE
-
-# if HAVE_SYS_PSTAT_H && HAVE_PSTAT
-# include <sys/pstat.h>
-# undef PF_ARGV_TYPE
-# define PF_ARGV_TYPE PF_ARGV_PSTAT
-# endif /* HAVE_SYS_PSTAT_H && HAVE_PSTAT */
-
-# if HAVE_SYS_EXEC_H
-# include <sys/exec.h>
-# if PS_STRINGS
-# include <machine/vmparam.h>
-# undef PF_ARGV_TYPE
-# define PF_ARGV_TYPE PF_ARGV_PSSTRINGS
-# endif /* PS_STRINGS */
-# endif /* HAVE_SYS_EXEC_H */
+# define PT_TYPE PT_SETPROCTITLE
+ // process title should get prepended automagically
+# define ADD_PROCTITLE 0
+#elif HAVE_SYS_PSTAT_H && HAVE_PSTAT
+# include <sys/pstat.h>
+# define PT_TYPE PT_PSTAT
+#elif CAN_CLOBBER_ARGV
+# define PT_TYPE PT_REUSEARGV
+#endif
-# endif /* !__GNU_HURD__ */
+#ifndef PT_TYPE
+# define PT_TYPE PT_NONE
+#endif
+#ifndef ADD_PROCTITLE
+# define ADD_PROCTITLE 1
+#endif
-#endif /* !HAVE_SETPROCTITLE */
+#if PT_TYPE == PT_REUSEARGV
+static char *argv_start = NULL;
+static size_t argv_env_len = 0;
+#endif
#if HAVE___PROGNAME
extern char *__progname;
-#endif /* HAVE___PROGNAME */
-#if HAVE___PROGNAME_FULL
-extern char *__progname_full;
-#endif /* HAVE___PROGNAME_FULL */
-extern char **environ;
-
-static char **Argv = NULL;
-
-#if PF_ARGV_TYPE == PF_ARGV_WRITEABLE /* Only this mode uses LastArgv */
-static char *LastArgv = NULL;
-static char *cleanUpTo = NULL;
+#else
+char *__progname;
#endif
-/**
- * Set up the memory space for setting the proctitle
- */
-void proctitle_init(int argc, char *argv[], char *envp[])
+void
+proctitle_init(int argc, char *argv[])
{
- register int i, envpsize;
- char **p;
+#if HAVE___PROGNAME
+ // progname may be a reference to argv[0]
+ __progname = strdup(__progname);
+#else
+ if (argc == 0 || argv[0] == NULL) {
+ __progname = "unknown"; /* XXX */
+ } else {
+ char *p = strrchr(argv[0], '/');
+ if (p == NULL)
+ p = argv[0];
+ else
+ p++;
- /* Move the environment so proctitle_set can use the space. */
- for (i = envpsize = 0; envp[i] != NULL; i++) {
- envpsize += strlen(envp[i]) + 1;
+ __progname = strdup(p);
}
+#endif
- if ((p = (char **) malloc((i + 1) * sizeof(char *))) != NULL) {
- environ = p;
+#if PT_TYPE == PT_REUSEARGV
+ if (argc == 0 || argv[0] == NULL)
+ return;
- for (i = 0; envp[i] != NULL; i++) {
- if ((environ[i] = static_cast<char *>(malloc(strlen(envp[i]) + 1))) != NULL) {
- strcpy(environ[i], envp[i]);
- }
- }
+ extern char **environ;
+ char *lastargv = NULL;
+ char **envp = environ;
+ int i;
- environ[i] = NULL;
- }
+ /*
+ * NB: This assumes that argv has already been copied out of the
+ * way. This is true for kdeinit, but may not be true for other
+ * programs. Beware.
+ */
- Argv = argv;
+ /* Fail if we can't allocate room for the new environment */
+ for (i = 0; envp[i] != NULL; i++)
+ ;
+ if ((environ = (char**)calloc(i + 1, sizeof(*environ))) == NULL) {
+ environ = envp; /* put it back */
+ return;
+ }
-# if PF_ARGV_TYPE == PF_ARGV_WRITEABLE /* Only this mode uses LastArgv */
+ /*
+ * Find the last argv string or environment variable within
+ * our process memory area.
+ */
for (i = 0; i < argc; i++) {
- if (!i || (LastArgv + 1 == argv[i])) {
- LastArgv = argv[i] + strlen(argv[i]);
- }
+ if (lastargv == NULL || lastargv + 1 == argv[i])
+ lastargv = argv[i] + strlen(argv[i]);
}
- cleanUpTo = LastArgv;
-
for (i = 0; envp[i] != NULL; i++) {
- /* must not overwrite XDG_SESSION_COOKIE */
- if (!strncmp(envp[i], "XDG_", 4)) {
- break;
- }
- if ((LastArgv + 1) == envp[i]) {
- LastArgv = envp[i] + strlen(envp[i]);
- }
+ if (lastargv + 1 == envp[i])
+ lastargv = envp[i] + strlen(envp[i]);
}
-#endif
-# if HAVE___PROGNAME
- /* Set the __progname variable so glibc and company
- * don't go nuts.
+ argv[1] = NULL;
+ argv_start = argv[0];
+ argv_env_len = lastargv - argv[0] - 1;
+
+ /*
+ * Copy environment
+ * XXX - will truncate env on strdup fail
*/
- __progname = strdup("kdeinit5");
-# endif /* HAVE___PROGNAME */
-# if HAVE___PROGNAME_FULL
- /* __progname_full too */
- __progname_full = strdup(argv[0]);
-# endif /* HAVE___PROGNAME_FULL */
+ for (i = 0; envp[i] != NULL; i++)
+ environ[i] = strdup(envp[i]);
+ environ[i] = NULL;
+#endif /* PT_REUSEARGV */
}
-void proctitle_set(const char *fmt, ...)
+void
+proctitle_set(const char *fmt, ...)
{
- va_list msg;
- static char statbuf[BUFSIZ];
-
-#if ! HAVE_SETPROCTITLE
-# if PF_ARGV_TYPE == PF_ARGV_PSTAT
- union pstun pst;
-# endif /* PF_ARGV_PSTAT */
- char *p;
- int i;
-#endif /* HAVE_SETPROCTITLE */
-
- if (!fmt) {
+#if PT_TYPE != PT_NONE
+#if PT_TYPE == PT_REUSEARGV
+ if (argv_env_len <= 0)
return;
- }
-
- va_start(msg, fmt);
-
- memset(statbuf, 0, sizeof(statbuf));
-
-#if HAVE_SETPROCTITLE
-# if __FreeBSD__ >= 4 && !defined(FREEBSD4_0) && !defined(FREEBSD4_1)
- /* FreeBSD's setproctitle() automatically prepends the process name. */
- qvsnprintf(statbuf, sizeof(statbuf), fmt, msg);
-
-# else /* FREEBSD4 */
- /* Manually append the process name for non-FreeBSD platforms. */
- qsnprintf(statbuf, sizeof(statbuf), "%s", "kdeinit5: ");
- qvsnprintf(statbuf + strlen(statbuf),
- sizeof(statbuf) - strlen(statbuf),
- fmt,
- msg);
-
-# endif /* FREEBSD4 */
- setproctitle("%s", statbuf);
-
-#else /* HAVE_SETPROCTITLE */
- /* Manually append the process name for non-setproctitle() platforms. */
- qsnprintf(statbuf, sizeof(statbuf), "%s", "kdeinit5: ");
- qvsnprintf(statbuf + strlen(statbuf),
- sizeof(statbuf) - strlen(statbuf),
- fmt,
- msg);
-
-#endif /* HAVE_SETPROCTITLE */
+#endif
- va_end(msg);
+ bool skip_proctitle = false;
+ if (fmt != NULL && fmt[0] == '-') {
+ skip_proctitle = true;
+ ++fmt;
+ }
+ char ptitle[1024];
+ memset(ptitle, '\0', sizeof(ptitle));
+ size_t len = 0;
+
+#if ADD_PROCTITLE
+ if (!skip_proctitle) {
+ strncpy(ptitle, __progname, sizeof(ptitle)-1);
+ len = strlen(ptitle);
+ if (fmt != NULL && sizeof(ptitle) - len > 2) {
+ strcpy(ptitle + len, ": ");
+ len += 2;
+ }
+ }
+#endif
-#if HAVE_SETPROCTITLE
- return;
-#else
- i = strlen(statbuf);
+ if (fmt != NULL) {
+ int r = -1;
+ if (len < sizeof(ptitle) - 1) {
+ va_list ap;
+ va_start(ap, fmt);
+ r = vsnprintf(ptitle + len, sizeof(ptitle) - len , fmt, ap);
+ va_end(ap);
+ }
+ if (r == -1 || (size_t)r >= sizeof(ptitle) - len)
+ return;
+ }
-# if PF_ARGV_TYPE == PF_ARGV_NEW
- /* We can just replace argv[] arguments. Nice and easy. */
- Argv[0] = statbuf;
- Argv[1] = NULL;
-# endif /* PF_ARGV_NEW */
-
-# if PF_ARGV_TYPE == PF_ARGV_WRITEABLE
- const int maxlen = (LastArgv - Argv[0]) - 1;
- /* We can overwrite individual argv[] arguments. Semi-nice. */
- qsnprintf(Argv[0], maxlen, "%s", statbuf);
- p = &Argv[0][i];
- /* Clear the rest used by arguments, but don't clear the memory
- that is usually used for environment variables. Some
- tools, like ConsoleKit must have access to the process'es initial
- environment (more exact, the XDG_SESSION_COOKIE variable stored there).
- If this code causes another side effect, we have to specifically
- always append those variables to our environment. */
- while (p < cleanUpTo) {
- *p++ = '\0';
- }
-
- Argv[1] = NULL;
-# endif /* PF_ARGV_WRITEABLE */
-
-# if PF_ARGV_TYPE == PF_ARGV_PSTAT
- pst.pst_command = statbuf;
- pstat(PSTAT_SETCMD, pst, i, 0, 0);
-# endif /* PF_ARGV_PSTAT */
-
-# if PF_ARGV_TYPE == PF_ARGV_PSSTRINGS
- PS_STRINGS->ps_nargvstr = 1;
- PS_STRINGS->ps_argvstr = statbuf;
-# endif /* PF_ARGV_PSSTRINGS */
+#if PT_TYPE == PT_PSTAT
+ union pstun pst;
+ pst.pst_command = ptitle;
+ pstat(PSTAT_SETCMD, pst, strlen(ptitle), 0, 0);
+#elif PT_TYPE == PT_REUSEARGV
+ strncpy(argv_start, ptitle, argv_env_len);
+ argv_start[argv_env_len-1] = '\0';
+#elif PT_TYPE == PT_SETPROCTITLE
+ if (fmt == NULL) {
+ setproctitle(NULL);
+#if defined(__FreeBSD__)
+ } else if (skip_proctitle) {
+ // setproctitle on FreeBSD allows skipping the process title
+ setproctitle("-%s", ptitle);
+#endif
+ } else {
+ setproctitle("%s", ptitle);
+ }
+#endif
-#endif /* HAVE_SETPROCTITLE */
+#endif /* !PT_NONE */
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/src/kdeinit/proctitle.h new/kinit-4.98.0/src/kdeinit/proctitle.h
--- old/kinit-4.97.0/src/kdeinit/proctitle.h 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/src/kdeinit/proctitle.h 2014-03-28 19:17:02.000000000 +0100
@@ -1,48 +1,63 @@
/*
- * ProFTPD - FTP server daemon
- * Copyright (c) 2007 The ProFTPD Project team //krazy:exclude=copyright
- * Copyright (c) 2007 Alex Merry <alex.merry(a)kdemail.net>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the
- * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301 USA
+ * Copyright 2014 Alex Merry <alex.merry(a)kde.org>
+ * Copyright 2003 Damien Miller
+ * Copyright (c) 1983, 1995-1997 Eric P. Allman
+ * Copyright (c) 1988, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
*/
-#ifndef PROCTITLE_H
-#define PROCTITLE_H
+#ifndef SETPROCTITLE_H
+#define SETPROCTITLE_H
/**
- * Initialises the program data variables to allow the
- * changing of the process title. This _must_ be called
- * before proctitle_set, and must only be called once.
- *
- * @param argc argc, as passed to main()
- * @param argv argv, as passed to main()
- * @param envp envp, as passed to main()
+ * Set up the data structures for changing the process title.
+ *
+ * This must be called before proctitle_set, and must not be called
+ * multiple times. Be warned that this function and proctitle_set may
+ * alter the contents of argv, and so any argument parsing should be
+ * done before calling this function.
+ *
+ * @param argc argc, as passed to main()
+ * @param argv argv, as passed to main() (NB: this MUST NOT be a copy
+ * of argv!)
*/
-void proctitle_init(int argc, char *argv[], char *envp[]);
+void proctitle_init(int argc, char *argv[]);
/**
- * Change the process title. It accepts a variable number
- * of arguments (a va_list) in the manner of the printf
- * family of functions. See the documentation for
- * printf for a description of the format string.
+ * Set the process title that appears on the ps command.
+ *
+ * The title is set to the executable's name, followed by the result
+ * of a printf-style expansion of the arguments as specified by the fmt
+ * argument. If fmt begins with a '-' character, the executable's name
+ * is skipped (providing the platform implementation supports it;
+ * OpenBSD and NetBSD do not).
+ *
+ * Note that proctitle_init must be called before using this function.
*/
-void proctitle_set(const char *fmt, ...)
-#ifdef __GNUC__
-__attribute__((format(printf, 1, 2)))
-#endif
-;
+void proctitle_set(const char *fmt, ...);
-#endif /* PROCTITLE_H */
+#endif // SETPROCTITLE_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kinit-4.97.0/src/klauncher/klauncher.cpp new/kinit-4.98.0/src/klauncher/klauncher.cpp
--- old/kinit-4.97.0/src/klauncher/klauncher.cpp 2014-03-01 12:51:02.000000000 +0100
+++ new/kinit-4.98.0/src/klauncher/klauncher.cpp 2014-03-28 19:17:02.000000000 +0100
@@ -45,9 +45,9 @@
#include <kconfig.h>
#include <QDebug>
-#include <klibrary.h>
#include <klocalizedstring.h>
#include <kdesktopfile.h>
+#include <kpluginloader.h> // to find kioslave modules
#include <kprotocolmanager.h>
#include <kprotocolinfo.h>
#include <krun.h> // TODO port away from kiofilewidgets
@@ -137,7 +137,15 @@
mSlaveDebug = QString::fromLocal8Bit(qgetenv("KDE_SLAVE_DEBUG_WAIT"));
if (!mSlaveDebug.isEmpty()) {
+#ifndef USE_KPROCESS_FOR_KIOSLAVES
qWarning("Klauncher running in slave-debug mode for slaves of protocol '%s'", qPrintable(mSlaveDebug));
+#else
+ // Slave debug mode causes kdeinit to suspend the process waiting
+ // for the developer to attach gdb to the process; we do not have
+ // a good way of doing a similar thing if we are using QProcess.
+ mSlaveDebug.clear();
+ qWarning("slave-debug mode is not available as Klauncher is not using kdeinit");
+#endif
}
mSlaveValgrind = QString::fromLocal8Bit(qgetenv("KDE_SLAVE_VALGRIND"));
if (!mSlaveValgrind.isEmpty()) {
@@ -1015,19 +1023,25 @@
return slave->pid();
}
- QString name = KProtocolInfo::exec(protocol);
- if (name.isEmpty()) {
+ QString slaveModule = KProtocolInfo::exec(protocol);
+ if (slaveModule.isEmpty()) {
error = i18n("Unknown protocol '%1'.\n", protocol);
return 0;
}
+ KPluginLoader loader(slaveModule);
+ QString slaveModulePath = loader.fileName();
+ if (slaveModulePath.isEmpty()) {
+ error = i18n("Could not find the '%1' plugin.\n", slaveModule);
+ return 0;
+ }
QStringList arg_list;
#ifdef USE_KPROCESS_FOR_KIOSLAVES
- arg_list << name;
+ arg_list << slaveModulePath;
arg_list << protocol;
arg_list << mConnectionServer.address().toString();
arg_list << app_socket;
- name = QFile::decodeName(CMAKE_INSTALL_PREFIX "/" LIBEXEC_INSTALL_DIR "/kioslave");
+ QString name = QFile::decodeName(CMAKE_INSTALL_PREFIX "/" LIBEXEC_INSTALL_DIR "/kioslave");
#else
QString arg1 = protocol;
QString arg2 = mConnectionServer.address().toString();
@@ -1035,26 +1049,25 @@
arg_list.append(arg1);
arg_list.append(arg2);
arg_list.append(arg3);
+ QString name = slaveModulePath;
#endif
// qDebug() << "KLauncher: launching new slave " << name << " with protocol=" << protocol
// << " args=" << arg_list << endl;
#ifdef Q_OS_UNIX
- if (mSlaveDebug == protocol) {
#ifndef USE_KPROCESS_FOR_KIOSLAVES
+ // see comments where mSlaveDebug is set in KLauncher::KLauncher
+ if (mSlaveDebug == protocol) {
klauncher_header request_header;
request_header.cmd = LAUNCHER_DEBUG_WAIT;
request_header.arg_length = 0;
kde_safe_write(kdeinitSocket, &request_header, sizeof(request_header));
-#else
- name = QString::fromLatin1("gdb");
-#endif
}
+#endif
if (mSlaveValgrind == protocol) {
+ arg_list.prepend(name);
#ifndef USE_KPROCESS_FOR_KIOSLAVES // otherwise we've already done this
- KLibrary lib(name);
- arg_list.prepend(lib.fileName());
arg_list.prepend(QFile::decodeName(CMAKE_INSTALL_PREFIX "/" LIBEXEC_INSTALL_DIR "/kioslave"));
#endif
name = QString::fromLatin1("valgrind");
--
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 kimageformats for openSUSE:Factory checked in at 2014-04-02 17:22:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kimageformats (Old)
and /work/SRC/openSUSE:Factory/.kimageformats.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kimageformats"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kimageformats/kimageformats.changes 2014-03-10 12:17:30.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kimageformats.new/kimageformats.changes 2014-04-02 17:22:18.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:41 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kimageformats-4.97.0.tar.xz
New:
----
kimageformats-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kimageformats.spec ++++++
--- /var/tmp/diff_new_pack.wgQ6gs/_old 2014-04-02 17:22:19.000000000 +0200
+++ /var/tmp/diff_new_pack.wgQ6gs/_new 2014-04-02 17:22:19.000000000 +0200
@@ -17,10 +17,10 @@
Name: kimageformats
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: libjasper-devel
++++++ kimageformats-4.97.0.tar.xz -> kimageformats-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kimageformats-4.97.0/CMakeLists.txt new/kimageformats-4.98.0/CMakeLists.txt
--- old/kimageformats-4.97.0/CMakeLists.txt 2014-03-01 15:49:38.000000000 +0100
+++ new/kimageformats-4.98.0/CMakeLists.txt 2014-03-28 19:17:00.000000000 +0100
@@ -2,9 +2,9 @@
project(KImageFormats)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
-set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
+set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(KDEInstallDirs)
include(KDEFrameworkCompilerSettings)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kimageformats-4.97.0/autotests/CMakeLists.txt new/kimageformats-4.98.0/autotests/CMakeLists.txt
--- old/kimageformats-4.97.0/autotests/CMakeLists.txt 2014-03-01 15:49:38.000000000 +0100
+++ new/kimageformats-4.98.0/autotests/CMakeLists.txt 2014-03-28 19:17:00.000000000 +0100
@@ -1,11 +1,18 @@
#find_package(Qt5Test ${REQUIRED_QT_VERSION} NO_MODULE)
include(ECMMarkAsTest)
+include(CMakeParseArguments)
add_definitions(-DPLUGIN_DIR="${CMAKE_CURRENT_BINARY_DIR}/../src")
remove_definitions(-DQT_NO_CAST_FROM_ASCII)
macro(kimageformats_read_tests)
+ cmake_parse_arguments(KIF_RT "" "FUZZ" "" ${ARGN})
+ set(_fuzzarg)
+ if (KIF_RT_FUZZ)
+ set(_fuzzarg -f ${KIF_RT_FUZZ})
+ endif()
+
if (NOT TARGET readtest)
add_executable(readtest readtest.cpp)
target_link_libraries(readtest Qt5::Gui)
@@ -13,10 +20,11 @@
PRIVATE IMAGEDIR="${CMAKE_CURRENT_SOURCE_DIR}/read")
ecm_mark_as_test(readtest)
endif()
- foreach(_testname ${ARGN})
+
+ foreach(_testname ${KIF_RT_UNPARSED_ARGUMENTS})
add_test(
NAME kimageformats-read-${_testname}
- COMMAND readtest ${_testname}
+ COMMAND readtest ${_fuzzarg} ${_testname}
)
endforeach(_testname)
endmacro()
@@ -53,6 +61,10 @@
ras
rgb
tga
+)
+# Allow some fuzziness when reading this formats, to allow for
+# rounding errors (eg: in alpha blending).
+kimageformats_read_tests(FUZZ 1
xcf
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kimageformats-4.97.0/autotests/readtest.cpp new/kimageformats-4.98.0/autotests/readtest.cpp
--- old/kimageformats-4.97.0/autotests/readtest.cpp 2014-03-01 15:49:38.000000000 +0100
+++ new/kimageformats-4.98.0/autotests/readtest.cpp 2014-03-28 19:17:00.000000000 +0100
@@ -29,6 +29,8 @@
#include <QImageReader>
#include <QTextStream>
+#include "../tests/format-enum.h"
+
static void writeImageData(const char *name, const QString &filename, const QImage &image)
{
QFile file(filename);
@@ -49,6 +51,27 @@
}
}
+// allow each byte to be different by up to 1, to allow for rounding errors
+static bool fuzzyeq(const QImage &im1, const QImage &im2, uchar fuzziness)
+{
+ const int height = im1.height();
+ const int width = im1.width();
+ for (int i = 0; i < height; ++i) {
+ const uchar *line1 = im1.scanLine(i);
+ const uchar *line2 = im2.scanLine(i);
+ for (int j = 0; j < width; ++j) {
+ if (line1[j] > line2[j]) {
+ if (line1[j] - line2[j] > fuzziness)
+ return false;
+ } else {
+ if (line2[j] - line1[j] > fuzziness)
+ return false;
+ }
+ }
+ }
+ return true;
+}
+
int main(int argc, char ** argv)
{
QCoreApplication app(argc, argv);
@@ -61,6 +84,11 @@
parser.addHelpOption();
parser.addVersionOption();
parser.addPositionalArgument(QStringLiteral("format"), QStringLiteral("format to test"));
+ QCommandLineOption fuzz(
+ QStringList() << QStringLiteral("f") << QStringLiteral("fuzz"),
+ QStringLiteral("Allow for some deviation in ARGB data."),
+ QStringLiteral("max"));
+ parser.addOption(fuzz);
parser.process(app);
@@ -73,6 +101,17 @@
parser.showHelp(1);
}
+ uchar fuzziness = 0;
+ if (parser.isSet(fuzz)) {
+ bool ok;
+ uint fuzzarg = parser.value(fuzz).toUInt(&ok);
+ if (!ok || fuzzarg > 255) {
+ QTextStream(stderr) << "Error: max fuzz argument must be a number between 0 and 255\n";
+ parser.showHelp(1);
+ }
+ fuzziness = uchar(fuzzarg);
+ }
+
QString suffix = args.at(0);
QByteArray format = suffix.toLatin1();
@@ -115,20 +154,47 @@
++failed;
continue;
}
- inputImage = inputImage.convertToFormat(expImage.format());
- if (expImage != inputImage) {
+ if (expImage.width() != inputImage.width()) {
+ QTextStream(stdout) << "FAIL : " << fi.fileName()
+ << ": width was " << inputImage.width()
+ << " but " << expfilename << " width was "
+ << expImage.width() << "\n";
+ ++failed;
+ } else if (expImage.height() != inputImage.height()) {
QTextStream(stdout) << "FAIL : " << fi.fileName()
- << ": differs from " << expfilename << "\n";
- writeImageData("expected data",
- fi.fileName() + QLatin1String("-expected.data"),
- expImage);
- writeImageData("actual data",
- fi.fileName() + QLatin1String("-actual.data"),
- inputImage);
+ << ": height was " << inputImage.height()
+ << " but " << expfilename << " height was "
+ << expImage.height() << "\n";
++failed;
} else {
- QTextStream(stdout) << "PASS : " << fi.fileName() << "\n";
- ++passed;
+ if (inputImage.format() != QImage::Format_ARGB32) {
+ QTextStream(stdout) << "INFO : " << fi.fileName()
+ << ": converting " << fi.fileName()
+ << " from " << formatToString(inputImage.format())
+ << " to ARGB32\n";
+ inputImage = inputImage.convertToFormat(QImage::Format_ARGB32);
+ }
+ if (expImage.format() != QImage::Format_ARGB32) {
+ QTextStream(stdout) << "INFO : " << fi.fileName()
+ << ": converting " << expfilename
+ << " from " << formatToString(expImage.format())
+ << " to ARGB32\n";
+ expImage = expImage.convertToFormat(QImage::Format_ARGB32);
+ }
+ if (fuzzyeq(inputImage, expImage, fuzziness)) {
+ QTextStream(stdout) << "PASS : " << fi.fileName() << "\n";
+ ++passed;
+ } else {
+ QTextStream(stdout) << "FAIL : " << fi.fileName()
+ << ": differs from " << expfilename << "\n";
+ writeImageData("expected data",
+ fi.fileName() + QLatin1String("-expected.data"),
+ expImage);
+ writeImageData("actual data",
+ fi.fileName() + QLatin1String("-actual.data"),
+ inputImage);
+ ++failed;
+ }
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kimageformats-4.97.0/cmake/FindOpenEXR.cmake new/kimageformats-4.98.0/cmake/FindOpenEXR.cmake
--- old/kimageformats-4.97.0/cmake/FindOpenEXR.cmake 2014-03-01 15:49:38.000000000 +0100
+++ new/kimageformats-4.98.0/cmake/FindOpenEXR.cmake 1970-01-01 01:00:00.000000000 +0100
@@ -1,144 +0,0 @@
-# Try to find the OpenEXR libraries
-#
-# This will define:
-#
-# OpenEXR_FOUND - True if OpenEXR is available
-# OpenEXR_LIBRARIES - Link to these to use OpenEXR
-# OpenEXR_INCLUDE_DIRS - Include directory for OpenEXR
-# OpenEXR_DEFINITIONS - Compiler flags required to link against OpenEXR
-# OpenEXR::IlmImf - imported target to link against (instead of using the above variables)
-#
-
-
-# Copyright (c) 2006, Alexander Neundorf, <neundorf(a)kde.org>
-# Copyright (c) 2013-2014, Alex Merry, <alex.merry(a)kdemail.net>
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# 1. Redistributions of source code must retain the copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# 3. The name of the author may not be used to endorse or promote products
-# derived from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-if(${CMAKE_VERSION} VERSION_LESS 2.8.12)
- message(FATAL_ERROR "CMake 2.8.12 is required by FindOpenEXR.cmake")
-endif()
-
-# use pkg-config to get the directories and then use these values
-# in the FIND_PATH() and FIND_LIBRARY() calls
-find_package(PkgConfig)
-pkg_check_modules(PC_OpenEXR QUIET OpenEXR)
-
-set(OpenEXR_DEFINITIONS ${PC_OpenEXR_CFLAGS_OTHER})
-
-find_path(OpenEXR_INCLUDE_DIR ImfRgbaFile.h
- PATHS
- ${PC_OpenEXR_INCLUDEDIR}
- ${PC_OpenEXR_INCLUDE_DIRS}
- PATH_SUFFIXES OpenEXR
-)
-
-# Required libraries for OpenEXR
-find_library(OpenEXR_HALF_LIBRARY NAMES Half
- PATHS
- ${PC_OpenEXR_LIBDIR}
- ${PC_OpenEXR_LIBRARY_DIRS}
-)
-find_library(OpenEXR_IEX_LIBRARY NAMES Iex
- PATHS
- ${PC_OpenEXR_LIBDIR}
- ${PC_OpenEXR_LIBRARY_DIRS}
-)
-find_library(OpenEXR_IMATH_LIBRARY NAMES Imath
- PATHS
- ${PC_OpenEXR_LIBDIR}
- ${PC_OpenEXR_LIBRARY_DIRS}
-)
-find_library(OpenEXR_ILMTHREAD_LIBRARY NAMES IlmThread
- PATHS
- ${PC_OpenEXR_LIBDIR}
- ${PC_OpenEXR_LIBRARY_DIRS}
-)
-# This is the actual OpenEXR library
-find_library(OpenEXR_ILMIMF_LIBRARY NAMES IlmImf
- PATHS
- ${PC_OpenEXR_LIBDIR}
- ${PC_OpenEXR_LIBRARY_DIRS}
-)
-
-set(_OpenEXR_deps
- ${OpenEXR_HALF_LIBRARY}
- ${OpenEXR_IEX_LIBRARY}
- ${OpenEXR_IMATH_LIBRARY}
- ${OpenEXR_ILMTHREAD_LIBRARY})
-
-set(OpenEXR_LIBRARIES
- ${_OpenEXR_deps}
- ${OpenEXR_ILMIMF_LIBRARY})
-
-if (OpenEXR_INCLUDE_DIR AND EXISTS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h")
- file(STRINGS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h" openexr_version_str
- REGEX "^#define[\t ]+OPENEXR_VERSION_STRING[\t ]+\"[^\"]*\"")
- string(REGEX REPLACE "^#define[\t ]+OPENEXR_VERSION_STRING[\t ]+\"([^\"]*).*"
- "\\1" OpenEXR_VERSION_STRING "${openexr_version_str}")
- unset(openexr_version_str)
-endif ()
-
-include(FindPackageHandleStandardArgs)
-# find_package_handle_standard_args reports the value of the first variable
-# on success, so make sure this is the actual OpenEXR library
-find_package_handle_standard_args(OpenEXR
- FOUND_VAR OpenEXR_FOUND
- REQUIRED_VARS
- OpenEXR_ILMIMF_LIBRARY
- OpenEXR_HALF_LIBRARY
- OpenEXR_IEX_LIBRARY
- OpenEXR_IMATH_LIBRARY
- OpenEXR_ILMTHREAD_LIBRARY
- OpenEXR_INCLUDE_DIR
- VERSION_VAR OpenEXR_VERSION_STRING)
-
-set(OpenEXR_INCLUDE_DIRS ${OpenEXR_INCLUDE_DIR})
-
-include(FeatureSummary)
-set_package_properties(OpenEXR PROPERTIES
- URL http://www.openexr.com/
- DESCRIPTION "A library for handling OpenEXR high dynamic-range image files")
-
-mark_as_advanced(
- OpenEXR_INCLUDE_DIR
- OpenEXR_LIBRARIES
- OpenEXR_DEFINITIONS
- OpenEXR_ILMIMF_LIBRARY
- OpenEXR_ILMTHREAD_LIBRARY
- OpenEXR_IMATH_LIBRARY
- OpenEXR_IEX_LIBRARY
- OpenEXR_HALF_LIBRARY
-)
-
-if(OpenEXR_FOUND AND NOT TARGET OpenEXR::IlmImf)
- add_library(OpenEXR::IlmImf UNKNOWN IMPORTED)
- set_target_properties(OpenEXR::IlmImf PROPERTIES
- IMPORTED_LOCATION "${OpenEXR_ILMIMF_LIBRARY}"
- INTERFACE_COMPILE_OPTIONS "${OpenEXR_DEFINITIONS}"
- INTERFACE_INCLUDE_DIRECTORIES "${OpenEXR_INCLUDE_DIR}"
- INTERFACE_LINK_LIBRARIES "${_OpenEXR_deps}"
- )
-endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kimageformats-4.97.0/tests/CMakeLists.txt new/kimageformats-4.98.0/tests/CMakeLists.txt
--- old/kimageformats-4.97.0/tests/CMakeLists.txt 2014-03-01 15:49:38.000000000 +0100
+++ new/kimageformats-4.98.0/tests/CMakeLists.txt 2014-03-28 19:17:00.000000000 +0100
@@ -12,4 +12,5 @@
kimageformats_executable_tests(
imageconverter
+ imagedump
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kimageformats-4.97.0/tests/format-enum.h new/kimageformats-4.98.0/tests/format-enum.h
--- old/kimageformats-4.97.0/tests/format-enum.h 1970-01-01 01:00:00.000000000 +0100
+++ new/kimageformats-4.98.0/tests/format-enum.h 2014-03-28 19:17:00.000000000 +0100
@@ -0,0 +1,73 @@
+/*
+ * Copyright 2014 Alex Merry <alex.merry(a)kde.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) version 3, or any
+ * later version accepted by the membership of KDE e.V. (or its
+ * successor approved by the membership of KDE e.V.), which shall
+ * act as a proxy defined in Section 6 of version 3 of the license.
+ *
+ * This library 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#include <QImage>
+
+// Generated from QImage::Format enum
+static const char * qimage_format_enum_names[] = {
+ "Invalid",
+ "Mono",
+ "MonoLSB",
+ "Indexed8",
+ "RGB32",
+ "ARGB32",
+ "ARGB32_Premultiplied",
+ "RGB16",
+ "ARGB8565_Premultiplied",
+ "RGB666",
+ "ARGB6666_Premultiplied",
+ "RGB555",
+ "ARGB8555_Premultiplied",
+ "RGB888",
+ "RGB444",
+ "ARGB4444_Premultiplied",
+ "RGBX8888",
+ "RGBA8888",
+ "RGBA8888_Premultiplied"
+};
+// Never claim there are more than QImage::NImageFormats supported formats.
+// This is future-proofing against the above list being extended.
+static const int qimage_format_enum_names_count =
+ (sizeof(qimage_format_enum_names) / sizeof(*qimage_format_enum_names) > int(QImage::NImageFormats))
+ ? int(QImage::NImageFormats)
+ : (sizeof(qimage_format_enum_names) / sizeof(*qimage_format_enum_names));
+
+QImage::Format formatFromString(const QString &str)
+{
+ for (int i = 0; i < qimage_format_enum_names_count; ++i) {
+ if (str.compare(QLatin1String(qimage_format_enum_names[i]), Qt::CaseInsensitive) == 0) {
+ return (QImage::Format)(i);
+ }
+ }
+ return QImage::Format_Invalid;
+}
+
+QString formatToString(QImage::Format format)
+{
+ int index = int(format);
+ if (index > 0 && index < qimage_format_enum_names_count) {
+ return QLatin1String(qimage_format_enum_names[index]);
+ }
+ return QLatin1String("<unknown:") +
+ QString::number(index) +
+ QLatin1String(">");
+}
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kimageformats-4.97.0/tests/imagedump.cpp new/kimageformats-4.98.0/tests/imagedump.cpp
--- old/kimageformats-4.97.0/tests/imagedump.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/kimageformats-4.98.0/tests/imagedump.cpp 2014-03-28 19:17:00.000000000 +0100
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2013 Alex Merry <alex.merry(a)kdemail.net>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) version 3, or any
+ * later version accepted by the membership of KDE e.V. (or its
+ * successor approved by the membership of KDE e.V.), which shall
+ * act as a proxy defined in Section 6 of version 3 of the license.
+ *
+ * This library 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#include <stdio.h>
+
+#include <QCommandLineOption>
+#include <QCommandLineParser>
+#include <QCoreApplication>
+#include <QDebug>
+#include <QImageReader>
+#include <QFile>
+#include <QMetaObject>
+#include <QMetaEnum>
+#include <QTextStream>
+
+#include "format-enum.h"
+
+int main(int argc, char **argv)
+{
+ QCoreApplication app(argc, argv);
+ QCoreApplication::addLibraryPath(QStringLiteral(PLUGIN_DIR));
+ QCoreApplication::setApplicationName(QStringLiteral("imagedump"));
+ QCoreApplication::setApplicationVersion(QStringLiteral("1.0.0.0"));
+
+ QCommandLineParser parser;
+ parser.setApplicationDescription(QStringLiteral("Dumps the content of QImage::bits()"));
+ parser.addHelpOption();
+ parser.addVersionOption();
+ parser.addPositionalArgument(QStringLiteral("image"), QStringLiteral("image file"));
+ parser.addPositionalArgument(QStringLiteral("datafile"), QStringLiteral("file QImage data should be written to"));
+ QCommandLineOption informat(
+ QStringList() << QStringLiteral("f") << QStringLiteral("file-format"),
+ QStringLiteral("Image file format"),
+ QStringLiteral("format"));
+ parser.addOption(informat);
+ QCommandLineOption qimgformat(
+ QStringList() << QStringLiteral("q") << QStringLiteral("qimage-format"),
+ QStringLiteral("QImage data format"),
+ QStringLiteral("format"));
+ parser.addOption(qimgformat);
+ QCommandLineOption listformats(
+ QStringList() << QStringLiteral("l") << QStringLiteral("list-file-formats"),
+ QStringLiteral("List supported image file formats"));
+ parser.addOption(listformats);
+ QCommandLineOption listqformats(
+ QStringList() << QStringLiteral("p") << QStringLiteral("list-qimage-formats"),
+ QStringLiteral("List supported QImage data formats"));
+ parser.addOption(listqformats);
+
+ parser.process(app);
+
+ const QStringList files = parser.positionalArguments();
+
+ if (parser.isSet(listformats)) {
+ QTextStream out(stdout);
+ out << "File formats:\n";
+ foreach (const QByteArray &fmt, QImageReader::supportedImageFormats()) {
+ out << " " << fmt << '\n';
+ }
+ return 0;
+ }
+ if (parser.isSet(listqformats)) {
+ QTextStream out(stdout);
+ out << "QImage formats:\n";
+ // skip QImage::Format_Invalid
+ for (int i = 1; i < qimage_format_enum_names_count; ++i) {
+ out << " " << qimage_format_enum_names[i] << '\n';
+ }
+ return 0;
+ }
+
+ if (files.count() != 2) {
+ QTextStream(stderr) << "Must provide exactly two files\n";
+ parser.showHelp(1);
+ }
+ QImageReader reader(files.at(0), parser.value(informat).toLatin1());
+ QImage img = reader.read();
+ if (img.isNull()) {
+ QTextStream(stderr) << "Could not read image: "
+ << reader.errorString() << '\n';
+ return 2;
+ }
+
+ QFile output(files.at(1));
+ if (!output.open(QIODevice::WriteOnly)) {
+ QTextStream(stderr) << "Could not open " << files.at(1)
+ << " for writing: "
+ << output.errorString() << '\n';
+ return 3;
+ }
+ if (parser.isSet(qimgformat)) {
+ QImage::Format qformat = formatFromString(parser.value(qimgformat));
+ if (qformat == QImage::Format_Invalid) {
+ QTextStream(stderr) << "Unknown QImage data format "
+ << parser.value(qimgformat) << '\n';
+ return 4;
+ }
+ img = img.convertToFormat(qformat);
+ }
+ qint64 written = output.write(reinterpret_cast<const char *>(img.bits()), img.byteCount());
+ if (written != img.byteCount()) {
+ QTextStream(stderr) << "Could not write image data to " << files.at(1)
+ << ":" << output.errorString() << "\n";
+ return 5;
+ }
+ QTextStream(stdout) << "Created " << files.at(1) << " with data format "
+ << formatToString(img.format()) << "\n";
+
+ return 0;
+}
--
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 kidletime for openSUSE:Factory checked in at 2014-04-02 17:22:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kidletime (Old)
and /work/SRC/openSUSE:Factory/.kidletime.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kidletime"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kidletime/kidletime.changes 2014-03-10 12:17:29.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kidletime.new/kidletime.changes 2014-04-02 17:22:17.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:40 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kidletime-4.97.0.tar.xz
New:
----
kidletime-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kidletime.spec ++++++
--- /var/tmp/diff_new_pack.hOrUMG/_old 2014-04-02 17:22:18.000000000 +0200
+++ /var/tmp/diff_new_pack.hOrUMG/_new 2014-04-02 17:22:18.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5IdleTime5
Name: kidletime
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ kidletime-4.97.0.tar.xz -> kidletime-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidletime-4.97.0/CMakeLists.txt new/kidletime-4.98.0/CMakeLists.txt
--- old/kidletime-4.97.0/CMakeLists.txt 2014-03-01 12:50:58.000000000 +0100
+++ new/kidletime-4.98.0/CMakeLists.txt 2014-03-28 19:16:58.000000000 +0100
@@ -3,16 +3,17 @@
project(KIdleTime)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(FeatureSummary)
+include(CMakeFindFrameworks)
include(GenerateExportHeader)
include(ECMPackageConfigHelpers)
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KIDLETIME
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kidletime_version.h"
@@ -27,16 +28,19 @@
set(REQUIRED_QT_VERSION 5.2.0)
find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets)
-if(NOT WIN32)
+if(NOT WIN32 AND NOT APPLE)
find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED X11Extras DBus)
endif()
-if (APPLE)
- find_package(Carbon REQUIRED)
-endif ()
+if(APPLE)
+ cmake_find_frameworks(CoreFoundation Carbon)
+endif()
+
+if(NOT APPLE)
+ find_package(X11)
+ find_package(XCB COMPONENTS XCB)
+endif()
-find_package(X11)
-find_package(XCB COMPONENTS XCB)
if(X11_FOUND)
find_package(XCB COMPONENTS XCB SYNC)
find_package(X11_XCB)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kidletime-4.97.0/src/CMakeLists.txt new/kidletime-4.98.0/src/CMakeLists.txt
--- old/kidletime-4.97.0/src/CMakeLists.txt 2014-03-01 12:50:58.000000000 +0100
+++ new/kidletime-4.98.0/src/CMakeLists.txt 2014-03-28 19:16:58.000000000 +0100
@@ -27,6 +27,7 @@
set(kidletime_LIBS ${kidletime_LIBS} ${X11_LIBRARIES} Qt5::X11Extras)
elseif (APPLE)
set(kidletime_LIB_SRCS ${kidletime_LIB_SRCS} macpoller.cpp)
+ set(kidletime_LIBS "-framework CoreFoundation -framework Carbon")
elseif (WIN32)
set(kidletime_LIB_SRCS ${kidletime_LIB_SRCS} windowspoller.cpp)
endif ()
--
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 kiconthemes for openSUSE:Factory checked in at 2014-04-02 17:22:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kiconthemes (Old)
and /work/SRC/openSUSE:Factory/.kiconthemes.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kiconthemes"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kiconthemes/kiconthemes.changes 2014-03-10 12:18:07.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kiconthemes.new/kiconthemes.changes 2014-04-02 17:22:16.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:39 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kiconthemes-4.97.0.tar.xz
New:
----
kiconthemes-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kiconthemes.spec ++++++
--- /var/tmp/diff_new_pack.OT9MU7/_old 2014-04-02 17:22:17.000000000 +0200
+++ /var/tmp/diff_new_pack.OT9MU7/_new 2014-04-02 17:22:17.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5IconThemes5
Name: kiconthemes
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfigwidgets-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kiconthemes-4.97.0.tar.xz -> kiconthemes-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/CMakeLists.txt new/kiconthemes-4.98.0/CMakeLists.txt
--- old/kiconthemes-4.97.0/CMakeLists.txt 2014-03-01 12:50:56.000000000 +0100
+++ new/kiconthemes-4.98.0/CMakeLists.txt 2014-03-28 19:16:57.000000000 +0100
@@ -3,7 +3,7 @@
project(KIconThemes)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(KDEInstallDirs)
@@ -15,7 +15,7 @@
include(ECMGenerateHeaders)
include(ECMMarkNonGuiExecutable)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION}
VARIABLE_PREFIX KICONTHEMES
@@ -24,10 +24,10 @@
SOVERSION 5)
# Dependencies
-set(QT_REQUIRED_VERSION 5.2.0)
-find_package(Qt5Widgets ${QT_REQUIRED_VERSION} REQUIRED NO_MODULE)
-find_package(Qt5Svg ${QT_REQUIRED_VERSION} REQUIRED NO_MODULE)
-find_package(Qt5DBus ${QT_REQUIRED_VERSION} REQUIRED NO_MODULE)
+set(REQUIRED_QT_VERSION 5.2.0)
+find_package(Qt5Widgets ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
+find_package(Qt5Svg ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
+find_package(Qt5DBus ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
if("${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
find_package(KF5I18n ${KF5_VERSION} REQUIRED)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/KF5IconThemesConfig.cmake.in new/kiconthemes-4.98.0/KF5IconThemesConfig.cmake.in
--- old/kiconthemes-4.97.0/KF5IconThemesConfig.cmake.in 2014-03-01 12:50:56.000000000 +0100
+++ new/kiconthemes-4.98.0/KF5IconThemesConfig.cmake.in 2014-03-28 19:16:57.000000000 +0100
@@ -5,7 +5,7 @@
find_dependency(KF5ItemViews "@KF5_VERSION@")
find_dependency(KF5WidgetsAddons "@KF5_VERSION@")
-find_dependency(Qt5Widgets "@QT_REQUIRED_VERSION@")
+find_dependency(Qt5Widgets "@REQUIRED_QT_VERSION@")
include("${CMAKE_CURRENT_LIST_DIR}/KF5IconThemesTargets.cmake")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/docs/DESIGN.iconloading new/kiconthemes-4.98.0/docs/DESIGN.iconloading
--- old/kiconthemes-4.97.0/docs/DESIGN.iconloading 2014-03-01 12:50:56.000000000 +0100
+++ new/kiconthemes-4.98.0/docs/DESIGN.iconloading 1970-01-01 01:00:00.000000000 +0100
@@ -1,187 +0,0 @@
-Discussion of Icon Loading for KDE 3
-====================================================
-
-This document describes the design ideas for improving icon loading
-in KDE 3.
-
-
-On Wednesday 08 August 2001 04:15 pm, Waldo Bastian wrote:
-> On Wednesday 08 August 2001 03:52 pm, Dirk Mueller wrote:
-> > On Mit, 08 Aug 2001, Waldo Bastian wrote:
-> > > I'm not really sure how to do it... the idea is this:
-> > >
-> > > A list of shared icons is published somewhere.
-> > > Applications load this list
-> > > For all icons the application wants to use:
-> > > It checks whether a shared version is available,
-> > > if so it uses that one.
-> > > If not, it loads the icon.
-> > > When it has loaded most icons, it somehow (*) adds the icons that it loaded
-> > > to the list of published icons.
-> > >
-> > > I think that the somehow (*) part can be done most reliable by a
-> > > central service, e.g. a KDED module. That might also be able to keep
-> > > track of usage so that it can throw icons out that aren't used any
-> > > more. I think it will be difficult / slow if we need to do ref-counting
-> > > for each and every shared icon using some mechanism that involves X.
-> >
-> > True. but things become a bit complicated if an application reregisters
-> > with a different name. or do we handle that already ?
-> >
-> > what do you do if the DCOP-connection lifetime is crossing the
-> > pixmap-lifetime somehow, i.e. the pixmap is still referenced after
-> > closing the dcop connection on shutdown ?
-
-Ok, I have looked into this a bit more and it seems to be rather easy to
-create one or more pixmaps in a server process containing icons, a client can
-then create a pixmap of the right size itself and with a simple XCopyArea
-call, it can copy the icon from the server pixmap to its own pixmap.
-
-That way the application's pixmap always remain valid.
-
-Some example code to get the idea:
-
-Server can publish an icon (test.png) like this:
- QImage i("test.png");
- QPixmap p;
- p.convertFromImage(i);
- qWarning("Handle = %08x", p.handle());
-
-Now, if Handle is e.g. 0x06c0000b, the following code (in another process)
-can copy this pixmap:
-
- QPixmap p(35,35);
- Drawable src = 0x06c0000b;
- XGCValues values;
- GC gc = XCreateGC(qt_xdisplay(), src, 0, &values);
- XCopyArea(qt_xdisplay(), src, p.handle(), gc, 0, 0, 30, 30, 0, 0);
- // p contains now 30x30 pixels of test.png.
-
-The only hard part is then to publish the icons in a way that applications
-know what to copy. I'm thinking about a ksycoca-sort-of index that
-applications can map and can use to do fast lookups with. This has no major
-problems except for the race-condition that might exist when an icon is
-removed. In that case you will remove it from the index first and then later
-you will remove the actual image data from the pixmap, however, you must make
-sure that none of the client apps will be using the outdated index informatin
-any more before you can remove the actual image data.
-
-For practical purposes that might be solved by removing the entry from the
-index, informing the applications via DCOP to flush their outdated index
-information and then waiting for a sufficient long period, e.. 5 minutes,
-before actually removing the image data.
-
-I can also imagine a scenario where the index information is only used very
-temporarily, e.g. during the creation of a KMainWindow (mmap the file in the
-constructor, unmap it from the next event loop) that way icons can be removed
-from the index and after e.g. a timeout of 5 minutes one can be relatively
-sure that the index will no longer be used.
-
-I think the best way to distribute the index information is through the file
-system but the update mechanism for this file should probably more complex
-than the one used in ksycoca. Since ksycoca updates only happen once in a
-while, we can afford it to write out a whole new file. For icons this will
-probably be more difficult since updates will be part of normal operation, if
-the index file is rather large (no idea about that.. how much icons are in
-use on an average desktop? 50? 200? 500? 500*80bytes = 40Kb, not too bad) we
-might want to write out only the updates, that would probably mean that we
-need to have some sort of extensible on-disk hash-table.
-Would that be worth the hassle? If we need to access hash-buckets throughout
-this 40Kb the OS probably ends up writing all of this file to disk ayway.
-
-Better keep it simple to start with then...
-
-Cheers,
-Waldo
---
-KDE 2.2: We deliver.
-
-<Zogje> do you have any idea how many Kb of pixmaps are stored in the X-server on average?
-<Zogje> e.g. with a standard desktop with 5 konsole's and konqueror or os
-<Zogje> cause I was wondering... if we copy pixmaps on the X-server with XCopyArea like I proposed in my mail
-<Zogje> then the next step could be to use shared pixmaps on the X-server... if the X-server could refcount pixmaps
-<Zogje> i don't think it supports that at the moment
-<antlarr> I'm not sure, but Konqueror seems to open around 500 icons (some of them repeated), and konsole... 40 ? (I made the experiments with my other computer and it's down at the moment)
-<Zogje> and those icons are 22x22? 32x32?
-<Zogje> 4 bytes per pixel?
-<antlarr> I can have a look to see the sizes (my original experiments counted them in separate counters)
-<antlarr> yes, 4 bytes per pixel
-<Zogje> that's about 1.5Kb to 4Kb per pixmap
-<Zogje> cause I think pixmap space on the X_server is a limited resource
-<Zogje> it prolly can cache them in video-memory
-<antlarr> Zogje: what worries me most is how to know when to delete a pixmap from X
-<Zogje> but if we have the same pixmap 20 times in the X-server
-<Zogje> then we are wasting such caching in a terrible way.. and that would cost us performance
-<Zogje> antlarr: yes, that's why I say, we would need refcounting in the X-server itself
-<Zogje> antlarr: should talk with Keith about that
-<antlarr> Zogje: but if you unload the icon after all apps stop using it, then there's no benefit after you start konqueror again, because they'll have to be loaded again
-<Zogje> antlarr: but it will be easier to make the point if we have some solid data behind it
-<Zogje> antlarr: well.. there are two issues
-<antlarr> you'll just stop loading repeated icons that way
-<Zogje> 1) you want to have the benefit of caching, and for that you want to have the icon in the cache, you can throw it away after some time if you think it will not be needed any longer
-<Zogje> 2) If you actually _share_ the pixmap, you must 100% guarante that the pixmap remains available as long as it is in use
-<Zogje> so for the 1)-case there is no hard requirement, it just affects your cache-efficiency
-<Zogje> the 2)-case is a hard requirement, in that if you don't meet it, you will have incorrect operation
-<antlarr> Zogje: yes
-<Zogje> we can meet 2) by coying the pixmap with e.g. XCopyArea
-<Zogje> but a better way would be to have refcounting in the server
-<Zogje> that's independent from 1)
-<antlarr> Yes, that would be much better
-<Zogje> antlarr: so if you can provide staticstic on the icons in use on a typical KDE desktop, including total size and number of icons shared, etc.
-<antlarr> Zogje: ok, I'll try it tomorrow morning (I think I'll have some time, but little as I'm trying to study for exams)
-<antlarr> Btw, do you plan to use a kind of "icon server" ?
-<Zogje> antlarr: then we can take that to the XFree guys and say, if you gives us refcounting we can save XXX Kb of pixmap data on the x-server and we think that will give us better performance
-<antlarr> Yes, you're right, that would be the best thing to do
-<Zogje> in the mean time we might want to implement such an icon-server then, so that when they actually make ref-counting we can hook it in and get the results directly
-<antlarr> So you think the apps should load the icon, apply the effects, convert it to a X pixmap and use it. But how do you plan to know if an icon is already in the XServer ? via atoms ?
-<antlarr> s/an icon/an icon with the respective effects applied/
-<antlarr> pmax: that's precisely where I want to get to.
-<Zogje> antlarr: I would like to publish an index of the icons and their handles through the filesystem
-<Zogje> the app loads the icon, applies the effects, when it has finished starting up it
-<Zogje> can make a DCOP call to the icon-server and tell it, here, I'm using these icons
-<Zogje> then the icon-server can copy (or refcount++) them and update the file with the
-<Zogje> published icons
-<antlarr> Ok, so there'll be an icon server
-<Zogje> yes
-<antlarr> Zogje: you can never know when the app has finished starting up, as it can load some icons later than that
-<Zogje> you could basically publish the icons via properties on the X server itself as well
-<Zogje> but I think that will be slow
-<antlarr> Zogje: yes, I think that too
-<antlarr> But I'm not sure about the file with published icons
-<Zogje> well, when it loads icons later on, it can tell the icon-server about them later on
-<Zogje> or just ignore it
-<Zogje> whatever works
-<antlarr> what happens with remote connections of apps running on different hosts ?
-<Zogje> they are on their own
-<pmax> over a slow link
-<pmax> icon server becomes n times slower, right?
-<Zogje> pmax: when?
-<pmax> remote X connections
-<antlarr> pmax: it doesn't matter if it's a slow or fast link, I'm talking about the problem with loaded icons that are available on one of the computers, but not on another and about the file with the published icons
-<Zogje> pmax: if you use X properties you have X-server round-trips, so that will be an issue on slow-links
-<pmax> antlarr: true
-<Zogje> pmax: you don't have that if you use the file-system
-<pmax> you can always send icons back and forth with dcop too though
-<Zogje> antlarr: we have a DCOP communication space that is limited to a certain host and X-Display
-<pmax> I send x.509's pem encoded through dcop
-<Zogje> antlarr: icon caching should happen within that space
-<Zogje> antlarr: you can combine multiple spaces in various ways... but they don't communicate with each other
-<Zogje> pmax: no, i don't plan too
-<Zogje> pmax: it is faster to load the icon from disk than to use dcop, probably
-<antlarr> Zogje: ok
-<pmax> Zogje: certainly, but if there is a case where the icon doesn't exist on a remote machine, it could easily be transferred like that
-<Zogje> pmax: if the icons doesn't exist you haven't instaled KDE correctly
-<pmax> (I was referring to antlarr's comment)
-<antlarr> pmax: why do that if you can just store it in the X server and tell the icon server what icon is yours?
-<pmax> what about an app that is only on one machine but not the other? then it's icons won't be there
-<Zogje> pmax??
-<pmax> antlarr: I'm not saying that's the best way.. I was just saying it's a possibility
-<Zogje> pmax: how does that work now?
-<antlarr> pmax: Zogje is right, there's no problem with remote apps, it will just not use the icon cache, nothing more
-<vod> just found it
-<pmax> oh I see
-<Zogje> to answer you rfirst question: "won't the ipc be a bottleneck?" no, because you don't use ipc in the critical part (the icon loading)
-<pmax> yup I understand how it works now I think
-<Zogje> instead you access an index from disk which is quite fast (as fast as ksycoca)
-<pmax> I think this will definitely speed things up on my machine since I have a relatively fast box with slow disks
-<Zogje> that's why I want to use the file-system instaed of X-properties
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/src/CMakeLists.txt new/kiconthemes-4.98.0/src/CMakeLists.txt
--- old/kiconthemes-4.97.0/src/CMakeLists.txt 2014-03-01 12:50:56.000000000 +0100
+++ new/kiconthemes-4.98.0/src/CMakeLists.txt 2014-03-28 19:16:57.000000000 +0100
@@ -1,4 +1,7 @@
add_subdirectory(tools/kiconfinder)
+if (APPLE)
+ add_subdirectory(tools/ksvg2icns)
+endif()
set(kiconthemes_SRCS
kiconbutton.cpp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/src/Messages.sh new/kiconthemes-4.98.0/src/Messages.sh
--- old/kiconthemes-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kiconthemes-4.98.0/src/Messages.sh 2014-03-28 19:16:57.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kiconthemes5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/src/kiconbutton.h new/kiconthemes-4.98.0/src/kiconbutton.h
--- old/kiconthemes-4.97.0/src/kiconbutton.h 2014-03-01 12:50:56.000000000 +0100
+++ new/kiconthemes-4.98.0/src/kiconbutton.h 2014-03-28 19:16:57.000000000 +0100
@@ -31,25 +31,26 @@
class KICONTHEMES_EXPORT KIconButton: public QPushButton
{
Q_OBJECT
- Q_PROPERTY(QString icon READ icon WRITE setIcon RESET resetIcon)
+ Q_PROPERTY(QString icon READ icon WRITE setIcon RESET resetIcon NOTIFY iconChanged USER true)
Q_PROPERTY(int iconSize READ iconSize WRITE setIconSize)
Q_PROPERTY(bool strictIconSize READ strictIconSize WRITE setStrictIconSize)
public:
/**
- * Constructs a KIconButton using the global iconloader.
+ * Constructs a KIconButton using the global icon loader.
*
* @param parent The parent widget.
*/
explicit KIconButton(QWidget *parent = 0L);
/**
- * Constructs a KIconButton using a specific KIconLoader.
+ * Constructs a KIconButton using a specific icon loader.
*
* @param loader The icon loader to use.
* @param parent The parent widget.
*/
KIconButton(KIconLoader *loader, QWidget *parent);
+
/**
* Destructs the button.
*/
@@ -57,7 +58,7 @@
/**
* Sets a strict icon size policy for allowed icons. When true,
- * only icons of the specified group's size in setIconType are allowed,
+ * only icons of the specified group's size in setIconType() are allowed,
* and only icons of that size will be shown in the icon dialog.
*/
void setStrictIconSize(bool b);
@@ -95,23 +96,21 @@
* @see iconSize
*/
void setIconSize(int size);
-
/**
- * Returns the iconsize set via setIconSize() or 0, if the default
- * iconsize will be used.
+ * Returns the icon size set via setIconSize() or 0, if the default
+ * icon size will be used.
*/
int iconSize() const;
/**
- * Sets the size of the icon to be shown on the button
+ * Sets the size of the icon to be shown on the button.
* @see KIconLoader::StdSizes
* @see buttonIconSize
* @since 4.1
*/
void setButtonIconSize(int size);
-
/**
- * Returns the Button's Icon-Size
+ * Returns the button's icon size.
* @since 4.1
*/
int buttonIconSize() const;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/src/kicondialog.h new/kiconthemes-4.98.0/src/kicondialog.h
--- old/kiconthemes-4.97.0/src/kicondialog.h 2014-03-01 12:50:56.000000000 +0100
+++ new/kiconthemes-4.98.0/src/kicondialog.h 2014-03-28 19:16:57.000000000 +0100
@@ -24,7 +24,7 @@
/**
* Dialog for interactive selection of icons. Use the function
- * getIcon() let the user select an icon.
+ * getIcon() to let the user select an icon.
*
* @short An icon selection dialog.
*/
@@ -34,14 +34,14 @@
public:
/**
- * Constructs an icon selection dialog using the global iconloader.
+ * Constructs an icon selection dialog using the global icon loader.
*
* @param parent The parent widget.
*/
explicit KIconDialog(QWidget *parent = 0L);
/**
- * Constructs an icon selection dialog using a specific iconloader.
+ * Constructs an icon selection dialog using a specific icon loader.
*
* @param loader The icon loader to use.
* @param parent The parent widget.
@@ -54,18 +54,22 @@
~KIconDialog();
/**
- * Sets a strict icon size policy for allowed icons. When true,
- * only icons of the specified group's size in getIcon() are shown.
+ * Sets a strict icon size policy for allowed icons.
+ *
+ * @param policy When true, only icons of the specified group's
+ * size in getIcon() are shown.
* When false, icons not available at the desired group's size will
* also be selectable.
*/
- void setStrictIconSize(bool b);
+ void setStrictIconSize(bool policy);
/**
* Returns true if a strict icon size policy is set.
*/
bool strictIconSize() const;
+
/**
- * sets a custom icon directory
+ * Sets the location of the custom icon directory. Only local directory
+ * paths are allowed.
*/
void setCustomLocation(const QString &location);
@@ -75,20 +79,18 @@
* @see iconSize
*/
void setIconSize(int size);
-
/**
- * Returns the iconsize set via setIconSize() or 0, if the default
- * iconsize will be used.
+ * Returns the icon size set via setIconSize() or 0, if the default
+ * icon size will be used.
*/
int iconSize() const;
/**
* Allows you to set the same parameters as in the class method
* getIcon(), as well as two additional parameters to lock
- * the choice between system and user dirs and to lock the custom user
- * dir itself.
+ * the choice between system and user directories and to lock the
+ * custom icon directory itself.
*/
-
void setup(KIconLoader::Group group,
KIconLoader::Context context = KIconLoader::Application,
bool strictIconSize = false, int iconSize = 0,
@@ -104,7 +106,7 @@
QString openDialog();
/**
- * show()es this dialog and emits a newIcon(const QString&) signal when
+ * show()s this dialog and emits a newIconName(const QString&) signal when
* successful. QString() will be emitted if the dialog was aborted.
*/
void showDialog();
@@ -120,7 +122,7 @@
* @param strictIconSize When true, only icons of the specified group's size
* are shown, otherwise icon not available in the desired group's size
* will also be selectable.
- * @param iconSize the size of the icons -- the default of the icongroup
+ * @param iconSize the size of the icons -- the default of the icon group
* if set to 0
* @param user Begin with the "user icons" instead of "system icons".
* @param parent The parent widget of the dialog.
@@ -134,7 +136,7 @@
const QString &caption = QString());
Q_SIGNALS:
- void newIconName(const QString &);
+ void newIconName(const QString &iconName);
protected Q_SLOTS:
void slotOk();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/src/kiconeffect.h new/kiconthemes-4.98.0/src/kiconeffect.h
--- old/kiconthemes-4.97.0/src/kiconeffect.h 2014-03-01 12:50:56.000000000 +0100
+++ new/kiconthemes-4.98.0/src/kiconeffect.h 2014-03-28 19:16:57.000000000 +0100
@@ -62,9 +62,9 @@
* Note that 'LastEffect' is no valid icon effect but only
* used internally to check for invalid icon effects.
*
- * @li NoEffect: Don't apply any icon effect
+ * @li NoEffect: Do not apply any icon effect
* @li ToGray: Tints the icon gray
- * @li Colorize: Tints the icon with an other color
+ * @li Colorize: Tints the icon with a specific color
* @li ToGamma: Change the gamma value of the icon
* @li DeSaturate: Reduce the saturation of the icon
* @li ToMonochrome: Produces a monochrome icon
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/src/tools/ksvg2icns/CMakeLists.txt new/kiconthemes-4.98.0/src/tools/ksvg2icns/CMakeLists.txt
--- old/kiconthemes-4.97.0/src/tools/ksvg2icns/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kiconthemes-4.98.0/src/tools/ksvg2icns/CMakeLists.txt 2014-03-28 19:16:57.000000000 +0100
@@ -0,0 +1,5 @@
+add_executable(ksvg2icns ksvg2icns.cpp)
+ecm_mark_nongui_executable(ksvg2icns)
+target_link_libraries(ksvg2icns Qt5::Gui Qt5::Svg)
+
+install(TARGETS ksvg2icns ${INSTALL_TARGETS_DEFAULT_ARGS})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.97.0/src/tools/ksvg2icns/ksvg2icns.cpp new/kiconthemes-4.98.0/src/tools/ksvg2icns/ksvg2icns.cpp
--- old/kiconthemes-4.97.0/src/tools/ksvg2icns/ksvg2icns.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/kiconthemes-4.98.0/src/tools/ksvg2icns/ksvg2icns.cpp 2014-03-28 19:16:57.000000000 +0100
@@ -0,0 +1,162 @@
+/******************************************************************************
+ * Copyright 2014 Harald Fernengel <harry(a)kdevelop.org> *
+ * *
+ * This program is free software; you can redistribute it and/or *
+ * modify it under the terms of the GNU Lesser General Public *
+ * *
+ * License as published by the Free Software Foundation; either *
+ * version 2.1 of the License, or (at your option) version 3, or any *
+ * later version accepted by the membership of KDE e.V. (or its *
+ * successor approved by the membership of KDE e.V.), which shall *
+ * act as a proxy defined in Section 6 of version 3 of the license. *
+ * *
+ * This library 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 *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this library. If not, see *
+ * <http://www.gnu.org/licenses/>. *
+ * *
+ ******************************************************************************/
+
+/* This tool converts an svg to a Mac OS X icns file.
+ * Note: Requires the 'iconutil' Mac OS X binary
+ */
+
+#include <QCommandLineParser>
+#include <QFileInfo>
+#include <QProcess>
+#include <QTemporaryDir>
+
+#include <QGuiApplication>
+#include <QPainter>
+#include <QSvgRenderer>
+
+#include "../../../kiconthemes_version.h"
+
+#include <stdio.h>
+
+#define EXIT_ON_ERROR(isOk, ...) \
+ do { \
+ if (!(isOk)) { \
+ fprintf(stderr, __VA_ARGS__); \
+ return 1; \
+ } \
+ } while (false);
+
+static bool writeImage(QSvgRenderer &svg, int size, const QString &outFile1, const QString &outFile2 = QString())
+{
+ QImage out(size, size, QImage::Format_ARGB32);
+ out.fill(Qt::transparent);
+
+ QPainter painter(&out);
+ svg.render(&painter);
+ painter.end();
+
+ if (!out.save(outFile1)) {
+ fprintf(stderr, "Unable to write %s\n", qPrintable(outFile1));
+ return false;
+ }
+ if (!outFile2.isEmpty() && !out.save(outFile2)) {
+ fprintf(stderr, "Unable to write %s\n", qPrintable(outFile2));
+ return false;
+ }
+
+ return true;
+}
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication app(argc, argv);
+
+ app.setApplicationName("ksvg2icns");
+ app.setApplicationVersion(KICONTHEMES_VERSION_STRING);
+ QCommandLineParser parser;
+ parser.setApplicationDescription(app.translate("main", "Creates an icns file from an svg image"));
+ parser.addPositionalArgument("iconname", app.translate("main", "The svg icon to convert"));
+ parser.addHelpOption();
+
+ parser.process(app);
+ if (parser.positionalArguments().isEmpty()) {
+ parser.showHelp();
+ return 1;
+ }
+
+ bool isOk;
+
+ // create a temporary dir to create an iconset
+ QTemporaryDir tmpDir("ksvg2icns");
+ tmpDir.setAutoRemove(true);
+
+ isOk = tmpDir.isValid();
+ EXIT_ON_ERROR(isOk, "Unable to create temporary directory\n");
+
+ isOk = QDir(tmpDir.path()).mkdir("out.iconset");
+ EXIT_ON_ERROR(isOk, "Unable to create out.iconset directory\n");
+
+ const QString outPath = tmpDir.path() + "/out.iconset";
+
+ const QStringList &args = app.arguments();
+ EXIT_ON_ERROR(args.size() == 2,
+ "Usage: %s svg-image\n",
+ qPrintable(args.value(0)));
+
+ const QString &svgFileName = args.at(1);
+
+ // open the actual svg file
+ QSvgRenderer svg;
+ isOk = svg.load(svgFileName);
+ EXIT_ON_ERROR(isOk, "Unable to load %s\n", qPrintable(svgFileName));
+
+ // The sizes are from:
+ // https://developer.apple.com/library/mac/documentation/GraphicsAnimation/Con…
+
+ struct OutFiles
+ {
+ int size;
+ QString out1;
+ QString out2;
+ };
+
+ // create the pngs in various resolutions
+ const OutFiles outFiles[] = {
+ { 1024, outPath + "/icon_512x512(a)2x.png", QString() },
+ { 512, outPath + "/icon_512x512.png", outPath + "/icon_256x256(a)2x.png" },
+ { 256, outPath + "/icon_256x256.png", outPath + "/icon_128x128(a)2x.png" },
+ { 128, outPath + "/icon_128x128.png", QString() },
+ { 64, outPath + "/icon_32x32(a)2x.png", QString() },
+ { 32, outPath + "/icon_32x32.png", outPath + "/icon_16x16(a)2x.png" },
+ { 16, outPath + "/icon_16x16.png", QString() }
+ };
+
+ for (size_t i = 0; i < sizeof(outFiles) / sizeof(OutFiles); ++i) {
+ isOk = writeImage(svg, outFiles[i].size, outFiles[i].out1, outFiles[i].out2);
+ if (!isOk) {
+ return 1;
+ }
+ }
+
+ // convert the iconset to icns using the "iconutil" command
+
+ const QString outIcns = QFileInfo(svgFileName).baseName() + ".icns";
+
+ const QStringList utilArgs = QStringList()
+ << "-c" << "icns"
+ << "-o" << outIcns
+ << outPath;
+
+ QProcess iconUtil;
+ iconUtil.setProgram("iconUtil");
+ iconUtil.setArguments(utilArgs);
+
+ iconUtil.start("iconutil", utilArgs, QIODevice::ReadOnly);
+ isOk = iconUtil.waitForFinished(-1);
+ EXIT_ON_ERROR(isOk, "Unable to launch iconutil: %s\n", qPrintable(iconUtil.errorString()));
+
+ EXIT_ON_ERROR(iconUtil.exitStatus() == QProcess::NormalExit, "iconutil crashed!\n");
+ EXIT_ON_ERROR(iconUtil.exitCode() == 0, "iconutil returned %d\n", iconUtil.exitCode());
+
+ return 0;
+}
--
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 ki18n for openSUSE:Factory checked in at 2014-04-02 17:22:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ki18n (Old)
and /work/SRC/openSUSE:Factory/.ki18n.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ki18n"
Changes:
--------
--- /work/SRC/openSUSE:Factory/ki18n/ki18n.changes 2014-03-10 12:17:40.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ki18n.new/ki18n.changes 2014-04-02 17:22:15.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:39 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
ki18n-4.97.0.tar.xz
New:
----
ki18n-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ki18n.spec ++++++
--- /var/tmp/diff_new_pack.vN6lEJ/_old 2014-04-02 17:22:15.000000000 +0200
+++ /var/tmp/diff_new_pack.vN6lEJ/_new 2014-04-02 17:22:15.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5I18n5
Name: ki18n
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Concurrent) >= 5.2.0
++++++ ki18n-4.97.0.tar.xz -> ki18n-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/CMakeLists.txt new/ki18n-4.98.0/CMakeLists.txt
--- old/ki18n-4.97.0/CMakeLists.txt 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/CMakeLists.txt 2014-03-28 19:16:55.000000000 +0100
@@ -3,7 +3,7 @@
project(KI18n)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
include(FeatureSummary)
@@ -12,7 +12,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(
${KF5_VERSION}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/autotests/CMakeLists.txt new/ki18n-4.98.0/autotests/CMakeLists.txt
--- old/ki18n-4.97.0/autotests/CMakeLists.txt 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/autotests/CMakeLists.txt 2014-03-28 19:16:55.000000000 +0100
@@ -6,7 +6,7 @@
macro(KI18N_UNIT_TESTS)
foreach(_testname ${ARGN})
- add_executable(${_testname} ${_testname}.cpp)
+ add_executable(${_testname} ${_testname}.cpp testhelpers.cpp)
target_link_libraries(${_testname} Qt5::Test Qt5::Concurrent KF5::I18n)
add_test(ki18n-${_testname} ${_testname})
ecm_mark_as_test(${_testname})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/autotests/ktranscript-test.ini new/ki18n-4.98.0/autotests/ktranscript-test.ini
--- old/ki18n-4.97.0/autotests/ktranscript-test.ini 1970-01-01 01:00:00.000000000 +0100
+++ new/ki18n-4.98.0/autotests/ktranscript-test.ini 2014-03-28 19:16:55.000000000 +0100
@@ -0,0 +1,4 @@
+[fr]
+StringKey=StringValue
+BoolKey=true
+NumberKey=12345
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/autotests/ktranscripttest.cpp new/ki18n-4.98.0/autotests/ktranscripttest.cpp
--- old/ki18n-4.97.0/autotests/ktranscripttest.cpp 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/autotests/ktranscripttest.cpp 2014-03-28 19:16:55.000000000 +0100
@@ -1,5 +1,7 @@
/*
Copyright 2013 Aurélien Gâteau <agateau(a)kde.org>
+Copyright (C) 2014 Chusslove Illich <caslav.ilic(a)gmx.net>
+Copyright (C) 2014 Kevin Krammer <krammer(a)kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -19,6 +21,8 @@
*/
#include "ktranscripttest.h"
+#include "testhelpers.h"
+
#include <QtTest/QtTest>
#include <QDebug>
@@ -39,6 +43,8 @@
void KTranscriptTest::initTestCase()
{
+ QVERIFY2(deployTestConfig(), "Could not deploy test ktranscript.ini");
+
QString pluginPath = QStringLiteral(KTRANSCRIPT_PATH);
QVERIFY2(QFile::exists(pluginPath), "Could not find ktranscript plugin");
@@ -49,6 +55,12 @@
QVERIFY(initf);
m_transcript = initf();
QVERIFY(m_transcript);
+
+}
+
+void KTranscriptTest::cleanupTestCase()
+{
+ QVERIFY2(removeTestConfig(), "Could not remove test ktranscript.ini");
}
void KTranscriptTest::test_data()
@@ -153,8 +165,30 @@
<< (QVariantList() << "test_normKey" << "Some &Thing")
<< false
<< "something";
- // TODO: How to test getConf* functions?
- // Enable setting user configuration path from environment variable?
+ QTest::newRow("test_getConfString")
+ << (QVariantList() << "test_getConfString" << "StringKey")
+ << false
+ << "StringValue";
+ QTest::newRow("test_getConfStringWithDefault")
+ << (QVariantList() << "test_getConfStringWithDefault" << "NoSuchKey" << "DefaultValue")
+ << false
+ << "DefaultValue";
+ QTest::newRow("test_getConfBool")
+ << (QVariantList() << "test_getConfBool" << "BoolKey")
+ << false
+ << "true";
+ QTest::newRow("test_getConfBoolWithDefault")
+ << (QVariantList() << "test_getConfBoolWithDefault" << "NoSuchKey" << true)
+ << false
+ << "true";
+ QTest::newRow("test_getConfNumber")
+ << (QVariantList() << "test_getConfNumber" << "NumberKey")
+ << false
+ << "12345";
+ QTest::newRow("test_getConfNumberWithDefault")
+ << (QVariantList() << "test_getConfNumberWithDefault" << "NoSuchKey" << 54321)
+ << false
+ << "54321";
}
void KTranscriptTest::test()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/autotests/ktranscripttest.h new/ki18n-4.98.0/autotests/ktranscripttest.h
--- old/ki18n-4.97.0/autotests/ktranscripttest.h 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/autotests/ktranscripttest.h 2014-03-28 19:16:55.000000000 +0100
@@ -45,6 +45,7 @@
private Q_SLOTS:
void initTestCase();
+ void cleanupTestCase();
void test_data();
void test();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/autotests/test.js new/ki18n-4.98.0/autotests/test.js
--- old/ki18n-4.97.0/autotests/test.js 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/autotests/test.js 2014-03-28 19:16:55.000000000 +0100
@@ -100,3 +100,26 @@
return Ts.normKey(phrase);
});
+Ts.setcall("test_getConfString", function(key) {
+ return Ts.getConfString(key);
+});
+
+Ts.setcall("test_getConfStringWithDefault", function(key, defValue) {
+ return Ts.getConfString(key, defValue);
+});
+
+Ts.setcall("test_getConfBool", function(key) {
+ return "" + Ts.getConfBool(key);
+});
+
+Ts.setcall("test_getConfBoolWithDefault", function(key, defValue) {
+ return "" + Ts.getConfBool(key, defValue);
+});
+
+Ts.setcall("test_getConfNumber", function(key) {
+ return "" + Ts.getConfNumber(key);
+});
+
+Ts.setcall("test_getConfNumberWithDefault", function(key, defValue) {
+ return "" + Ts.getConfNumber(key, defValue);
+});
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/autotests/testhelpers.cpp new/ki18n-4.98.0/autotests/testhelpers.cpp
--- old/ki18n-4.97.0/autotests/testhelpers.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/ki18n-4.98.0/autotests/testhelpers.cpp 2014-03-28 19:16:55.000000000 +0100
@@ -0,0 +1,75 @@
+/* This file is part of the KI18N Framework
+ Copyright (C) 2014 Kevin Krammer <krammer(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include "testhelpers.h"
+
+#include <QDebug>
+#include <QDir>
+#include <QFile>
+#include <QFileInfo>
+#include <QStandardPaths>
+#include <QtTest/QtTest>
+
+static const QString targetFileName = QStringLiteral("ktranscript.ini");
+
+bool deployTestConfig()
+{
+ QStandardPaths::setTestModeEnabled(true);
+
+ QDir configDir = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
+ const QFileInfo targetFile = QFileInfo(configDir, targetFileName);
+
+ if (!configDir.exists()) {
+ if (!QDir::current().mkpath(configDir.absolutePath())) {
+ qWarning() << "Failed to create config dir" << configDir.absolutePath();
+ return false;
+ }
+ } else if (targetFile.exists()) {
+ if (!configDir.remove(targetFileName)) {
+ qWarning() << "Failed to remove existing test config file" << targetFile.absoluteFilePath();
+ return false;
+ }
+ }
+
+ QFile sourceFile(QFINDTESTDATA("ktranscript-test.ini"));
+ if (!sourceFile.exists()) {
+ qWarning() << "Could not locate test data file" << sourceFile.fileName();
+ return false;
+ }
+
+ if (!sourceFile.copy(targetFile.absoluteFilePath())) {
+ qWarning() << "Failed to copy test config file" << sourceFile.fileName()
+ << "to target location" << targetFile.absoluteFilePath();
+ return false;
+ }
+
+ return true;
+}
+
+bool removeTestConfig()
+{
+ Q_ASSERT(QStandardPaths::isTestModeEnabled());
+
+ QDir configDir = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
+ if (!configDir.exists()) {
+ return true;
+ }
+
+ return configDir.remove(targetFileName);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/autotests/testhelpers.h new/ki18n-4.98.0/autotests/testhelpers.h
--- old/ki18n-4.97.0/autotests/testhelpers.h 1970-01-01 01:00:00.000000000 +0100
+++ new/ki18n-4.98.0/autotests/testhelpers.h 2014-03-28 19:16:55.000000000 +0100
@@ -0,0 +1,28 @@
+/* This file is part of the KI18N Framework
+ Copyright (C) 2014 Kevin Krammer <krammer(a)kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#ifndef TESTHELPERS_H
+#define TESTHELPERS_H
+
+#include <QHash>
+
+bool deployTestConfig();
+bool removeTestConfig();
+
+#endif // TESTHELPERS_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/cmake/KF5I18NMacros.cmake new/ki18n-4.98.0/cmake/KF5I18NMacros.cmake
--- old/ki18n-4.97.0/cmake/KF5I18NMacros.cmake 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/cmake/KF5I18NMacros.cmake 2014-03-28 19:16:55.000000000 +0100
@@ -19,7 +19,6 @@
add_custom_command(OUTPUT ${_header}
COMMAND ${CMAKE_COMMAND}
ARGS
- -DKDE4_HEADER:BOOL=ON
-DKDE_UIC_EXECUTABLE:FILEPATH=${QT_UIC_EXECUTABLE}
-DKDE_UIC_FILE:FILEPATH=${_tmp_FILE}
-DKDE_UIC_H_FILE:FILEPATH=${_header}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/cmake/kf5i18nuic.cmake new/ki18n-4.98.0/cmake/kf5i18nuic.cmake
--- old/ki18n-4.97.0/cmake/kf5i18nuic.cmake 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/cmake/kf5i18nuic.cmake 2014-03-28 19:16:55.000000000 +0100
@@ -4,17 +4,13 @@
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-# the kde4 branch
-if (KDE4_HEADER)
+EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE}
+ -tr tr2i18n
+ ${KDE_UIC_FILE}
+ OUTPUT_VARIABLE _uic_CONTENTS
+)
- EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE}
- -tr tr2i18n
- ${KDE_UIC_FILE}
- OUTPUT_VARIABLE _uic_CONTENTS
- )
-
- set(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE})
-endif (KDE4_HEADER)
+set(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE})
IF (_uic_CONTENTS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/src/Messages.sh new/ki18n-4.98.0/src/Messages.sh
--- old/ki18n-4.97.0/src/Messages.sh 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/src/Messages.sh 2014-03-28 19:16:55.000000000 +0100
@@ -1,2 +1,2 @@
#! /usr/bin/env bash
-$XGETTEXT *.cpp *.h -o $podir/ki18n.pot
+$XGETTEXT *.cpp *.h -o $podir/ki18n5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-4.97.0/src/ktranscript.cpp new/ki18n-4.98.0/src/ktranscript.cpp
--- old/ki18n-4.97.0/src/ktranscript.cpp 2014-03-01 12:50:54.000000000 +0100
+++ new/ki18n-4.98.0/src/ktranscript.cpp 2014-03-28 19:16:55.000000000 +0100
@@ -40,6 +40,7 @@
#include <QIODevice>
#include <QTextStream>
#include <QRegExp>
+#include <QStandardPaths>
#include <qendian.h>
class KTranscriptImp;
@@ -324,6 +325,8 @@
QVariant::Type vtype = val.type();
if (vtype == QVariant::String) {
return QScriptValue(val.toString());
+ } else if (vtype == QVariant::Bool) {
+ return QScriptValue(val.toBool());
} else if (vtype == QVariant::Double
|| vtype == QVariant::Int || vtype == QVariant::UInt
|| vtype == QVariant::LongLong || vtype == QVariant::ULongLong) {
@@ -468,7 +471,11 @@
KTranscriptImp::KTranscriptImp()
{
// Load user configuration.
- const QString tsConfigPath = QDir::homePath() + QLatin1Char('/') + QLatin1String(".transcriptrc");
+
+ QString tsConfigPath = QStandardPaths::locate(QStandardPaths::ConfigLocation, QStringLiteral("ktranscript.ini"));
+ if (tsConfigPath.isEmpty()) {
+ tsConfigPath = QDir::homePath() + QLatin1Char('/') + QLatin1String(".transcriptrc");
+ }
config = readConfig(tsConfigPath);
}
--
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 khtml for openSUSE:Factory checked in at 2014-04-02 17:22:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/khtml (Old)
and /work/SRC/openSUSE:Factory/.khtml.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "khtml"
Changes:
--------
--- /work/SRC/openSUSE:Factory/khtml/khtml.changes 2014-03-28 16:24:13.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.khtml.new/khtml.changes 2014-04-02 17:22:12.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:38 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
khtml-4.97.0.tar.xz
New:
----
khtml-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ khtml.spec ++++++
--- /var/tmp/diff_new_pack.UY7eR0/_old 2014-04-02 17:22:14.000000000 +0200
+++ /var/tmp/diff_new_pack.UY7eR0/_new 2014-04-02 17:22:14.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5KHtml5
Name: khtml
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: giflib-devel
BuildRequires: karchive-devel >= %{_kf5_version}
@@ -135,7 +135,7 @@
%{_kf5_servicesdir}/kmultipart.desktop
%{_kf5_datadir}/kjava/
%{_kf5_datadir}/khtml/
-%_kf5_configdir/khtmlrc
+%config %{_kf5_configdir}/khtmlrc
%files devel
%defattr(-,root,root)
++++++ khtml-4.97.0.tar.xz -> khtml-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/CMakeLists.txt new/khtml-4.98.0/CMakeLists.txt
--- old/khtml-4.97.0/CMakeLists.txt 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/CMakeLists.txt 2014-03-29 08:19:09.000000000 +0100
@@ -2,7 +2,7 @@
project(KHtml)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(FeatureSummary)
include(GenerateExportHeader)
@@ -16,7 +16,7 @@
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
find_package(KF5Archive ${KF5_VERSION} REQUIRED)
find_package(KF5Codecs ${KF5_VERSION} REQUIRED)
find_package(KF5GlobalAccel ${KF5_VERSION} REQUIRED)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/BUILDING-TESTREGRESSION new/khtml-4.98.0/src/BUILDING-TESTREGRESSION
--- old/khtml-4.97.0/src/BUILDING-TESTREGRESSION 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/BUILDING-TESTREGRESSION 2014-03-29 08:19:09.000000000 +0100
@@ -1,3 +1,5 @@
+FIXME: update these docs for Qt5 / KF5
+
In order to be able to use testregression, you have to build your Qt and kdelibs in a special manner.
Here are the needed steps.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/CMakeLists.txt new/khtml-4.98.0/src/CMakeLists.txt
--- old/khtml-4.97.0/src/CMakeLists.txt 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/CMakeLists.txt 2014-03-29 08:19:09.000000000 +0100
@@ -532,11 +532,6 @@
# Fairly certain this isn't used anywhere
# qt5_generate_dbus_interface(khtml_iface.h org.kde.KHtmlPart.xml)
-if(kdelibs_SOURCE_DIR)
- qt5_generate_dbus_interface(${CMAKE_SOURCE_DIR}/tier3/kio/src/ioslaves/http/kcookiejar/kcookieserver.h org.kde.KCookieServer.xml)
- set(KCookieServer_DBUS_INTERFACE ${CMAKE_CURRENT_BINARY_DIR}/org.kde.KCookieServer.xml)
-endif()
-
qt5_add_dbus_interface(khtml_LIB_SRCS ${KCookieServer_DBUS_INTERFACE} kcookiejar_interface)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/Messages.sh new/khtml-4.98.0/src/Messages.sh
--- old/khtml-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/khtml-4.98.0/src/Messages.sh 2014-03-29 08:19:09.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/khtml5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/dom/dom_node.cpp new/khtml-4.98.0/src/dom/dom_node.cpp
--- old/khtml-4.97.0/src/dom/dom_node.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/dom/dom_node.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -260,7 +260,7 @@
if (!impl) {
return 0;
}
- return impl->childNodes();
+ return impl->childNodes().get();
}
Node Node::firstChild() const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/dom/html_form.h new/khtml-4.98.0/src/dom/html_form.h
--- old/khtml-4.97.0/src/dom/html_form.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/dom/html_form.h 2014-03-29 08:19:09.000000000 +0100
@@ -188,9 +188,7 @@
~HTMLFieldSetElement();
- /**
- * ### KDE 4.0: remove.
- */
+ // TODO: deprecate/remove?
HTMLFormElement form() const;
};
@@ -394,9 +392,7 @@
*/
void setDefaultChecked(bool);
- /**
- * ### KDE 4.0: remove.
- */
+ // TODO: deprecate/remove?
HTMLFormElement form() const;
/**
@@ -787,9 +783,7 @@
~HTMLLegendElement();
- /**
- * ### KDE 4.0: remove
- */
+ // TODO: deprecate/remove?
HTMLFormElement form() const;
/**
@@ -940,9 +934,7 @@
*/
long length() const;
- /**
- * ### KDE 4.0: remove.
- */
+ // TODO: deprecate/remove?
HTMLFormElement form() const;
/**
@@ -1094,9 +1086,7 @@
*/
void setDefaultValue(const DOMString &);
- /**
- * ### KDE 4.0: remove.
- */
+ // TODO: deprecate/remove?
HTMLFormElement form() const;
/**
@@ -1293,9 +1283,7 @@
~HTMLOptionElement();
- /**
- * ### KDE 4.0: remove
- */
+ // TODO: deprecate/remove?
HTMLFormElement form() const;
/**
@@ -1414,9 +1402,7 @@
~HTMLIsIndexElement();
- /**
- * ### KDE 4.0: remove
- */
+ // TODO: deprecate/remove?
HTMLFormElement form() const;
/**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/debugger/breakpointsdock.cpp new/khtml-4.98.0/src/ecma/debugger/breakpointsdock.cpp
--- old/khtml-4.97.0/src/ecma/debugger/breakpointsdock.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/debugger/breakpointsdock.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -27,7 +27,7 @@
{
BreakpointsDock::BreakpointsDock(QWidget *parent)
- : QDockWidget("", parent) //### KDE4.1: restore title
+ : QDockWidget("", parent) // TODO: restore title
{
setFeatures(DockWidgetMovable | DockWidgetFloatable);
QListWidget *widget = new QListWidget;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/debugger/scriptsdock.cpp new/khtml-4.98.0/src/ecma/debugger/scriptsdock.cpp
--- old/khtml-4.97.0/src/ecma/debugger/scriptsdock.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/debugger/scriptsdock.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -91,7 +91,7 @@
QString favicon;
if (document->url().isEmpty()) {
- domain = "????"; // ### KDE4.1: proper i18n'able string
+ domain = "????"; // TODO: proper i18n'able string
}
else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/kjs_dom.cpp new/khtml-4.98.0/src/ecma/kjs_dom.cpp
--- old/khtml-4.97.0/src/ecma/kjs_dom.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/kjs_dom.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -279,7 +279,7 @@
case ParentElement: // IE only apparently
return getDOMNode(exec, node.parentNode());
case ChildNodes:
- return getDOMNodeList(exec, node.childNodes());
+ return getDOMNodeList(exec, node.childNodes().get());
case FirstChild:
return getDOMNode(exec, node.firstChild());
case LastChild:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/kjs_html.cpp new/khtml-4.98.0/src/ecma/kjs_html.cpp
--- old/khtml-4.97.0/src/ecma/kjs_html.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/kjs_html.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -1884,7 +1884,7 @@
QString href = getURLArg(ATTR_HREF);
switch (token) {
case AnchorHash: {
- const QString encodedHash = QUrl(href).fragment();
+ const QString encodedHash = QUrl(href).fragment(QUrl::FullyEncoded);
if (encodedHash.isEmpty()) {
return jsString("");
}
@@ -1967,7 +1967,7 @@
case AreaHref:
return jsString(url.url());
case AreaHash: {
- const QString encodedHash = url.fragment();
+ const QString encodedHash = url.fragment(QUrl::FullyEncoded);
if (encodedHash.isEmpty()) {
return jsString("");
}
@@ -2634,8 +2634,9 @@
// read-only: text <--- According to the DOM, but JavaScript and JScript both allow changes.
// So, we'll do it here and not add it to our DOM headers.
case OptionText: {
- SharedPtr<DOM::NodeListImpl> nl(option.childNodes());
- for (unsigned int i = 0; i < nl->length(); i++) {
+ RefPtr<DOM::NodeListImpl> nl(option.childNodes());
+ const unsigned int length = nl->length();
+ for (unsigned int i = 0; i < length; ++i) {
if (nl->item(i)->nodeType() == DOM::Node::TEXT_NODE) {
static_cast<DOM::TextImpl *>(nl->item(i))->setData(str, exception);
return;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/kjs_navigator.cpp new/khtml-4.98.0/src/ecma/kjs_navigator.cpp
--- old/khtml-4.97.0/src/ecma/kjs_navigator.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/kjs_navigator.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -27,6 +27,7 @@
#include <kconfig.h>
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#include <QDebug>
#include <kprotocolmanager.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/kjs_window.cpp new/khtml-4.98.0/src/ecma/kjs_window.cpp
--- old/khtml-4.97.0/src/ecma/kjs_window.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/kjs_window.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -2553,8 +2553,7 @@
////////////////////// ScheduledAction ////////////////////////
-// KDE 4: Make those parameters const ... &
-ScheduledAction::ScheduledAction(JSObject *_func, List _args, DateTimeMS _nextTime, int _interval, bool _singleShot,
+ScheduledAction::ScheduledAction(JSObject *_func, const List &_args, const DateTimeMS &_nextTime, int _interval, bool _singleShot,
int _timerId)
{
//qDebug() << "ScheduledAction::ScheduledAction(isFunction) " << this;
@@ -2568,8 +2567,7 @@
timerId = _timerId;
}
-// KDE 4: Make it const QString &
-ScheduledAction::ScheduledAction(QString _code, DateTimeMS _nextTime, int _interval, bool _singleShot, int _timerId)
+ScheduledAction::ScheduledAction(const QString &_code, const DateTimeMS &_nextTime, int _interval, bool _singleShot, int _timerId)
{
//qDebug() << "ScheduledAction::ScheduledAction(!isFunction) " << this;
//func = 0;
@@ -2994,7 +2992,7 @@
QUrl url = m_frame->m_part->url();
switch (token) {
case Hash: {
- const QString encodedHash = url.fragment();
+ const QString encodedHash = url.fragment(QUrl::FullyEncoded);
if (encodedHash.isEmpty()) {
return jsString("");
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/kjs_window.h new/khtml-4.98.0/src/ecma/kjs_window.h
--- old/khtml-4.97.0/src/ecma/kjs_window.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/kjs_window.h 2014-03-29 08:19:09.000000000 +0100
@@ -292,8 +292,8 @@
class ScheduledAction
{
public:
- ScheduledAction(JSObject *_func, List _args, DateTimeMS _nextTime, int _interval, bool _singleShot, int _timerId);
- ScheduledAction(QString _code, DateTimeMS _nextTime, int _interval, bool _singleShot, int _timerId);
+ ScheduledAction(JSObject *_func, const List &_args, const DateTimeMS &_nextTime, int _interval, bool _singleShot, int _timerId);
+ ScheduledAction(const QString &_code, const DateTimeMS &_nextTime, int _interval, bool _singleShot, int _timerId);
~ScheduledAction();
bool execute(Window *window);
void mark();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/ecma/xmlhttprequest.cpp new/khtml-4.98.0/src/ecma/xmlhttprequest.cpp
--- old/khtml-4.97.0/src/ecma/xmlhttprequest.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/ecma/xmlhttprequest.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -227,14 +227,14 @@
// Token according to RFC 2616
static bool isValidFieldName(const QString &name)
{
- int l = name.length();
+ const int l = name.length();
if (l == 0) {
return false;
}
const QChar *c = name.constData();
for (int i = 0; i < l; ++i, ++c) {
- int u = c->unicode();
+ ushort u = c->unicode();
if (u < 32 || u > 126) {
return false;
}
@@ -254,14 +254,14 @@
static bool isValidFieldValue(const QString &name)
{
- int l = name.length();
+ const int l = name.length();
if (l == 0) {
return true;
}
const QChar *c = name.constData();
for (int i = 0; i < l; ++i, ++c) {
- int u = c->unicode();
+ ushort u = c->unicode();
if (u == '\n' || u == '\r') {
return false;
}
@@ -273,36 +273,35 @@
static bool canSetRequestHeader(const QString &name)
{
- static QSet<CaseInsensitiveString> forbiddenHeaders;
+ if (name.startsWith(QLatin1String("sec-"), Qt::CaseInsensitive) ||
+ name.startsWith(QLatin1String("proxy-"), Qt::CaseInsensitive)) {
+ return false;
+ }
+ static QSet<CaseInsensitiveString> forbiddenHeaders;
if (forbiddenHeaders.isEmpty()) {
static const char *const hdrs[] = {
"accept-charset",
"accept-encoding",
+ "access-control-request-headers",
+ "access-control-request-method",
+ "connection",
"content-length",
- "connect",
- "copy",
+ "content-transfer-encoding",
+ "cookie",
+ "cookie2",
"date",
- "delete",
+ "dnt",
"expect",
- "head",
"host",
"keep-alive",
- "lock",
- "mkcol",
- "move",
- "options",
- "put",
- "propfind",
- "proppatch",
- "proxy-authorization",
+ "origin",
"referer",
"te",
- "trace",
"trailer",
"transfer-encoding",
- "unlock",
"upgrade",
+ "user-agent",
"via"
};
for (size_t i = 0; i < sizeof(hdrs) / sizeof(char *); ++i) {
@@ -495,19 +494,12 @@
// We need to use a POST-like setup even for non-post whenever we
// have a payload.
- if (m_method == QLatin1String("POST") || !_body.isEmpty()) {
-
+ const bool havePayload = !_body.isEmpty();
+ if (m_method == QLatin1String("POST") || havePayload) {
// FIXME: determine post encoding correctly by looking in headers
// for charset.
QByteArray buf = _body.toUtf8();
-
job = KIO::storedHttpPost(buf, url, KIO::HideProgressInfo);
- if (contentType.isNull()) {
- job->addMetaData("content-type", "Content-type: text/plain");
- } else {
- job->addMetaData("content-type", contentType);
- }
-
} else {
job = KIO::storedGet(url, KIO::NoReload, KIO::HideProgressInfo);
}
@@ -515,6 +507,14 @@
// Regardless of job type, make sure the method is set
job->addMetaData("CustomHTTPMethod", m_method);
+ // Set headers
+
+ if (!contentType.isNull()) {
+ job->addMetaData("content-type", contentType);
+ } else if (havePayload) {
+ job->addMetaData("content-type", "Content-type: text/plain");
+ }
+
if (!m_requestHeaders.isEmpty()) {
QString rh;
HTTPHeaderMap::ConstIterator begin = m_requestHeaders.constBegin();
@@ -621,45 +621,26 @@
ec = DOMException::SYNTAX_ERR;
return;
}
- QString name = _name.toLower();
+
QString value = _value.trimmed();
- if (value.isEmpty()) {
- return;
- }
// Content-type needs to be set separately from the other headers
- if (name == "content-type") {
+ if (_name.compare(QLatin1String("content-type"), Qt::CaseInsensitive) == 0) {
contentType = "Content-type: " + value;
return;
}
- // Sanitize the referrer header to protect against spoofing...
- if (name == "referer") {
- QUrl referrerURL(value);
- if (urlMatchesDocumentDomain(referrerURL)) {
- m_requestHeaders[name] = referrerURL.url();
- }
- return;
- }
-
- // Sanitize the request headers below and handle them as if they are
- // calls to open. Otherwise, we will end up ignoring them all together!
- // TODO: Do something about "put" which kio_http sort of supports and
- // the webDAV headers such as PROPFIND etc...
- if (name == "get" || name == "post") {
- QUrl reqURL(doc->URL().resolved(QUrl(value)));
- open(name, reqURL, async, ec);
- return;
- }
-
// Reject all banned headers.
if (!canSetRequestHeader(_name)) {
- qWarning() << "Refusing to set unsafe XMLHttpRequest header "
- << name << endl;
+ qWarning() << "Refusing to set unsafe XMLHttpRequest header" << _name;
return;
}
- m_requestHeaders[_name] = value;
+ if (m_requestHeaders.contains(_name)) {
+ m_requestHeaders[_name] += (QLatin1String(", ") + value);
+ } else {
+ m_requestHeaders[_name] = value;
+ }
}
JSValue *XMLHttpRequest::getAllResponseHeaders(int &ec) const
@@ -987,16 +968,10 @@
if (args.size() < 2) {
return throwError(exec, SyntaxError, "Not enough arguments");
}
- JSValue *keyArgument = args[0];
- JSValue *valArgument = args[1];
- QString key, val;
- if (!keyArgument->isUndefined() && !keyArgument->isNull()) {
- key = keyArgument->toString(exec).qstring();
- }
- if (!valArgument->isUndefined() && !valArgument->isNull()) {
- val = valArgument->toString(exec).qstring();
- }
- request->setRequestHeader(key, val, ec);
+
+ QString headerFieldName = args[0]->toString(exec).qstring();
+ QString headerFieldValue = args[1]->toString(exec).qstring();
+ request->setRequestHeader(headerFieldName, headerFieldValue, ec);
setDOMException(exec, ec);
return jsUndefined();
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/editing/htmlediting_impl.cpp new/khtml-4.98.0/src/editing/htmlediting_impl.cpp
--- old/khtml-4.97.0/src/editing/htmlediting_impl.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/editing/htmlediting_impl.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -2416,8 +2416,8 @@
assert(m_parent);
m_parent->ref();
- NodeListImpl *children = m_parent->childNodes();
- for (int i = children->length(); i >= 0; i--) {
+ RefPtr<DOM::NodeListImpl> children = m_parent->childNodes();
+ for (long i = children->length() - 1; i >= 0; --i) {
NodeImpl *node = children->item(i);
if (node == m_removeChild) {
break;
@@ -2523,9 +2523,9 @@
void RemoveNodePreservingChildrenCommandImpl::doApply()
{
- NodeListImpl *children = node()->childNodes();
- int length = children->length();
- for (int i = 0; i < length; i++) {
+ RefPtr<DOM::NodeListImpl> children = node()->childNodes();
+ const unsigned int length = children->length();
+ for (unsigned int i = 0; i < length; ++i) {
NodeImpl *child = children->item(0);
removeNode(child);
insertNodeBefore(child, node());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/html/html_documentimpl.cpp new/khtml-4.98.0/src/html/html_documentimpl.cpp
--- old/khtml-4.97.0/src/html/html_documentimpl.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/html/html_documentimpl.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -103,7 +103,7 @@
}
org::kde::KCookieServer kcookiejar("org.kde.kded5", "/modules/kcookiejar", QDBusConnection::sessionBus());
- QDBusReply<QString> reply = kcookiejar.findDOMCookies(URL().url(), qlonglong(windowId));
+ QDBusReply<QString> reply = kcookiejar.findDOMCookies(URL().url());
if (!reply.isValid()) {
qWarning() << "Can't communicate with cookiejar!";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/html/html_headimpl.cpp new/khtml-4.98.0/src/html/html_headimpl.cpp
--- old/khtml-4.97.0/src/html/html_headimpl.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/html/html_headimpl.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -836,17 +836,15 @@
void HTMLTitleElementImpl::setText(const DOMString &str)
{
int exceptioncode = 0;
- // Look for an existing text child node
- DOM::NodeListImpl *nl(childNodes());
- if (nl) {
- for (unsigned int i = 0; i < nl->length(); i++) {
- if (nl->item(i)->nodeType() == DOM::Node::TEXT_NODE) {
- static_cast<DOM::TextImpl *>(nl->item(i))->setData(str, exceptioncode);
- return;
- }
+ RefPtr<DOM::NodeListImpl> nl = childNodes();
+ const unsigned int length = nl->length();
+ for (unsigned int i = 0; i < length; ++i) {
+ if (nl->item(i)->nodeType() == DOM::Node::TEXT_NODE) {
+ static_cast<DOM::TextImpl *>(nl->item(i))->setData(str, exceptioncode);
+ return;
}
- delete nl;
}
+
// No child text node found, creating one
DOM::TextImpl *t = document()->createTextNode(str.implementation());
appendChild(t, exceptioncode);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/html/kopenssl.cpp new/khtml-4.98.0/src/html/kopenssl.cpp
--- old/khtml-4.97.0/src/html/kopenssl.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/html/kopenssl.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -26,9 +26,9 @@
#include <kconfig.h>
#include <kconfiggroup.h>
-#include <klibrary.h>
#include <QtCore/QCoreApplication>
#include <QtCore/QFile>
+#include <QtCore/QLibrary>
#include <QtCore/QRegExp>
extern "C" {
@@ -203,8 +203,8 @@
: sslLib(0), cryptoLib(0), ok(false)
{}
- KLibrary *sslLib;
- KLibrary *cryptoLib;
+ QLibrary *sslLib;
+ QLibrary *cryptoLib;
bool ok;
static KOpenSSLProxy *sSelf;
@@ -298,7 +298,7 @@
}
#ifdef Q_OS_WIN
- d->cryptoLib = new KLibrary("libeay32.dll");
+ d->cryptoLib = new QLibrary("libeay32.dll");
if (!d->cryptoLib->load()) {
delete d->cryptoLib;
d->cryptoLib = 0;
@@ -307,7 +307,7 @@
{
QString libname = findMostRecentLib("/usr/lib" KDELIBSUFF, "crypto");
if (!libname.isNull()) {
- d->cryptoLib = new KLibrary(libname);
+ d->cryptoLib = new QLibrary(libname);
d->cryptoLib->setLoadHints(QLibrary::ExportExternalSymbolsHint);
if (!d->cryptoLib->load()) {
delete d->cryptoLib;
@@ -391,7 +391,7 @@
QString tmpStr(alib);
tmpStr.remove(QRegExp("\\(.*\\)"));
if (QFile(tmpStr).isReadable()) {
- d->cryptoLib = new KLibrary(alib);
+ d->cryptoLib = new QLibrary(alib);
d->cryptoLib->setLoadHints(QLibrary::ExportExternalSymbolsHint);
}
if (d->cryptoLib && d->cryptoLib->load()) {
@@ -408,133 +408,133 @@
if (d->cryptoLib) {
#if KSSL_HAVE_SSL
- K_X509_free = (void (*)(X509 *)) d->cryptoLib->resolveFunction("X509_free");
- K_RAND_egd = (int (*)(const char *)) d->cryptoLib->resolveFunction("RAND_egd");
- K_RAND_load_file = (int (*)(const char *, long)) d->cryptoLib->resolveFunction("RAND_load_file");
- K_RAND_file_name = (const char *(*)(char *, size_t)) d->cryptoLib->resolveFunction("RAND_file_name");
- K_RAND_write_file = (int (*)(const char *)) d->cryptoLib->resolveFunction("RAND_write_file");
- K_CRYPTO_free = (void (*)(void *)) d->cryptoLib->resolveFunction("CRYPTO_free");
- K_d2i_X509 = (X509 * (*)(X509 **, unsigned char **, long)) d->cryptoLib->resolveFunction("d2i_X509");
- K_i2d_X509 = (int (*)(X509 *, unsigned char **)) d->cryptoLib->resolveFunction("i2d_X509");
- K_X509_cmp = (int (*)(X509 *, X509 *)) d->cryptoLib->resolveFunction("X509_cmp");
- K_X509_STORE_CTX_new = (X509_STORE_CTX * (*)(void)) d->cryptoLib->resolveFunction("X509_STORE_CTX_new");
- K_X509_STORE_CTX_free = (void (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_free");
- K_X509_verify_cert = (int (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_verify_cert");
- K_X509_STORE_new = (X509_STORE * (*)(void)) d->cryptoLib->resolveFunction("X509_STORE_new");
- K_X509_STORE_free = (void (*)(X509_STORE *)) d->cryptoLib->resolveFunction("X509_STORE_free");
- K_X509_NAME_oneline = (char *(*)(X509_NAME *, char *, int)) d->cryptoLib->resolveFunction("X509_NAME_oneline");
- K_X509_get_subject_name = (X509_NAME * (*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_subject_name");
- K_X509_get_issuer_name = (X509_NAME * (*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_issuer_name");
- K_X509_STORE_add_lookup = (X509_LOOKUP * (*)(X509_STORE *, X509_LOOKUP_METHOD *)) d->cryptoLib->resolveFunction("X509_STORE_add_lookup");
- K_X509_LOOKUP_file = (X509_LOOKUP_METHOD * (*)(void)) d->cryptoLib->resolveFunction("X509_LOOKUP_file");
- K_X509_LOOKUP_free = (void (*)(X509_LOOKUP *)) d->cryptoLib->resolveFunction("X509_LOOKUP_free");
- K_X509_LOOKUP_ctrl = (int (*)(X509_LOOKUP *, int, const char *, long, char **)) d->cryptoLib->resolveFunction("X509_LOOKUP_ctrl");
- K_X509_STORE_CTX_init = (void (*)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_init");
- K_X509_dup = (X509 * (*)(X509 *)) d->cryptoLib->resolveFunction("X509_dup");
- K_BIO_s_mem = (BIO_METHOD * (*)(void)) d->cryptoLib->resolveFunction("BIO_s_mem");
- K_BIO_new = (BIO * (*)(BIO_METHOD *)) d->cryptoLib->resolveFunction("BIO_new");
- K_BIO_new_fp = (BIO * (*)(FILE *, int)) d->cryptoLib->resolveFunction("BIO_new_fp");
- K_BIO_new_mem_buf = (BIO * (*)(void *, int)) d->cryptoLib->resolveFunction("BIO_new_mem_buf");
- K_BIO_free = (int (*)(BIO *)) d->cryptoLib->resolveFunction("BIO_free");
- K_BIO_ctrl = (long(*)(BIO *, int, long, void *)) d->cryptoLib->resolveFunction("BIO_ctrl");
- K_BIO_write = (int (*)(BIO * b, const void *data, int len)) d->cryptoLib->resolveFunction("BIO_write");
- K_PEM_ASN1_write_bio = (int (*)(int (*)(), const char *, BIO *, char *, const EVP_CIPHER *, unsigned char *, int, pem_password_cb *, void *)) d->cryptoLib->resolveFunction("PEM_ASN1_write_bio");
+ K_X509_free = (void (*)(X509 *)) d->cryptoLib->resolve("X509_free");
+ K_RAND_egd = (int (*)(const char *)) d->cryptoLib->resolve("RAND_egd");
+ K_RAND_load_file = (int (*)(const char *, long)) d->cryptoLib->resolve("RAND_load_file");
+ K_RAND_file_name = (const char *(*)(char *, size_t)) d->cryptoLib->resolve("RAND_file_name");
+ K_RAND_write_file = (int (*)(const char *)) d->cryptoLib->resolve("RAND_write_file");
+ K_CRYPTO_free = (void (*)(void *)) d->cryptoLib->resolve("CRYPTO_free");
+ K_d2i_X509 = (X509 * (*)(X509 **, unsigned char **, long)) d->cryptoLib->resolve("d2i_X509");
+ K_i2d_X509 = (int (*)(X509 *, unsigned char **)) d->cryptoLib->resolve("i2d_X509");
+ K_X509_cmp = (int (*)(X509 *, X509 *)) d->cryptoLib->resolve("X509_cmp");
+ K_X509_STORE_CTX_new = (X509_STORE_CTX * (*)(void)) d->cryptoLib->resolve("X509_STORE_CTX_new");
+ K_X509_STORE_CTX_free = (void (*)(X509_STORE_CTX *)) d->cryptoLib->resolve("X509_STORE_CTX_free");
+ K_X509_verify_cert = (int (*)(X509_STORE_CTX *)) d->cryptoLib->resolve("X509_verify_cert");
+ K_X509_STORE_new = (X509_STORE * (*)(void)) d->cryptoLib->resolve("X509_STORE_new");
+ K_X509_STORE_free = (void (*)(X509_STORE *)) d->cryptoLib->resolve("X509_STORE_free");
+ K_X509_NAME_oneline = (char *(*)(X509_NAME *, char *, int)) d->cryptoLib->resolve("X509_NAME_oneline");
+ K_X509_get_subject_name = (X509_NAME * (*)(X509 *)) d->cryptoLib->resolve("X509_get_subject_name");
+ K_X509_get_issuer_name = (X509_NAME * (*)(X509 *)) d->cryptoLib->resolve("X509_get_issuer_name");
+ K_X509_STORE_add_lookup = (X509_LOOKUP * (*)(X509_STORE *, X509_LOOKUP_METHOD *)) d->cryptoLib->resolve("X509_STORE_add_lookup");
+ K_X509_LOOKUP_file = (X509_LOOKUP_METHOD * (*)(void)) d->cryptoLib->resolve("X509_LOOKUP_file");
+ K_X509_LOOKUP_free = (void (*)(X509_LOOKUP *)) d->cryptoLib->resolve("X509_LOOKUP_free");
+ K_X509_LOOKUP_ctrl = (int (*)(X509_LOOKUP *, int, const char *, long, char **)) d->cryptoLib->resolve("X509_LOOKUP_ctrl");
+ K_X509_STORE_CTX_init = (void (*)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *)) d->cryptoLib->resolve("X509_STORE_CTX_init");
+ K_X509_dup = (X509 * (*)(X509 *)) d->cryptoLib->resolve("X509_dup");
+ K_BIO_s_mem = (BIO_METHOD * (*)(void)) d->cryptoLib->resolve("BIO_s_mem");
+ K_BIO_new = (BIO * (*)(BIO_METHOD *)) d->cryptoLib->resolve("BIO_new");
+ K_BIO_new_fp = (BIO * (*)(FILE *, int)) d->cryptoLib->resolve("BIO_new_fp");
+ K_BIO_new_mem_buf = (BIO * (*)(void *, int)) d->cryptoLib->resolve("BIO_new_mem_buf");
+ K_BIO_free = (int (*)(BIO *)) d->cryptoLib->resolve("BIO_free");
+ K_BIO_ctrl = (long(*)(BIO *, int, long, void *)) d->cryptoLib->resolve("BIO_ctrl");
+ K_BIO_write = (int (*)(BIO * b, const void *data, int len)) d->cryptoLib->resolve("BIO_write");
+ K_PEM_ASN1_write_bio = (int (*)(int (*)(), const char *, BIO *, char *, const EVP_CIPHER *, unsigned char *, int, pem_password_cb *, void *)) d->cryptoLib->resolve("PEM_ASN1_write_bio");
K_ASN1_item_i2d_fp = (int (*)(ASN1_ITEM *, FILE *, unsigned char *))
- d->cryptoLib->resolveFunction("ASN1_item_i2d_fp");
- K_NETSCAPE_X509_it = (ASN1_ITEM *) d->cryptoLib->resolveFunction("NETSCAPE_X509_it");
- K_X509_print_fp = (int (*)(FILE *, X509 *)) d->cryptoLib->resolveFunction("X509_print_fp");
- K_i2d_PKCS12 = (int (*)(PKCS12 *, unsigned char **)) d->cryptoLib->resolveFunction("i2d_PKCS12");
- K_i2d_PKCS12_fp = (int (*)(FILE *, PKCS12 *)) d->cryptoLib->resolveFunction("i2d_PKCS12_fp");
- K_PKCS12_newpass = (int (*)(PKCS12 *, char *, char *)) d->cryptoLib->resolveFunction("PKCS12_newpass");
- K_d2i_PKCS12_fp = (PKCS12 * (*)(FILE *, PKCS12 **)) d->cryptoLib->resolveFunction("d2i_PKCS12_fp");
- K_PKCS12_new = (PKCS12 * (*)()) d->cryptoLib->resolveFunction("PKCS12_new");
- K_PKCS12_free = (void (*)(PKCS12 *)) d->cryptoLib->resolveFunction("PKCS12_free");
+ d->cryptoLib->resolve("ASN1_item_i2d_fp");
+ K_NETSCAPE_X509_it = (ASN1_ITEM *) d->cryptoLib->resolve("NETSCAPE_X509_it");
+ K_X509_print_fp = (int (*)(FILE *, X509 *)) d->cryptoLib->resolve("X509_print_fp");
+ K_i2d_PKCS12 = (int (*)(PKCS12 *, unsigned char **)) d->cryptoLib->resolve("i2d_PKCS12");
+ K_i2d_PKCS12_fp = (int (*)(FILE *, PKCS12 *)) d->cryptoLib->resolve("i2d_PKCS12_fp");
+ K_PKCS12_newpass = (int (*)(PKCS12 *, char *, char *)) d->cryptoLib->resolve("PKCS12_newpass");
+ K_d2i_PKCS12_fp = (PKCS12 * (*)(FILE *, PKCS12 **)) d->cryptoLib->resolve("d2i_PKCS12_fp");
+ K_PKCS12_new = (PKCS12 * (*)()) d->cryptoLib->resolve("PKCS12_new");
+ K_PKCS12_free = (void (*)(PKCS12 *)) d->cryptoLib->resolve("PKCS12_free");
K_PKCS12_parse = (int (*)(PKCS12 *, const char *, EVP_PKEY **,
- X509 **, STACK_OF(X509) **)) d->cryptoLib->resolveFunction("PKCS12_parse");
- K_EVP_PKEY_free = (void (*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_free");
- K_EVP_PKEY_new = (EVP_PKEY * (*)()) d->cryptoLib->resolveFunction("EVP_PKEY_new");
- K_X509_REQ_free = (void (*)(X509_REQ *)) d->cryptoLib->resolveFunction("X509_REQ_free");
- K_X509_REQ_new = (X509_REQ * (*)()) d->cryptoLib->resolveFunction("X509_REQ_new");
- K_X509_STORE_CTX_set_chain = (void (*)(X509_STORE_CTX *, STACK_OF(X509) *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_chain");
- K_X509_STORE_CTX_set_purpose = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_purpose");
- K_sk_free = (void (*)(STACK *)) d->cryptoLib->resolveFunction("sk_free");
- K_sk_num = (int (*)(STACK *)) d->cryptoLib->resolveFunction("sk_num");
- K_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolveFunction("sk_pop");
- K_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolveFunction("sk_value");
- K_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolveFunction("sk_new");
- K_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolveFunction("sk_push");
- K_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolveFunction("sk_dup");
- K_i2s_ASN1_INTEGER = (char *(*)(X509V3_EXT_METHOD *, ASN1_INTEGER *)) d->cryptoLib->resolveFunction("i2s_ASN1_INTEGER");
- K_X509_get_serialNumber = (ASN1_INTEGER * (*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_serialNumber");
- K_X509_get_pubkey = (EVP_PKEY * (*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_pubkey");
- K_i2d_PublicKey = (int (*)(EVP_PKEY *, unsigned char **)) d->cryptoLib->resolveFunction("i2d_PublicKey");
- K_X509_check_private_key = (int (*)(X509 *, EVP_PKEY *)) d->cryptoLib->resolveFunction("X509_check_private_key");
- K_BN_bn2hex = (char *(*)(const BIGNUM *)) d->cryptoLib->resolveFunction("BN_bn2hex");
- K_X509_digest = (int (*)(const X509 *, const EVP_MD *, unsigned char *, unsigned int *)) d->cryptoLib->resolveFunction("X509_digest");
- K_EVP_md5 = (EVP_MD * (*)()) d->cryptoLib->resolveFunction("EVP_md5");
- K_ASN1_INTEGER_free = (void (*)(ASN1_INTEGER *)) d->cryptoLib->resolveFunction("ASN1_INTEGER_free");
- K_OBJ_obj2nid = (int (*)(ASN1_OBJECT *)) d->cryptoLib->resolveFunction("OBJ_obj2nid");
- K_OBJ_nid2ln = (const char *(*)(int)) d->cryptoLib->resolveFunction("OBJ_nid2ln");
- K_X509_get_ext_count = (int (*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_ext_count");
- K_X509_get_ext_by_NID = (int (*)(X509 *, int, int)) d->cryptoLib->resolveFunction("X509_get_ext_by_NID");
- K_X509_get_ext_by_OBJ = (int (*)(X509 *, ASN1_OBJECT *, int)) d->cryptoLib->resolveFunction("X509_get_ext_by_OBJ");
- K_X509_get_ext = (X509_EXTENSION * (*)(X509 *, int)) d->cryptoLib->resolveFunction("X509_get_ext");
- K_X509_delete_ext = (X509_EXTENSION * (*)(X509 *, int)) d->cryptoLib->resolveFunction("X509_delete_ext");
- K_X509_add_ext = (int (*)(X509 *, X509_EXTENSION *, int)) d->cryptoLib->resolveFunction("X509_add_ext");
- K_X509_get_ext_d2i = (void *(*)(X509 *, int, int *, int *)) d->cryptoLib->resolveFunction("X509_get_ext_d2i");
- K_i2s_ASN1_OCTET_STRING = (char *(*)(X509V3_EXT_METHOD *, ASN1_OCTET_STRING *)) d->cryptoLib->resolveFunction("i2s_ASN1_OCTET_STRING");
- K_ASN1_BIT_STRING_get_bit = (int (*)(ASN1_BIT_STRING *, int)) d->cryptoLib->resolveFunction("ASN1_BIT_STRING_get_bit");
- K_PKCS7_new = (PKCS7 * (*)()) d->cryptoLib->resolveFunction("PKCS7_new");
- K_PKCS7_free = (void (*)(PKCS7 *)) d->cryptoLib->resolveFunction("PKCS7_free");
- K_PKCS7_content_free = (void (*)(PKCS7 *)) d->cryptoLib->resolveFunction("PKCS7_content_free");
- K_i2d_PKCS7 = (int (*)(PKCS7 *, unsigned char **)) d->cryptoLib->resolveFunction("i2d_PKCS7");
- K_i2d_PKCS7_fp = (int (*)(FILE *, PKCS7 *)) d->cryptoLib->resolveFunction("i2d_PKCS7_fp");
- K_i2d_PKCS7_bio = (int (*)(BIO * bp, PKCS7 * p7)) d->cryptoLib->resolveFunction("i2d_PKCS7_bio");
- K_d2i_PKCS7 = (PKCS7 * (*)(PKCS7 **, unsigned char **, long)) d->cryptoLib->resolveFunction("d2i_PKCS7");
- K_d2i_PKCS7_fp = (PKCS7 * (*)(FILE *, PKCS7 **)) d->cryptoLib->resolveFunction("d2i_PKCS7_fp");
- K_d2i_PKCS7_bio = (PKCS7 * (*)(BIO * bp, PKCS7 **p7)) d->cryptoLib->resolveFunction("d2i_PKCS7_bio");
- K_PKCS7_dup = (PKCS7 * (*)(PKCS7 *)) d->cryptoLib->resolveFunction("PKCS7_dup");
- K_PKCS7_sign = (PKCS7 * (*)(X509 *, EVP_PKEY *, STACK_OF(X509) *, BIO *, int)) d->cryptoLib->resolveFunction("PKCS7_sign");
- K_PKCS7_verify = (int (*)(PKCS7 *, STACK_OF(X509) *, X509_STORE *, BIO *, BIO *, int)) d->cryptoLib->resolveFunction("PKCS7_verify");
- K_PKCS7_get0_signers = (STACK_OF(X509) * (*)(PKCS7 *, STACK_OF(X509) *, int)) d->cryptoLib->resolveFunction("PKCS7_get0_signers");
- K_PKCS7_encrypt = (PKCS7 * (*)(STACK_OF(X509) *, BIO *, EVP_CIPHER *, int)) d->cryptoLib->resolveFunction("PKCS7_encrypt");
- K_PKCS7_decrypt = (int (*)(PKCS7 *, EVP_PKEY *, X509 *, BIO *, int)) d->cryptoLib->resolveFunction("PKCS7_decrypt");
- K_PEM_X509_INFO_read = (STACK_OF(X509_INFO) * (*)(FILE *, STACK_OF(X509_INFO) *, pem_password_cb *, void *)) d->cryptoLib->resolveFunction("PEM_X509_INFO_read");
- K_ASN1_d2i_fp = (char *(*)(char *(*)(), char *(*)(), FILE *, unsigned char **)) d->cryptoLib->resolveFunction("ASN1_d2i_fp");
- K_X509_new = (X509 * (*)()) d->cryptoLib->resolveFunction("X509_new");
- K_X509_PURPOSE_get_count = (int (*)()) d->cryptoLib->resolveFunction("X509_PURPOSE_get_count");
- K_X509_PURPOSE_get_id = (int (*)(X509_PURPOSE *)) d->cryptoLib->resolveFunction("X509_PURPOSE_get_id");
- K_X509_check_purpose = (int (*)(X509 *, int, int)) d->cryptoLib->resolveFunction("X509_check_purpose");
- K_X509_PURPOSE_get0 = (X509_PURPOSE * (*)(int)) d->cryptoLib->resolveFunction("X509_PURPOSE_get0");
- K_EVP_PKEY_assign = (int (*)(EVP_PKEY *, int, char *)) d->cryptoLib->resolveFunction("EVP_PKEY_assign");
- K_X509_REQ_set_pubkey = (int (*)(X509_REQ *, EVP_PKEY *)) d->cryptoLib->resolveFunction("X509_REQ_set_pubkey");
- K_RSA_generate_key = (RSA * (*)(int, unsigned long, void (*)(int, int, void *), void *)) d->cryptoLib->resolveFunction("RSA_generate_key");
- K_i2d_X509_REQ_fp = (int (*)(FILE *, X509_REQ *)) d->cryptoLib->resolveFunction("i2d_X509_REQ_fp");
- K_ERR_clear_error = (void (*)()) d->cryptoLib->resolveFunction("ERR_clear_error");
- K_ERR_get_error = (unsigned long(*)()) d->cryptoLib->resolveFunction("ERR_get_error");
- K_ERR_print_errors_fp = (void (*)(FILE *)) d->cryptoLib->resolveFunction("ERR_print_errors_fp");
- K_X509_get1_email = (STACK * (*)(X509 * x)) d->cryptoLib->resolveFunction("X509_get1_email");
- K_X509_email_free = (void (*)(STACK * sk)) d->cryptoLib->resolveFunction("X509_email_free");
- K_EVP_des_ede3_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolveFunction("EVP_des_ede3_cbc");
- K_EVP_des_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolveFunction("EVP_des_cbc");
- K_EVP_rc2_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolveFunction("EVP_rc2_cbc");
- K_EVP_rc2_64_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolveFunction("EVP_rc2_64_cbc");
- K_EVP_rc2_40_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolveFunction("EVP_rc2_40_cbc");
- K_i2d_PrivateKey_fp = (int (*)(FILE *, EVP_PKEY *)) d->cryptoLib->resolveFunction("i2d_PrivateKey_fp");
- K_i2d_PKCS8PrivateKey_fp = (int (*)(FILE *, EVP_PKEY *, const EVP_CIPHER *, char *, int, pem_password_cb *, void *)) d->cryptoLib->resolveFunction("i2d_PKCS8PrivateKey_fp");
- K_RSA_free = (void (*)(RSA *)) d->cryptoLib->resolveFunction("RSA_free");
- K_EVP_bf_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolveFunction("EVP_bf_cbc");
- K_X509_REQ_sign = (int (*)(X509_REQ *, EVP_PKEY *, const EVP_MD *)) d->cryptoLib->resolveFunction("X509_REQ_sign");
- K_X509_NAME_add_entry_by_txt = (int (*)(X509_NAME *, char *, int, unsigned char *, int, int, int)) d->cryptoLib->resolveFunction("X509_NAME_add_entry_by_txt");
- K_X509_NAME_new = (X509_NAME * (*)()) d->cryptoLib->resolveFunction("X509_NAME_new");
- K_X509_REQ_set_subject_name = (int (*)(X509_REQ *, X509_NAME *)) d->cryptoLib->resolveFunction("X509_REQ_set_subject_name");
- K_ASN1_STRING_data = (unsigned char *(*)(ASN1_STRING *)) d->cryptoLib->resolveFunction("ASN1_STRING_data");
- K_ASN1_STRING_length = (int (*)(ASN1_STRING *)) d->cryptoLib->resolveFunction("ASN1_STRING_length");
+ X509 **, STACK_OF(X509) **)) d->cryptoLib->resolve("PKCS12_parse");
+ K_EVP_PKEY_free = (void (*)(EVP_PKEY *)) d->cryptoLib->resolve("EVP_PKEY_free");
+ K_EVP_PKEY_new = (EVP_PKEY * (*)()) d->cryptoLib->resolve("EVP_PKEY_new");
+ K_X509_REQ_free = (void (*)(X509_REQ *)) d->cryptoLib->resolve("X509_REQ_free");
+ K_X509_REQ_new = (X509_REQ * (*)()) d->cryptoLib->resolve("X509_REQ_new");
+ K_X509_STORE_CTX_set_chain = (void (*)(X509_STORE_CTX *, STACK_OF(X509) *)) d->cryptoLib->resolve("X509_STORE_CTX_set_chain");
+ K_X509_STORE_CTX_set_purpose = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolve("X509_STORE_CTX_set_purpose");
+ K_sk_free = (void (*)(STACK *)) d->cryptoLib->resolve("sk_free");
+ K_sk_num = (int (*)(STACK *)) d->cryptoLib->resolve("sk_num");
+ K_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolve("sk_pop");
+ K_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolve("sk_value");
+ K_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolve("sk_new");
+ K_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolve("sk_push");
+ K_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolve("sk_dup");
+ K_i2s_ASN1_INTEGER = (char *(*)(X509V3_EXT_METHOD *, ASN1_INTEGER *)) d->cryptoLib->resolve("i2s_ASN1_INTEGER");
+ K_X509_get_serialNumber = (ASN1_INTEGER * (*)(X509 *)) d->cryptoLib->resolve("X509_get_serialNumber");
+ K_X509_get_pubkey = (EVP_PKEY * (*)(X509 *)) d->cryptoLib->resolve("X509_get_pubkey");
+ K_i2d_PublicKey = (int (*)(EVP_PKEY *, unsigned char **)) d->cryptoLib->resolve("i2d_PublicKey");
+ K_X509_check_private_key = (int (*)(X509 *, EVP_PKEY *)) d->cryptoLib->resolve("X509_check_private_key");
+ K_BN_bn2hex = (char *(*)(const BIGNUM *)) d->cryptoLib->resolve("BN_bn2hex");
+ K_X509_digest = (int (*)(const X509 *, const EVP_MD *, unsigned char *, unsigned int *)) d->cryptoLib->resolve("X509_digest");
+ K_EVP_md5 = (EVP_MD * (*)()) d->cryptoLib->resolve("EVP_md5");
+ K_ASN1_INTEGER_free = (void (*)(ASN1_INTEGER *)) d->cryptoLib->resolve("ASN1_INTEGER_free");
+ K_OBJ_obj2nid = (int (*)(ASN1_OBJECT *)) d->cryptoLib->resolve("OBJ_obj2nid");
+ K_OBJ_nid2ln = (const char *(*)(int)) d->cryptoLib->resolve("OBJ_nid2ln");
+ K_X509_get_ext_count = (int (*)(X509 *)) d->cryptoLib->resolve("X509_get_ext_count");
+ K_X509_get_ext_by_NID = (int (*)(X509 *, int, int)) d->cryptoLib->resolve("X509_get_ext_by_NID");
+ K_X509_get_ext_by_OBJ = (int (*)(X509 *, ASN1_OBJECT *, int)) d->cryptoLib->resolve("X509_get_ext_by_OBJ");
+ K_X509_get_ext = (X509_EXTENSION * (*)(X509 *, int)) d->cryptoLib->resolve("X509_get_ext");
+ K_X509_delete_ext = (X509_EXTENSION * (*)(X509 *, int)) d->cryptoLib->resolve("X509_delete_ext");
+ K_X509_add_ext = (int (*)(X509 *, X509_EXTENSION *, int)) d->cryptoLib->resolve("X509_add_ext");
+ K_X509_get_ext_d2i = (void *(*)(X509 *, int, int *, int *)) d->cryptoLib->resolve("X509_get_ext_d2i");
+ K_i2s_ASN1_OCTET_STRING = (char *(*)(X509V3_EXT_METHOD *, ASN1_OCTET_STRING *)) d->cryptoLib->resolve("i2s_ASN1_OCTET_STRING");
+ K_ASN1_BIT_STRING_get_bit = (int (*)(ASN1_BIT_STRING *, int)) d->cryptoLib->resolve("ASN1_BIT_STRING_get_bit");
+ K_PKCS7_new = (PKCS7 * (*)()) d->cryptoLib->resolve("PKCS7_new");
+ K_PKCS7_free = (void (*)(PKCS7 *)) d->cryptoLib->resolve("PKCS7_free");
+ K_PKCS7_content_free = (void (*)(PKCS7 *)) d->cryptoLib->resolve("PKCS7_content_free");
+ K_i2d_PKCS7 = (int (*)(PKCS7 *, unsigned char **)) d->cryptoLib->resolve("i2d_PKCS7");
+ K_i2d_PKCS7_fp = (int (*)(FILE *, PKCS7 *)) d->cryptoLib->resolve("i2d_PKCS7_fp");
+ K_i2d_PKCS7_bio = (int (*)(BIO * bp, PKCS7 * p7)) d->cryptoLib->resolve("i2d_PKCS7_bio");
+ K_d2i_PKCS7 = (PKCS7 * (*)(PKCS7 **, unsigned char **, long)) d->cryptoLib->resolve("d2i_PKCS7");
+ K_d2i_PKCS7_fp = (PKCS7 * (*)(FILE *, PKCS7 **)) d->cryptoLib->resolve("d2i_PKCS7_fp");
+ K_d2i_PKCS7_bio = (PKCS7 * (*)(BIO * bp, PKCS7 **p7)) d->cryptoLib->resolve("d2i_PKCS7_bio");
+ K_PKCS7_dup = (PKCS7 * (*)(PKCS7 *)) d->cryptoLib->resolve("PKCS7_dup");
+ K_PKCS7_sign = (PKCS7 * (*)(X509 *, EVP_PKEY *, STACK_OF(X509) *, BIO *, int)) d->cryptoLib->resolve("PKCS7_sign");
+ K_PKCS7_verify = (int (*)(PKCS7 *, STACK_OF(X509) *, X509_STORE *, BIO *, BIO *, int)) d->cryptoLib->resolve("PKCS7_verify");
+ K_PKCS7_get0_signers = (STACK_OF(X509) * (*)(PKCS7 *, STACK_OF(X509) *, int)) d->cryptoLib->resolve("PKCS7_get0_signers");
+ K_PKCS7_encrypt = (PKCS7 * (*)(STACK_OF(X509) *, BIO *, EVP_CIPHER *, int)) d->cryptoLib->resolve("PKCS7_encrypt");
+ K_PKCS7_decrypt = (int (*)(PKCS7 *, EVP_PKEY *, X509 *, BIO *, int)) d->cryptoLib->resolve("PKCS7_decrypt");
+ K_PEM_X509_INFO_read = (STACK_OF(X509_INFO) * (*)(FILE *, STACK_OF(X509_INFO) *, pem_password_cb *, void *)) d->cryptoLib->resolve("PEM_X509_INFO_read");
+ K_ASN1_d2i_fp = (char *(*)(char *(*)(), char *(*)(), FILE *, unsigned char **)) d->cryptoLib->resolve("ASN1_d2i_fp");
+ K_X509_new = (X509 * (*)()) d->cryptoLib->resolve("X509_new");
+ K_X509_PURPOSE_get_count = (int (*)()) d->cryptoLib->resolve("X509_PURPOSE_get_count");
+ K_X509_PURPOSE_get_id = (int (*)(X509_PURPOSE *)) d->cryptoLib->resolve("X509_PURPOSE_get_id");
+ K_X509_check_purpose = (int (*)(X509 *, int, int)) d->cryptoLib->resolve("X509_check_purpose");
+ K_X509_PURPOSE_get0 = (X509_PURPOSE * (*)(int)) d->cryptoLib->resolve("X509_PURPOSE_get0");
+ K_EVP_PKEY_assign = (int (*)(EVP_PKEY *, int, char *)) d->cryptoLib->resolve("EVP_PKEY_assign");
+ K_X509_REQ_set_pubkey = (int (*)(X509_REQ *, EVP_PKEY *)) d->cryptoLib->resolve("X509_REQ_set_pubkey");
+ K_RSA_generate_key = (RSA * (*)(int, unsigned long, void (*)(int, int, void *), void *)) d->cryptoLib->resolve("RSA_generate_key");
+ K_i2d_X509_REQ_fp = (int (*)(FILE *, X509_REQ *)) d->cryptoLib->resolve("i2d_X509_REQ_fp");
+ K_ERR_clear_error = (void (*)()) d->cryptoLib->resolve("ERR_clear_error");
+ K_ERR_get_error = (unsigned long(*)()) d->cryptoLib->resolve("ERR_get_error");
+ K_ERR_print_errors_fp = (void (*)(FILE *)) d->cryptoLib->resolve("ERR_print_errors_fp");
+ K_X509_get1_email = (STACK * (*)(X509 * x)) d->cryptoLib->resolve("X509_get1_email");
+ K_X509_email_free = (void (*)(STACK * sk)) d->cryptoLib->resolve("X509_email_free");
+ K_EVP_des_ede3_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolve("EVP_des_ede3_cbc");
+ K_EVP_des_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolve("EVP_des_cbc");
+ K_EVP_rc2_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolve("EVP_rc2_cbc");
+ K_EVP_rc2_64_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolve("EVP_rc2_64_cbc");
+ K_EVP_rc2_40_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolve("EVP_rc2_40_cbc");
+ K_i2d_PrivateKey_fp = (int (*)(FILE *, EVP_PKEY *)) d->cryptoLib->resolve("i2d_PrivateKey_fp");
+ K_i2d_PKCS8PrivateKey_fp = (int (*)(FILE *, EVP_PKEY *, const EVP_CIPHER *, char *, int, pem_password_cb *, void *)) d->cryptoLib->resolve("i2d_PKCS8PrivateKey_fp");
+ K_RSA_free = (void (*)(RSA *)) d->cryptoLib->resolve("RSA_free");
+ K_EVP_bf_cbc = (EVP_CIPHER * (*)()) d->cryptoLib->resolve("EVP_bf_cbc");
+ K_X509_REQ_sign = (int (*)(X509_REQ *, EVP_PKEY *, const EVP_MD *)) d->cryptoLib->resolve("X509_REQ_sign");
+ K_X509_NAME_add_entry_by_txt = (int (*)(X509_NAME *, char *, int, unsigned char *, int, int, int)) d->cryptoLib->resolve("X509_NAME_add_entry_by_txt");
+ K_X509_NAME_new = (X509_NAME * (*)()) d->cryptoLib->resolve("X509_NAME_new");
+ K_X509_REQ_set_subject_name = (int (*)(X509_REQ *, X509_NAME *)) d->cryptoLib->resolve("X509_REQ_set_subject_name");
+ K_ASN1_STRING_data = (unsigned char *(*)(ASN1_STRING *)) d->cryptoLib->resolve("ASN1_STRING_data");
+ K_ASN1_STRING_length = (int (*)(ASN1_STRING *)) d->cryptoLib->resolve("ASN1_STRING_length");
#endif
}
#ifdef Q_OS_WIN
- d->sslLib = new KLibrary("ssleay32.dll");
+ d->sslLib = new QLibrary("ssleay32.dll");
if (!d->sslLib->load()) {
delete d->sslLib;
d->sslLib = 0;
@@ -543,7 +543,7 @@
{
QString libname = findMostRecentLib("/usr/lib", "ssl");
if (!libname.isNull()) {
- d->sslLib = new KLibrary(libname);
+ d->sslLib = new QLibrary(libname);
d->sslLib->setLoadHints(QLibrary::ExportExternalSymbolsHint);
if (!d->sslLib->load()) {
delete d->sslLib;
@@ -566,7 +566,7 @@
QString tmpStr(alib);
tmpStr.remove(QRegExp("\\(.*\\)"));
if (QFile(tmpStr).isReadable()) {
- d->sslLib = new KLibrary(alib);
+ d->sslLib = new QLibrary(alib);
d->sslLib->setLoadHints(QLibrary::ExportExternalSymbolsHint);
}
if (d->sslLib && d->sslLib->load()) {
@@ -585,88 +585,88 @@
if (d->sslLib) {
#if KSSL_HAVE_SSL
// stand back from your monitor and look at this. it's fun! :)
- K_SSL_connect = (int (*)(SSL *)) d->sslLib->resolveFunction("SSL_connect");
- K_SSL_accept = (int (*)(SSL *)) d->sslLib->resolveFunction("SSL_accept");
- K_SSL_read = (int (*)(SSL *, void *, int)) d->sslLib->resolveFunction("SSL_read");
+ K_SSL_connect = (int (*)(SSL *)) d->sslLib->resolve("SSL_connect");
+ K_SSL_accept = (int (*)(SSL *)) d->sslLib->resolve("SSL_accept");
+ K_SSL_read = (int (*)(SSL *, void *, int)) d->sslLib->resolve("SSL_read");
K_SSL_write = (int (*)(SSL *, const void *, int))
- d->sslLib->resolveFunction("SSL_write");
- K_SSL_new = (SSL * (*)(SSL_CTX *)) d->sslLib->resolveFunction("SSL_new");
- K_SSL_free = (void (*)(SSL *)) d->sslLib->resolveFunction("SSL_free");
- K_SSL_shutdown = (int (*)(SSL *)) d->sslLib->resolveFunction("SSL_shutdown");
- K_SSL_CTX_new = (SSL_CTX * (*)(SSL_METHOD *)) d->sslLib->resolveFunction("SSL_CTX_new");
- K_SSL_CTX_free = (void (*)(SSL_CTX *)) d->sslLib->resolveFunction("SSL_CTX_free");
- K_SSL_set_fd = (int (*)(SSL *, int)) d->sslLib->resolveFunction("SSL_set_fd");
- K_SSL_pending = (int (*)(SSL *)) d->sslLib->resolveFunction("SSL_pending");
+ d->sslLib->resolve("SSL_write");
+ K_SSL_new = (SSL * (*)(SSL_CTX *)) d->sslLib->resolve("SSL_new");
+ K_SSL_free = (void (*)(SSL *)) d->sslLib->resolve("SSL_free");
+ K_SSL_shutdown = (int (*)(SSL *)) d->sslLib->resolve("SSL_shutdown");
+ K_SSL_CTX_new = (SSL_CTX * (*)(SSL_METHOD *)) d->sslLib->resolve("SSL_CTX_new");
+ K_SSL_CTX_free = (void (*)(SSL_CTX *)) d->sslLib->resolve("SSL_CTX_free");
+ K_SSL_set_fd = (int (*)(SSL *, int)) d->sslLib->resolve("SSL_set_fd");
+ K_SSL_pending = (int (*)(SSL *)) d->sslLib->resolve("SSL_pending");
K_SSL_CTX_set_cipher_list = (int (*)(SSL_CTX *, const char *))
- d->sslLib->resolveFunction("SSL_CTX_set_cipher_list");
- K_SSL_CTX_set_verify = (void (*)(SSL_CTX *, int, int (*)(int, X509_STORE_CTX *))) d->sslLib->resolveFunction("SSL_CTX_set_verify");
+ d->sslLib->resolve("SSL_CTX_set_cipher_list");
+ K_SSL_CTX_set_verify = (void (*)(SSL_CTX *, int, int (*)(int, X509_STORE_CTX *))) d->sslLib->resolve("SSL_CTX_set_verify");
K_SSL_use_certificate = (int (*)(SSL *, X509 *))
- d->sslLib->resolveFunction("SSL_CTX_use_certificate");
+ d->sslLib->resolve("SSL_CTX_use_certificate");
K_SSL_get_current_cipher = (SSL_CIPHER * (*)(SSL *))
- d->sslLib->resolveFunction("SSL_get_current_cipher");
+ d->sslLib->resolve("SSL_get_current_cipher");
K_SSL_ctrl = (long(*)(SSL *, int, long, char *))
- d->sslLib->resolveFunction("SSL_ctrl");
- K_TLSv1_client_method = (SSL_METHOD * (*)()) d->sslLib->resolveFunction("TLSv1_client_method");
- K_SSLv23_client_method = (SSL_METHOD * (*)()) d->sslLib->resolveFunction("SSLv23_client_method");
- K_SSL_get_peer_certificate = (X509 * (*)(SSL *)) d->sslLib->resolveFunction("SSL_get_peer_certificate");
- K_SSL_CIPHER_get_bits = (int (*)(SSL_CIPHER *, int *)) d->sslLib->resolveFunction("SSL_CIPHER_get_bits");
- K_SSL_CIPHER_get_version = (char *(*)(SSL_CIPHER *)) d->sslLib->resolveFunction("SSL_CIPHER_get_version");
- K_SSL_CIPHER_get_name = (const char *(*)(SSL_CIPHER *)) d->sslLib->resolveFunction("SSL_CIPHER_get_name");
- K_SSL_CIPHER_description = (char *(*)(SSL_CIPHER *, char *, int)) d->sslLib->resolveFunction("SSL_CIPHER_description");
- K_SSL_CTX_use_PrivateKey = (int (*)(SSL_CTX *, EVP_PKEY *)) d->sslLib->resolveFunction("SSL_CTX_use_PrivateKey");
- K_SSL_CTX_use_certificate = (int (*)(SSL_CTX *, X509 *)) d->sslLib->resolveFunction("SSL_CTX_use_certificate");
- K_SSL_get_error = (int (*)(SSL *, int)) d->sslLib->resolveFunction("SSL_get_error");
- K_SSL_get_peer_cert_chain = (STACK_OF(X509) * (*)(SSL *)) d->sslLib->resolveFunction("SSL_get_peer_cert_chain");
- K_SSL_load_client_CA_file = (STACK_OF(X509_NAME) * (*)(const char *)) d->sslLib->resolveFunction("SSL_load_client_CA_file");
- K_SSL_peek = (int (*)(SSL *, void *, int)) d->sslLib->resolveFunction("SSL_peek");
- K_SSL_get1_session = (SSL_SESSION * (*)(SSL *)) d->sslLib->resolveFunction("SSL_get1_session");
- K_SSL_SESSION_free = (void (*)(SSL_SESSION *)) d->sslLib->resolveFunction("SSL_SESSION_free");
- K_SSL_set_session = (int (*)(SSL *, SSL_SESSION *)) d->sslLib->resolveFunction("SSL_set_session");
- K_d2i_SSL_SESSION = (SSL_SESSION * (*)(SSL_SESSION **, unsigned char **, long)) d->sslLib->resolveFunction("d2i_SSL_SESSION");
- K_i2d_SSL_SESSION = (int (*)(SSL_SESSION *, unsigned char **)) d->sslLib->resolveFunction("i2d_SSL_SESSION");
- K_SSL_get_ciphers = (STACK_OF(SSL_CIPHER) * (*)(const SSL *)) d->sslLib->resolveFunction("SSL_get_ciphers");
+ d->sslLib->resolve("SSL_ctrl");
+ K_TLSv1_client_method = (SSL_METHOD * (*)()) d->sslLib->resolve("TLSv1_client_method");
+ K_SSLv23_client_method = (SSL_METHOD * (*)()) d->sslLib->resolve("SSLv23_client_method");
+ K_SSL_get_peer_certificate = (X509 * (*)(SSL *)) d->sslLib->resolve("SSL_get_peer_certificate");
+ K_SSL_CIPHER_get_bits = (int (*)(SSL_CIPHER *, int *)) d->sslLib->resolve("SSL_CIPHER_get_bits");
+ K_SSL_CIPHER_get_version = (char *(*)(SSL_CIPHER *)) d->sslLib->resolve("SSL_CIPHER_get_version");
+ K_SSL_CIPHER_get_name = (const char *(*)(SSL_CIPHER *)) d->sslLib->resolve("SSL_CIPHER_get_name");
+ K_SSL_CIPHER_description = (char *(*)(SSL_CIPHER *, char *, int)) d->sslLib->resolve("SSL_CIPHER_description");
+ K_SSL_CTX_use_PrivateKey = (int (*)(SSL_CTX *, EVP_PKEY *)) d->sslLib->resolve("SSL_CTX_use_PrivateKey");
+ K_SSL_CTX_use_certificate = (int (*)(SSL_CTX *, X509 *)) d->sslLib->resolve("SSL_CTX_use_certificate");
+ K_SSL_get_error = (int (*)(SSL *, int)) d->sslLib->resolve("SSL_get_error");
+ K_SSL_get_peer_cert_chain = (STACK_OF(X509) * (*)(SSL *)) d->sslLib->resolve("SSL_get_peer_cert_chain");
+ K_SSL_load_client_CA_file = (STACK_OF(X509_NAME) * (*)(const char *)) d->sslLib->resolve("SSL_load_client_CA_file");
+ K_SSL_peek = (int (*)(SSL *, void *, int)) d->sslLib->resolve("SSL_peek");
+ K_SSL_get1_session = (SSL_SESSION * (*)(SSL *)) d->sslLib->resolve("SSL_get1_session");
+ K_SSL_SESSION_free = (void (*)(SSL_SESSION *)) d->sslLib->resolve("SSL_SESSION_free");
+ K_SSL_set_session = (int (*)(SSL *, SSL_SESSION *)) d->sslLib->resolve("SSL_set_session");
+ K_d2i_SSL_SESSION = (SSL_SESSION * (*)(SSL_SESSION **, unsigned char **, long)) d->sslLib->resolve("d2i_SSL_SESSION");
+ K_i2d_SSL_SESSION = (int (*)(SSL_SESSION *, unsigned char **)) d->sslLib->resolve("i2d_SSL_SESSION");
+ K_SSL_get_ciphers = (STACK_OF(SSL_CIPHER) * (*)(const SSL *)) d->sslLib->resolve("SSL_get_ciphers");
#endif
// Initialize the library (once only!)
- KLibrary::void_function_ptr x;
- x = d->sslLib->resolveFunction("SSL_library_init");
+ QFunctionPointer x;
+ x = d->sslLib->resolve("SSL_library_init");
if (d->cryptoLib) {
if (x) {
((int (*)())x)();
}
- x = d->cryptoLib->resolveFunction("OpenSSL_add_all_algorithms");
+ x = d->cryptoLib->resolve("OpenSSL_add_all_algorithms");
if (!x) {
- x = d->cryptoLib->resolveFunction("OPENSSL_add_all_algorithms");
+ x = d->cryptoLib->resolve("OPENSSL_add_all_algorithms");
}
if (x) {
((void (*)())x)();
} else {
- x = d->cryptoLib->resolveFunction("OpenSSL_add_all_algorithms_conf");
+ x = d->cryptoLib->resolve("OpenSSL_add_all_algorithms_conf");
if (!x) {
- x = d->cryptoLib->resolveFunction("OPENSSL_add_all_algorithms_conf");
+ x = d->cryptoLib->resolve("OPENSSL_add_all_algorithms_conf");
}
if (x) {
((void (*)())x)();
} else {
- x = d->cryptoLib->resolveFunction("OpenSSL_add_all_algorithms_noconf");
+ x = d->cryptoLib->resolve("OpenSSL_add_all_algorithms_noconf");
if (!x) {
- x = d->cryptoLib->resolveFunction("OPENSSL_add_all_algorithms_noconf");
+ x = d->cryptoLib->resolve("OPENSSL_add_all_algorithms_noconf");
}
if (x) {
((void (*)())x)();
}
}
}
- x = d->cryptoLib->resolveFunction("OpenSSL_add_all_ciphers");
+ x = d->cryptoLib->resolve("OpenSSL_add_all_ciphers");
if (!x) {
- x = d->cryptoLib->resolveFunction("OPENSSL_add_all_ciphers");
+ x = d->cryptoLib->resolve("OPENSSL_add_all_ciphers");
}
if (x) {
((void (*)())x)();
}
- x = d->cryptoLib->resolveFunction("OpenSSL_add_all_digests");
+ x = d->cryptoLib->resolve("OpenSSL_add_all_digests");
if (!x) {
- x = d->cryptoLib->resolveFunction("OPENSSL_add_all_digests");
+ x = d->cryptoLib->resolve("OPENSSL_add_all_digests");
}
if (x) {
((void (*)())x)();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/java/kjavaappletviewer.desktop new/khtml-4.98.0/src/java/kjavaappletviewer.desktop
--- old/khtml-4.97.0/src/java/kjavaappletviewer.desktop 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/java/kjavaappletviewer.desktop 2014-03-29 08:19:09.000000000 +0100
@@ -12,7 +12,7 @@
Name[br]=Lenner enframmet eus arloadigoù Java
Name[bs]=Ugrađeni prikazivač java Applet-a
Name[ca]=Visor de la miniaplicació Java incrustada
-Name[ca@valencia]=Visor de la miniaplicació Java encastada
+Name[ca@valencia]=Visor de la miniaplicació Java incrustada
Name[cs]=Zabudovaný prohlížeč Java appletů
Name[csb]=Wbùdowóny przezérnik apletów Java
Name[cy]=Gwelydd Rhaglennig Java Mewnadeiladedig
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/khtml.desktop new/khtml-4.98.0/src/khtml.desktop
--- old/khtml-4.97.0/src/khtml.desktop 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/khtml.desktop 2014-03-29 08:19:09.000000000 +0100
@@ -13,7 +13,7 @@
Comment[br]=Parzh HTML gweler enframmus
Comment[bs]=Ugnezdiva komponenta za prikaz HTML‑a
Comment[ca]=Component incrustable per a visualitzar HTML
-Comment[ca@valencia]=Component encastable per a visualitzar HTML
+Comment[ca@valencia]=Component incrustable per a visualitzar HTML
Comment[cs]=Komponenta pro zobrazování HTML
Comment[csb]=Kòmpònent do przezeraniô lopków HTML
Comment[cy]=Cydran gweld HTML mewnadeiladadwy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/khtml_ext.cpp new/khtml-4.98.0/src/khtml_ext.cpp
--- old/khtml-4.97.0/src/khtml_ext.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/khtml_ext.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -49,6 +49,7 @@
#include <assert.h>
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#include <QDebug>
#include <klocalizedstring.h>
#include <kjobuidelegate.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/khtml_part.cpp new/khtml-4.98.0/src/khtml_part.cpp
--- old/khtml-4.97.0/src/khtml_part.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/khtml_part.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -139,6 +139,7 @@
#include "rendering/render_form.h"
#include <kwindowsystem.h>
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#ifdef KJS_DEBUGGER
#include "ecma/debugger/debugwindow.h"
@@ -679,8 +680,8 @@
}
DOM::HashChangeEventImpl *hashChangeEvImpl = 0;
- const QString &oldRef = q->url().fragment();
- const QString &newRef = url.fragment();
+ const QString &oldRef = q->url().fragment(QUrl::FullyEncoded);
+ const QString &newRef = url.fragment(QUrl::FullyEncoded);
if ((oldRef != newRef) || (oldRef.isNull() && newRef.isEmpty())) {
hashChangeEvImpl = new DOM::HashChangeEventImpl();
hashChangeEvImpl->initHashChangeEvent("hashchange",
@@ -692,7 +693,7 @@
}
if (!q->gotoAnchor(url.fragment(QUrl::FullyEncoded))) {
- q->gotoAnchor(url.fragment());
+ q->gotoAnchor(url.fragment(QUrl::FullyDecoded));
}
q->setUrl(url);
@@ -703,9 +704,8 @@
}
}
-bool KHTMLPart::openUrl(const QUrl &_url)
+bool KHTMLPart::openUrl(const QUrl &url)
{
- QUrl url(_url);
// qDebug() << this << "opening" << url;
#ifndef KHTML_NO_WALLET
@@ -815,7 +815,7 @@
emit started(0);
if (!gotoAnchor(url.fragment(QUrl::FullyEncoded))) {
- gotoAnchor(url.fragment());
+ gotoAnchor(url.fragment(QUrl::FullyDecoded));
}
d->m_bComplete = true;
@@ -950,8 +950,8 @@
// If this was an explicit reload and the user style sheet should be used,
// do a stat to see whether the stylesheet was changed in the meanwhile.
if (args.reload() && !settings()->userStyleSheet().isEmpty()) {
- QUrl url(settings()->userStyleSheet());
- KIO::StatJob *job = KIO::stat(url, KIO::HideProgressInfo);
+ QUrl userStyleSheetUrl(settings()->userStyleSheet());
+ KIO::StatJob *job = KIO::stat(userStyleSheetUrl, KIO::HideProgressInfo);
connect(job, SIGNAL(result(KJob*)),
this, SLOT(slotUserSheetStatDone(KJob*)));
}
@@ -1332,7 +1332,7 @@
{
QStringList args;
args << "khtml_java_js";
- KToolInvocation::kdeinitExec("kcmshell4", args);
+ KToolInvocation::kdeinitExec("kcmshell5", args);
}
QVariant KHTMLPart::executeScript(const QString &filename, int baseLine, const DOM::Node &n, const QString &script)
@@ -7281,8 +7281,8 @@
if (!d->m_doc || !d->m_doc->parsing()) {
disconnect(d->m_view, SIGNAL(finishedLayout()), this, SLOT(restoreScrollPosition()));
}
- if (!gotoAnchor(QUrl(url()).fragment())) {
- gotoAnchor(url().fragment());
+ if (!gotoAnchor(url().fragment(QUrl::FullyEncoded))) {
+ gotoAnchor(url().fragment(QUrl::FullyDecoded));
}
return;
}
@@ -7291,7 +7291,7 @@
// offsets. If the document has been fully loaded, force the new coordinates,
// even if the canvas is too short (can happen when user resizes the window
// during loading).
- if (d->m_view->contentsHeight() - d->m_view->visibleHeight() >= args.yOffset()
+ if ((d->m_view->contentsHeight() - d->m_view->visibleHeight()) >= args.yOffset()
|| d->m_bComplete) {
d->m_view->setContentsPos(args.xOffset(), args.yOffset());
disconnect(d->m_view, SIGNAL(finishedLayout()), this, SLOT(restoreScrollPosition()));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/khtml_part.h new/khtml-4.98.0/src/khtml_part.h
--- old/khtml-4.97.0/src/khtml_part.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/khtml_part.h 2014-03-29 08:19:09.000000000 +0100
@@ -1190,8 +1190,8 @@
/**
* If form notification is on, this will be emitted either for a form
* submit or before the form submit according to the setting.
- * ### KDE4 remove me
*/
+ // TODO: remove/deprecate?
void formSubmitNotification(const char *action, const QString &url,
const QByteArray &formData, const QString &target,
const QString &contentType, const QString &boundary);
@@ -1376,9 +1376,9 @@
*/
void setCaretVisible(bool show);
- // ### KDE4 FIXME:
- // Remove this and make the one below protected+virtual slot.
- // Warning: this is effectively "internal". Be careful.
+ // ### FIXME:
+ // Remove this and make the one below protected+virtual slot.
+ // Warning: this is effectively "internal". Be careful.
void submitFormProxy(const char *action, const QString &url,
const QByteArray &formData,
const QString &target,
@@ -1720,13 +1720,13 @@
/**
* @internal
*/
- // ### KDE4 FIXME:
- // It is desirable to be able to filter form submissions as well.
- // For instance, forms can have a target and an inheriting class
- // might want to filter based on the target. Make this protected
- // and virtual, or provide a better solution.
- // See the web_module for the sidebar for an example where this is
- // necessary.
+ // ### FIXME:
+ // It is desirable to be able to filter form submissions as well.
+ // For instance, forms can have a target and an inheriting class
+ // might want to filter based on the target. Make this protected
+ // and virtual, or provide a better solution.
+ // See the web_module for the sidebar for an example where this is
+ // necessary.
void submitForm(const char *action, const QString &url, const QByteArray &formData,
const QString &target, const QString &contentType = QString(),
const QString &boundary = QString());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/khtmlimage.desktop new/khtml-4.98.0/src/khtmlimage.desktop
--- old/khtml-4.97.0/src/khtmlimage.desktop 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/khtmlimage.desktop 2014-03-29 08:19:09.000000000 +0100
@@ -13,7 +13,7 @@
Comment[br]=Parzh skeudenn gweler enframmus
Comment[bs]=Ugnezdiva komponenta za prikaz slika
Comment[ca]=Component incrustable per a visualitzar imatges
-Comment[ca@valencia]=Component encastable per a visualitzar imatges
+Comment[ca@valencia]=Component incrustable per a visualitzar imatges
Comment[cs]=Komponenta pro zobrazování obrázků
Comment[csb]=Kòmpònent do przezeraniô òbrôzów
Comment[cy]=Cydran Gweld Delwedd Mewnadeiladadwy
@@ -109,7 +109,7 @@
Name[br]=Gweler Skeudennoù Enklozet
Name[bs]=Ugradivi prikazivač slika
Name[ca]=Visor incrustable d'imatges
-Name[ca@valencia]=Visor encastable d'imatges
+Name[ca@valencia]=Visor incrustable d'imatges
Name[cs]=Zabudovaný prohlížeč obrázků
Name[csb]=Wbùdowóny przezérnik òbrôzów
Name[cy]=Gwelydd Delweddau Mewnadeiladadwy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/khtmlpart_p.h new/khtml-4.98.0/src/khtmlpart_p.h
--- old/khtml-4.97.0/src/khtmlpart_p.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/khtmlpart_p.h 2014-03-29 08:19:09.000000000 +0100
@@ -261,7 +261,6 @@
bool m_restoreScrollPosition;
bool m_statusMessagesEnabled;
bool m_bWalletOpened;
- bool m_urlSelectedOpenedURL; // KDE4: remove
bool m_bDNSPrefetchIsDefault;
int m_DNSPrefetchTimer;
int m_DNSTTLTimer;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/khtmlview.cpp new/khtml-4.98.0/src/khtmlview.cpp
--- old/khtml-4.97.0/src/khtmlview.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/khtmlview.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -70,6 +70,7 @@
#include <kstringhandler.h>
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#include <QBitmap>
#include <QDialog>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/kmultipart/kmultipart.desktop new/khtml-4.98.0/src/kmultipart/kmultipart.desktop
--- old/khtml-4.97.0/src/kmultipart/kmultipart.desktop 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/kmultipart/kmultipart.desktop 2014-03-29 08:19:09.000000000 +0100
@@ -13,7 +13,7 @@
Name[bn_IN]=মাল্টিপার্ট/মিক্সড-র জন্য এমবেড করার যোগ্য সামগ্রী
Name[bs]=Ugradiva komponenta za višedijelni/mješoviti MIME
Name[ca]=Component incrustable per a multipart/mescla
-Name[ca@valencia]=Component encastable per a multipart/mescla
+Name[ca@valencia]=Component incrustable per a multipart/mescla
Name[cs]=Pohltitelné komponenty pro 'multipart/mixed'
Name[csb]=Składowi kòmpònent dlô multipart/mixed
Name[da]=Indlejrbar komponent for multipart/mixed
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/misc/AtomicString.cpp new/khtml-4.98.0/src/misc/AtomicString.cpp
--- old/khtml-4.97.0/src/misc/AtomicString.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/misc/AtomicString.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -172,7 +172,7 @@
}
init();
- UCharBuffer buf = { s, length };
+ UCharBuffer buf = { s, static_cast<uint>(length) };
std::pair<HashSet<DOMStringImpl *>::iterator, bool> addResult = stringTable->add<UCharBuffer, UCharBufferTranslator>(buf);
if (!addResult.second) {
return *addResult.first;
@@ -196,7 +196,7 @@
}
init();
- UCharBuffer buf = {s, length};
+ UCharBuffer buf = {s, static_cast<uint>(length)};
std::pair<HashSet<DOMStringImpl *>::iterator, bool> addResult = stringTable->add<UCharBuffer, UCharBufferTranslator>(buf);
if (!addResult.second) {
return *addResult.first;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/rendering/break_lines.cpp new/khtml-4.98.0/src/rendering/break_lines.cpp
--- old/khtml-4.97.0/src/rendering/break_lines.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/rendering/break_lines.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -1,5 +1,5 @@
#include <break_lines.h>
-#include <klibrary.h>
+#include <QtCore/QLibrary>
#include <QtCore/QTextCodec>
#include <stdio.h>
#include <stdlib.h>
@@ -46,7 +46,7 @@
int *isbreakable;
int allocated;
int numwbrpos, numisbreakable;
- KLibrary *library;
+ QLibrary *library;
};
static ThaiCache *cache = 0;
@@ -66,13 +66,13 @@
#ifndef HAVE_LIBTHAI
- KLibrary *lib = new KLibrary(QLatin1String("libthai"));
+ QLibrary *lib = new QLibrary(QLatin1String("libthai"));
/* load libthai dynamically */
if ((!th_brk) && thaiCodec) {
printf("Try to load libthai dynamically...\n");
if (lib->load()) {
- th_brk = (th_brk_def) lib->resolveFunction("th_brk");
+ th_brk = (th_brk_def) lib->resolve("th_brk");
}
if (!th_brk) {
// indication that loading failed and we shouldn't try to load again
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/rendering/render_flow.cpp new/khtml-4.98.0/src/rendering/render_flow.cpp
--- old/khtml-4.97.0/src/rendering/render_flow.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/rendering/render_flow.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -58,7 +58,7 @@
return result;
}
-RenderFlow *RenderFlow::continuationBefore(RenderObject *beforeChild)
+RenderFlow *RenderFlow::continuationBefore(const RenderObject *beforeChild)
{
if (beforeChild && beforeChild->parent() == this) {
return this;
@@ -89,11 +89,14 @@
void RenderFlow::addChildWithContinuation(RenderObject *newChild, RenderObject *beforeChild)
{
RenderFlow *flow = continuationBefore(beforeChild);
- while (beforeChild && beforeChild->parent() != flow && !beforeChild->parent()->isAnonymousBlock()) {
+
+ RenderObject *bc = beforeChild;
+ while (bc && bc->parent() != flow && !bc->parent()->isAnonymousBlock()) {
// skip implicit containers around beforeChild
- beforeChild = beforeChild->parent();
+ bc = bc->parent();
}
- RenderFlow *beforeChildParent = beforeChild ? static_cast<RenderFlow *>(beforeChild->parent()) :
+
+ RenderFlow *beforeChildParent = bc ? static_cast<RenderFlow *>(bc->parent()) :
(flow->continuation() ? flow->continuation() : flow);
if (newChild->isFloatingOrPositioned()) {
@@ -350,12 +353,16 @@
{
if (isRenderInline() && isInlineFlow()) {
QList<QRectF> list;
- for (InlineFlowBox *child = firstLineBox(); child; child = child->nextFlowBox()) {
- QRectF rect(parent()->offsetLeft() + child->xPos(),
- parent()->offsetTop() + child->yPos(),
- child->width(), child->height());
- list.append(clientRectToViewport(rect));
+ InlineFlowBox *child = firstLineBox();
+ if (child) {
+ int x = 0, y = 0;
+ absolutePosition(x,y);
+ do {
+ QRectF rect(x + child->xPos(), y + child->yPos(), child->width(), child->height());
+ list.append(clientRectToViewport(rect));
+ child = child->nextFlowBox();
+ } while (child);
}
// In case our flow is splitted by blocks
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/rendering/render_flow.h new/khtml-4.98.0/src/rendering/render_flow.h
--- old/khtml-4.97.0/src/rendering/render_flow.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/rendering/render_flow.h 2014-03-29 08:19:09.000000000 +0100
@@ -60,7 +60,7 @@
{
m_continuation = c;
}
- RenderFlow *continuationBefore(RenderObject *beforeChild);
+ RenderFlow *continuationBefore(const RenderObject *beforeChild);
void addChildWithContinuation(RenderObject *newChild, RenderObject *beforeChild);
virtual void addChildToFlow(RenderObject *newChild, RenderObject *beforeChild) = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/rendering/render_image.cpp new/khtml-4.98.0/src/rendering/render_image.cpp
--- old/khtml-4.97.0/src/rendering/render_image.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/rendering/render_image.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -119,7 +119,7 @@
iw = br.width();
}
//#ifdef __GNUC__
-// #warning "KDE4: hack for testregression, remove (use above instead) when main branch"
+// #warning "FIXME: hack for testregression, remove (use above instead)"
//#endif
// iw = br.width() + qMax(-fm.minLeftBearing(), 0) + qMax(-fm.minRightBearing(), 0);
@@ -290,7 +290,7 @@
//BEGIN HACK
#if 0
#ifdef __GNUC__
-#warning "KDE4: hack for testregression, remove when main branch"
+#warning "FIXME: hack for testregression, remove"
#endif
ax += qMax(-fm.minLeftBearing(), 0);
cWidth -= qMax(-fm.minLeftBearing(), 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/rendering/render_list.cpp new/khtml-4.98.0/src/rendering/render_list.cpp
--- old/khtml-4.97.0/src/rendering/render_list.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/rendering/render_list.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -376,7 +376,7 @@
if (listPositionInside()) {
//BEGIN HACK
#ifdef __GNUC__
-#warning "KDE4: hack for testregression, remove when main branch"
+#warning "FIXME: hack for testregression, remove"
#endif
_tx += qMax(-fm.minLeftBearing(), 0);
//END HACK
@@ -399,7 +399,7 @@
} else {
//BEGIN HACK
#ifdef __GNUC__
-#warning "KDE4: hack for testregression, remove when main branch"
+#warning "FIXME: hack for testregression, remove"
#endif
_tx += qMax(-fm.minLeftBearing(), 0);
//END HACK
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/xml/dom2_eventsimpl.cpp new/khtml-4.98.0/src/xml/dom2_eventsimpl.cpp
--- old/khtml-4.97.0/src/xml/dom2_eventsimpl.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/xml/dom2_eventsimpl.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -54,7 +54,7 @@
QList<RegisteredEventListener> listeners = *m_regdListeners.listeners;
QList<RegisteredEventListener>::iterator it;
for (it = listeners.begin(); it != listeners.end(); ++it) {
- //Check whether this got removed...KDE4: use Java-style iterators
+ //Check whether this got removed... TODO: use Java-style iterators
if (!m_regdListeners.stillContainsListener(*it)) {
continue;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/xml/dom2_eventsimpl.h new/khtml-4.98.0/src/xml/dom2_eventsimpl.h
--- old/khtml-4.97.0/src/xml/dom2_eventsimpl.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/xml/dom2_eventsimpl.h 2014-03-29 08:19:09.000000000 +0100
@@ -115,7 +115,7 @@
bool hasEventListener(EventName id);
void clear();
- //### KDE4: should disappear
+ // TODO: remove/deprecate?
bool stillContainsListener(const RegisteredEventListener &listener);
QList<RegisteredEventListener> *listeners;//The actual listener list - may be 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/xml/dom_docimpl.h new/khtml-4.98.0/src/xml/dom_docimpl.h
--- old/khtml-4.97.0/src/xml/dom_docimpl.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/xml/dom_docimpl.h 2014-03-29 08:19:09.000000000 +0100
@@ -145,8 +145,8 @@
/**
* @internal A cache of element name (or id) to pointer
- * ### KDE4, QHash: better to store values here
*/
+// TODO: QHash: better to store values here
class ElementMappingCache
{
public:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/xml/dom_nodeimpl.cpp new/khtml-4.98.0/src/xml/dom_nodeimpl.cpp
--- old/khtml-4.97.0/src/xml/dom_nodeimpl.cpp 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/xml/dom_nodeimpl.cpp 2014-03-29 08:19:09.000000000 +0100
@@ -126,7 +126,7 @@
return 0;
}
-NodeListImpl *NodeImpl::childNodes()
+WTF::PassRefPtr<DOM::NodeListImpl> NodeImpl::childNodes()
{
return new ChildNodeListImpl(this);
}
@@ -407,16 +407,14 @@
{
evt->setTarget(this);
- // Since event handling code could cause this object to be deleted, grab a reference to the view now
- KHTMLView *view = document()->view();
-
dispatchGenericEvent(evt, exceptioncode);
+ KHTMLPart *part = document()->part();
// If tempEvent is true, this means that the DOM implementation will not be storing a reference to the event, i.e.
// there is no way to retrieve it from javascript if a script does not already have a reference to it in a variable.
// So there is no need for the interpreter to keep the event in its cache
- if (tempEvent && view && view->part() && view->part()->jScript()) {
- view->part()->jScript()->finishedWithEvent(evt);
+ if (tempEvent && part && part->jScript()) {
+ part->jScript()->finishedWithEvent(evt);
}
}
@@ -424,9 +422,10 @@
{
// ### check that type specified
+ ref();
+
// work out what nodes to send event to
QList<EventTargetImpl *> nodeChain;
- NodeImpl *n;
if (evt->target()->eventTargetType() != DOM_NODE) {
// The target is the only thing that goes into the chain.
@@ -439,7 +438,7 @@
evt->setTarget(document());
}
} else if (inDocument()) {
- for (n = this; n; n = n->parentNode()) {
+ for (NodeImpl *n = this; n; n = n->parentNode()) {
n->ref();
nodeChain.prepend(n);
}
@@ -519,10 +518,6 @@
}
}
- // copy this over into a local variable, as the following deref() calls might cause this to be deleted.
- DocumentImpl *doc = m_document.get();
- doc->ref();
-
// deref all nodes in chain
it.toFront();
while (it.hasNext()) {
@@ -530,7 +525,8 @@
}
DocumentImpl::updateDocumentsRendering();
- doc->deref();
+
+ deref();
}
bool NodeImpl::dispatchHTMLEvent(int _id, bool canBubbleArg, bool cancelableArg)
@@ -552,24 +548,20 @@
void NodeImpl::dispatchWindowEvent(EventImpl *evt)
{
- DocumentImpl *doc = document();
- doc->ref();
+ evt->setTarget(document()->windowEventTarget());
+ evt->ref();
int exceptioncode = 0;
-
- evt->setTarget(doc->windowEventTarget());
- evt->ref();
dispatchGenericEvent(evt, exceptioncode);
if (evt->id() == EventImpl::LOAD_EVENT) {
// Trigger Load Event on the enclosing frame if there is one
- DOM::HTMLPartContainerElementImpl *elt = doc->ownerElement();
+ DOM::HTMLPartContainerElementImpl *elt = document()->ownerElement();
if (elt) {
elt->slotEmitLoadEvent();
}
}
- doc->deref();
evt->deref();
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/xml/dom_nodeimpl.h new/khtml-4.98.0/src/xml/dom_nodeimpl.h
--- old/khtml-4.97.0/src/xml/dom_nodeimpl.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/xml/dom_nodeimpl.h 2014-03-29 08:19:09.000000000 +0100
@@ -102,7 +102,7 @@
{
return m_next;
}
- virtual NodeListImpl *childNodes();
+ virtual WTF::PassRefPtr<NodeListImpl> childNodes();
virtual NodeImpl *firstChild() const;
virtual NodeImpl *lastChild() const;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/src/xml/dom_stringimpl.h new/khtml-4.98.0/src/xml/dom_stringimpl.h
--- old/khtml-4.97.0/src/xml/dom_stringimpl.h 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/src/xml/dom_stringimpl.h 2014-03-29 08:19:09.000000000 +0100
@@ -32,8 +32,8 @@
#include "misc/khtmllayout.h"
#include "misc/shared.h"
-#define QT_ALLOC_QCHAR_VEC( N ) (QChar*) new char[ sizeof(QChar)*( N ) ]
-#define QT_DELETE_QCHAR_VEC( P ) delete[] ((char*)( P ))
+#define QT_ALLOC_QCHAR_VEC( N ) reinterpret_cast<QChar*>(new char[ sizeof(QChar)*( N ) ])
+#define QT_DELETE_QCHAR_VEC( P ) delete[] (reinterpret_cast<char*>( P ))
namespace DOM
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/khtml-4.97.0/tests/pics/CMakeLists.txt new/khtml-4.98.0/tests/pics/CMakeLists.txt
--- old/khtml-4.97.0/tests/pics/CMakeLists.txt 2014-03-01 12:50:52.000000000 +0100
+++ new/khtml-4.98.0/tests/pics/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100
@@ -1,9 +0,0 @@
-
-########### install files ###############
-
-#define exclude file from local/global
-kde4_install_icons( ${DATA_INSTALL_DIR}/khtml/icons )
-
-
-
-
--
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 kglobalaccel for openSUSE:Factory checked in at 2014-04-02 17:22:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kglobalaccel (Old)
and /work/SRC/openSUSE:Factory/.kglobalaccel.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kglobalaccel"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kglobalaccel/kglobalaccel.changes 2014-03-10 12:17:27.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kglobalaccel.new/kglobalaccel.changes 2014-04-02 17:22:11.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:37 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kglobalaccel-4.97.0.tar.xz
New:
----
kglobalaccel-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kglobalaccel.spec ++++++
--- /var/tmp/diff_new_pack.sJdP5h/_old 2014-04-02 17:22:12.000000000 +0200
+++ /var/tmp/diff_new_pack.sJdP5h/_new 2014-04-02 17:22:12.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5GlobalAccel5
Name: kglobalaccel
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5DBus) >= 5.2.0
++++++ kglobalaccel-4.97.0.tar.xz -> kglobalaccel-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kglobalaccel-4.97.0/CMakeLists.txt new/kglobalaccel-4.98.0/CMakeLists.txt
--- old/kglobalaccel-4.97.0/CMakeLists.txt 2014-03-01 12:50:49.000000000 +0100
+++ new/kglobalaccel-4.98.0/CMakeLists.txt 2014-03-28 19:16:50.000000000 +0100
@@ -3,7 +3,7 @@
project(KGlobalAccel)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(FeatureSummary)
@@ -12,7 +12,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KGLOBALACCEL
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kglobalaccel_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kglobalaccel-4.97.0/src/Messages.sh new/kglobalaccel-4.98.0/src/Messages.sh
--- old/kglobalaccel-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kglobalaccel-4.98.0/src/Messages.sh 2014-03-28 19:16:50.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kglobalaccel5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kglobalaccel-4.97.0/src/org.kde.KGlobalAccel.xml new/kglobalaccel-4.98.0/src/org.kde.KGlobalAccel.xml
--- old/kglobalaccel-4.97.0/src/org.kde.KGlobalAccel.xml 2014-03-01 12:50:49.000000000 +0100
+++ new/kglobalaccel-4.98.0/src/org.kde.KGlobalAccel.xml 2014-03-28 19:16:50.000000000 +0100
@@ -5,18 +5,18 @@
<signal name="yourShortcutGotChanged">
<arg name="actionId" type="as" direction="out"/>
<arg name="newKeys" type="ai" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="QList<int>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.In1" value="QList<int>"/>
</signal>
<method name="allComponents">
<arg type="ao" direction="out"/>
</method>
<method name="allMainComponents">
<arg type="aas" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<QStringList>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<QStringList>"/>
</method>
<method name="allActionsForComponent">
<arg type="aas" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<QStringList>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<QStringList>"/>
<arg name="actionId" type="as" direction="in"/>
</method>
<method name="action">
@@ -29,26 +29,26 @@
</method>
<method name="shortcut">
<arg type="ai" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<int>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<int>"/>
<arg name="actionId" type="as" direction="in"/>
</method>
<method name="defaultShortcut">
<arg type="ai" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<int>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<int>"/>
<arg name="actionId" type="as" direction="in"/>
</method>
<method name="setShortcut">
<arg type="ai" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<int>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<int>"/>
<arg name="actionId" type="as" direction="in"/>
<arg name="keys" type="ai" direction="in"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="QList<int>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.In1" value="QList<int>"/>
<arg name="flags" type="u" direction="in"/>
</method>
<method name="setForeignShortcut">
<arg name="actionId" type="as" direction="in"/>
<arg name="keys" type="ai" direction="in"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="QList<int>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.In1" value="QList<int>"/>
</method>
<method name="setInactive">
<arg name="actionId" type="as" direction="in"/>
@@ -65,7 +65,7 @@
</method>
<method name="getGlobalShortcutsByKey">
<arg type="a(ssssssaiai)" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<KGlobalShortcutInfo>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<KGlobalShortcutInfo>"/>
<arg name="key" type="i" direction="in"/>
</method>
<method name="isGlobalShortcutAvailable">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kglobalaccel-4.97.0/src/org.kde.kglobalaccel.Component.xml new/kglobalaccel-4.98.0/src/org.kde.kglobalaccel.Component.xml
--- old/kglobalaccel-4.97.0/src/org.kde.kglobalaccel.Component.xml 2014-03-01 12:50:49.000000000 +0100
+++ new/kglobalaccel-4.98.0/src/org.kde.kglobalaccel.Component.xml 2014-03-28 19:16:50.000000000 +0100
@@ -24,12 +24,12 @@
</method>
<method name="allShortcutInfos">
<arg type="a(ssssssaiai)" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<KGlobalShortcutInfo>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<KGlobalShortcutInfo>"/>
<arg name="context" type="s" direction="in"/>
</method>
<method name="allShortcutInfos">
<arg type="a(ssssssaiai)" direction="out"/>
- <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QList<KGlobalShortcutInfo>"/>
+ <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QList<KGlobalShortcutInfo>"/>
</method>
<method name="getShortcutContexts">
<arg type="as" direction="out"/>
--
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 kfileaudiopreview for openSUSE:Factory checked in at 2014-04-02 17:22:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kfileaudiopreview (Old)
and /work/SRC/openSUSE:Factory/.kfileaudiopreview.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kfileaudiopreview"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kfileaudiopreview/kfileaudiopreview.changes 2014-03-10 12:18:21.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kfileaudiopreview.new/kfileaudiopreview.changes 2014-04-02 17:22:10.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:36 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kfileaudiopreview-4.97.0.tar.xz
New:
----
kfileaudiopreview-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kfileaudiopreview.spec ++++++
--- /var/tmp/diff_new_pack.BhtpqT/_old 2014-04-02 17:22:11.000000000 +0200
+++ /var/tmp/diff_new_pack.BhtpqT/_new 2014-04-02 17:22:11.000000000 +0200
@@ -17,10 +17,10 @@
Name: kfileaudiopreview
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kbookmarks-devel >= %{_kf5_version}
BuildRequires: kcompletion-devel >= %{_kf5_version}
++++++ kfileaudiopreview-4.97.0.tar.xz -> kfileaudiopreview-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kfileaudiopreview-4.97.0/CMakeLists.txt new/kfileaudiopreview-4.98.0/CMakeLists.txt
--- old/kfileaudiopreview-4.97.0/CMakeLists.txt 2014-03-01 12:50:47.000000000 +0100
+++ new/kfileaudiopreview-4.98.0/CMakeLists.txt 2014-03-29 08:18:54.000000000 +0100
@@ -6,7 +6,7 @@
#
# CMake stuff from ECM
#
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(KDEInstallDirs)
@@ -20,8 +20,8 @@
#
# Dependencies
#
-set(QT_REQUIRED_VERSION 5.2.0)
-find_package(Qt5Widgets ${QT_REQUIRED_VERSION} REQUIRED NO_MODULE)
+set(REQUIRED_QT_VERSION 5.2.0)
+find_package(Qt5Widgets ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
find_package(Phonon4Qt5 4.6.60 REQUIRED NO_MODULE)
set_package_properties(Phonon4Qt5 PROPERTIES
DESCRIPTION "Qt-based audio library"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kfileaudiopreview-4.97.0/src/kfileaudiopreview.cpp new/kfileaudiopreview-4.98.0/src/kfileaudiopreview.cpp
--- old/kfileaudiopreview-4.97.0/src/kfileaudiopreview.cpp 2014-03-01 12:50:47.000000000 +0100
+++ new/kfileaudiopreview-4.98.0/src/kfileaudiopreview.cpp 2014-03-29 08:18:54.000000000 +0100
@@ -36,6 +36,7 @@
#include <phonon/videowidget.h>
#include "mediacontrols.h"
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
K_PLUGIN_FACTORY(KFileAudioPreviewFactory, registerPlugin<KFileAudioPreview>();)
--
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 kf5umbrella for openSUSE:Factory checked in at 2014-04-02 17:22:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf5umbrella (Old)
and /work/SRC/openSUSE:Factory/.kf5umbrella.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kf5umbrella"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kf5umbrella/kf5umbrella.changes 2014-03-10 12:18:25.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kf5umbrella.new/kf5umbrella.changes 2014-04-02 17:22:09.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:35 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kf5umbrella-4.97.0.tar.xz
New:
----
kf5umbrella-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kf5umbrella.spec ++++++
--- /var/tmp/diff_new_pack.eOvd7k/_old 2014-04-02 17:22:10.000000000 +0200
+++ /var/tmp/diff_new_pack.eOvd7k/_new 2014-04-02 17:22:10.000000000 +0200
@@ -17,10 +17,10 @@
Name: kf5umbrella
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ kf5umbrella-4.97.0.tar.xz -> kf5umbrella-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kf5umbrella-4.97.0/CMakeLists.txt new/kf5umbrella-4.98.0/CMakeLists.txt
--- old/kf5umbrella-4.97.0/CMakeLists.txt 2014-03-01 12:50:45.000000000 +0100
+++ new/kf5umbrella-4.98.0/CMakeLists.txt 2014-03-28 19:16:46.000000000 +0100
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 2.8.12)
-find_package(ECM 0.0.11 REQUIRED CONFIG)
+find_package(ECM 0.0.12 REQUIRED CONFIG)
set(CMAKE_MODULE_PATH ${ECM_KDE_MODULE_DIR})
@@ -10,7 +10,7 @@
include(CMakePackageConfigHelpers)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
write_basic_package_version_file(
"${CMAKE_CURRENT_BINARY_DIR}/KF5ConfigVersion.cmake"
VERSION ${KF5_VERSION}
--
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 kemoticons for openSUSE:Factory checked in at 2014-04-02 17:22:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kemoticons (Old)
and /work/SRC/openSUSE:Factory/.kemoticons.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kemoticons"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kemoticons/kemoticons.changes 2014-03-10 12:18:04.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kemoticons.new/kemoticons.changes 2014-04-02 17:22:08.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:34 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kemoticons-4.97.0.tar.xz
New:
----
kemoticons-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kemoticons.spec ++++++
--- /var/tmp/diff_new_pack.OP98VB/_old 2014-04-02 17:22:09.000000000 +0200
+++ /var/tmp/diff_new_pack.OP98VB/_new 2014-04-02 17:22:09.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Emoticons5
Name: kemoticons
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: karchive-devel >= %{_kf5_version}
BuildRequires: kconfig-devel >= %{_kf5_version}
@@ -94,6 +94,7 @@
%{_kf5_servicesdir}/emoticonstheme_pidgin.desktop
%{_kf5_servicesdir}/emoticonstheme_xmpp.desktop
%{_kf5_servicetypesdir}/kemoticonsTheme.desktop
+%{_kf5_datadir}/emoticons/
%files devel
%defattr(-,root,root)
++++++ kemoticons-4.97.0.tar.xz -> kemoticons-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/CMakeLists.txt new/kemoticons-4.98.0/CMakeLists.txt
--- old/kemoticons-4.97.0/CMakeLists.txt 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/CMakeLists.txt 2014-03-29 08:16:54.000000000 +0100
@@ -2,7 +2,7 @@
project(KEmoticons)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
@@ -19,7 +19,7 @@
include(ECMGenerateHeaders)
include(ECMPackageConfigHelpers)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KEMOTICONS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kemoticons_version.h"
@@ -39,6 +39,7 @@
remove_definitions(-DQT_NO_CAST_FROM_ASCII)
add_subdirectory(src)
+add_subdirectory(themes)
add_subdirectory(autotests)
add_subdirectory(tests)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/autotests/CMakeLists.txt new/kemoticons-4.98.0/autotests/CMakeLists.txt
--- old/kemoticons-4.97.0/autotests/CMakeLists.txt 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/autotests/CMakeLists.txt 2014-03-29 08:16:54.000000000 +0100
@@ -12,3 +12,6 @@
kemoticons_unit_tests(kemoticontest)
+target_compile_definitions(kemoticontest PRIVATE
+ LOCAL_THEMES_DIR="${KEmoticons_SOURCE_DIR}/themes")
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/autotests/kemoticontest.cpp new/kemoticons-4.98.0/autotests/kemoticontest.cpp
--- old/kemoticons-4.97.0/autotests/kemoticontest.cpp 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/autotests/kemoticontest.cpp 2014-03-29 08:16:54.000000000 +0100
@@ -3,6 +3,7 @@
Copyright (c) 2004 by Richard Smith <kde(a)metafoo.co.uk>
Copyright (c) 2005 by Duncan Mac-Vicar <duncan(a)kde.org>
+ Copyright (c) 2014 by Alex Merry <alex.merry(a)kde.org>
Kopete (c) 2002-2005 by the Kopete developers <kopete-devel(a)kde.org>
@@ -16,17 +17,16 @@
*************************************************************************
*/
-#include "kemoticontest.h"
-
#include <QTest>
#include <QDir>
#include <QFile>
+#include <QStandardPaths>
#include <QTextStream>
#include <QDebug>
#include <kemoticons.h>
-QTEST_MAIN(KEmoticonTest)
+static const char * default_theme = "Glass";
/*
There are three sets of tests, the Kopete 0.7 baseline with tests that were
@@ -35,65 +35,112 @@
The second set are those known to work in the current codebase.
The last set is the set with tests that are known to fail right now.
- the name convention is working|broken-number.input|output
+ the name convention is (working|broken)-number.input|output
*/
-void KEmoticonTest::testEmoticonParser()
+class KEmoticonTest : public QObject
{
- KEmoticonsTheme emo = KEmoticons().theme("kde4");
- QString basePath = QFINDTESTDATA("emoticon-parser-testcases");
- QVERIFY(!basePath.isEmpty());
- QDir testCasesDir(basePath);
-
- QStringList inputFileNames = testCasesDir.entryList(QStringList(QLatin1String("*.input")));
- Q_FOREACH (const QString &fileName, inputFileNames) {
- // qDebug() << "testcase: " << fileName;
- QString outputFileName = fileName;
- outputFileName.replace("input", "output");
- // open the input file
- QFile inputFile(basePath + QString::fromLatin1("/") + fileName);
- QFile expectedFile(basePath + QString::fromLatin1("/") + outputFileName);
- // check if the expected output file exists
- // if it doesn't, skip the testcase
+ Q_OBJECT
+
+private Q_SLOTS:
+ void initTestCase()
+ {
+ QStandardPaths::setTestModeEnabled(true);
+ QString dataPath = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation);
+
+ QString destThemePath = dataPath + QLatin1String("/emoticons/") + QLatin1String(default_theme);
+ QDir themeDir(destThemePath);
+ if (themeDir.exists()) {
+ QVERIFY(themeDir.removeRecursively());
+ }
+ QVERIFY(themeDir.mkpath("."));
+
+ QDir sourceThemeDir(QFile::decodeName(LOCAL_THEMES_DIR) + QLatin1String("/") + default_theme);
+ QVERIFY(sourceThemeDir.exists());
+
+ foreach (QString fileName, sourceThemeDir.entryList(QDir::Files)) {
+ QVERIFY(QFile::copy(sourceThemeDir.filePath(fileName),
+ themeDir.filePath(fileName)));
+ }
+
+ // check it can actually be found
+ themePath = QStandardPaths::locate(
+ QStandardPaths::GenericDataLocation,
+ QString::fromLatin1("emoticons/") + default_theme,
+ QStandardPaths::LocateDirectory);
+ QVERIFY2(!themePath.isEmpty(), qPrintable(themePath));
+ // testEmoticonParser() wants a trailing /
+ themePath += "/";
+ }
+
+ void cleanupTestCase()
+ {
+ QString dataPath = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation);
+ QString themePath = dataPath + QLatin1String("/emoticons/") + QLatin1String(default_theme);
+ QDir themeDir(themePath);
+ QVERIFY(themeDir.removeRecursively());
+ }
+
+ void testEmoticonParser_data()
+ {
+ QTest::addColumn<QString>("inputFileName");
+ QTest::addColumn<QString>("outputFileName");
+ QTest::addColumn<bool>("xfail");
+
+ QString basePath = QFINDTESTDATA("emoticon-parser-testcases");
+ QVERIFY(!basePath.isEmpty());
+ QDir testCasesDir(basePath);
+
+ QStringList inputFileNames = testCasesDir.entryList(QStringList(QLatin1String("*.input")));
+ Q_FOREACH (const QString &fileName, inputFileNames) {
+ QString outputFileName = fileName;
+ outputFileName.replace("input", "output");
+ QTest::newRow(qPrintable(fileName.left(fileName.lastIndexOf('.'))))
+ << basePath + QString::fromLatin1("/") + fileName
+ << basePath + QString::fromLatin1("/") + outputFileName
+ << (fileName.section("-", 0, 0) == QLatin1String("broken"));
+ }
+ }
+
+ void testEmoticonParser()
+ {
+ KEmoticonsTheme emo = KEmoticons().theme(default_theme);
+
+ QFETCH(QString, inputFileName);
+ QFETCH(QString, outputFileName);
+ QFETCH(bool, xfail);
+
+ QFile inputFile(inputFileName);
+ QFile expectedFile(outputFileName);
if (! expectedFile.exists()) {
QSKIP("Warning! expected output for testcase not found. Skiping testcase");
- continue;
- }
- if (inputFile.open(QIODevice::ReadOnly) && expectedFile.open(QIODevice::ReadOnly)) {
+ } else if (inputFile.open(QIODevice::ReadOnly) && expectedFile.open(QIODevice::ReadOnly)) {
const QString inputData = QString::fromLatin1(inputFile.readAll().constData());
const QString expectedData = QString::fromLatin1(expectedFile.readAll().constData());
inputFile.close();
expectedFile.close();
- const QString path = QStandardPaths::locate(QStandardPaths::GenericDataLocation, "emoticons/kde4/smile.png").remove("smile.png");
- if (path.isEmpty()) {
- QSKIP("Emoticons not installed, skipping. kdebase-runtime needed.");
- }
-
- QString result = emo.parseEmoticons(inputData, KEmoticonsTheme::RelaxedParse | KEmoticonsTheme::SkipHTML).replace(path, QString());
-
- // qDebug() << "Parse result: " << result;
+ QString result = emo.parseEmoticons(inputData,
+ KEmoticonsTheme::RelaxedParse | KEmoticonsTheme::SkipHTML);
+ result.replace(themePath, QString());
- // HACK to know the test case we applied, concatenate testcase name to both
- // input and expected string. WIll remove when I can add some sort of metadata
- // to a CHECK so debug its origin testcase
- //result = fileName + QString::fromLatin1(": ") + result;
- //expectedData = fileName + QString::fromLatin1(": ") + expectedData;
- // if the test case begins with broken, we expect it to fail, then use XFAIL
- // otherwise use CHECK
- if (fileName.section("-", 0, 0) == QString::fromLatin1("broken")) {
- // qDebug() << "checking known-broken testcase: " << fileName;
- QEXPECT_FAIL("", "Checking know-broken testcase", Continue);
+ if (xfail) {
+ QEXPECT_FAIL("", "Checking known-broken testcase", Continue);
QCOMPARE(result, expectedData);
} else {
- // qDebug() << "checking known-working testcase: " << fileName;
QCOMPARE(result, expectedData);
}
} else {
QSKIP("Warning! can't open testcase files. Skiping testcase");
- continue;
}
}
-}
+private:
+ QString themePath;
+};
+
+QTEST_MAIN(KEmoticonTest)
+
+#include <kemoticontest.moc>
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/autotests/kemoticontest.h new/kemoticons-4.98.0/autotests/kemoticontest.h
--- old/kemoticons-4.97.0/autotests/kemoticontest.h 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/autotests/kemoticontest.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,36 +0,0 @@
-/*
- Tests for Kopete::Message::parseEmoticons
-
- Copyright (c) 2004 by Richard Smith <kde(a)metafoo.co.uk>
- Copyright (c) 2005 by Duncan Mac-Vicar <duncan(a)kde.org>
- Copyright (c) 2006 by Michael Larouche <larouche(a)kde.org>
-
- Kopete (c) 2002-2006 by the Kopete developers <kopete-devel(a)kde.org>
-
- *************************************************************************
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- *************************************************************************
-*/
-
-#ifndef KEMOTICON_TEST_H
-#define KEMOTICON_TEST_H
-
-#include <QObject>
-
-/**
- * QTestLib automatic test to test Emoticon parsing.
- */
-class KEmoticonTest : public QObject
-{
- Q_OBJECT
-private Q_SLOTS:
- void testEmoticonParser();
-};
-
-#endif
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/src/core/kemoticons.cpp new/kemoticons-4.98.0/src/core/kemoticons.cpp
--- old/kemoticons-4.97.0/src/core/kemoticons.cpp 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/src/core/kemoticons.cpp 2014-03-29 08:16:54.000000000 +0100
@@ -29,6 +29,7 @@
#include <kpluginloader.h>
#include <kconfiggroup.h>
+#include <ksharedconfig.h>
#include <ktar.h>
#include <kzip.h>
@@ -139,7 +140,7 @@
QString KEmoticons::currentThemeName()
{
KConfigGroup config(KSharedConfig::openConfig("kdeglobals"), "Emoticons");
- QString name = config.readEntry("emoticonsTheme", "kde4");
+ QString name = config.readEntry("emoticonsTheme", "Glass");
return name;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/src/providers/adium/adium_emoticons.cpp new/kemoticons-4.98.0/src/providers/adium/adium_emoticons.cpp
--- old/kemoticons-4.97.0/src/providers/adium/adium_emoticons.cpp 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/src/providers/adium/adium_emoticons.cpp 2014-03-29 08:16:54.000000000 +0100
@@ -21,6 +21,7 @@
#include <QtCore/QFile>
#include <QtCore/QDir>
#include <QtCore/QFileInfo>
+#include <QtCore/QStandardPaths>
#include <QDebug>
#include <kpluginfactory.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/src/providers/kde/kde_emoticons.cpp new/kemoticons-4.98.0/src/providers/kde/kde_emoticons.cpp
--- old/kemoticons-4.97.0/src/providers/kde/kde_emoticons.cpp 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/src/providers/kde/kde_emoticons.cpp 2014-03-29 08:16:54.000000000 +0100
@@ -22,6 +22,7 @@
#include <QtCore/QDir>
#include <QtCore/QDebug>
#include <QtCore/QFileInfo>
+#include <QtCore/QStandardPaths>
#include <QImageReader>
#include <kpluginfactory.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/src/providers/pidgin/pidgin_emoticons.cpp new/kemoticons-4.98.0/src/providers/pidgin/pidgin_emoticons.cpp
--- old/kemoticons-4.97.0/src/providers/pidgin/pidgin_emoticons.cpp 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/src/providers/pidgin/pidgin_emoticons.cpp 2014-03-29 08:16:54.000000000 +0100
@@ -23,6 +23,7 @@
#include <QtCore/QDir>
#include <QtCore/QDebug>
#include <QtCore/QFileInfo>
+#include <QtCore/QStandardPaths>
#include <kpluginfactory.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/src/providers/xmpp/xmpp_emoticons.cpp new/kemoticons-4.98.0/src/providers/xmpp/xmpp_emoticons.cpp
--- old/kemoticons-4.97.0/src/providers/xmpp/xmpp_emoticons.cpp 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/src/providers/xmpp/xmpp_emoticons.cpp 2014-03-29 08:16:54.000000000 +0100
@@ -22,6 +22,7 @@
#include <QtCore/QDir>
#include <QtCore/QDebug>
#include <QtCore/QFileInfo>
+#include <QtCore/QStandardPaths>
#include <QImageReader>
#include <QMimeDatabase>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/tests/main.cpp new/kemoticons-4.98.0/tests/main.cpp
--- old/kemoticons-4.97.0/tests/main.cpp 2014-03-01 12:50:43.000000000 +0100
+++ new/kemoticons-4.98.0/tests/main.cpp 2014-03-29 08:16:54.000000000 +0100
@@ -57,7 +57,7 @@
comboBox = new QComboBox;
emoticonTheme = emoticons.theme();
- // Theme list is repeating three times the same two themes: "Oxygen" and "kde4"
+ // Theme list is repeating three times the same two themes: "Oxygen" and "Glass"
qDebug() << "Theme list: " << emoticons.themeList();
// Theme name is empty!!
qDebug() << "Theme name: " << emoticonTheme.themeName();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/themes/CMakeLists.txt new/kemoticons-4.98.0/themes/CMakeLists.txt
--- old/kemoticons-4.97.0/themes/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/kemoticons-4.98.0/themes/CMakeLists.txt 2014-03-29 08:16:54.000000000 +0100
@@ -0,0 +1,9 @@
+install(
+ DIRECTORY
+ Glass
+ DESTINATION
+ ${SHARE_INSTALL_PREFIX}/emoticons/
+ FILES_MATCHING
+ PATTERN "*.png"
+ PATTERN "emoticons.xml"
+)
Files old/kemoticons-4.97.0/themes/Glass/angry.png and new/kemoticons-4.98.0/themes/Glass/angry.png differ
Files old/kemoticons-4.97.0/themes/Glass/bat.png and new/kemoticons-4.98.0/themes/Glass/bat.png differ
Files old/kemoticons-4.97.0/themes/Glass/beer.png and new/kemoticons-4.98.0/themes/Glass/beer.png differ
Files old/kemoticons-4.97.0/themes/Glass/biggrin.png and new/kemoticons-4.98.0/themes/Glass/biggrin.png differ
Files old/kemoticons-4.97.0/themes/Glass/cake.png and new/kemoticons-4.98.0/themes/Glass/cake.png differ
Files old/kemoticons-4.97.0/themes/Glass/camera.png and new/kemoticons-4.98.0/themes/Glass/camera.png differ
Files old/kemoticons-4.97.0/themes/Glass/cat.png and new/kemoticons-4.98.0/themes/Glass/cat.png differ
Files old/kemoticons-4.97.0/themes/Glass/clock.png and new/kemoticons-4.98.0/themes/Glass/clock.png differ
Files old/kemoticons-4.97.0/themes/Glass/cocktail.png and new/kemoticons-4.98.0/themes/Glass/cocktail.png differ
Files old/kemoticons-4.97.0/themes/Glass/confused.png and new/kemoticons-4.98.0/themes/Glass/confused.png differ
Files old/kemoticons-4.97.0/themes/Glass/cry.png and new/kemoticons-4.98.0/themes/Glass/cry.png differ
Files old/kemoticons-4.97.0/themes/Glass/cup.png and new/kemoticons-4.98.0/themes/Glass/cup.png differ
Files old/kemoticons-4.97.0/themes/Glass/dog.png and new/kemoticons-4.98.0/themes/Glass/dog.png differ
Files old/kemoticons-4.97.0/themes/Glass/email.png and new/kemoticons-4.98.0/themes/Glass/email.png differ
Files old/kemoticons-4.97.0/themes/Glass/embarassed.png and new/kemoticons-4.98.0/themes/Glass/embarassed.png differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kemoticons-4.97.0/themes/Glass/emoticons.xml new/kemoticons-4.98.0/themes/Glass/emoticons.xml
--- old/kemoticons-4.97.0/themes/Glass/emoticons.xml 1970-01-01 01:00:00.000000000 +0100
+++ new/kemoticons-4.98.0/themes/Glass/emoticons.xml 2014-03-29 08:16:54.000000000 +0100
@@ -0,0 +1,185 @@
+<?xml version="1.0"?>
+<messaging-emoticon-map >
+
+<emoticon file="angry">
+ <string>:-@</string>
+ <string>:@</string>
+ <string>>:-(</string>
+ <string>>:(</string>
+</emoticon>
+
+<emoticon file="bat">
+ <string>:-[</string>
+ <string>:[</string>
+</emoticon>
+
+<emoticon file="beer">
+ <string>(B)</string>
+ <string>(b)</string>
+</emoticon>
+
+<emoticon file="cake">
+ <string>(^)</string>
+</emoticon>
+
+<emoticon file="camera">
+ <string>(P)</string>
+ <string>(p)</string>
+</emoticon>
+
+<emoticon file="cat">
+ <string>(@)</string>
+</emoticon>
+
+<emoticon file="clock">
+ <string>(O)</string>
+ <string>(o)</string>
+</emoticon>
+
+<emoticon file="cocktail">
+ <string>(D)</string>
+ <string>(d)</string>
+</emoticon>
+
+<emoticon file="confused">
+ <string>:-S</string>
+ <string>:S</string>
+ <string>:-s</string>
+ <string>:s</string>
+</emoticon>
+
+<emoticon file="cry">
+ <string>:'(</string>
+ <string>:'-(</string>
+ <string>;-(</string>
+ <string>;(</string>
+</emoticon>
+
+<emoticon file="cup">
+ <string>(C)</string>
+ <string>(c)</string>
+</emoticon>
+
+<emoticon file="dog">
+ <string>(&)</string>
+</emoticon>
+
+<emoticon file="embarassed">
+ <string>:-$</string>
+ <string>:$</string>
+</emoticon>
+
+<emoticon file="email">
+ <string>(E)</string>
+ <string>(e)</string>
+</emoticon>
+
+<emoticon file="film">
+ <string>(~)</string>
+</emoticon>
+
+<emoticon file="kiss">
+ <string>(K)</string>
+ <string>(k)</string>
+ <string>:-X</string>
+ <string>:X</string>
+ <string>:-x</string>
+ <string>:x</string>
+</emoticon>
+
+<emoticon file="lightbulb">
+ <string>(I)</string>
+ <string>(i)</string>
+</emoticon>
+
+<emoticon file="love">
+ <string>(L)</string>
+ <string>(l)</string>
+</emoticon>
+
+<emoticon file="note">
+ <string>(8)</string>
+</emoticon>
+
+<emoticon file="omg">
+ <string>:-O</string>
+ <string>:O</string>
+ <string>:-o</string>
+ <string>:o</string>
+</emoticon>
+
+<emoticon file="phone">
+ <string>(T)</string>
+ <string>(t)</string>
+</emoticon>
+
+<emoticon file="present">
+ <string>(G)</string>
+ <string>(g)</string>
+</emoticon>
+
+<emoticon file="rose">
+ <string>(F)</string>
+ <string>(f)</string>
+</emoticon>
+
+<emoticon file="sad">
+ <string>:-(</string>
+ <string>:(</string>
+</emoticon>
+
+<emoticon file="shade">
+ <string>(H)</string>
+ <string>(h)</string>
+ <string>8-)</string>
+ <string>8)</string>
+</emoticon>
+
+<emoticon file="smile">
+ <string>:-)</string>
+ <string>:)</string>
+ <string>:o)</string>
+</emoticon>
+
+<emoticon file="star">
+ <string>(*)</string>
+</emoticon>
+
+<emoticon file="teeth">
+ <string>:-D</string>
+ <string>:D</string>
+</emoticon>
+
+<emoticon file="thumbs_down">
+ <string>(N)</string>
+ <string>(n)</string>
+</emoticon>
+
+<emoticon file="thumbs_up">
+ <string>(Y)</string>
+ <string>(y)</string>
+</emoticon>
+
+<emoticon file="tongue">
+ <string>:-P</string>
+ <string>:P</string>
+ <string>:-p</string>
+ <string>:p</string>
+</emoticon>
+
+<emoticon file="unlove">
+ <string>(U)</string>
+ <string>(u)</string>
+</emoticon>
+
+<emoticon file="wilted_rose">
+ <string>(W)</string>
+ <string>(w)</string>
+</emoticon>
+
+<emoticon file="wink">
+ <string>;-)</string>
+ <string>;)</string>
+</emoticon>
+
+</messaging-emoticon-map>
Files old/kemoticons-4.97.0/themes/Glass/film.png and new/kemoticons-4.98.0/themes/Glass/film.png differ
Files old/kemoticons-4.97.0/themes/Glass/foot_in_mouth.png and new/kemoticons-4.98.0/themes/Glass/foot_in_mouth.png differ
Files old/kemoticons-4.97.0/themes/Glass/innocent.png and new/kemoticons-4.98.0/themes/Glass/innocent.png differ
Files old/kemoticons-4.97.0/themes/Glass/kiss.png and new/kemoticons-4.98.0/themes/Glass/kiss.png differ
Files old/kemoticons-4.97.0/themes/Glass/lightbulb.png and new/kemoticons-4.98.0/themes/Glass/lightbulb.png differ
Files old/kemoticons-4.97.0/themes/Glass/love.png and new/kemoticons-4.98.0/themes/Glass/love.png differ
Files old/kemoticons-4.97.0/themes/Glass/note.png and new/kemoticons-4.98.0/themes/Glass/note.png differ
Files old/kemoticons-4.97.0/themes/Glass/oh.png and new/kemoticons-4.98.0/themes/Glass/oh.png differ
Files old/kemoticons-4.97.0/themes/Glass/omg.png and new/kemoticons-4.98.0/themes/Glass/omg.png differ
Files old/kemoticons-4.97.0/themes/Glass/phone.png and new/kemoticons-4.98.0/themes/Glass/phone.png differ
Files old/kemoticons-4.97.0/themes/Glass/present.png and new/kemoticons-4.98.0/themes/Glass/present.png differ
Files old/kemoticons-4.97.0/themes/Glass/rose.png and new/kemoticons-4.98.0/themes/Glass/rose.png differ
Files old/kemoticons-4.97.0/themes/Glass/sad.png and new/kemoticons-4.98.0/themes/Glass/sad.png differ
Files old/kemoticons-4.97.0/themes/Glass/shade.png and new/kemoticons-4.98.0/themes/Glass/shade.png differ
Files old/kemoticons-4.97.0/themes/Glass/sleep.png and new/kemoticons-4.98.0/themes/Glass/sleep.png differ
Files old/kemoticons-4.97.0/themes/Glass/smile.png and new/kemoticons-4.98.0/themes/Glass/smile.png differ
Files old/kemoticons-4.97.0/themes/Glass/star.png and new/kemoticons-4.98.0/themes/Glass/star.png differ
Files old/kemoticons-4.97.0/themes/Glass/teeth.png and new/kemoticons-4.98.0/themes/Glass/teeth.png differ
Files old/kemoticons-4.97.0/themes/Glass/thumbs_down.png and new/kemoticons-4.98.0/themes/Glass/thumbs_down.png differ
Files old/kemoticons-4.97.0/themes/Glass/thumbs_up.png and new/kemoticons-4.98.0/themes/Glass/thumbs_up.png differ
Files old/kemoticons-4.97.0/themes/Glass/tongue.png and new/kemoticons-4.98.0/themes/Glass/tongue.png differ
Files old/kemoticons-4.97.0/themes/Glass/undecided.png and new/kemoticons-4.98.0/themes/Glass/undecided.png differ
Files old/kemoticons-4.97.0/themes/Glass/unhappy.png and new/kemoticons-4.98.0/themes/Glass/unhappy.png differ
Files old/kemoticons-4.97.0/themes/Glass/unlove.png and new/kemoticons-4.98.0/themes/Glass/unlove.png differ
Files old/kemoticons-4.97.0/themes/Glass/wilted_rose.png and new/kemoticons-4.98.0/themes/Glass/wilted_rose.png differ
Files old/kemoticons-4.97.0/themes/Glass/wink.png and new/kemoticons-4.98.0/themes/Glass/wink.png differ
--
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 kdoctools for openSUSE:Factory checked in at 2014-04-02 17:21:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdoctools (Old)
and /work/SRC/openSUSE:Factory/.kdoctools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdoctools"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdoctools/kdoctools.changes 2014-03-10 12:17:45.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdoctools.new/kdoctools.changes 2014-04-02 17:22:07.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:33 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kdoctools-4.97.0.tar.xz
New:
----
kdoctools-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdoctools.spec ++++++
--- /var/tmp/diff_new_pack.4e3mPS/_old 2014-04-02 17:22:08.000000000 +0200
+++ /var/tmp/diff_new_pack.4e3mPS/_new 2014-04-02 17:22:08.000000000 +0200
@@ -17,12 +17,12 @@
Name: kdoctools
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
BuildRequires: docbook-xsl-stylesheets
BuildRequires: docbook_4
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: karchive-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kdoctools-4.97.0.tar.xz -> kdoctools-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/CMakeLists.txt new/kdoctools-4.98.0/CMakeLists.txt
--- old/kdoctools-4.97.0/CMakeLists.txt 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/CMakeLists.txt 2014-03-28 19:16:42.000000000 +0100
@@ -3,7 +3,7 @@
project(KDocTools)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(FeatureSummary)
@@ -11,7 +11,7 @@
include(ECMMarkNonGuiExecutable)
include(ECMPackageConfigHelpers)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KDOCTOOLS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kdoctools_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5DocToolsConfigVersion.cmake"
@@ -42,7 +42,7 @@
)
-find_package(DocBookXML4 "4.2")
+find_package(DocBookXML4 "4.5")
set_package_properties(DocBookXML4 PROPERTIES
TYPE REQUIRED
@@ -57,7 +57,7 @@
remove_definitions(-DQT_NO_CAST_FROM_ASCII)
-set(_kdeBootStrapping TRUE)
+set(_kdoctoolsBootStrapping TRUE)
set(KDOCTOOLS_CUSTOMIZATION_DIR "${CMAKE_CURRENT_BINARY_DIR}/src/customization/")
if (WIN32)
set(KDOCTOOLS_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc5 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/KF5DocToolsMacros.cmake new/kdoctools-4.98.0/KF5DocToolsMacros.cmake
--- old/kdoctools-4.97.0/KF5DocToolsMacros.cmake 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/KF5DocToolsMacros.cmake 2014-03-28 19:16:42.000000000 +0100
@@ -35,12 +35,17 @@
set(KDOCTOOLS_MEINPROC_EXECUTABLE ${KDOCTOOLS_SERIALIZE_TOOL} ${KDOCTOOLS_MEINPROC_EXECUTABLE})
endif(KDOCTOOLS_SERIALIZE_TOOL)
+macro(_SUGGEST_TARGET_NAME _out)
+ string(REPLACE "${CMAKE_SOURCE_DIR}/" "" ${_out} "${CMAKE_CURRENT_SOURCE_DIR}")
+ string(REGEX REPLACE "[^0-9a-zA-Z]" "-" ${_out} "${${_out}}")
+endmacro()
+
macro (KDOCTOOLS_CREATE_HANDBOOK _docbook)
get_filename_component(_input ${_docbook} ABSOLUTE)
set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2)
#Bootstrap
- if (_kdeBootStrapping)
+ if (_kdoctoolsBootStrapping)
set(_bootstrapOption "--srcdir=${KDocTools_BINARY_DIR}/src")
else ()
set(_bootstrapOption)
@@ -50,8 +55,8 @@
file(GLOB _docs *.docbook)
# if (CMAKE_CROSSCOMPILING)
-# set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc5 from a native build")
-# include(${IMPORT_MEINPROC4_EXECUTABLE})
+# set(IMPORT_MEINPROC5_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc5Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc5 from a native build")
+# include(${IMPORT_MEINPROC5_EXECUTABLE})
# set(KDOCTOOLS_MEINPROC_EXECUTABLE meinproc5)
# endif (CMAKE_CROSSCOMPILING)
@@ -60,7 +65,8 @@
DEPENDS ${_docs} ${_ssheet}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
- get_filename_component(_targ ${CMAKE_CURRENT_SOURCE_DIR} NAME)
+
+ _suggest_target_name(_targ)
set(_targ "${_targ}-handbook")
add_custom_target(${_targ} ALL DEPENDS ${_doc})
@@ -118,7 +124,7 @@
string(REGEX REPLACE "/man-" "/" _outdoc ${_doc})
#Bootstrap
- if (_kdeBootStrapping)
+ if (_kdoctoolsBootStrapping)
set(_bootstrapOption "--srcdir=${KDocTools_BINARY_DIR}/src")
else ()
set(_bootstrapOption)
@@ -126,8 +132,8 @@
set(_ssheet "${KDOCTOOLS_CUSTOMIZATION_DIR}/kde-include-man.xsl")
# if (CMAKE_CROSSCOMPILING)
-# set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc5 from a native build")
-# include(${IMPORT_MEINPROC4_EXECUTABLE})
+# set(IMPORT_MEINPROC5_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc5Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc5 from a native build")
+# include(${IMPORT_MEINPROC5_EXECUTABLE})
# set(KDOCTOOLS_MEINPROC_EXECUTABLE meinproc5)
# endif (CMAKE_CROSSCOMPILING)
@@ -135,7 +141,7 @@
COMMAND ${KDOCTOOLS_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} ${_input}
DEPENDS ${_input} ${_ssheet}
)
- get_filename_component(_targ ${CMAKE_CURRENT_SOURCE_DIR} NAME)
+ _suggest_target_name(_targ)
set(_targ "${_targ}-manpage-${_base}")
add_custom_target(${_targ} ALL DEPENDS "${_outdoc}")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/cmake/FindDocBookXML4.cmake new/kdoctools-4.98.0/cmake/FindDocBookXML4.cmake
--- old/kdoctools-4.97.0/cmake/FindDocBookXML4.cmake 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/cmake/FindDocBookXML4.cmake 2014-03-28 19:16:42.000000000 +0100
@@ -1,5 +1,5 @@
# Try to find DocBook XML 4.x DTD.
-# By default it will find version 4.2. A different version can be specified
+# By default it will find version 4.5. A different version can be specified
# as parameter for find_package().
# Once done, it will define:
#
@@ -16,7 +16,7 @@
if (NOT DocBookXML_FIND_VERSION)
- set(DocBookXML_FIND_VERSION "4.2")
+ set(DocBookXML_FIND_VERSION "4.5")
endif ()
set (DocBookXML4_DTD_VERSION ${DocBookXML_FIND_VERSION}
@@ -70,12 +70,4 @@
REQUIRED_VARS DocBookXML4_DTD_DIR DocBookXML4_DTD_VERSION
FOUND_VAR DocBookXML4_FOUND)
-#maintain backwards compatibility
-# legacy version
-locate_version ("4.2" DOCBOOKXML_CURRENTDTD_DIR)
-if (DOCBOOKXML_CURRENTDTD_DIR)
- set(DOCBOOKXML_FOUND "TRUE")
- set(DOCBOOKXML_CURRENTDTD_VERSION "4.2")
-endif ()
-
mark_as_advanced (DocBookXML4_DTD_DIR DocBookXML4_DTD_VERSION)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/common/kde-localised.css.template new/kdoctools-4.98.0/common/kde-localised.css.template
--- old/kdoctools-4.97.0/common/kde-localised.css.template 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/common/kde-localised.css.template 1970-01-01 01:00:00.000000000 +0100
@@ -1,32 +0,0 @@
-/*
- KDE CSS for <**languagecountry**> HTML documentation (all media types).
- Copyright (C) 2000 <**authorname**>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- 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.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
- Send comments, suggestions, etc. to <**authorcontactdetails**>.
-*/
-
-/*
- These settings will override kde-default.css.
-
- Any updates should be validated, e.g. http://jigsaw.w3.org/css-validator/
-
- Check out http://www.richinstyle.com/ where many of the declarations and
- setup in the KDE CSS are obtained from. In fact, do not change anything
- without checking so on those pages whether it is wise to do.
-*/
-
-:lg(**language**) { }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/docs/checkXML5/man-checkXML5.1.docbook new/kdoctools-4.98.0/docs/checkXML5/man-checkXML5.1.docbook
--- old/kdoctools-4.97.0/docs/checkXML5/man-checkXML5.1.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/docs/checkXML5/man-checkXML5.1.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE">
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/docs/kf5options/man-kf5options.7.docbook new/kdoctools-4.98.0/docs/kf5options/man-kf5options.7.docbook
--- old/kdoctools-4.97.0/docs/kf5options/man-kf5options.7.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/docs/kf5options/man-kf5options.7.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE">
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/docs/meinproc5/man-meinproc5.8.docbook new/kdoctools-4.98.0/docs/meinproc5/man-meinproc5.8.docbook
--- old/kdoctools-4.97.0/docs/meinproc5/man-meinproc5.8.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/docs/meinproc5/man-meinproc5.8.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE"><!-- change language only here -->
]>
@@ -61,7 +61,6 @@
<arg choice="opt">KDE-options</arg>
<arg choice="opt">--cache<replaceable> file</replaceable></arg>
<arg choice="opt">--check</arg>
-<arg choice="opt">--htdig</arg>
<arg choice="opt">--srcdir</arg>
<arg choice="opt">--param <replaceable>key</replaceable>=<replaceable>value</replaceable></arg>
@@ -182,13 +181,6 @@
</listitem>
</varlistentry>
-<varlistentry>
-<term><option>--htdig</option></term>
-<listitem>
-<para>Create a ht://dig compatible index</para>
-</listitem>
-</varlistentry>
-
<varlistentry>
<term><option>-o</option>, <option>--output</option><parameter> file</parameter></term>
<listitem>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/docs/qt5options/man-qt5options.7.docbook new/kdoctools-4.98.0/docs/qt5options/man-qt5options.7.docbook
--- old/kdoctools-4.97.0/docs/qt5options/man-qt5options.7.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/docs/qt5options/man-qt5options.7.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE">
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/CMakeLists.txt new/kdoctools-4.98.0/src/CMakeLists.txt
--- old/kdoctools-4.97.0/src/CMakeLists.txt 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/CMakeLists.txt 2014-03-28 19:16:42.000000000 +0100
@@ -1,6 +1,6 @@
include_directories( ${LIBXML2_INCLUDE_DIR} ${LIBXSLT_INCLUDE_DIR} )
-set (_custom_dtd_kdex "customization/dtd/kdex.dtd")
+set (_custom_dtd_kdex "customization/dtd/kdedbx45.dtd")
configure_file(${_custom_dtd_kdex}.cmake ${CMAKE_CURRENT_BINARY_DIR}/${_custom_dtd_kdex} )
# WARNING: this is due to severe limitations on the windows platform to keep the dtd relocateable
# see the .xsl.cmake files for a more verbose explanation below
@@ -8,12 +8,12 @@
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_custom_dtd_kdex}
DESTINATION ${DATA_INSTALL_DIR}/kdoctools5/customization/dtd )
else()
+ get_filename_component(NORMALIZED_DTD_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}/kdoctools5/customization/dtd" ABSOLUTE)
# file(RELATIVE_PATH ...) returns wrong values for paths containing /../ (it doesn't normalize the path)
# To work around this we make sure the variable passed has all /../ elements
# removed using get_filename_component(... ABSOLUTE)
install(CODE
- "get_filename_component(NORMALIZED_INSTALL_PATH \"${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}/kdoctools5/customization/dtd\" ABSOLUTE)
- file(RELATIVE_PATH DocBookXML4_DTD_DIR \"${NORMALIZED_INSTALL_PATH}\" \"${DocBookXML4_DTD_DIR}\")
+ "file(RELATIVE_PATH DocBookXML4_DTD_DIR \"${NORMALIZED_DTD_INSTALL_PATH}\" \"${DocBookXML4_DTD_DIR}\")
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${_custom_dtd_kdex}.cmake ${CMAKE_CURRENT_BINARY_DIR}/${_custom_dtd_kdex}.install)"
)
get_filename_component(_custom_dtd_kdex_name ${_custom_dtd_kdex} NAME)
@@ -23,8 +23,16 @@
# needed by KIO, need to export it
add_library(KF5XsltKde STATIC xslt.cpp xslt_kde.cpp)
add_library(KF5::XsltKde ALIAS KF5XsltKde)
-target_link_libraries(KF5XsltKde Qt5::Core KF5::Archive)
-set_target_properties(KF5XsltKde PROPERTIES EXPORT_NAME XsltKde)
+target_link_libraries(KF5XsltKde
+ PUBLIC
+ Qt5::Core
+ PRIVATE
+ KF5::Archive
+)
+set_target_properties(KF5XsltKde PROPERTIES
+ POSITION_INDEPENDENT_CODE TRUE
+ EXPORT_NAME XsltKde
+)
target_include_directories(KF5XsltKde INTERFACE "$<INSTALL_INTERFACE:${INCLUDE_INSTALL_DIR}/XsltKde>")
@@ -39,8 +47,8 @@
# The cross compiling parts are commented out on purpose. Alex
if (CMAKE_CROSSCOMPILING)
-# set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc5 from a native build")
-# include(${IMPORT_MEINPROC4_EXECUTABLE})
+# set(IMPORT_MEINPROC5_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc5Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc5 from a native build")
+# include(${IMPORT_MEINPROC5_EXECUTABLE})
else ()
set_source_files_properties(xslt.cpp PROPERTIES COMPILE_FLAGS -DSIMPLE_XSLT )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/ca/user.entities new/kdoctools-4.98.0/src/customization/ca/user.entities
--- old/kdoctools-4.97.0/src/customization/ca/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/ca/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -18,14 +18,6 @@
<!ENTITY etc "<abbrev>etc.</abbrev>">
<!ENTITY IGU "<acronym>IGU</acronym>"><!-- English: &GUI; -->
<!ENTITY Intro "<keycap>Retorn</keycap>"><!-- English: &Enter; -->
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>Les icones del &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "Menú <guimenu>K</guimenu>">
<!ENTITY Maj "<keycap>Majús.</keycap>"><!-- English: &Shift; -->
<!ENTITY partman "<application>Gestor de particions del KDE</application>"> <!-- English: &partman; (KDE Partition Manager)-->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/catalog.xml new/kdoctools-4.98.0/src/customization/catalog.xml
--- old/kdoctools-4.97.0/src/customization/catalog.xml 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/catalog.xml 2014-03-28 19:16:42.000000000 +0100
@@ -31,10 +31,10 @@
<!-- DocBook -->
- <!-- DocBook 4.2 KDE Variant V1.1 -->
+ <!-- DocBook 4.5 KDE Variant V1.1 -->
- <public publicId="-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
- uri="dtd/kdex.dtd"/>
+ <public publicId="-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN"
+ uri="dtd/kdedbx45.dtd"/>
<public publicId="-//KDE//ELEMENTS DocBook XML Hierarchy Redeclarations 2 V1.0//EN"
uri="dtd/rdbhier2.elements"/>
<public publicId="-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.1//EN"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/da/user.entities new/kdoctools-4.98.0/src/customization/da/user.entities
--- old/kdoctools-4.97.0/src/customization/da/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/da/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -35,13 +35,6 @@
<!ENTITY ie "<abbrev>dvs.</abbrev>">
<!ENTITY infocenter "<application>Infocenter</application>">
<!ENTITY kcontrolcenter "<application>&kde;'s kontrolcenter</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'s K-ikon</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon">
<!ENTITY kmenu "<guimenu>K</guimenu>-menu">
<!ENTITY LMB "<mousebutton>venstre</mousebutton> museknap">
<!ENTITY MMB "<mousebutton>midterste</mousebutton> museknap">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/de/user.entities new/kdoctools-4.98.0/src/customization/de/user.entities
--- old/kdoctools-4.97.0/src/customization/de/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/de/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -22,13 +22,6 @@
<!ENTITY kcontrolcenter "<application>&kde;-Kontrollzentrum</application>">
<!ENTITY kde "K-Arbeitsumgebung" ><!-- kde -->
<!ENTITY khelpcenter-de "<application>&kde;-Hilfezentrum</application>" >
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>K-Symbol von &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon>-Symbol"><!-- kicon -->
<!ENTITY kmenu "<guimenu>K</guimenu>-Menü"> <!-- kmenu -->
<!ENTITY kwm "<application>kwm</application>">
<!ENTITY LMB "<mousebutton>linke</mousebutton> Maustaste">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/dtd/kdedbx45.dtd.cmake new/kdoctools-4.98.0/src/customization/dtd/kdedbx45.dtd.cmake
--- old/kdoctools-4.97.0/src/customization/dtd/kdedbx45.dtd.cmake 1970-01-01 01:00:00.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/dtd/kdedbx45.dtd.cmake 2014-03-28 19:16:42.000000000 +0100
@@ -0,0 +1,129 @@
+<!--
+ Document Type Definition for DocBook XML as used in the KDE documentation
+
+ Copyright (C) 2002 Frederik Fouvry
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation; either version 2
+ of the License, or (at your option) any later version.
+
+ 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.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+ Send suggestions, comments, etc. to the KDE docbook list
+ <kde-docbook(a)kde.org>.
+
+
+ USAGE
+
+ Refer to this DTD as
+
+ "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN"
+
+ For instance:
+
+ <!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN"
+ "customization/dtd/kdedbx45.dtd">
+
+ and use catalog.xml or docbook.cat as the catalog file.
+ Note: the system identifier is interpreted relative to the place
+ where it is defined, unless otherwise defined by the application you use.
+ If you have permanent internet access, you can use any URLs (and
+ you don't have to install docbook).
+
+ After a version number change, plenty of problems may occur because
+ of non-compatibilities (or DTDs not found, etc). That doesn't mean your
+ document is invalid; it just means that the reference DTD has changed
+ (new documentation and documentation updates). Check out the previous
+ version and point to the appropriate catalog or DTD and things should
+ work again (=still ;-).
+-->
+
+
+<!-- ============================================================= -->
+<!-- Modifications to the original DocBook DTD -->
+<!-- ============================================================= -->
+<!-- Declarations in this part should only *restrict* the DocBook
+ DTD -->
+
+<!-- copied from docbookx.dtd: these values are for
+ %xml.features; = "INCLUDE"
+ Files that define elements need them (currently only
+ modifications.elements) -->
+<!ENTITY % ho "">
+<!ENTITY % ubiq.inclusion "">
+<!ENTITY % beginpage.exclusion "">
+
+<!-- Modifications in pool
+ %rdbpool; is called in the DocBook DTD
+ NEEDS TO BE CHECKED ON CHANGES
+ -->
+<!ENTITY % rdbpool PUBLIC
+ "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.1//EN"
+ "rdbpool.elements" >
+<!ENTITY % dbpool.redecl.module "INCLUDE" >
+
+<!-- Modifications in hierarchy
+ %rdbhier2; is called in the DocBook DTD
+ NEEDS TO BE CHECKED ON CHANGES
+ -->
+<!ENTITY % rdbhier2 PUBLIC
+ "-//KDE//ELEMENTS DocBook XML Hierarchy Redeclarations 2 V1.0//EN"
+ "rdbhier2.elements" >
+<!ENTITY % dbhier.redecl2.module "INCLUDE" >
+
+<!-- For Java-style refentries
+ Based on DocBook 4.0. -->
+<!--ENTITY % jrefentry PUBLIC
+ "-//Norman Walsh//DTD JRefEntry V1.0//EN" >
+%jrefentry; -->
+
+<!-- Temporary solution -->
+<!ENTITY copy "(c)"> <!--=copyright sign-->
+<!ENTITY trade "[tm]"> <!--=trade mark sign-->
+<!ENTITY reg "(R)"> <!--/circledR =registered sign-->
+
+
+<!-- ============================================================= -->
+<!-- Original DocBook DTD -->
+<!-- ============================================================= -->
+
+<!ENTITY % DocBookDTD PUBLIC
+ "-//OASIS//DTD DocBook XML V4.5//EN"
+ "@DocBookXML4_DTD_DIR@/docbookx.dtd" >
+%DocBookDTD;
+
+
+<!-- ============================================================= -->
+<!-- Modifications to the original DocBook DTD -->
+<!-- ============================================================= -->
+<!-- ONLY to supply declarations that were switched off in the
+ first "Modifications" section -->
+
+<!ENTITY % kde.modifications PUBLIC
+ "-//KDE//ELEMENTS DocBook XML Modifications V1.1//EN"
+ "modifications.elements" >
+%kde.modifications;
+
+
+<!-- ============================================================= -->
+<!-- Extensions to the DocBook DTD -->
+<!-- ============================================================= -->
+<!-- Is empty, except for what could go in dbgenent.mod -->
+
+<!ENTITY % kde.general.entities PUBLIC
+ "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.2//EN"
+ "../entities/general.entities" >
+%kde.general.entities;
+
+<!ENTITY % kde.i18n.entities PUBLIC
+ "-//KDE//ENTITIES DocBook XML Localisation Entity Declarations V1.0//EN"
+ "../entities/l10n.entities" >
+%kde.i18n.entities;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/dtd/kdex.dtd.cmake new/kdoctools-4.98.0/src/customization/dtd/kdex.dtd.cmake
--- old/kdoctools-4.97.0/src/customization/dtd/kdex.dtd.cmake 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/dtd/kdex.dtd.cmake 1970-01-01 01:00:00.000000000 +0100
@@ -1,129 +0,0 @@
-<!--
- Document Type Definition for DocBook XML as used in the KDE documentation
-
- Copyright (C) 2002 Frederik Fouvry
-
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License
- as published by the Free Software Foundation; either version 2
- of the License, or (at your option) any later version.
-
- 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.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
- Send suggestions, comments, etc. to the KDE docbook list
- <kde-docbook(a)kde.org>.
-
-
- USAGE
-
- Refer to this DTD as
-
- "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
-
- For instance:
-
- <!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
- "customization/dtd/kdex.dtd">
-
- and use catalog.xml or docbook.cat as the catalog file.
- Note: the system identifier is interpreted relative to the place
- where it is defined, unless otherwise defined by the application you use.
- If you have permanent internet access, you can use any URLs (and
- you don't have to install docbook).
-
- After a version number change, plenty of problems may occur because
- of non-compatibilities (or DTDs not found, etc). That doesn't mean your
- document is invalid; it just means that the reference DTD has changed
- (new documentation and documentation updates). Check out the previous
- version and point to the appropriate catalog or DTD and things should
- work again (=still ;-).
--->
-
-
-<!-- ============================================================= -->
-<!-- Modifications to the original DocBook DTD -->
-<!-- ============================================================= -->
-<!-- Declarations in this part should only *restrict* the DocBook
- DTD -->
-
-<!-- copied from docbookx.dtd: these values are for
- %xml.features; = "INCLUDE"
- Files that define elements need them (currently only
- modifications.elements) -->
-<!ENTITY % ho "">
-<!ENTITY % ubiq.inclusion "">
-<!ENTITY % beginpage.exclusion "">
-
-<!-- Modifications in pool
- %rdbpool; is called in the DocBook DTD
- NEEDS TO BE CHECKED ON CHANGES
- -->
-<!ENTITY % rdbpool PUBLIC
- "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.1//EN"
- "rdbpool.elements" >
-<!ENTITY % dbpool.redecl.module "INCLUDE" >
-
-<!-- Modifications in hierarchy
- %rdbhier2; is called in the DocBook DTD
- NEEDS TO BE CHECKED ON CHANGES
- -->
-<!ENTITY % rdbhier2 PUBLIC
- "-//KDE//ELEMENTS DocBook XML Hierarchy Redeclarations 2 V1.0//EN"
- "rdbhier2.elements" >
-<!ENTITY % dbhier.redecl2.module "INCLUDE" >
-
-<!-- For Java-style refentries
- Based on DocBook 4.0. -->
-<!--ENTITY % jrefentry PUBLIC
- "-//Norman Walsh//DTD JRefEntry V1.0//EN" >
-%jrefentry; -->
-
-<!-- Temporary solution -->
-<!ENTITY copy "(c)"> <!--=copyright sign-->
-<!ENTITY trade "[tm]"> <!--=trade mark sign-->
-<!ENTITY reg "(R)"> <!--/circledR =registered sign-->
-
-
-<!-- ============================================================= -->
-<!-- Original DocBook DTD -->
-<!-- ============================================================= -->
-
-<!ENTITY % DocBookDTD PUBLIC
- "-//OASIS//DTD DocBook XML V4.2//EN"
- "@DocBookXML4_DTD_DIR@/docbookx.dtd" >
-%DocBookDTD;
-
-
-<!-- ============================================================= -->
-<!-- Modifications to the original DocBook DTD -->
-<!-- ============================================================= -->
-<!-- ONLY to supply declarations that were switched off in the
- first "Modifications" section -->
-
-<!ENTITY % kde.modifications PUBLIC
- "-//KDE//ELEMENTS DocBook XML Modifications V1.1//EN"
- "modifications.elements" >
-%kde.modifications;
-
-
-<!-- ============================================================= -->
-<!-- Extensions to the DocBook DTD -->
-<!-- ============================================================= -->
-<!-- Is empty, except for what could go in dbgenent.mod -->
-
-<!ENTITY % kde.general.entities PUBLIC
- "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.2//EN"
- "../entities/general.entities" >
-%kde.general.entities;
-
-<!ENTITY % kde.i18n.entities PUBLIC
- "-//KDE//ENTITIES DocBook XML Localisation Entity Declarations V1.0//EN"
- "../entities/l10n.entities" >
-%kde.i18n.entities;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/el/user.entities new/kdoctools-4.98.0/src/customization/el/user.entities
--- old/kdoctools-4.97.0/src/customization/el/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/el/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,14 +19,6 @@
<!ENTITY ie "<abbrev>δηλ.</abbrev>">
<!ENTITY infocenter "<application>Κέντρο πληροφοριών</application>">
<!ENTITY kcontrolcenter "<application>Κέντρο ελέγχου του &kde;</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'s K-icon</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> menu">
<!ENTITY LMB "<mousebutton>αριστερό</mousebutton> κλικ ποντικιού">
<!ENTITY MMB "<mousebutton>μεσαίο</mousebutton> κλικ ποντικιού">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/en/user.entities new/kdoctools-4.98.0/src/customization/en/user.entities
--- old/kdoctools-4.97.0/src/customization/en/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/en/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,14 +19,6 @@
<!ENTITY ie "<abbrev>i.e.</abbrev>">
<!ENTITY infocenter "<application>Info Center</application>">
<!ENTITY kcontrolcenter "<application>&kde; Control Center</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'s K-icon</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> menu">
<!ENTITY LMB "<mousebutton>left</mousebutton> mouse button">
<!ENTITY MMB "<mousebutton>middle</mousebutton> mouse button">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/en-GB/user.entities new/kdoctools-4.98.0/src/customization/en-GB/user.entities
--- old/kdoctools-4.97.0/src/customization/en-GB/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/en-GB/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -20,14 +20,6 @@
<!ENTITY ie "<abbrev>i.e.</abbrev>">
<!ENTITY kcontrolcenter "<application>&kde; Control Centre</application>">
<!ENTITY khelpcenter "<application>KHelpCentre</application>">
-<!ENTITY kicon "
-<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'s K-icon</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> menu">
<!ENTITY LMB "<mousebutton>left</mousebutton> mouse button">
<!ENTITY MMB "<mousebutton>middle</mousebutton> mouse button">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/eo/user.entities new/kdoctools-4.98.0/src/customization/eo/user.entities
--- old/kdoctools-4.97.0/src/customization/eo/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/eo/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,13 +19,6 @@
<!ENTITY kcc "<application>Stircentro de KDE</application>" ><!-- kcc -->
<!ENTITY kcontrolcenter "<application>Stircentro de &kde;</application>">
<!ENTITY khelpcenter "<application>Helpcentro</application>" >
-<!ENTITY kicon '<guiicon>
-<inlinemediaobject>
- <objectinfo><title>La ikono K de &kde;</title></objectinfo>
- <imageobject><imagedata fileref="common/kmenu.png" format="PNG"/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
- </guiicon> icon'><!-- if image is localised, then entityref should be used instead of fileref -->
<!ENTITY kmenu "menuo <guimenu>K</guimenu>">
<!ENTITY LMB "<mousebutton>musbutono maldekstra</mousebutton>">
<!ENTITY MMB "<mousebutton>musbutono meza</mousebutton>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/es/user.entities new/kdoctools-4.98.0/src/customization/es/user.entities
--- old/kdoctools-4.97.0/src/customization/es/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/es/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -22,13 +22,6 @@
<!ENTITY kcc "<application>Centro de control de KDE</application>" ><!-- kcc -->
<!ENTITY kcontrolcenter "<application>Centro de control de &kde;</application>">
<!ENTITY khelpcenter "<application>Centro de ayuda</application>" >
-<!ENTITY kicon '<guiicon>
-<inlinemediaobject>
- <objectinfo><title>El icono K de &kde;</title></objectinfo>
- <imageobject><imagedata fileref="common/kmenu.png" format="PNG"/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
- </guiicon> icon'><!-- if image is localised, then entityref should be used instead of fileref -->
<!ENTITY kiosktool "<application>Herramienta de administración KIOSK</application>">
<!ENTITY konversation "<application>Konversation</application>">
<!ENTITY kubuntu "<application>Kubuntu</application>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/et/user.entities new/kdoctools-4.98.0/src/customization/et/user.entities
--- old/kdoctools-4.97.0/src/customization/et/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/et/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -37,14 +37,6 @@
<!ENTITY infocenter "<application>Infokeskus</application>">
<!ENTITY kcontrolcenter "<application>&kde; juhtimiskeskus</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde; K-ikoon</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> menüü">
<!ENTITY dpi '<acronym>dpi</acronym>'>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/fr/user.entities new/kdoctools-4.98.0/src/customization/fr/user.entities
--- old/kdoctools-4.97.0/src/customization/fr/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/fr/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -401,14 +401,6 @@
<!ENTITY SE "système d'exploitation"> <!-- English: &OS; -->
<!ENTITY Tab "<keycap>Tab</keycap>"> <!-- English: Tab -->
-<!ENTITY iconek "icône <guiicon>
-<inlinemediaobject>
- <objectinfo><title>Icône K de &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon>"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY menuk "menu <guimenu>K</guimenu>">
<!ENTITY partman "Gestionnaire de partitions de &kde;"> <!-- English: &partman; -->
<!ENTITY krfb_fr "Partage de bureau"> <!--English: &krfb; -->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/gl/user.entities new/kdoctools-4.98.0/src/customization/gl/user.entities
--- old/kdoctools-4.97.0/src/customization/gl/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/gl/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -30,13 +30,6 @@
<!ENTITY Shift "<keycap>Maiúsc</keycap>">
<!ENTITY systemsettings "<application>Configuración do Sistema</application>">
<!ENTITY Tab "<keycap>Tab</keycap>">
-<!ENTITY kicon '<guiicon>
-<inlinemediaobject>
- <objectinfo><title>O ícone K de &kde;</title></objectinfo>
- <imageobject><imagedata fileref="common/kmenu.png" format="PNG"/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
- </guiicon> icon'>
<!ENTITY kmenu "menú <guimenu>K</guimenu>">
<!ENTITY kinfocenter "<application>Centro de información do KDE</application>" >
<!ENTITY ksystemlog "<application>KSystemLog</application>" >
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/htdig_index.xsl new/kdoctools-4.98.0/src/customization/htdig_index.xsl
--- old/kdoctools-4.97.0/src/customization/htdig_index.xsl 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/htdig_index.xsl 1970-01-01 01:00:00.000000000 +0100
@@ -1,59 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- version='1.0'>
-
-<xsl:template match="*">
- <!-- xsl:message>
- <xsl:text>No template matches </xsl:text>
- <xsl:value-of select="name(.)"/>
- <xsl:text>.</xsl:text>
- </xsl:message -->
- <xsl:apply-templates/>
-</xsl:template>
-
-<xsl:template match="keywordset/keyword">
- <entry header="10">
- <xsl:apply-templates/>
- </entry>
-</xsl:template>
-
-<xsl:template match="book/title|bookinfo/title|abstract">
- <entry header="5">
- <xsl:apply-templates/>
- </entry>
-</xsl:template>
-
-<xsl:template match="chapter/title">
- <entry header="4">
- <xsl:apply-templates/>
- </entry>
-</xsl:template>
-
-<xsl:template match="sect1/title">
- <entry header="3">
- <xsl:apply-templates/>
- </entry>
-</xsl:template>
-
-<xsl:template match="sect*/title|emphasis">
- <entry header="2">
- <xsl:apply-templates/>
- </entry>
-</xsl:template>
-
-<xsl:template match="application|guilabel|guiicon|menuchoice|guibutton|guisubmenu|guimenuitem|term|guimenu|literal|acronym">
- <entry header="1">
- <xsl:apply-templates/>
- </entry>
-</xsl:template>
-
-<xsl:template match="book">
- <entry header="0">
- <xsl:apply-templates/>
- </entry>
-</xsl:template>
-
-<xsl:template match="date|releaseinfo|anchor|imagedata">
-</xsl:template>
-
-</xsl:stylesheet>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/it/user.entities new/kdoctools-4.98.0/src/customization/it/user.entities
--- old/kdoctools-4.97.0/src/customization/it/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/it/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,14 +19,6 @@
<!ENTITY ie "cioè">
<!ENTITY infocenter "<application>Centro d'informazione</application>">
<!ENTITY kcontrolcenter "<application>Centro di controllo di &kde;</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>icona K di &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "menu <guimenu>K</guimenu>">
<!ENTITY LMB "tasto <mousebutton>sinistro</mousebutton> del mouse">
<!ENTITY MMB "tasto <mousebutton>centrale</mousebutton> del mouse">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/ko/user.entities new/kdoctools-4.98.0/src/customization/ko/user.entities
--- old/kdoctools-4.97.0/src/customization/ko/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/ko/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -18,14 +18,6 @@
<!ENTITY FAQ '<acronym>FAQ</acronym>'>
<!ENTITY infocenter "<application>정보 센터</application>">
<!ENTITY kcontrolcenter "<application>&kde; 제어판</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;의 K 아이콘</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> 아이콘"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> 메뉴">
<!ENTITY LMB "<mousebutton>왼쪽</mousebutton> 마우스 단추">
<!ENTITY MMB "<mousebutton>가운데</mousebutton> 마우스 단추">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/nds/user.entities new/kdoctools-4.98.0/src/customization/nds/user.entities
--- old/kdoctools-4.97.0/src/customization/nds/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/nds/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -36,13 +36,6 @@
<!ENTITY kcontrolcenter "<application>&kde;-Kuntrullzentrum</application>">
<!ENTITY kde "K-Schriefdischümgeven" ><!-- kde -->
<!ENTITY khelpcenter-de "<application>&kde;-Hülpzentrum</application>" >
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>K-Symbool vun &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon>-Symbool"><!-- kicon -->
<!ENTITY kmenu "<guimenu>K</guimenu>-Menü"> <!-- kmenu -->
<!ENTITY kwm "<application>kwm</application>">
<!ENTITY LMB "<mousebutton>linke</mousebutton> Muusknoop">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/nl/user.entities new/kdoctools-4.98.0/src/customization/nl/user.entities
--- old/kdoctools-4.97.0/src/customization/nl/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/nl/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -141,14 +141,6 @@
<!ENTITY Ctrl "<keycap>Ctrl</keycap>">
<!ENTITY enz "<abbrev>enz.</abbrev>">
<!ENTITY etc "<abbrev>etc.</abbrev>"> <!-- enz is beter -->
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'s K-pictogram</title></objectinfo>
- <imageobject><imagedata fileref='icon-file-to-be-filled-in' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon>"><!-- if image is localised, then entityref should be used instead
- of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu>-menu">
<!ENTITY LMB "<mousebutton>linkermuisknop</mousebutton>">
<!ENTITY MMB "<mousebutton>middelstemuisknop</mousebutton>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/nn/user.entities new/kdoctools-4.98.0/src/customization/nn/user.entities
--- old/kdoctools-4.97.0/src/customization/nn/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/nn/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -40,14 +40,6 @@
<!ENTITY ie "<abbrev>dvs.</abbrev>">
<!ENTITY infocenter "<application>Infosenter</application>">
<!ENTITY kcontrolcenter "<application>&kde; Kontrollsenter</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>Ikonet til &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> meny">
<!ENTITY LGPL "Lesser General Public License"><!-- Name of LGPL license -->
<!ENTITY LMB "<mousebutton>venstre</mousebutton> museknapp">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/pl/user.entities new/kdoctools-4.98.0/src/customization/pl/user.entities
--- old/kdoctools-4.97.0/src/customization/pl/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/pl/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,15 +19,6 @@
<!ENTITY Shift "<keycap>Shift</keycap>"> <!-- English: &Shift; -->
<!ENTITY Tab "<keycap>Tab</keycap>">
-<!ENTITY kicon "
-<guiicon>
-<inlinemediaobject>
- <objectinfo><title>Ikona K &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon>"><!-- if image is localised, then entityref should be used instead of fileref -->
-
<!ENTITY akregator-mianownik '<application>Akregator</application>'>
<!ENTITY akregator-dopelniacz '<application>Akregatora</application>'>
<!ENTITY akregator-celownik '<application>Akregatorowi</application>'>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/pt/user.entities new/kdoctools-4.98.0/src/customization/pt/user.entities
--- old/kdoctools-4.97.0/src/customization/pt/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/pt/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -30,12 +30,5 @@
<!ENTITY OS "sistema operativo">
<!ENTITY Shift "<keycap>Shift</keycap>">
<!ENTITY Tab "<keycap>Tab</keycap>">
-<!ENTITY kicon '<guiicon>
-<inlinemediaobject>
- <objectinfo><title>O ícone K do &kde;</title></objectinfo>
- <imageobject><imagedata fileref="common/kmenu.png" format="PNG"/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
- </guiicon> icon'>
<!ENTITY kmenu "menu <guimenu>K</guimenu>">
<!ENTITY kinfocenter "<application>Centro de Informação do KDE</application>" >
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/pt-BR/user.entities new/kdoctools-4.98.0/src/customization/pt-BR/user.entities
--- old/kdoctools-4.97.0/src/customization/pt-BR/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/pt-BR/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -20,14 +20,6 @@
<!ENTITY ie "isto é">
<!ENTITY infocenter "<application>Centro de informação</application>">
<!ENTITY kcontrolcenter "<application>Centro de Controle do &kde;</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>Ícone K do &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "menu <guimenu>K</guimenu>">
<!ENTITY BEM "botão <mousebutton>esquerdo</mousebutton> do mouse"> <!-- English: &LMB; -->
<!ENTITY LMB "botão <mousebutton>esquerdo</mousebutton> do mouse">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/ro/entities/underLGPL.docbook new/kdoctools-4.98.0/src/customization/ro/entities/underLGPL.docbook
--- old/kdoctools-4.97.0/src/customization/ro/entities/underLGPL.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/ro/entities/underLGPL.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,3 +1,3 @@
-<para>Acest program este licen�iat sub termenii <ulink
-url="common/lgpl-license.html">Licen�ei Publice Generale Permisive GNU</ulink>
+<para>Acest program este licenţiat sub termenii <ulink
+url="common/lgpl-license.html">Licenţei Publice Generale Permisive GNU</ulink>
(GNU Lesser General Public License).</para>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/ru/user.entities new/kdoctools-4.98.0/src/customization/ru/user.entities
--- old/kdoctools-4.97.0/src/customization/ru/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/ru/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -21,14 +21,6 @@
(you may adapt the entity's name to transliterated Russian as well)
-->
<!ENTITY kcontrolcenter "<application>&kde; Control Center</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>K-нопка</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu>-меню">
<!ENTITY Shift "<keycap>Shift</keycap>">
<!ENTITY Alt "<keycap>Alt</keycap>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/sk/user.entities new/kdoctools-4.98.0/src/customization/sk/user.entities
--- old/kdoctools-4.97.0/src/customization/sk/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/sk/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -13,12 +13,5 @@
<!ENTITY Alt "<keycap>Alt</keycap>">
<!ENTITY Esc "<keycap>Esc</keycap>">
<!ENTITY Backspace "<keycap>Backspace</keycap>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>veľké K</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
- </inlinemediaobject>
- </guiicon>-Symbol"><!-- kicon -->
<!ENTITY kmenu "<guimenu>K</guimenu> menu"> <!-- kmenu -->
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/sq/user.entities new/kdoctools-4.98.0/src/customization/sq/user.entities
--- old/kdoctools-4.97.0/src/customization/sq/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/sq/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,14 +19,6 @@
<!ENTITY ie "<abbrev>i.e.</abbrev>">
<!ENTITY infocenter "<application>Info Center</application>">
<!ENTITY kcontrolcenter "<application>&kde; Control Center</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'s K-icon</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> menu">
<!ENTITY LMB "<mousebutton>left</mousebutton> mouse button">
<!ENTITY MMB "<mousebutton>middle</mousebutton> mouse button">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/th/user.entities new/kdoctools-4.98.0/src/customization/th/user.entities
--- old/kdoctools-4.97.0/src/customization/th/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/th/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,14 +19,6 @@
<!ENTITY ie "<abbrev>คือ</abbrev>">
<!ENTITY infocenter "<application>ศูนย์ข้อมูล</application>">
<!ENTITY kcontrolcenter "<application>ศูนย์ควบคุม &kde;</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'s K-icon</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "เมนู <guimenu>K</guimenu>">
<!ENTITY LMB "ปุ่มเมาส์<mousebutton>ซ้าย</mousebutton>">
<!ENTITY MMB "ปุ่มเมาส์<mousebutton>กลาง</mousebutton>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/tr/entities/underArtisticLicense.docbook new/kdoctools-4.98.0/src/customization/tr/entities/underArtisticLicense.docbook
--- old/kdoctools-4.97.0/src/customization/tr/entities/underArtisticLicense.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/tr/entities/underArtisticLicense.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,2 +1,2 @@
-<para>Bu yaz�l�m <ulink
-url="common/artistic-license.html">Sanatsal Lisans</ulink> alt�nda da��t�lmaktad�r.</para>
+<para>Bu yazýlým <ulink
+url="common/artistic-license.html">Sanatsal Lisans</ulink> altýnda daðýtýlmaktadýr.</para>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/tr/entities/underBSDLicense.docbook new/kdoctools-4.98.0/src/customization/tr/entities/underBSDLicense.docbook
--- old/kdoctools-4.97.0/src/customization/tr/entities/underBSDLicense.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/tr/entities/underBSDLicense.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,2 +1,2 @@
-<para>Bu yaz�l�m, <ulink
-url="common/bsd-license.html">BSD Lisans�</ulink> alt�nda da��t�lmaktad�r.</para>
+<para>Bu yazýlým, <ulink
+url="common/bsd-license.html">BSD Lisansý</ulink> altýnda daðýtýlmaktadýr.</para>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/tr/entities/underX11License.docbook new/kdoctools-4.98.0/src/customization/tr/entities/underX11License.docbook
--- old/kdoctools-4.97.0/src/customization/tr/entities/underX11License.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/tr/entities/underX11License.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,2 +1,2 @@
-<para>Bu yaz�l�m <ulink
-url="common/x11-license.html">X11 Lisans�</ulink> alt�nda da��t�lmaktad�r.</para>
+<para>Bu yazýlým <ulink
+url="common/x11-license.html">X11 Lisansý</ulink> altýnda daðýtýlmaktadýr.</para>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/tr/entities/update-doc.docbook new/kdoctools-4.98.0/src/customization/tr/entities/update-doc.docbook
--- old/kdoctools-4.97.0/src/customization/tr/entities/update-doc.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/tr/entities/update-doc.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,4 +1,4 @@
-<!--<para>Kurulumdan sonra bu belgenin g�ncel s�r�mleri ��km�� olabilir.
+<!--<para>Kurulumdan sonra bu belgenin güncel sürümleri çýkmýþ olabilir.
<ulink
url="http://docs.kde.org/page#&kappname;">http://docs.kde.org/page#&kappname;</ulink>
-adresine bakarak daha yeni bir s�r�m�n olup olmad���n� kontrol edin.</para> -->
+adresine bakarak daha yeni bir sürümün olup olmadýðýný kontrol edin.</para> -->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/tr/user.entities new/kdoctools-4.98.0/src/customization/tr/user.entities
--- old/kdoctools-4.97.0/src/customization/tr/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/tr/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -20,14 +20,6 @@
<!ENTITY ie "başka bir deyişle">
<!ENTITY kcontrolcenter "<application>&kde; Denetim Merkezi</application>">
<!ENTITY khelpcenter "<application>KDE Yardım Merkezi</application>">
-<!ENTITY kicon "
-<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde;'nin K-simgesi</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> menü">
<!ENTITY LMB "farenin <mousebutton>sol</mousebutton> tuşu">
<!ENTITY MMB "farenin <mousebutton>orta</mousebutton> tuşu">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/uk/user.entities new/kdoctools-4.98.0/src/customization/uk/user.entities
--- old/kdoctools-4.97.0/src/customization/uk/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/uk/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -19,14 +19,6 @@
<!ENTITY ie "<abbrev>тобто</abbrev>">
<!ENTITY infocenter "<application>Центр довідки</application>">
<!ENTITY kcontrolcenter "<application>Центр керування &kde;</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>K-піктограма &kde;</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K-меню</guimenu>">
<!ENTITY LMB "<mousebutton>ліва</mousebutton> кнопка мишки">
<!ENTITY MMB "<mousebutton>середня</mousebutton> кнопка мишки">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/zh-CN/user.entities new/kdoctools-4.98.0/src/customization/zh-CN/user.entities
--- old/kdoctools-4.97.0/src/customization/zh-CN/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/zh-CN/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -8,30 +8,22 @@
<!ENTITY Alt "<keycap>Alt</keycap>">
<!ENTITY Backspace "<keycap>Backspace</keycap>">
-<!ENTITY cdrom '<hardware>CD-ROM ������</hardware>'>
+<!ENTITY cdrom '<hardware>CD-ROM 驱动器</hardware>'>
<!ENTITY Ctrl "<keycap>Ctrl</keycap>">
<!ENTITY dpi '<acronym>dpi</acronym>'>
-<!ENTITY eg "<abbrev>��</abbrev>">
+<!ENTITY eg "<abbrev>如</abbrev>">
<!ENTITY Enter "<keycap>Enter</keycap>">
<!ENTITY Esc "<keycap>Esc</keycap>">
-<!ENTITY etc "<abbrev>�ȵ�</abbrev>">
-<!ENTITY FAQ '����������'>
+<!ENTITY etc "<abbrev>等等</abbrev>">
+<!ENTITY FAQ '常见问题解答'>
<!ENTITY ie "<abbrev>i.e.</abbrev>">
-<!ENTITY infocenter "<application>��Ϣ����</application>">
-<!ENTITY kcontrolcenter "<application>&kde; ��������</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>&kde; �� K ͼ��</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> icon"><!-- if image is localised, then entityref should be used
- instead of fileref -->
-<!ENTITY kmenu "<guimenu>K</guimenu> �˵�">
-<!ENTITY LMB "���<mousebutton>��</mousebutton>��">
-<!ENTITY MMB "���<mousebutton>��</mousebutton>��">
-<!ENTITY OS "����ϵͳ"><!-- <acronym>OS</acronym>-->
-<!ENTITY RMB "���<mousebutton>��</mousebutton>��">
+<!ENTITY infocenter "<application>信息中心</application>">
+<!ENTITY kcontrolcenter "<application>&kde; 控制中心</application>">
+<!ENTITY kmenu "<guimenu>K</guimenu> 菜单">
+<!ENTITY LMB "鼠标<mousebutton>左</mousebutton>键">
+<!ENTITY MMB "鼠标<mousebutton>中</mousebutton>键">
+<!ENTITY OS "操作系统"><!-- <acronym>OS</acronym>-->
+<!ENTITY RMB "鼠标<mousebutton>右</mousebutton>键">
<!ENTITY Shift "<keycap>Shift</keycap>">
-<!ENTITY systemtray "<application>ϵͳ����</application>">
+<!ENTITY systemtray "<application>系统托盘</application>">
<!ENTITY Tab "<keycap>Tab</keycap>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/customization/zh-TW/user.entities new/kdoctools-4.98.0/src/customization/zh-TW/user.entities
--- old/kdoctools-4.97.0/src/customization/zh-TW/user.entities 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/customization/zh-TW/user.entities 2014-03-28 19:16:42.000000000 +0100
@@ -20,14 +20,6 @@
<!ENTITY infocenter "<application>KDE 資訊中心</application>">
<!ENTITY kcontrolcenter "<application>KDE 控制中心</application>">
<!ENTITY khelpcenter "<application>KDE 輔助中心</application>">
-<!ENTITY kicon "<guiicon>
-<inlinemediaobject>
- <objectinfo><title>KDE 的 K 圖示</title></objectinfo>
- <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject>
- <textobject><phrase>K</phrase></textobject>
-</inlinemediaobject>
-</guiicon> 圖示"><!-- if image is localised, then entityref should be used
- instead of fileref -->
<!ENTITY kmenu "<guimenu>K</guimenu> 選單">
<!ENTITY LMB "滑鼠<mousebutton>左鍵</mousebutton>">
<!ENTITY MMB "滑鼠<mousebutton>中鍵</mousebutton>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/man-template.docbook new/kdoctools-4.98.0/src/man-template.docbook
--- old/kdoctools-4.97.0/src/man-template.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/man-template.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE">
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/meinproc.cpp new/kdoctools-4.98.0/src/meinproc.cpp
--- old/kdoctools-4.97.0/src/meinproc.cpp 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/meinproc.cpp 2014-03-28 19:16:42.000000000 +0100
@@ -4,6 +4,7 @@
#include "meinproc_common.h"
#include <QCoreApplication>
+#include <QtCore/QDebug>
#include <QtCore/QString>
#include <QtCore/QFile>
#include <QtCore/QDir>
@@ -44,6 +45,8 @@
typedef QList<MyPair> PairList;
+#define DIE(x) do { qCritical() << "Error:" << x; exit(1); } while (0)
+
void parseEntry(PairList &list, xmlNodePtr cur, int base)
{
if (!cur) {
@@ -105,7 +108,6 @@
parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("stylesheet"), QCoreApplication::translate("main", "Stylesheet to use"), QStringLiteral("xsl")));
parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("stdout"), QCoreApplication::translate("main", "Output whole document to stdout")));
parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("o") << QStringLiteral("output"), QCoreApplication::translate("main", "Output whole document to file"), QStringLiteral("file")));
- parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("htdig"), QCoreApplication::translate("main", "Create a ht://dig compatible index")));
parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("check"), QCoreApplication::translate("main", "Check the document for validity")));
parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("cache"), QCoreApplication::translate("main", "Create a cache file for the document"), QStringLiteral("file")));
parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("srcdir"), QCoreApplication::translate("main", "Set the srcdir, for kdelibs"), QStringLiteral("dir")));
@@ -131,21 +133,23 @@
const QString checkFilename = parser.positionalArguments().first();
CheckFileResult ckr = checkFile(checkFilename);
- if (ckr != CheckFileSuccess) {
- if (ckr == CheckFileDoesNotExist) {
- qWarning() << "File '" << checkFilename << "' does not exist.";
- } else if (ckr == CheckFileIsNotFile) {
- qWarning() << "'" << checkFilename << "' is not a file.";
- } else if (ckr == CheckFileIsNotReadable) {
- qWarning() << "File '" << checkFilename << "' is not readable.";
- }
- return (2);
+ switch (ckr) {
+ case CheckFileSuccess:
+ break;
+ case CheckFileDoesNotExist:
+ DIE("File" << checkFilename << "does not exist.");
+ case CheckFileIsNotFile:
+ DIE(checkFilename << "is not a file.");
+ case CheckFileIsNotReadable:
+ DIE("File" << checkFilename << "is not readable.");
}
if (parser.isSet(QStringLiteral("check"))) {
-
- QByteArray catalogs;
- catalogs += getKDocToolsCatalogs().join(" ").toLocal8Bit();
+ QStringList lst = getKDocToolsCatalogs();
+ if (lst.isEmpty()) {
+ DIE("Could not find kdoctools catalogs");
+ }
+ QByteArray catalogs = lst.join(" ").toLocal8Bit();
QString exe;
#if defined( XMLLINT )
exe = QStringLiteral(XMLLINT);
@@ -155,11 +159,13 @@
}
CheckResult cr = check(checkFilename, exe, catalogs);
- if (cr != CheckSuccess) {
- if (cr == CheckNoXmllint) {
- qWarning() << "couldn't find xmllint";
- }
- return 1;
+ switch (cr) {
+ case CheckSuccess:
+ break;
+ case CheckNoXmllint:
+ DIE("Could not find xmllint");
+ case CheckNoOut:
+ DIE("`xmllint --noout` outputted text");
}
}
@@ -167,16 +173,6 @@
xmlLoadExtDtdDefaultValue = 1;
QVector<const char *> params;
-#ifndef Q_OS_WIN
- // libxslt parses the path given to outputFile as XPath expression which fails
- // see libxslt/xsltEvalUserParams
- // this parameter is used only by share/kdoctools5/docbook/xsl/html/math.xsl
- // and is not supported on windows yet
- if (parser.isSet(QStringLiteral("output"))) {
- params.append(qstrdup("outputFile"));
- params.append(qstrdup(parser.value(QStringLiteral("output")).toLocal8Bit().constData()));
- }
-#endif
{
const QStringList paramList = parser.values(QStringLiteral("param"));
QStringList::ConstIterator it = paramList.constBegin();
@@ -185,8 +181,7 @@
const QString tuple = *it;
const int ch = tuple.indexOf(QLatin1Char('='));
if (ch == -1) {
- qWarning() << "Key-Value tuple '" << tuple << "' lacks a '='!";
- return (2);
+ DIE("Key-Value tuple" << tuple << "lacks a '='!");
}
params.append(qstrdup(tuple.left(ch).toUtf8().constData()));
params.append(qstrdup(tuple.mid(ch + 1).toUtf8().constData()));
@@ -194,16 +189,15 @@
}
params.append(NULL);
- bool index = parser.isSet(QStringLiteral("htdig"));
QString tss = parser.value(QStringLiteral("stylesheet"));
if (tss.isEmpty()) {
tss = QStringLiteral("customization/kde-chunk.xsl");
}
- if (index) {
- tss = QStringLiteral("customization/htdig_index.xsl");
- }
- tss = locateFileInDtdResource(tss);
+ QString tssPath = locateFileInDtdResource(tss);
+ if (tssPath.isEmpty()) {
+ DIE("Unable to find the stylesheet named" << tss << "in dtd resources");
+ }
#ifndef MEINPROC_NO_KARCHIVE
const QString cache = parser.value(QStringLiteral("cache"));
#else
@@ -215,59 +209,21 @@
const bool usingOutput = parser.isSet(QStringLiteral("output"));
const QString outputOption = parser.value(QStringLiteral("output"));
- if (index) {
- xsltStylesheetPtr style_sheet =
- xsltParseStylesheetFile((const xmlChar *)tss.toLatin1().data());
-
- if (style_sheet != NULL) {
-
- xmlDocPtr doc = xmlParseFile(QFile::encodeName(checkFilename).constData());
-
- xmlDocPtr res = xsltApplyStylesheet(style_sheet, doc, ¶ms[0]);
-
- xmlFreeDoc(doc);
- xsltFreeStylesheet(style_sheet);
- if (res != NULL) {
- xmlNodePtr cur = xmlDocGetRootElement(res);
- if (!cur || xmlStrcmp(cur->name, (const xmlChar *) "entry")) {
- fprintf(stderr, "document of the wrong type, root node != entry");
- xmlFreeDoc(res);
- return (1);
- }
- PairList list;
- parseEntry(list, cur, 0);
- int wi = 0;
- for (PairList::ConstIterator it = list.constBegin(); it != list.constEnd();
- ++it, ++wi)
- fprintf(stdout, "w\t%s\t%d\t%d\n", (*it).word.toUtf8().data(),
- 1000 * wi / list.count(), (*it).base);
-
- xmlFreeDoc(res);
- } else {
- qWarning() << "couldn't parse document " << checkFilename;
- }
- } else {
- qWarning() << "couldn't parse style sheet " << tss;
- }
-
- } else {
- QString output = transform(checkFilename, tss, params);
- if (output.isEmpty()) {
- fprintf(stderr, "unable to parse %s\n", checkFilename.toLocal8Bit().data());
- return (1);
- }
+ QString output = transform(checkFilename, tssPath, params);
+ if (output.isEmpty()) {
+ DIE("Unable to parse" << checkFilename);
+ }
#ifndef MEINPROC_NO_KARCHIVE
- if (!cache.isEmpty()) {
- if (!saveToCache(output, cache)) {
- qWarning() << QCoreApplication::translate("main", "Could not write to cache file %1.").arg(cache);
- }
- goto end;
+ if (!cache.isEmpty()) {
+ if (!saveToCache(output, cache)) {
+ qWarning() << QCoreApplication::translate("main", "Could not write to cache file %1.").arg(cache);
}
+ goto end;
+ }
#endif
- doOutput(output, usingStdOut, usingOutput, outputOption, true /* replaceCharset */);
- }
+ doOutput(output, usingStdOut, usingOutput, outputOption, true /* replaceCharset */);
#ifndef MEINPROC_NO_KARCHIVE
end:
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/template.docbook new/kdoctools-4.98.0/src/template.docbook
--- old/kdoctools-4.97.0/src/template.docbook 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/template.docbook 2014-03-28 19:16:42.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" ?>
-<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
<!-- Define an entity for your application if it is not part of KDE
Git -->
<!ENTITY kmyapplication "<application>KMyApp</application>">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/xslt.cpp new/kdoctools-4.98.0/src/xslt.cpp
--- old/kdoctools-4.97.0/src/xslt.cpp 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/xslt.cpp 2014-03-28 19:16:42.000000000 +0100
@@ -145,7 +145,7 @@
defaultEntityLoader = xmlGetExternalEntityLoader();
xmlSetExternalEntityLoader(xsltprocExternalEntityLoader);
- replaceURLList[QLatin1String("http://www.oasis-open.org/docbook/xml/4.2")] = QString("file:///%1").arg(DOCBOOK_XML_CURRDTD);
+ replaceURLList[QLatin1String("http://www.oasis-open.org/docbook/xml/4.5")] = QString("file:///%1").arg(DOCBOOK_XML_CURRDTD);
}
#endif
@@ -373,48 +373,61 @@
QString locateFileInDtdResource(const QString &file, const QStandardPaths::LocateOptions option)
{
+ const QStringList lst = locateFilesInDtdResource(file, option);
+ return lst.isEmpty() ? QString() : lst.first();
+}
+
+QStringList locateFilesInDtdResource(const QString &file, const QStandardPaths::LocateOptions option)
+{
QFileInfo info(file);
if (info.exists() && info.isAbsolute()) {
- return file;
+ return QStringList() << file;
}
const QString srcdir = s_dtdDirs()->srcdir;
if (!srcdir.isEmpty()) {
const QString test = srcdir + QLatin1Char('/') + file;
if (QFile::exists(test)) {
- return test;
+ return QStringList() << test;
}
- qDebug() << "Could not locate file:" << file;
- return QString();
+ qDebug() << "Could not locate file" << file << "in" << srcdir;
+ return QStringList();
}
- const QString result = QStandardPaths::locate(QStandardPaths::GenericDataLocation,
+ // Using locateAll() is necessary to be able to find all catalogs when
+ // running in environments where every repository is installed in its own
+ // prefix.
+ // This is the case on build.kde.org where kde4support installs catalogs
+ // in a different prefix than kdoctools.
+ const QStringList result = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation,
QStringLiteral("kdoctools5/") + file, option);
if (result.isEmpty()) {
- qDebug() << "Could not locate file:" << file;
+ qDebug() << "Could not locate file" << file << "in standard dirs";
}
return result;
}
QStringList getKDocToolsCatalogs()
{
- // find all catalogs as catalog*.xml, and add them to the list,
- // starting from catalog.xml (the main one).
- const QString customizationDirName = locateFileInDtdResource(QStringLiteral("customization"),
- QStandardPaths::LocateDirectory);
- if (customizationDirName.isEmpty()) {
+ // Find all catalogs as catalog*.xml, and add them to the list, starting
+ // from catalog.xml (the main one).
+ QStringList dirNames = locateFilesInDtdResource(QStringLiteral("customization"),
+ QStandardPaths::LocateDirectory);
+ if (dirNames.isEmpty()) {
return QStringList();
}
- QDir customizationDir = QDir(customizationDirName);
- const QStringList catalogFileFilters(QStringLiteral("catalog*.xml"));
- const QFileInfoList catalogInfoFiles = customizationDir.entryInfoList(catalogFileFilters,
- QDir::Files | QDir::NoSymLinks, QDir::Name);
QStringList catalogFiles;
- foreach (const QFileInfo &fileInfo, catalogInfoFiles) {
- const QString fullFileName = QUrl::fromLocalFile(fileInfo.absoluteFilePath()).toEncoded();
- if (fileInfo.fileName() == QStringLiteral("catalog.xml")) {
- catalogFiles.prepend(fullFileName);
- } else {
- catalogFiles.append(fullFileName);
+ foreach (const QString &customizationDirName, dirNames) {
+ QDir customizationDir = QDir(customizationDirName);
+ const QStringList catalogFileFilters(QStringLiteral("catalog*.xml"));
+ const QFileInfoList catalogInfoFiles = customizationDir.entryInfoList(catalogFileFilters,
+ QDir::Files | QDir::NoSymLinks, QDir::Name);
+ foreach (const QFileInfo &fileInfo, catalogInfoFiles) {
+ const QString fullFileName = QUrl::fromLocalFile(fileInfo.absoluteFilePath()).toEncoded();
+ if (fileInfo.fileName() == QStringLiteral("catalog.xml")) {
+ catalogFiles.prepend(fullFileName);
+ } else {
+ catalogFiles.append(fullFileName);
+ }
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdoctools-4.97.0/src/xslt.h new/kdoctools-4.98.0/src/xslt.h
--- old/kdoctools-4.97.0/src/xslt.h 2014-03-01 15:42:39.000000000 +0100
+++ new/kdoctools-4.98.0/src/xslt.h 2014-03-28 19:16:42.000000000 +0100
@@ -18,6 +18,7 @@
void setupStandardDirs(const QString &srcdir = QString());
QString locateFileInDtdResource(const QString &file, const QStandardPaths::LocateOptions option=QStandardPaths::LocateFile);
+QStringList locateFilesInDtdResource(const QString &file, const QStandardPaths::LocateOptions option=QStandardPaths::LocateFile);
QStringList getKDocToolsCatalogs();
#endif
--
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 kdnssd-framework for openSUSE:Factory checked in at 2014-04-02 17:21:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdnssd-framework (Old)
and /work/SRC/openSUSE:Factory/.kdnssd-framework.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdnssd-framework"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdnssd-framework/kdnssd-framework.changes 2014-03-28 16:24:06.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdnssd-framework.new/kdnssd-framework.changes 2014-04-02 17:22:06.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:32 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kdnssd-framework-4.97.0.tar.xz
New:
----
kdnssd-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdnssd-framework.spec ++++++
--- /var/tmp/diff_new_pack.VawhRQ/_old 2014-04-02 17:22:06.000000000 +0200
+++ /var/tmp/diff_new_pack.VawhRQ/_new 2014-04-02 17:22:06.000000000 +0200
@@ -18,11 +18,11 @@
%define lname libKF5DNSSD5
Name: kdnssd-framework
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: avahi-compat-mDNSResponder-devel
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5DBus) >= 5.2.0
@@ -31,7 +31,7 @@
License: LGPL-2.1+
Group: System/GUI/KDE
Url: http://www.kde.org
-Source0: kdnssd-framework-%{version}.tar.xz
+Source0: kdnssd-%{version}.tar.xz
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -64,7 +64,7 @@
centralized infrastructure. Development files.
%prep
-%setup -q
+%setup -q -n kdnssd-%{version}
%build
%cmake_kf5 -d build
++++++ kdnssd-framework-4.97.0.tar.xz -> kdnssd-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdnssd-framework-4.97.0/.reviewboardrc new/kdnssd-4.98.0/.reviewboardrc
--- old/kdnssd-framework-4.97.0/.reviewboardrc 2014-03-01 12:50:39.000000000 +0100
+++ new/kdnssd-4.98.0/.reviewboardrc 2014-03-28 19:16:38.000000000 +0100
@@ -1,4 +1,4 @@
REVIEWBOARD_URL = "https://git.reviewboard.kde.org"
-REPOSITORY = 'git://anongit.kde.org/kdnssd-framework'
+REPOSITORY = 'git://anongit.kde.org/kdnssd'
BRANCH = 'master'
TARGET_GROUPS = 'kdeframeworks'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdnssd-framework-4.97.0/CMakeLists.txt new/kdnssd-4.98.0/CMakeLists.txt
--- old/kdnssd-framework-4.97.0/CMakeLists.txt 2014-03-01 12:50:39.000000000 +0100
+++ new/kdnssd-4.98.0/CMakeLists.txt 2014-03-28 19:16:38.000000000 +0100
@@ -2,14 +2,14 @@
project(KDNSSD)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_SOURCE_DIR}/cmake/modules) #TODO: remove cmake/modules when extra-cmake-modules is done
include(KDEInstallDirs)
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
set(REQUIRED_QT_VERSION "5.2.0")
find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Network)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdnssd-framework-4.97.0/kdnssd-framework.yaml new/kdnssd-4.98.0/kdnssd-framework.yaml
--- old/kdnssd-framework-4.97.0/kdnssd-framework.yaml 2014-03-01 12:50:39.000000000 +0100
+++ new/kdnssd-4.98.0/kdnssd-framework.yaml 1970-01-01 01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-tier: 2
-
-# KDNSSD can use either Avahi or DNSSD. If it is compiled with DNSSD, it
-# requires kconfig. This might not be detected when diagrams are generated
-# if the system generating the diagrams have Avahi installed, that is why
-# we hardcode the kconfig dependency here
-framework-dependencies:
- - kconfig
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdnssd-framework-4.97.0/kdnssd.yaml new/kdnssd-4.98.0/kdnssd.yaml
--- old/kdnssd-framework-4.97.0/kdnssd.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/kdnssd-4.98.0/kdnssd.yaml 2014-03-28 19:16:38.000000000 +0100
@@ -0,0 +1,8 @@
+tier: 2
+
+# KDNSSD can use either Avahi or DNSSD. If it is compiled with DNSSD, it
+# requires kconfig. This might not be detected when diagrams are generated
+# if the system generating the diagrams have Avahi installed, that is why
+# we hardcode the kconfig dependency here
+framework-dependencies:
+ - kconfig
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdnssd-framework-4.97.0/src/Messages.sh new/kdnssd-4.98.0/src/Messages.sh
--- old/kdnssd-framework-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kdnssd-4.98.0/src/Messages.sh 2014-03-28 19:16:38.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kdnssd5.pot
--
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 kdesu for openSUSE:Factory checked in at 2014-04-02 17:21:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdesu (Old)
and /work/SRC/openSUSE:Factory/.kdesu.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdesu"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdesu/kdesu.changes 2014-03-10 12:18:00.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdesu.new/kdesu.changes 2014-04-02 17:22:04.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:30 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kdesu-4.97.0.tar.xz
New:
----
kdesu-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdesu.spec ++++++
--- /var/tmp/diff_new_pack.pBw1Fm/_old 2014-04-02 17:22:04.000000000 +0200
+++ /var/tmp/diff_new_pack.pBw1Fm/_new 2014-04-02 17:22:04.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Su5
Name: kdesu
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
@@ -85,6 +85,7 @@
%doc COPYING* README*
%{_kf5_libdir}/libKF5Su.so.*
%{_kf5_libexecdir}/kdesu_stub
+%{_kf5_libexecdir}/kdesud
%files devel
%defattr(-,root,root)
++++++ kdesu-4.97.0.tar.xz -> kdesu-4.98.0.tar.xz ++++++
++++ 1742 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 kdewebkit for openSUSE:Factory checked in at 2014-04-02 17:21:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdewebkit (Old)
and /work/SRC/openSUSE:Factory/.kdewebkit.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdewebkit"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdewebkit/kdewebkit.changes 2014-03-10 12:18:01.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdewebkit.new/kdewebkit.changes 2014-04-02 17:22:05.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:31 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kdewebkit-4.97.0.tar.xz
New:
----
kdewebkit-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdewebkit.spec ++++++
--- /var/tmp/diff_new_pack.XJVt25/_old 2014-04-02 17:22:05.000000000 +0200
+++ /var/tmp/diff_new_pack.XJVt25/_new 2014-04-02 17:22:05.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5WebKit5
Name: kdewebkit
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kbookmarks-devel >= %{_kf5_version}
BuildRequires: kcompletion-devel >= %{_kf5_version}
++++++ kdewebkit-4.97.0.tar.xz -> kdewebkit-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdewebkit-4.97.0/CMakeLists.txt new/kdewebkit-4.98.0/CMakeLists.txt
--- old/kdewebkit-4.97.0/CMakeLists.txt 2014-03-01 12:50:37.000000000 +0100
+++ new/kdewebkit-4.98.0/CMakeLists.txt 2014-03-28 19:16:37.000000000 +0100
@@ -2,7 +2,7 @@
project(KDEWebKit)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -18,7 +18,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KDEWEBKIT
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kdewebkit_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5WebKitConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdewebkit-4.97.0/src/kgraphicswebview.h new/kdewebkit-4.98.0/src/kgraphicswebview.h
--- old/kdewebkit-4.97.0/src/kgraphicswebview.h 2014-03-01 12:50:37.000000000 +0100
+++ new/kdewebkit-4.98.0/src/kgraphicswebview.h 2014-03-28 19:16:37.000000000 +0100
@@ -34,12 +34,13 @@
template<class T> class KWebViewPrivate;
/**
- * @short A re-implementation of QGraphicsWebView that provides KDE integration.
+ * @short A re-implementation of QGraphicsWebView that provides KDE Frameworks
+ * integration.
*
* This is a drop-in replacement for QGraphicsWebView that provides full KDE
- * integration through the use of @ref KWebPage. It also provides signals that
- * capture middle, shift and ctrl mouse clicks on links and URL pasting from the
- * selection clipboard.
+ * frameworks integration through the use of @ref KWebPage. It also provides
+ * signals that capture middle, shift and ctrl mouse clicks on links and URL
+ * pasting from the selection clipboard.
*
* The specific functionality provided by this class (over and above what
* would be acheived by using KWebPage with a QGraphicsWebView) is that
@@ -61,9 +62,9 @@
* Constructs a KGraphicsWebView object with parent @p parent.
*
* Set @p createCustomPage to false to prevent the creation of a
- * @ref KWebPage object for KDE integration. Doing so allows you to
- * avoid unnecessary object creation and deletion if you are going to
- * use a subclass of KWebPage.
+ * @ref KWebPage object for KDE frameworks integration. Doing so allows you
+ * to avoid unnecessary object creation and deletion if you are going to use
+ * a subclass of KWebPage.
*
* @param parent the parent object
* @param createCustomPage if @c true, the view's page is set to an
@@ -149,8 +150,8 @@
* Emitted when a link is clicked with the left mouse button while SHIFT is
* held down.
*
- * A KDE user would typically expect this to result in the triggering of a
- * "save link as" action.
+ * A user of Plasma Desktop would typically expect this to result in the
+ * triggering of a "save link as" action.
*
* @param url the URL of the clicked link
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdewebkit-4.97.0/src/kwebpage.cpp new/kdewebkit-4.98.0/src/kwebpage.cpp
--- old/kdewebkit-4.97.0/src/kwebpage.cpp 2014-03-01 12:50:37.000000000 +0100
+++ new/kdewebkit-4.98.0/src/kwebpage.cpp 2014-03-28 19:16:37.000000000 +0100
@@ -606,7 +606,7 @@
}
}
if (!downloadResource(replyUrl, suggestedFileName, d->windowWidget())) {
- break;
+ return true; // file dialog was cancelled, stop here
}
}
return true;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdewebkit-4.97.0/src/kwebpage.h new/kdewebkit-4.98.0/src/kwebpage.h
--- old/kdewebkit-4.97.0/src/kwebpage.h 2014-03-01 12:50:37.000000000 +0100
+++ new/kdewebkit-4.98.0/src/kwebpage.h 2014-03-28 19:16:37.000000000 +0100
@@ -39,13 +39,13 @@
}
/**
- * @short An enhanced QWebPage that provides integration into the KDE environment.
+ * @short An enhanced QWebPage that provides integration with KDE Frameworks.
*
* This is a convenience class that provides full integration with KDE
- * technologies such as KIO for network request handling, KCookiejar for cookie
- * handling, KParts for embedding non-html content and KWallet for storing
- * form data. It also sets standard icons for many of the actions provided by
- * QWebPage.
+ * frameworks technologies such as KIO for network request handling, KCookiejar
+ * for cookie handling, KParts for embedding non-html content and KWallet for
+ * storing form data. It also sets standard icons for many of the actions
+ * provided by QWebPage.
*
* Most of this integration happens behind the scenes. If you want KWallet
* integration, however, you will have to provide a mechanism for deciding
@@ -145,11 +145,11 @@
/**
* The wallet integration manager.
*
- * If you wish to use KDE wallet integration, you will have to connect to
+ * If you wish to use KWallet integration, you will have to connect to
* signals emitted by this object and react accordingly. See KWebWallet
* for more information.
*
- * @return the wallet integration manager, or 0 if KDE wallet integration
+ * @return the wallet integration manager, or 0 if KWallet integration
* is disabled
*/
KWebWallet *wallet() const;
@@ -205,9 +205,9 @@
* This slot first prompts the user where to save the requested resource
* and then downloads it using KIO.
*
- * In KDE 4.8 and higher, if @p reply contains a QObject property called
- * "DownloadManagerExe", then an attempt will be made to the command
- * specified by that property to download the specified resource.
+ * If @p reply contains a QObject property called "DownloadManagerExe", then
+ * an attempt will be made to the command specified by that property to
+ * download the specified resource.
*
* If the "DownloadManagerExe" property is not defined or the command
* specified by it could not be successfully executed, then the user will
@@ -309,8 +309,8 @@
/**
* @reimp
*
- * This function is re-implemented to provide KDE user-agent management
- * integration through KProtocolManager.
+ * This function is re-implemented to provide KIO user-agent management
+ * integration with KProtocolManager.
*
* If a special user-agent has been configured for the host indicated by
* @p url, that user-agent will be returned. Otherwise, QWebPage's
@@ -339,9 +339,9 @@
/**
* Attempts to handle @p reply and returns true on success, false otherwise.
*
- * In KDE 4.8 and higher, if @p reply contains a QObject property called
- * "DownloadManagerExe", then an attempt will be made to let the command
- * specified by that property to download the requested resource.
+ * If @p reply contains a QObject property called "DownloadManagerExe", then
+ * an attempt will be made to let the command specified by that property to
+ * download the requested resource.
*
* If the "DownloadManagerExe" property is not defined or the command
* specified by it could not be successfully executed, then the user will
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdewebkit-4.97.0/src/kwebpluginfactory.h new/kdewebkit-4.98.0/src/kwebpluginfactory.h
--- old/kdewebkit-4.97.0/src/kwebpluginfactory.h 2014-03-01 12:50:37.000000000 +0100
+++ new/kdewebkit-4.98.0/src/kwebpluginfactory.h 2014-03-28 19:16:37.000000000 +0100
@@ -33,7 +33,7 @@
}
/**
- * @short A QWebPluginFactory with integration into the KDE environment.
+ * @short A QWebPluginFactory that is integrated with KDE frameworks.
*
* This class will attempt to find a KPart to satisfy a plugin request.
*
@@ -98,7 +98,7 @@
/**
* Returns true if the given mime-type is excluded from being used to create
- * a web plugin using KDE's trader.
+ * a web plugin using KService's trader.
*
* Currently this function only returns true for mimetypes 'x-java',
* 'x-shockwave-flash', and 'futuresplash' in the 'application' category
@@ -111,7 +111,7 @@
/**
* Returns an instance of the service associated with @p mimeType.
*
- * This function uses KDE's trader to create an instance of the service
+ * This function uses KService's trader to create an instance of the service
* associated with the given parameters. The parameters are the <param>
* tags of the HTML object. The name and the value attributes of these
* tags are specified by the @p argumentNames and @p argumentValues
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdewebkit-4.97.0/src/kwebview.h new/kdewebkit-4.98.0/src/kwebview.h
--- old/kdewebkit-4.97.0/src/kwebview.h 2014-03-01 12:50:37.000000000 +0100
+++ new/kdewebkit-4.98.0/src/kwebview.h 2014-03-28 19:16:37.000000000 +0100
@@ -34,9 +34,10 @@
template<class T> class KWebViewPrivate;
/**
- * @short A re-implementation of QWebView that provides KDE integration.
+ * @short A re-implementation of QWebView that provides integration with KDE
+ * frameworks.
*
- * This is a drop-in replacement for QWebView that provides full KDE
+ * This is a drop-in replacement for QWebView that provides full KDE frameworks
* integration through @ref KWebPage as well as additional signals that
* capture middle, shift and ctrl mouse clicks on links and URL pasting
* from the selection clipboard.
@@ -62,9 +63,9 @@
* Constructs a KWebView object with parent @p parent.
*
* Set @p createCustomPage to false to prevent the creation of a
- * @ref KWebPage object for KDE integration. Doing so allows you to
- * avoid unnecessary object creation and deletion if you are going to
- * use a subclass of KWebPage.
+ * @ref KWebPage object for KDE frameworks integration. Doing so allows you
+ * to avoid unnecessary object creation and deletion if you are going to use
+ * a subclass of KWebPage.
*
* @param parent the parent object
* @param createCustomPage if @c true, the view's page is set to an
@@ -150,8 +151,8 @@
* Emitted when a link is clicked with the left mouse button while SHIFT is
* held down.
*
- * A KDE user would typically expect this to result in the triggering of a
- * "save link as" action.
+ * A user of Plasma desktop would typically expect this to result in the
+ * triggering of a "save link as" action.
*
* @param url the URL of the clicked link
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdewebkit-4.97.0/src/kwebwallet.h new/kdewebkit-4.98.0/src/kwebwallet.h
--- old/kdewebkit-4.97.0/src/kwebwallet.h 2014-03-01 12:50:37.000000000 +0100
+++ new/kdewebkit-4.98.0/src/kwebwallet.h 2014-03-28 19:16:37.000000000 +0100
@@ -36,7 +36,7 @@
class QWebPage;
/**
- * @short A class that provides KDE wallet integration for QWebFrame.
+ * @short A class that provides KWallet integration for QWebFrame.
*
* Normally, you will use this class via KWebPage. In this case, you need to
* connect to the saveFormDataRequested signal and call either
@@ -95,7 +95,7 @@
*
* @p parent is usually the QWebPage this wallet is being used for.
*
- * The @p wid parameter is used to tell KDE's wallet manager which window
+ * The @p wid parameter is used to tell the KWallet manager which window
* is requesting access to the wallet.
*
* @param parent the owner of this wallet
--
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 kdesignerplugin for openSUSE:Factory checked in at 2014-04-02 17:21:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdesignerplugin (Old)
and /work/SRC/openSUSE:Factory/.kdesignerplugin.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdesignerplugin"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdesignerplugin/kdesignerplugin.changes 2014-03-28 16:22:55.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdesignerplugin.new/kdesignerplugin.changes 2014-04-02 17:22:03.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:29 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kdesignerplugin-4.97.0.tar.xz
New:
----
kdesignerplugin-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdesignerplugin.spec ++++++
--- /var/tmp/diff_new_pack.KW57Gx/_old 2014-04-02 17:22:04.000000000 +0200
+++ /var/tmp/diff_new_pack.KW57Gx/_new 2014-04-02 17:22:04.000000000 +0200
@@ -17,10 +17,10 @@
Name: kdesignerplugin
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kbookmarks-devel >= %{_kf5_version}
BuildRequires: kcompletion-devel >= %{_kf5_version}
++++++ kdesignerplugin-4.97.0.tar.xz -> kdesignerplugin-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdesignerplugin-4.97.0/CMakeLists.txt new/kdesignerplugin-4.98.0/CMakeLists.txt
--- old/kdesignerplugin-4.97.0/CMakeLists.txt 2014-03-01 12:50:33.000000000 +0100
+++ new/kdesignerplugin-4.98.0/CMakeLists.txt 2014-03-28 19:16:33.000000000 +0100
@@ -2,7 +2,7 @@
project(KF5DesignerPlugin)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -19,7 +19,7 @@
TYPE OPTIONAL
)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
find_package(KF5CoreAddons ${KF5_VERSION} REQUIRED)
find_package(KF5Config ${KF5_VERSION} REQUIRED)
find_package(KF5DocTools ${KF5_VERSION} REQUIRED)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdesignerplugin-4.97.0/docs/kgendesignerplugin/man-kgendesignerplugin.1.docbook new/kdesignerplugin-4.98.0/docs/kgendesignerplugin/man-kgendesignerplugin.1.docbook
--- old/kdesignerplugin-4.97.0/docs/kgendesignerplugin/man-kgendesignerplugin.1.docbook 2014-03-01 12:50:33.000000000 +0100
+++ new/kdesignerplugin-4.98.0/docs/kgendesignerplugin/man-kgendesignerplugin.1.docbook 2014-03-28 19:16:33.000000000 +0100
@@ -1,6 +1,6 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
-"dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN"
+"dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE">
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdesignerplugin-4.97.0/src/CMakeLists.txt new/kdesignerplugin-4.98.0/src/CMakeLists.txt
--- old/kdesignerplugin-4.97.0/src/CMakeLists.txt 2014-03-01 12:50:33.000000000 +0100
+++ new/kdesignerplugin-4.98.0/src/CMakeLists.txt 2014-03-28 19:16:33.000000000 +0100
@@ -13,8 +13,6 @@
KF5::CoreAddons # KMacroExpander
)
-# "export" this target too so we can use the LOCATION property of the imported target in
-# FindKDE4Internal.cmake to get the full path to the installed executable instead of using FIND_PROGRAM(), Alex
install(TARGETS kgendesignerplugin EXPORT KF5DesignerPluginTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdesignerplugin-4.97.0/src/Messages.sh new/kdesignerplugin-4.98.0/src/Messages.sh
--- old/kdesignerplugin-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kdesignerplugin-4.98.0/src/Messages.sh 2014-03-28 19:16:33.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kdesignerplugin5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdesignerplugin-4.97.0/src/README new/kdesignerplugin-4.98.0/src/README
--- old/kdesignerplugin-4.97.0/src/README 2014-03-01 12:50:33.000000000 +0100
+++ new/kdesignerplugin-4.98.0/src/README 1970-01-01 01:00:00.000000000 +0100
@@ -1,65 +0,0 @@
-KDE Custom Widgets for Qt Designer 2
-====================================
-
-
-Summary:
-========
-
-This directory contains KDE custom widgets for Qt Designer which comes with
-Qt 4. Just make sure that QT_PLUGIN_PATH includes
-$KDEDIR/lib/kde4/plugins . With the KDE build system nothing special
-(i.e. editing the plugin path) is needed, as uic will automatically be
-called with -L <path to the kdewidgets plugin> .
-
-This plugin uses the QWidget plugin API of Qt >= 4.0
-Don't expect it to work with any other versions of Qt.
-
-
-Known Bugs:
-===========
-
-Designer crashes when using widgets that use the kapp pointer.
-
-HOWTO Add Widgets:
-==================
-Just add new widgets to kde.widgets like this:
-[ClassName]
-IncludeFile=myheader.h
-IconSet=mycoolwidget.png
-ToolTip=My Cool Widget
-WhatsThis=Long description of my cool widget
-ConstructorArgs=(parent, name, otherNeccessaryArg)
-IsContainer=true
-Group=MyWidgetCollection
-
-Everything but [ClassName] is optional.
-IncludeFile defaults to classname.h (all lowercase)
-IconSet defaults to classname.png (all lowercase)
-ToolTip defaults to ClassName
-WhatsThis defaults to ClassName
-ConstructorArgs=(parent, name)
-IsContainer defaults to false - note, any value except an empty one is
- interpreted as true, even if the value
- is "false" :) So, if the widget is not a
- container, just omit this line.
-Group defaults to "KDE"
-
-Don't forget to add an icon to the pics directory. Try to make it look similar to the other icons and be the same size.
-
-There are some global options that you can have.
-
-[Global]
-Init=new InitCode();
-Destroy= delete object;
-PluginName=MyPlugin
-
-PluginName overrides the passed in value at the command line and is optional.
-Init and Destroy are both optional arguments that can be used for custom build
-up and tear down code.
-
-Have fun!
-
-
-Ian Reinhart Geiser <geiseri(a)kde.org>
-Daniel Molkentin <molkentin(a)kde.org>
-Malte Starostik <malte(a)kde.org>
--
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 kdeclarative for openSUSE:Factory checked in at 2014-04-02 17:21:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdeclarative (Old)
and /work/SRC/openSUSE:Factory/.kdeclarative.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdeclarative"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdeclarative/kdeclarative.changes 2014-03-10 12:17:59.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdeclarative.new/kdeclarative.changes 2014-04-02 17:22:01.000000000 +0200
@@ -1,0 +2,12 @@
+Sat Mar 29 19:47:28 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+- Added kwidgetsaddons-devel, kwindowsystem-devel, kglobalaccel-devel,
+ kcoreaddons-devel and kguiaddons-devel BuildRequires, needed for
+ building components imported from plasma-framework
+
+-------------------------------------------------------------------
Old:
----
kdeclarative-4.97.0.tar.xz
New:
----
kdeclarative-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdeclarative.spec ++++++
--- /var/tmp/diff_new_pack.Xb8ljf/_old 2014-04-02 17:22:02.000000000 +0200
+++ /var/tmp/diff_new_pack.Xb8ljf/_new 2014-04-02 17:22:02.000000000 +0200
@@ -18,16 +18,21 @@
%define lname libKF5Declarative5
Name: kdeclarative
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfig-devel >= %{_kf5_version}
+BuildRequires: kcoreaddons-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
+BuildRequires: kglobalaccel-devel >= %{_kf5_version}
+BuildRequires: kguiaddons-devel >= %{_kf5_version}
BuildRequires: ki18n-devel >= %{_kf5_version}
BuildRequires: kiconthemes-devel >= %{_kf5_version}
BuildRequires: kio-devel >= %{_kf5_version}
+BuildRequires: kwidgetsaddons-devel >= %{_kf5_version}
+BuildRequires: kwindowsystem-devel >= %{_kf5_version}
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
BuildRequires: pkgconfig(Qt5Gui) >= 5.2.0
BuildRequires: pkgconfig(Qt5Qml) >= 5.2.0
@@ -80,6 +85,7 @@
%defattr(-,root,root)
%doc COPYING* README*
%{_kf5_libdir}/libKF5Declarative.so.*
+%{_kf5_libdir}/qt5/qml/
%files devel
%defattr(-,root,root)
++++++ kdeclarative-4.97.0.tar.xz -> kdeclarative-4.98.0.tar.xz ++++++
++++ 8528 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 kdbusaddons for openSUSE:Factory checked in at 2014-04-02 17:21:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdbusaddons (Old)
and /work/SRC/openSUSE:Factory/.kdbusaddons.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdbusaddons"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdbusaddons/kdbusaddons.changes 2014-03-10 12:17:26.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdbusaddons.new/kdbusaddons.changes 2014-04-02 17:21:59.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:26 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kdbusaddons-4.97.0.tar.xz
New:
----
kdbusaddons-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdbusaddons.spec ++++++
--- /var/tmp/diff_new_pack.pp6oLT/_old 2014-04-02 17:22:01.000000000 +0200
+++ /var/tmp/diff_new_pack.pp6oLT/_new 2014-04-02 17:22:01.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5DBusAddons5
Name: kdbusaddons
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5DBus) >= 5.2.0
++++++ kdbusaddons-4.97.0.tar.xz -> kdbusaddons-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbusaddons-4.97.0/CMakeLists.txt new/kdbusaddons-4.98.0/CMakeLists.txt
--- old/kdbusaddons-4.97.0/CMakeLists.txt 2014-03-01 12:50:25.000000000 +0100
+++ new/kdbusaddons-4.98.0/CMakeLists.txt 2014-03-28 19:16:23.000000000 +0100
@@ -2,7 +2,7 @@
project(KDBusAddons)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -20,7 +20,7 @@
include(ECMGenerateHeaders)
include(ECMMarkNonGuiExecutable)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KDBUSADDONS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kdbusaddons_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbusaddons-4.97.0/src/Messages.sh new/kdbusaddons-4.98.0/src/Messages.sh
--- old/kdbusaddons-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kdbusaddons-4.98.0/src/Messages.sh 2014-03-28 19:16:23.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kdbusaddons5.pot
--
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 kcrash for openSUSE:Factory checked in at 2014-04-02 17:21:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kcrash (Old)
and /work/SRC/openSUSE:Factory/.kcrash.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kcrash"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kcrash/kcrash.changes 2014-03-10 12:17:42.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kcrash.new/kcrash.changes 2014-04-02 17:21:58.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:26 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kcrash-4.97.0.tar.xz
New:
----
kcrash-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kcrash.spec ++++++
--- /var/tmp/diff_new_pack.AGT5Xw/_old 2014-04-02 17:21:59.000000000 +0200
+++ /var/tmp/diff_new_pack.AGT5Xw/_new 2014-04-02 17:21:59.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Crash5
Name: kcrash
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kcrash-4.97.0.tar.xz -> kcrash-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcrash-4.97.0/CMakeLists.txt new/kcrash-4.98.0/CMakeLists.txt
--- old/kcrash-4.97.0/CMakeLists.txt 2014-03-01 12:50:23.000000000 +0100
+++ new/kcrash-4.98.0/CMakeLists.txt 2014-03-28 19:16:21.000000000 +0100
@@ -2,7 +2,7 @@
project(KCrash)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION 5.2.0)
@@ -22,7 +22,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KCrash
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kcrash_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5CrashConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcrash-4.97.0/README.md new/kcrash-4.98.0/README.md
--- old/kcrash-4.97.0/README.md 2014-03-01 12:50:23.000000000 +0100
+++ new/kcrash-4.98.0/README.md 2014-03-28 19:16:21.000000000 +0100
@@ -1,6 +1,6 @@
# KCrash
-Gracefull handling of application crashes
+Graceful handling of application crashes
## Introduction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcrash-4.97.0/src/CMakeLists.txt new/kcrash-4.98.0/src/CMakeLists.txt
--- old/kcrash-4.97.0/src/CMakeLists.txt 2014-03-01 12:50:23.000000000 +0100
+++ new/kcrash-4.98.0/src/CMakeLists.txt 2014-03-28 19:16:21.000000000 +0100
@@ -1,14 +1,6 @@
-include(CheckFunctionExists)
-include(CheckIncludeFiles)
-include(CheckPrototypeDefinition)
-
-check_function_exists(strlcpy HAVE_STRLCPY)
-check_prototype_definition(strlcpy "unsigned long strlcpy(char*, const char*, unsigned long)" "0" string.h HAVE_STRLCPY_PROTO)
-check_include_files(string.h HAVE_STRING_H)
set(kcrash_SRCS
kcrash.cpp
- strlcpy-fake.c
)
configure_file(
@@ -16,11 +8,6 @@
${CMAKE_CURRENT_BINARY_DIR}/config-kcrash.h
)
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/config-strlcpy.h.cmake
- ${CMAKE_CURRENT_BINARY_DIR}/config-strlcpy.h
-)
-
add_library(KF5Crash ${kcrash_SRCS})
generate_export_header(KF5Crash BASE_NAME KCrash)
add_library(KF5::Crash ALIAS KF5Crash)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcrash-4.97.0/src/Messages.sh new/kcrash-4.98.0/src/Messages.sh
--- old/kcrash-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kcrash-4.98.0/src/Messages.sh 2014-03-28 19:16:21.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kcrash5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcrash-4.97.0/src/config-strlcpy.h.cmake new/kcrash-4.98.0/src/config-strlcpy.h.cmake
--- old/kcrash-4.97.0/src/config-strlcpy.h.cmake 2014-03-01 12:50:23.000000000 +0100
+++ new/kcrash-4.98.0/src/config-strlcpy.h.cmake 1970-01-01 01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
-/* This file is part of the KDE libraries
- Copyright (c) Todd.Miller(a)cs.colorado.edu
- Copyright (c) 2002 Dirk Mueller <mueller(a)kde.org>
- The source code for strlcpy() and strlcat() is available free of charge and
- under a BSD-style license as part of the OpenBSD operating system.
-*/
-
-#cmakedefine01 HAVE_STRLCPY_PROTO
-#if ! HAVE_STRLCPY_PROTO
-#ifdef __cplusplus
-extern "C" {
-#endif
-unsigned long strlcpy(char*, const char*, unsigned long);
-#ifdef __cplusplus
-}
-#endif
-#endif
-
-#cmakedefine01 HAVE_STRING_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcrash-4.97.0/src/kcrash.cpp new/kcrash-4.98.0/src/kcrash.cpp
--- old/kcrash-4.97.0/src/kcrash.cpp 2014-03-01 12:50:23.000000000 +0100
+++ new/kcrash-4.98.0/src/kcrash.cpp 2014-03-28 19:16:21.000000000 +0100
@@ -25,7 +25,6 @@
#include "kcrash.h"
#include <config-kcrash.h>
-#include <config-strlcpy.h>
#include <string.h>
#include <signal.h>
@@ -471,11 +470,11 @@
}
}
- char sidtxt[256];
- if (!KStartupInfo::startupId().isNull()) {
+ // make sure the constData() pointer remains valid when we call startProcess by making a copy
+ QByteArray startupId = KStartupInfo::startupId();
+ if (!startupId.isNull()) {
argv[i++] = "--startupid";
- strlcpy(sidtxt, KStartupInfo::startupId().constData(), sizeof(sidtxt));
- argv[i++] = sidtxt;
+ argv[i++] = startupId.constData();
}
if (s_flags & SaferDialog) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcrash-4.97.0/src/strlcpy-fake.c new/kcrash-4.98.0/src/strlcpy-fake.c
--- old/kcrash-4.97.0/src/strlcpy-fake.c 2014-03-01 12:50:23.000000000 +0100
+++ new/kcrash-4.98.0/src/strlcpy-fake.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,52 +0,0 @@
-/* This file is part of the KDE libraries
- Copyright (c) Todd C. Miller <Todd.Miller(a)courtesan.com>
- Copyright (c) 2002 Dirk Mueller <mueller(a)kde.org>
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#include <config-strlcpy.h>
-
-#ifndef HAVE_STRLCPY
-
-#if HAVE_STRING_H
-#include <string.h>
-#endif
-
-unsigned long strlcpy(char *d, const char *s, unsigned long bufsize)
-{
- unsigned long len, ret = strlen(s);
-
- if (ret >= bufsize) {
- if (bufsize) {
- len = bufsize - 1;
- memcpy(d, s, len);
- d[len] = '\0';
- }
- } else {
- memcpy(d, s, ret + 1);
- }
-
- return ret;
-}
-#endif /* !HAVE_STRLCPY */
-
--
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 kcoreaddons for openSUSE:Factory checked in at 2014-04-02 17:21:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kcoreaddons (Old)
and /work/SRC/openSUSE:Factory/.kcoreaddons.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kcoreaddons"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kcoreaddons/kcoreaddons.changes 2014-03-10 12:17:25.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kcoreaddons.new/kcoreaddons.changes 2014-04-02 17:21:57.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:25 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kcoreaddons-4.97.0.tar.xz
New:
----
kcoreaddons-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kcoreaddons.spec ++++++
--- /var/tmp/diff_new_pack.rE3ZF8/_old 2014-04-02 17:21:58.000000000 +0200
+++ /var/tmp/diff_new_pack.rE3ZF8/_new 2014-04-02 17:21:58.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5CoreAddons5
Name: kcoreaddons
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: shared-mime-info
++++++ kcoreaddons-4.97.0.tar.xz -> kcoreaddons-4.98.0.tar.xz ++++++
++++ 2753 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 kconfigwidgets for openSUSE:Factory checked in at 2014-04-02 17:21:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kconfigwidgets (Old)
and /work/SRC/openSUSE:Factory/.kconfigwidgets.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kconfigwidgets"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kconfigwidgets/kconfigwidgets.changes 2014-03-10 12:17:57.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kconfigwidgets.new/kconfigwidgets.changes 2014-04-02 17:21:56.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:25 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kconfigwidgets-4.97.0.tar.xz
New:
----
kconfigwidgets-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kconfigwidgets.spec ++++++
--- /var/tmp/diff_new_pack.FcHkH7/_old 2014-04-02 17:21:57.000000000 +0200
+++ /var/tmp/diff_new_pack.FcHkH7/_new 2014-04-02 17:21:57.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5ConfigWidgets5
Name: kconfigwidgets
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kauth-devel >= %{_kf5_version}
BuildRequires: kcodecs-devel >= %{_kf5_version}
@@ -59,7 +59,7 @@
Summary: Widgets for configuration dialogs: Build Environment
Group: Development/Libraries/KDE
Requires: %lname = %{version}
-Requires: extra-cmake-modules >= 0.0.11
+Requires: extra-cmake-modules >= 0.0.12
Requires: kauth-devel >= %{_kf5_version}
Requires: kcodecs-devel >= %{_kf5_version}
Requires: kconfig-devel >= %{_kf5_version}
++++++ kconfigwidgets-4.97.0.tar.xz -> kconfigwidgets-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/CMakeLists.txt new/kconfigwidgets-4.98.0/CMakeLists.txt
--- old/kconfigwidgets-4.97.0/CMakeLists.txt 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/CMakeLists.txt 2014-03-28 19:16:17.000000000 +0100
@@ -2,7 +2,7 @@
project(KConfigWidgets)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION "5.2.0")
@@ -15,7 +15,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KCONFIGWIDGETS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kconfigwidgets_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/docs/preparetips/man-preparetips5.1.docbook new/kconfigwidgets-4.98.0/docs/preparetips/man-preparetips5.1.docbook
--- old/kconfigwidgets-4.97.0/docs/preparetips/man-preparetips5.1.docbook 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/docs/preparetips/man-preparetips5.1.docbook 2014-03-28 19:16:17.000000000 +0100
@@ -1,6 +1,6 @@
<?xml version="1.0" ?>
-<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
-"dtd/kdex.dtd" [
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN"
+"dtd/kdedbx45.dtd" [
<!ENTITY % English "INCLUDE">
]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/CMakeLists.txt new/kconfigwidgets-4.98.0/src/CMakeLists.txt
--- old/kconfigwidgets-4.97.0/src/CMakeLists.txt 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/CMakeLists.txt 2014-03-28 19:16:17.000000000 +0100
@@ -6,6 +6,7 @@
kconfigviewstatesaver.cpp
kconfigdialogmanager.cpp
kcmodule.cpp
+ khelpclient.cpp
klanguagebutton.cpp
kpastetextaction.cpp
krecentfilesaction.cpp
@@ -46,6 +47,7 @@
KConfigViewStateSaver
KConfigDialogManager
KCModule
+ KHelpClient
KLanguageButton
KPasteTextAction
KRecentFilesAction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/Messages.sh new/kconfigwidgets-4.98.0/src/Messages.sh
--- old/kconfigwidgets-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/Messages.sh 2014-03-28 19:16:17.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kconfigwidgets5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/kcmodule.cpp new/kconfigwidgets-4.98.0/src/kcmodule.cpp
--- old/kconfigwidgets-4.97.0/src/kcmodule.cpp 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/kcmodule.cpp 2014-03-28 19:16:17.000000000 +0100
@@ -22,9 +22,7 @@
*/
-#define KDE3_SUPPORT
#include "kcmodule.h"
-#undef KDE3_SUPPORT
#include <QLayout>
#include <QTimer>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/kcolorscheme.h new/kconfigwidgets-4.98.0/src/kcolorscheme.h
--- old/kconfigwidgets-4.97.0/src/kcolorscheme.h 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/kcolorscheme.h 2014-03-28 19:16:17.000000000 +0100
@@ -36,12 +36,9 @@
* A set of methods used to work with colors.
*
* KColorScheme currently provides access to the system color palette that the
- * user has selected (in the future, it is expected to do more). As of KDE4,
- * this class is the correct way to look up colors from the system palette,
- * as opposed to KGlobalSettings (such usage is deprecated). It greatly expands
- * on KGlobalSettings and QPalette by providing five distinct "sets" with
- * several color choices each, covering background, foreground, and decoration
- * colors.
+ * user has selected (in the future, it is expected to do more). It greatly
+ * expands on QPalette by providing five distinct "sets" with several color
+ * choices each, covering background, foreground, and decoration colors.
*
* A KColorScheme instance represents colors corresponding to a "set", where a
* set consists of those colors used to draw a particular type of element, such
@@ -52,13 +49,10 @@
* creating an anonymous instance and invoking a lookup member.
*
* @note
- * Historically, it was not needed for applications to give much concern to the
- * state of a widget (active, inactive, disabled) since only the disabled state
- * was different, and only slightly. As a result, the old KGlobalSettings color
- * getters did not care about the widget state. However, starting with KDE4,
- * the color palettes for the various states may be wildly different.
- * Therefore, it is important to take the state into account. This is why the
- * KColorScheme constructor requires a QPalette::ColorGroup as an argument.
+ * The color palettes for the various states of a widget (active, inactive,
+ * disabled) may be wildly different. Therefore, it is important to take the
+ * state into account. This is why the KColorScheme constructor requires a
+ * QPalette::ColorGroup as an argument.
*
* To facilitate working with potentially-varying states, two convenience API's
* are provided. These are KColorScheme::adjustBackground and its sister
@@ -453,9 +447,9 @@
* in QPalette::ColorGroup.
*
* Basically, a stateful brush is used to cache a particular "color" from the
- * KDE system palette (usually, one which does not live in QPalette) in the way
- * you would have used a QColor in KDE3. When you are ready to draw using the
- * brush, you use the current state to retrieve the appropriate brush.
+ * KDE system palette (usually, one which does not live in QPalette). When you
+ * are ready to draw using the brush, you use the current state to retrieve the
+ * appropriate brush.
*
* Stateful brushes can also be used to apply state effects to arbitrary
* brushes, for example when working with a application specific user-defined
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/kconfigdialog.cpp new/kconfigwidgets-4.98.0/src/kconfigdialog.cpp
--- old/kconfigwidgets-4.97.0/src/kconfigdialog.cpp 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/kconfigdialog.cpp 2014-03-28 19:16:17.000000000 +0100
@@ -24,6 +24,7 @@
#include <kconfigdialogmanager.h>
#include <kcoreconfigskeleton.h>
#include <kpagewidgetmodel.h>
+#include <khelpclient.h>
#include <QDialogButtonBox>
#include <QIcon>
@@ -85,6 +86,8 @@
void _k_settingsChangedSlot();
KConfigDialog *q;
+ QString mAnchor;
+ QString mHelpApp;
bool shown;
KConfigDialogManager *manager;
QMap<QWidget *, KConfigDialogManager *> managerForPage;
@@ -350,9 +353,15 @@
d->_k_settingsChangedSlot();
}
+void KConfigDialog::setHelp(const QString &anchor, const QString &appname)
+{
+ d->mAnchor = anchor;
+ d->mHelpApp = appname;
+}
+
void KConfigDialog::showHelp()
{
- QDesktopServices::openUrl(QUrl("help:/"));
+ KHelpClient::invokeHelp(d->mAnchor, d->mHelpApp);
}
#include "moc_kconfigdialog.cpp"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/kconfigdialog.h new/kconfigwidgets-4.98.0/src/kconfigdialog.h
--- old/kconfigwidgets-4.97.0/src/kconfigdialog.h 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/kconfigdialog.h 2014-03-28 19:16:17.000000000 +0100
@@ -213,6 +213,21 @@
void settingsChangedSlot();
/**
+ * Sets the help path and topic.
+ *
+ * The HTML file will be found using the X-DocPath entry in the application's desktop file.
+ * It can be either a relative path, or a website URL.
+ *
+ * @param anchor This has to be a defined anchor in your
+ * docbook sources or website. If empty the main index
+ * is loaded.
+ * @param appname This allows you to specify the .desktop file to get the help path from.
+ * If empty the QCoreApplication::applicationName() is used.
+ */
+ void setHelp(const QString &anchor, const QString &appname = QString());
+
+
+ /**
* Displays help for this config dialog.
* @since 5.0
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/khelpclient.cpp new/kconfigwidgets-4.98.0/src/khelpclient.cpp
--- old/kconfigwidgets-4.97.0/src/khelpclient.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/khelpclient.cpp 2014-03-28 19:16:17.000000000 +0100
@@ -0,0 +1,78 @@
+/* This file is part of the KDE libraries
+ * Copyright 2012 David Faure <faure(a)kde.org>
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License or ( at
+ * your option ) version 3 or, at the discretion of KDE e.V. ( which shall
+ * act as a proxy as in section 14 of the GPLv3 ), any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include "khelpclient.h"
+
+#include "kdesktopfile.h"
+
+#include <QCoreApplication>
+#include <QUrl>
+#include <QDirIterator>
+#include <QUrlQuery>
+#include <QDesktopServices>
+
+void KHelpClient::invokeHelp(const QString &anchor, const QString &_appname)
+{
+ QString appname;
+ if (_appname.isEmpty()) {
+ appname = QCoreApplication::instance()->applicationName();
+ } else {
+ appname = _appname;
+ }
+
+ // Look for the .desktop file of the application
+
+ // was:
+ //KService::Ptr service(KService::serviceByDesktopName(appname));
+ //if (service)
+ // docPath = service->docPath();
+ // but we don't want to depend on KService here.
+
+ QString docPath;
+ const QStringList desktopDirs = QStandardPaths::standardLocations(QStandardPaths::ApplicationsLocation);
+ Q_FOREACH (const QString &dir, desktopDirs) {
+ QDirIterator it(dir, QStringList() << appname + QLatin1String(".desktop"), QDir::NoFilter, QDirIterator::Subdirectories);
+ while (it.hasNext()) {
+ const QString desktopPath(it.next());
+ KDesktopFile desktopFile(desktopPath);
+ docPath = desktopFile.readDocPath();
+ break;
+ }
+ }
+
+ // docPath could be a path or a full URL, I think.
+
+ QUrl url;
+ if (!docPath.isEmpty()) {
+ url = QUrl(QLatin1String("help:/")).resolved(QUrl::fromUserInput(docPath));
+ } else {
+ url = QUrl(QString::fromLatin1("help:/%1/index.html").arg(appname));
+ }
+
+ if (!anchor.isEmpty()) {
+ QUrlQuery query(url);
+ query.addQueryItem(QString::fromLatin1("anchor"), anchor);
+ url.setQuery(query);
+ }
+
+ // launch khelpcenter, or a browser for URIs not handled by khelpcenter
+ QDesktopServices::openUrl(url);
+}
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/khelpclient.h new/kconfigwidgets-4.98.0/src/khelpclient.h
--- old/kconfigwidgets-4.97.0/src/khelpclient.h 1970-01-01 01:00:00.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/khelpclient.h 2014-03-28 19:16:17.000000000 +0100
@@ -0,0 +1,47 @@
+/* This file is part of the KDE libraries
+ * Copyright 2012 David Faure <faure(a)kde.org>
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License or ( at
+ * your option ) version 3 or, at the discretion of KDE e.V. ( which shall
+ * act as a proxy as in section 14 of the GPLv3 ), any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef KHELPCLIENT_H
+#define KHELPCLIENT_H
+
+#include "kconfigwidgets_export.h"
+#include <QtCore/QString>
+#include <QtCore/QByteArray>
+
+namespace KHelpClient
+{
+/**
+ * Invokes the KHelpCenter HTML help viewer from docbook sources.
+ *
+ * The HTML file will be found using the X-DocPath entry in the application's desktop file.
+ * It can be either a relative path, or a website URL.
+ *
+ * @param anchor This has to be a defined anchor in your
+ * docbook sources or website. If empty the main index
+ * is loaded.
+ * @param appname This allows you to specify the .desktop file to get the help path from.
+ * If empty the QCoreApplication::applicationName() is used.
+ * @since 5.0
+ */
+KCONFIGWIDGETS_EXPORT void invokeHelp(const QString &anchor = QString(), const QString &appname = QString());
+}
+
+#endif /* KHELPCLIENT_H */
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/src/krecentfilesaction.h new/kconfigwidgets-4.98.0/src/krecentfilesaction.h
--- old/kconfigwidgets-4.97.0/src/krecentfilesaction.h 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/src/krecentfilesaction.h 2014-03-28 19:16:17.000000000 +0100
@@ -129,7 +129,8 @@
/**
* Loads the recent files entries from a given KConfigGroup object.
* You can provide the name of the group used to load the entries.
- * If the groupname is empty, entries are load from a group called 'RecentFiles'
+ * If the groupname is empty, entries are loaded from a group called 'RecentFiles'.
+ * Local file entries that do not exist anymore are not restored.
*
*/
void loadEntries(const KConfigGroup &config);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/tests/CMakeLists.txt new/kconfigwidgets-4.98.0/tests/CMakeLists.txt
--- old/kconfigwidgets-4.97.0/tests/CMakeLists.txt 2014-03-01 12:50:19.000000000 +0100
+++ new/kconfigwidgets-4.98.0/tests/CMakeLists.txt 2014-03-28 19:16:17.000000000 +0100
@@ -24,3 +24,11 @@
add_executable(kcolorutilsdemo ${kcolorUtilsDemoSources})
ecm_mark_as_test(kcolorutilsdemo)
target_link_libraries(kcolorutilsdemo KF5::ConfigWidgets KF5::GuiAddons)
+
+## krecentfilesactiontest (manual)
+
+set(krecentfilesactionTestSources krecentfilesactiontest.cpp)
+qt5_wrap_ui(krecentfilesactionTestSources krecentfilesactiontest.ui)
+add_executable(krecentfilesactiontest ${krecentfilesactionTestSources})
+ecm_mark_as_test(krecentfilesactiontest)
+target_link_libraries(krecentfilesactiontest KF5::ConfigWidgets)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/tests/krecentfilesactiontest.cpp new/kconfigwidgets-4.98.0/tests/krecentfilesactiontest.cpp
--- old/kconfigwidgets-4.97.0/tests/krecentfilesactiontest.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/kconfigwidgets-4.98.0/tests/krecentfilesactiontest.cpp 2014-03-28 19:16:17.000000000 +0100
@@ -0,0 +1,116 @@
+/* This file is part of the KDE libraries
+ Copyright (c) 2014 Gregor Mi <codeminister(a)publicstatic.de>
+
+ This library is free software; you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2 of the License or ( at
+ your option ) version 3 or, at the discretion of KDE e.V. ( which shall
+ act as a proxy as in section 14 of the GPLv3 ), any later version.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include "krecentfilesactiontest.h"
+
+#include <QApplication>
+#include <QMainWindow>
+#include <QWidget>
+#include <QDebug>
+
+#include <KSharedConfig>
+#include <KConfigGroup>
+#include "krecentfilesaction.h"
+#include "kstandardaction.h"
+
+#include "ui_krecentfilesactiontest.h"
+
+int main(int argc, char **argv)
+{
+ QApplication app(argc, argv);
+ KRecentFilesActionTest mainWindow;
+ mainWindow.show();
+ return app.exec();
+}
+
+class KRecentFilesActionTestPrivate
+{
+public:
+ Ui::MainWindow *uiMainWindow;
+ KRecentFilesAction *recentFiles;
+
+public:
+ void notifyOutputAvailable()
+ {
+ uiMainWindow->labelOutputAvailable->setText(uiMainWindow->labelOutputAvailable->text() + "A");
+ qDebug() << recentFiles->items();
+ }
+
+ KConfigGroup testConfigGroup()
+ {
+ return KConfigGroup(KSharedConfig::openConfig(), "RecentFilesActionTest");
+ }
+
+};
+
+KRecentFilesActionTest::KRecentFilesActionTest() : d(new KRecentFilesActionTestPrivate)
+{
+ d->uiMainWindow = new Ui::MainWindow();
+ d->uiMainWindow->setupUi(this);
+
+ d->recentFiles = KStandardAction::openRecent(this, SLOT(urlSelected(QUrl)), this);
+
+ connect(d->uiMainWindow->pbAddUrl, SIGNAL(clicked()), this, SLOT(addUrl()));
+ connect(d->uiMainWindow->pbLoadEntries, SIGNAL(clicked()), this, SLOT(loadEntries()));
+ connect(d->uiMainWindow->pbSaveEntries, SIGNAL(clicked()), this, SLOT(saveEntries()));
+
+ d->uiMainWindow->menuFile->addAction(d->recentFiles);
+
+ //loadEntries();
+}
+
+KRecentFilesActionTest::~KRecentFilesActionTest()
+{
+ //saveEntries();
+
+ delete d->uiMainWindow;
+ delete d;
+}
+
+void KRecentFilesActionTest::urlSelected(const QUrl& url)
+{
+ qDebug() << "urlSelected" << url;
+ d->notifyOutputAvailable();
+}
+
+void KRecentFilesActionTest::addUrl()
+{
+ QString url = d->uiMainWindow->lineEditUrl->text();
+ qDebug() << "addUrl" << url;
+
+ d->recentFiles->addUrl(QUrl(url));
+
+ d->notifyOutputAvailable();
+ d->uiMainWindow->lineEditUrl->setText(url + "a");
+}
+
+void KRecentFilesActionTest::loadEntries()
+{
+ d->notifyOutputAvailable();
+ qDebug() << "recentFiles->loadEntries()";
+ d->recentFiles->loadEntries(d->testConfigGroup());
+ d->notifyOutputAvailable();
+}
+
+void KRecentFilesActionTest::saveEntries()
+{
+ qDebug() << "recentFiles->saveEntries()";
+ d->recentFiles->saveEntries(d->testConfigGroup());
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/tests/krecentfilesactiontest.h new/kconfigwidgets-4.98.0/tests/krecentfilesactiontest.h
--- old/kconfigwidgets-4.97.0/tests/krecentfilesactiontest.h 1970-01-01 01:00:00.000000000 +0100
+++ new/kconfigwidgets-4.98.0/tests/krecentfilesactiontest.h 2014-03-28 19:16:17.000000000 +0100
@@ -0,0 +1,47 @@
+/* This file is part of the KDE libraries
+ Copyright (c) 2014 Gregor Mi <codeminister(a)publicstatic.de>
+
+ This library is free software; you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2 of the License or ( at
+ your option ) version 3 or, at the discretion of KDE e.V. ( which shall
+ act as a proxy as in section 14 of the GPLv3 ), any later version.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#ifndef KCONFIGWIDGETS_TESTS_KRECENTFILESACTIONTEST_H
+#define KCONFIGWIDGETS_TESTS_KRECENTFILESACTIONTEST_H
+
+#include <QMainWindow>
+
+class KRecentFilesActionTestPrivate;
+
+class KRecentFilesActionTest : public QMainWindow
+{
+ Q_OBJECT
+
+public:
+ KRecentFilesActionTest();
+
+ virtual ~KRecentFilesActionTest();
+
+public Q_SLOTS:
+ void addUrl();
+ void loadEntries();
+ void saveEntries();
+ void urlSelected(const QUrl& url);
+
+private:
+ KRecentFilesActionTestPrivate *const d;
+};
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kconfigwidgets-4.97.0/tests/krecentfilesactiontest.ui new/kconfigwidgets-4.98.0/tests/krecentfilesactiontest.ui
--- old/kconfigwidgets-4.97.0/tests/krecentfilesactiontest.ui 1970-01-01 01:00:00.000000000 +0100
+++ new/kconfigwidgets-4.98.0/tests/krecentfilesactiontest.ui 2014-03-28 19:16:17.000000000 +0100
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>434</width>
+ <height>201</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>KRecentFilesAction Test</string>
+ </property>
+ <widget class="QWidget" name="centralwidget">
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>Look in the File menu to use the Open Recent menu</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QPushButton" name="pbAddUrl">
+ <property name="text">
+ <string>Add URL</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLineEdit" name="lineEditUrl">
+ <property name="text">
+ <string>~/tmp/test1.txt</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <widget class="QLabel" name="label_3">
+ <property name="text">
+ <string>Add URL to recent file list</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>Note that nonexisting entries will not be restored.</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <item>
+ <widget class="QPushButton" name="pbLoadEntries">
+ <property name="text">
+ <string>LoadEntries</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="pbSaveEntries">
+ <property name="text">
+ <string>SaveEntries</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="QLabel" name="label1">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>New console output:</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="labelOutputAvailable">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>1</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>A</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QMenuBar" name="menubar">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>434</width>
+ <height>19</height>
+ </rect>
+ </property>
+ <widget class="QMenu" name="menuFile">
+ <property name="title">
+ <string>File</string>
+ </property>
+ </widget>
+ <addaction name="menuFile"/>
+ </widget>
+ <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
--
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 kconfig for openSUSE:Factory checked in at 2014-04-02 17:21:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kconfig (Old)
and /work/SRC/openSUSE:Factory/.kconfig.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kconfig"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kconfig/kconfig.changes 2014-03-26 16:40:51.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kconfig.new/kconfig.changes 2014-04-02 17:21:55.000000000 +0200
@@ -1,0 +2,11 @@
+Sat Mar 29 19:47:24 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+- Droped 0001-Normalize-vars-to-avoid-odd-bugs-QT_REQUIRED_VERSION.patch,
+ merged upstream
+
+-------------------------------------------------------------------
Old:
----
0001-Normalize-vars-to-avoid-odd-bugs-QT_REQUIRED_VERSION.patch
kconfig-4.97.0.tar.xz
New:
----
kconfig-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kconfig.spec ++++++
--- /var/tmp/diff_new_pack.OAOxCa/_old 2014-04-02 17:21:56.000000000 +0200
+++ /var/tmp/diff_new_pack.OAOxCa/_new 2014-04-02 17:21:56.000000000 +0200
@@ -18,10 +18,10 @@
%define sonum 5
Name: kconfig
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
@@ -32,8 +32,6 @@
Group: System/GUI/KDE
Url: http://www.kde.org
Source0: kconfig-%{version}.tar.xz
-# PATCH-FIX-UPSTREAM 0001-Normalize-vars-to-avoid-odd-bugs-QT_REQUIRED_VERSION.patch
-Patch0: 0001-Normalize-vars-to-avoid-odd-bugs-QT_REQUIRED_VERSION.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -108,7 +106,6 @@
%prep
%setup -q
-%patch0 -p1
%build
%cmake_kf5 -d build
++++++ kconfig-4.97.0.tar.xz -> kconfig-4.98.0.tar.xz ++++++
++++ 1622 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 gnote for openSUSE:Factory checked in at 2014-04-02 17:21:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnote (Old)
and /work/SRC/openSUSE:Factory/.gnote.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnote"
Changes:
--------
--- /work/SRC/openSUSE:Factory/gnote/gnote.changes 2014-02-18 14:44:20.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.gnote.new/gnote.changes 2014-04-02 17:21:53.000000000 +0200
@@ -1,0 +2,13 @@
+Wed Mar 26 19:35:27 UTC 2014 - zaitor(a)opensuse.org
+
+- Update to version 3.12.0:
+ + New Features:
+ - NoteDirectoryWatcher plugin interval is now configurable.
+ - Import plugins are enabled by default and auto-disabled after
+ import (bgo#723635).
+ - Plugins are now checked for compatibility with Gnote.
+ + Updated translations.
+- Drop gnote-enable-tomboy-migration.patch: Fixed upstream.
+- Bump soname following upstream changes.
+
+-------------------------------------------------------------------
@@ -5 +18 @@
- by default (bnc#862246 bgo#723835).
+ by default (bnc#862246, bgo#723635).
Old:
----
gnote-3.11.1.tar.xz
gnote-enable-tomboy-migration.patch
New:
----
gnote-3.12.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gnote.spec ++++++
--- /var/tmp/diff_new_pack.OotCfd/_old 2014-04-02 17:21:54.000000000 +0200
+++ /var/tmp/diff_new_pack.OotCfd/_new 2014-04-02 17:21:54.000000000 +0200
@@ -17,15 +17,13 @@
Name: gnote
-Version: 3.11.1
+Version: 3.12.0
Release: 0
Summary: A Port of Tomboy to C++
License: GPL-3.0+
Group: Productivity/Text/Editors
Url: http://live.gnome.org/Gnote
-Source: http://download.gnome.org/sources/gnote/3.11/%{name}-%{version}.tar.xz
-# PATCH-FEATURE-UPSTREAM gnote-enable-tomboy-migration.patch bnc#862246 bgo#723835 mgorse(a)suse.com -- enable Tomboy migration by default.
-Patch0: gnote-enable-tomboy-migration.patch
+Source: http://download.gnome.org/sources/gnote/3.12/%{name}-%{version}.tar.xz
BuildRequires: boost-devel >= 1.34
BuildRequires: fdupes
BuildRequires: gcc-c++
@@ -66,7 +64,6 @@
%prep
%setup -q
translation-update-upstream
-%patch0 -p1
%build
%configure --disable-static --with-x11-support
@@ -99,7 +96,7 @@
%{_bindir}/gnote
%{_libdir}/gnote/
# Splitting does not make sense as it's just a lib for gnote itself (and it's plugins)
-%{_libdir}/libgnote-3.11.so*
+%{_libdir}/libgnote-3.12.so*
%{_libdir}/libgnote.so
%{_datadir}/applications/gnote.desktop
%{_datadir}/glib-2.0/schemas/org.gnome.gnote.gschema.xml
++++++ gnote-3.11.1.tar.xz -> gnote-3.12.0.tar.xz ++++++
++++ 34529 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 kcmutils for openSUSE:Factory checked in at 2014-04-02 17:21:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kcmutils (Old)
and /work/SRC/openSUSE:Factory/.kcmutils.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kcmutils"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kcmutils/kcmutils.changes 2014-03-10 12:17:56.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kcmutils.new/kcmutils.changes 2014-04-02 17:21:51.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:22 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kcmutils-4.97.0.tar.xz
New:
----
kcmutils-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kcmutils.spec ++++++
--- /var/tmp/diff_new_pack.7kkOL7/_old 2014-04-02 17:21:51.000000000 +0200
+++ /var/tmp/diff_new_pack.7kkOL7/_new 2014-04-02 17:21:51.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5KCMUtils5
Name: kcmutils
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfigwidgets-devel >= %{_kf5_version}
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
++++++ kcmutils-4.97.0.tar.xz -> kcmutils-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/CMakeLists.txt new/kcmutils-4.98.0/CMakeLists.txt
--- old/kcmutils-4.97.0/CMakeLists.txt 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/CMakeLists.txt 2014-03-28 19:16:10.000000000 +0100
@@ -2,7 +2,7 @@
project(KCMUtils)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -11,7 +11,7 @@
include(KDECMakeSettings)
set(REQUIRED_QT_VERSION "5.2.0")
-find_package(Qt5 ${QT_REQUIRED_VERSION} NO_MODULE REQUIRED Widgets DBus)
+find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Widgets DBus)
include(FeatureSummary)
include(GenerateExportHeader)
@@ -19,7 +19,7 @@
include(ECMGenerateHeaders)
include(ECMPackageConfigHelpers)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KCMUTILS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kcmutils_version.h"
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5KCMUtilsConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/TODO new/kcmutils-4.98.0/TODO
--- old/kcmutils-4.97.0/TODO 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/TODO 1970-01-01 01:00:00.000000000 +0100
@@ -1,25 +0,0 @@
-
-This is a list of random changes to do in KDE 4 with the various KCM* classes.
-
-* KCModuleinfo;
- - Make it inherit KService; saves a lot of code, simplifies ctors/overloads in surrounding classes
- - Implement docPath in KService
- - Get rid of loadAll() and do lazy loading in each getter
-
-* Merge KCModuleProxy and its DCOP Object class(MI)
-
-* Get rid of `QStringlist arguments` in KCModule and all the helper classes(simplify API)
-
-* Move stuff to d pointers.. Too much hackish solutions otherwise
-
-* Get rid of bool fallback argument in helper classes(never fails, simplify API)
-
-* Re-implement the QScrollView(d->view) in KCModuleProxy; the protection against violation of HIG-clause. It needs kde-core-devel approval.
-
-* The API in KCModule, KCModuleProxy, and the various desktop entries, concerning root loading are butt ugly. It needs cleaning and simplification.
-
-* There's big confusion regarding /when/ the changed(bool) signal should be emitted, abd by /whom/. This can't be fixed properly in 3.x since it means breaking behavior. In KDE 4 it must be made clear if KCModuleProxy should take care of emitting appropriate signals for load()/save()/defaults, or if modules manually should handle it(is there a reason?).
-
-* Root modules in KCModuleProxy doesn't support D&D, or it is perhaps implemented in QXEmbed? Anyway, this is what the XEmbed Protocol Specification says:
-
-Solving the drag-and-drop problem, however, is quite easy, since the XDND protocol was carefully designed in a way that makes it possible to support embedded windows. Basically, the embedder has to operate as drag-and-drop proxy for the client. Any XDND messages like XdndEnter, Xdnd,Leave, etc. simply have to be passed through. A toolkit's XDND implementation has to take this situation in consideration.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/Messages.sh new/kcmutils-4.98.0/src/Messages.sh
--- old/kcmutils-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kcmutils-4.98.0/src/Messages.sh 2014-03-28 19:16:10.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kcmutils5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/kcmodulecontainer.cpp new/kcmutils-4.98.0/src/kcmodulecontainer.cpp
--- old/kcmutils-4.97.0/src/kcmodulecontainer.cpp 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/kcmodulecontainer.cpp 2014-03-28 19:16:10.000000000 +0100
@@ -30,6 +30,8 @@
#include <QDebug>
#include <kservice.h>
+typedef QList<KCModuleProxy *> ModuleList;
+
/***********************************************************************/
class KCModuleContainer::KCModuleContainerPrivate
{
@@ -45,6 +47,17 @@
KCModule::Buttons buttons;
QVBoxLayout *topLayout;
+ /**
+ * A list containing KCModuleProxy objects which
+ * have changed and must be saved.
+ */
+ ModuleList changedModules;
+
+ /**
+ * A list of all modules which are encapsulated.
+ */
+ ModuleList allModules;
+
};
/***********************************************************************/
@@ -100,7 +113,7 @@
}
KCModuleProxy *proxy = new KCModuleProxy(service, d->tabWidget);
- allModules.append(proxy);
+ d->allModules.append(proxy);
proxy->setObjectName(module);
@@ -125,7 +138,7 @@
void KCModuleContainer::save()
{
- ModuleList list = changedModules;
+ ModuleList list = d->changedModules;
ModuleList::iterator it;
for (it = list.begin(); it != list.end(); ++it) {
(*it)->save();
@@ -137,7 +150,7 @@
void KCModuleContainer::load()
{
- ModuleList list = allModules;
+ ModuleList list = d->allModules;
ModuleList::iterator it;
for (it = list.begin(); it != list.end(); ++it) {
(*it)->load();
@@ -148,7 +161,7 @@
void KCModuleContainer::defaults()
{
- ModuleList list = allModules;
+ ModuleList list = d->allModules;
ModuleList::iterator it;
for (it = list.begin(); it != list.end(); ++it) {
(*it)->defaults();
@@ -159,8 +172,8 @@
void KCModuleContainer::moduleChanged(KCModuleProxy *proxy)
{
- changedModules.append(proxy);
- if (changedModules.isEmpty()) {
+ d->changedModules.append(proxy);
+ if (d->changedModules.isEmpty()) {
return;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/kcmodulecontainer.h new/kcmutils-4.98.0/src/kcmodulecontainer.h
--- old/kcmutils-4.97.0/src/kcmodulecontainer.h 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/kcmodulecontainer.h 2014-03-28 19:16:10.000000000 +0100
@@ -95,36 +95,19 @@
virtual ~KCModuleContainer();
/**
- * Reimplemented for internal purposes.
- * @internal
+ * @reimp
*/
- void save();
+ void save() Q_DECL_OVERRIDE;
/**
- * Reimplemented for internal purposes.
- * @internal
+ * @reimp
*/
- void load();
+ void load() Q_DECL_OVERRIDE;
/**
- * Reimplemented for internal purposes.
- * @internal
+ * @reimp
*/
- void defaults();
-
-protected:
- typedef QList<KCModuleProxy *> ModuleList;
-
- /**
- * A list containing KCModuleProxy objects which
- * have changed and must be saved.
- */
- ModuleList changedModules;
-
- /**
- * A list of all modules which are encapsulated.
- */
- ModuleList allModules; // KDE 4 put in the Private class and abstract with getter
+ void defaults() Q_DECL_OVERRIDE;
private Q_SLOTS:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/kcmoduleloader.cpp new/kcmutils-4.98.0/src/kcmoduleloader.cpp
--- old/kcmutils-4.97.0/src/kcmoduleloader.cpp 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/kcmoduleloader.cpp 2014-03-28 19:16:10.000000000 +0100
@@ -26,8 +26,8 @@
#include <QtCore/QFile>
#include <QLabel>
#include <QLayout>
+#include <QLibrary>
-#include <klibrary.h>
#include <kpluginloader.h>
#include <QDebug>
#include <klocalizedstring.h>
@@ -93,12 +93,12 @@
//#ifndef NDEBUG
{
// get the create_ function
- KLibrary lib(mod.library());
+ QLibrary lib(KPluginLoader::findPlugin(mod.library()));
if (lib.load()) {
KCModule *(*create)(QWidget *, const char *);
QByteArray factorymethod("create_");
factorymethod += mod.handle().toLatin1();
- create = reinterpret_cast<KCModule *(*)(QWidget *, const char *)>(lib.resolveFunction(factorymethod.constData()));
+ create = reinterpret_cast<KCModule *(*)(QWidget *, const char *)>(lib.resolve(factorymethod.constData()));
if (create) {
return create(parent, mod.handle().toLatin1().constData());
qFatal("This module still uses a custom factory method (%s). This is not supported anymore. Please fix the module.", factorymethod.constData());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/kcmoduleproxy.cpp new/kcmutils-4.98.0/src/kcmoduleproxy.cpp
--- old/kcmutils-4.97.0/src/kcmoduleproxy.cpp 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/kcmoduleproxy.cpp 2014-03-28 19:16:10.000000000 +0100
@@ -296,16 +296,6 @@
return KCModule::Buttons(KCModule::Help | KCModule::Default | KCModule::Apply);
}
-QString KCModuleProxy::rootOnlyMessage() const
-{
- return realModule() ? realModule()->rootOnlyMessage() : QString();
-}
-
-bool KCModuleProxy::useRootOnlyMessage() const
-{
- return realModule() ? realModule()->useRootOnlyMessage() : true;
-}
-
bool KCModuleProxy::changed() const
{
Q_D(const KCModuleProxy);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/kcmoduleproxy.h new/kcmutils-4.98.0/src/kcmoduleproxy.h
--- old/kcmutils-4.97.0/src/kcmoduleproxy.h 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/kcmoduleproxy.h 2014-03-28 19:16:10.000000000 +0100
@@ -140,23 +140,6 @@
KCModule::Buttons buttons() const;
/**
- * @return The module's custom root
- * message, if it has one
- * @deprecated
- */
- QString rootOnlyMessage() const;
- //KDE4 remove. There's a limit for convenience functions,
- // this one's available via realModule()->
-
- /**
- * @return If the module is a root module.
- * @deprecated
- */
- bool useRootOnlyMessage() const;
- //KDE4 remove. There's a limit for convenience functions,
- // this one's available via realModule()->
-
- /**
* @return true if the module is modified
* and needs to be saved.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/kcmultidialog.cpp new/kcmutils-4.98.0/src/kcmultidialog.cpp
--- old/kcmutils-4.97.0/src/kcmultidialog.cpp 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/kcmultidialog.cpp 2014-03-28 19:16:10.000000000 +0100
@@ -419,8 +419,12 @@
// qDebug() << moduleInfo.moduleName();
KPageWidgetItem *item = new KPageWidgetItem(kcm, moduleInfo.moduleName());
- if (kcm->useRootOnlyMessage()) {
- item->setHeader(QStringLiteral("<b>") + moduleInfo.comment() + QStringLiteral("</b><br><i>") + kcm->rootOnlyMessage() + QStringLiteral("</i>"));
+ if (kcm->realModule() && kcm->realModule()->useRootOnlyMessage()) {
+ item->setHeader(QStringLiteral("<b>") +
+ moduleInfo.comment() +
+ QStringLiteral("</b><br><i>") +
+ kcm->realModule()->rootOnlyMessage() +
+ QStringLiteral("</i>"));
item->setIcon(KDE::icon(moduleInfo.icon(), QStringList() << QStringLiteral("dialog-warning")));
} else {
item->setHeader(moduleInfo.comment());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/kpluginselector.cpp new/kcmutils-4.98.0/src/kpluginselector.cpp
--- old/kcmutils-4.97.0/src/kpluginselector.cpp 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/kpluginselector.cpp 2014-03-28 19:16:10.000000000 +0100
@@ -760,26 +760,6 @@
const QModelIndex index = focusedIndex();
const QAbstractItemModel *model = index.model();
- // Try to retrieve the plugin information from the component name of the plugin.
- // If there is no valid information, go and fetch it from the service itself (the .desktop
- // file).
-
- PluginEntry *entry = index.model()->data(index, PluginEntryRole).value<PluginEntry *>();
- KService::Ptr entryService = entry->pluginInfo.service();
- if (entryService) {
- KPluginLoader loader(*entryService);
- KPluginFactory *factory = loader.factory();
- if (factory) {
- const KAboutData *aboutData = KAboutData::pluginData(factory->componentName());
- if (aboutData) {
- KAboutApplicationDialog aboutPlugin(*aboutData, itemView());
- aboutPlugin.setWindowTitle(i18nc("Used only for plugins", "About %1", aboutData->displayName()));
- aboutPlugin.exec();
- return;
- }
- }
- }
-
const QString name = model->data(index, NameRole).toString();
const QString comment = model->data(index, CommentRole).toString();
const QString author = model->data(index, AuthorRole).toString();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcmutils-4.97.0/src/ksettings/pluginpage.cpp new/kcmutils-4.98.0/src/ksettings/pluginpage.cpp
--- old/kcmutils-4.97.0/src/ksettings/pluginpage.cpp 2014-03-01 12:50:11.000000000 +0100
+++ new/kcmutils-4.98.0/src/ksettings/pluginpage.cpp 2014-03-28 19:16:10.000000000 +0100
@@ -17,9 +17,7 @@
*/
-#define KDE3_SUPPORT
#include "ksettings/pluginpage.h"
-#undef KDE3_SUPPORT
#include "kpluginselector.h"
#include <QLayout>
#include "ksettings/dispatcher.h"
--
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 kcodecs for openSUSE:Factory checked in at 2014-04-02 17:21:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kcodecs (Old)
and /work/SRC/openSUSE:Factory/.kcodecs.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kcodecs"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kcodecs/kcodecs.changes 2014-03-10 12:17:23.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kcodecs.new/kcodecs.changes 2014-04-02 17:21:52.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:23 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kcodecs-4.97.0.tar.xz
New:
----
kcodecs-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kcodecs.spec ++++++
--- /var/tmp/diff_new_pack.yFh4Gu/_old 2014-04-02 17:21:52.000000000 +0200
+++ /var/tmp/diff_new_pack.yFh4Gu/_new 2014-04-02 17:21:52.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Codecs5
Name: kcodecs
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ kcodecs-4.97.0.tar.xz -> kcodecs-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcodecs-4.97.0/CMakeLists.txt new/kcodecs-4.98.0/CMakeLists.txt
--- old/kcodecs-4.97.0/CMakeLists.txt 2014-03-01 12:50:13.000000000 +0100
+++ new/kcodecs-4.98.0/CMakeLists.txt 2014-03-28 19:16:12.000000000 +0100
@@ -2,7 +2,7 @@
project(KCodecs)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} )
@@ -19,7 +19,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KCODECS
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kcodecs_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcodecs-4.97.0/src/Messages.sh new/kcodecs-4.98.0/src/Messages.sh
--- old/kcodecs-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kcodecs-4.98.0/src/Messages.sh 2014-03-28 19:16:12.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kcodecs5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcodecs-4.97.0/src/kcharsets.cpp new/kcodecs-4.98.0/src/kcharsets.cpp
--- old/kcodecs-4.97.0/src/kcharsets.cpp 2014-03-01 12:50:13.000000000 +0100
+++ new/kcodecs-4.98.0/src/kcharsets.cpp 2014-03-28 19:16:12.000000000 +0100
@@ -32,9 +32,9 @@
#include <QHash>
/*
- * ### FIXME KDE4: the name of the encodings should mostly be uppercase
- * The names of this list are user-visible
- * Generate with generate_string_table.pl (located in kdesdk/scripts),
+ * The encoding names (like "ISO 8859-1") in this list are user-visible,
+ * and should be mostly uppercase.
+ * Generate with generate_string_table.pl (located in kde-dev-scripts),
* input data:
ISO 8859-1
i18n:Western European
@@ -147,11 +147,6 @@
*/
/*
- * THE FOLLOWING CODE IS GENERATED. PLEASE DO NOT EDIT BY HAND.
- * The script used was generate_string_table.pl which can be found in kdesdk/scripts.
- */
-
-/*
* This redefines the QT_TRANSLATE_NOOP3 macro provided by Qt to indicate that
* statically initialised text should be translated so that it expands to just
* the string that should be translated, making it possible to use it in the
@@ -160,6 +155,12 @@
#undef QT_TRANSLATE_NOOP3
#define QT_TRANSLATE_NOOP3(a, b, c) b
+/*
+ * THE FOLLOWING CODE IS GENERATED. PLEASE DO NOT EDIT BY HAND.
+ * The script used was generate_string_table.pl which can be found in kde-dev-scripts.
+ * It was then edited to use QT_TRANSLATE_NOOP3 instead of I18N_NOOP.
+ */
+
static const char language_for_encoding_string[] =
"ISO 8859-1\0"
QT_TRANSLATE_NOOP3("", "Western European", "@item Text character set")"\0"
@@ -348,7 +349,7 @@
/*
* THE FOLLOWING CODE IS GENERATED. PLEASE DO NOT EDIT BY HAND.
- * The script used was generate_string_table.pl which can be found in kdesdk/scripts.
+ * The script used was generate_string_table.pl which can be found in kde-dev-scripts.
*/
static const char builtin_string[] =
@@ -456,7 +457,7 @@
/*
* THE FOLLOWING CODE IS GENERATED. PLEASE DO NOT EDIT BY HAND.
- * The script used was generate_string_table.pl which can be found in kdesdk/scripts.
+ * The script used was generate_string_table.pl which can be found in kde-dev-scripts.
*/
static const char conversion_hints_string[] =
@@ -654,20 +655,6 @@
return available;
}
-#ifndef KDE_NO_DEPRECATED
-QString KCharsets::languageForEncoding(const QString &encoding) const
-{
- const char *lang = kcharsets_array_search((const char *)language_for_encoding_string,
- language_for_encoding_indices,
- encoding.toUtf8().constData());
- if (lang) {
- return tr(lang, "@item Text character set");
- } else {
- return tr("Other", "@item Text character set");
- }
-}
-#endif
-
QString KCharsets::descriptionForEncoding(const QString &encoding) const
{
const char *lang = kcharsets_array_search(language_for_encoding_string,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcodecs-4.97.0/src/kcharsets.h new/kcodecs-4.98.0/src/kcharsets.h
--- old/kcodecs-4.97.0/src/kcharsets.h 2014-03-01 12:50:13.000000000 +0100
+++ new/kcodecs-4.98.0/src/kcharsets.h 2014-03-28 19:16:12.000000000 +0100
@@ -140,17 +140,6 @@
QList<QStringList> encodingsByScript() const;
/**
- * Returns the language the encoding is used for.
- * @param encoding the encoding for the language
- * @return the language of the encoding
- * @deprecated Please use descriptionForEncoding instead.
- * This function will be removed before KDE4 is released.
- */
-#ifndef KDE_NO_DEPRECATED
- KCODECS_DEPRECATED QString languageForEncoding(const QString &encoding) const;
-#endif
-
- /**
* @brief Returns a long description for an encoding name.
* @param encoding the encoding for the language
* @return the long description for the encoding
--
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 kbookmarks for openSUSE:Factory checked in at 2014-04-02 17:21:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kbookmarks (Old)
and /work/SRC/openSUSE:Factory/.kbookmarks.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kbookmarks"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kbookmarks/kbookmarks.changes 2014-03-10 12:17:55.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kbookmarks.new/kbookmarks.changes 2014-04-02 17:21:50.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:21 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kbookmarks-4.97.0.tar.xz
New:
----
kbookmarks-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kbookmarks.spec ++++++
--- /var/tmp/diff_new_pack.ryyIkQ/_old 2014-04-02 17:21:50.000000000 +0200
+++ /var/tmp/diff_new_pack.ryyIkQ/_new 2014-04-02 17:21:50.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Bookmarks5
Name: kbookmarks
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfigwidgets-devel >= %{_kf5_version}
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
++++++ kbookmarks-4.97.0.tar.xz -> kbookmarks-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kbookmarks-4.97.0/CMakeLists.txt new/kbookmarks-4.98.0/CMakeLists.txt
--- old/kbookmarks-4.97.0/CMakeLists.txt 2014-03-01 12:50:09.000000000 +0100
+++ new/kbookmarks-4.98.0/CMakeLists.txt 2014-03-28 19:16:08.000000000 +0100
@@ -2,7 +2,7 @@
project(KBookmarks)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -16,7 +16,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION}
VARIABLE_PREFIX KBOOKMARKS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kbookmarks-4.97.0/src/Messages.sh new/kbookmarks-4.98.0/src/Messages.sh
--- old/kbookmarks-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kbookmarks-4.98.0/src/Messages.sh 2014-03-28 19:16:08.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kbookmarks5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kbookmarks-4.97.0/src/kbookmark.cpp new/kbookmarks-4.98.0/src/kbookmark.cpp
--- old/kbookmarks-4.97.0/src/kbookmark.cpp 2014-03-01 12:50:09.000000000 +0100
+++ new/kbookmarks-4.98.0/src/kbookmark.cpp 2014-03-28 19:16:08.000000000 +0100
@@ -304,7 +304,7 @@
QString KBookmark::fullText() const
{
if (isSeparator()) {
- return QCoreApplication::translate("Bookmark separator", "--- separator ---");
+ return QCoreApplication::translate("KBookmark", "--- separator ---", "Bookmark separator");
}
QString text = element.namedItem("title").toElement().text();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kbookmarks-4.97.0/src/kbookmarkdialog.cpp new/kbookmarks-4.98.0/src/kbookmarkdialog.cpp
--- old/kbookmarks-4.97.0/src/kbookmarkdialog.cpp 2014-03-01 12:50:09.000000000 +0100
+++ new/kbookmarks-4.98.0/src/kbookmarkdialog.cpp 2014-03-28 19:16:08.000000000 +0100
@@ -67,17 +67,17 @@
{
title = new QLineEdit(q);
title->setMinimumWidth(300);
- titleLabel = new QLabel(q->tr("Name:", "@label:textbox"), q);
+ titleLabel = new QLabel(KBookmarkDialog::tr("Name:", "@label:textbox"), q);
titleLabel->setBuddy(title);
url = new QLineEdit(q);
url->setMinimumWidth(300);
- urlLabel = new QLabel(q->tr("Location:", "@label:textbox"), q);
+ urlLabel = new QLabel(KBookmarkDialog::tr("Location:", "@label:textbox"), q);
urlLabel->setBuddy(url);
comment = new QLineEdit(q);
comment->setMinimumWidth(300);
- commentLabel = new QLabel(q->tr("Comment:", "@label:textbox"), q);
+ commentLabel = new QLabel(KBookmarkDialog::tr("Comment:", "@label:textbox"), q);
commentLabel->setBuddy(comment);
folderTree = new QTreeWidget(q);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kbookmarks-4.97.0/src/kbookmarkimporter_ns.h new/kbookmarks-4.98.0/src/kbookmarkimporter_ns.h
--- old/kbookmarks-4.97.0/src/kbookmarkimporter_ns.h 2014-03-01 12:50:09.000000000 +0100
+++ new/kbookmarks-4.98.0/src/kbookmarkimporter_ns.h 2014-03-28 19:16:08.000000000 +0100
@@ -29,6 +29,7 @@
*/
class KBOOKMARKS_EXPORT KNSBookmarkImporterImpl : public KBookmarkImporterBase
{
+ Q_OBJECT // For QObject::tr
public:
KNSBookmarkImporterImpl() : m_utf8(false) { }
void setUtf8(bool utf8)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kbookmarks-4.97.0/src/kbookmarkimporter_opera.h new/kbookmarks-4.98.0/src/kbookmarkimporter_opera.h
--- old/kbookmarks-4.97.0/src/kbookmarkimporter_opera.h 2014-03-01 12:50:09.000000000 +0100
+++ new/kbookmarks-4.98.0/src/kbookmarkimporter_opera.h 2014-03-28 19:16:08.000000000 +0100
@@ -29,6 +29,7 @@
*/
class KBOOKMARKS_EXPORT KOperaBookmarkImporterImpl : public KBookmarkImporterBase
{
+ Q_OBJECT // For QObject::tr
public:
KOperaBookmarkImporterImpl() { }
virtual void parse();
--
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 kauth for openSUSE:Factory checked in at 2014-04-02 17:21:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kauth (Old)
and /work/SRC/openSUSE:Factory/.kauth.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kauth"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kauth/kauth.changes 2014-03-10 12:18:29.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kauth.new/kauth.changes 2014-04-02 17:21:48.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:21 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kauth-4.97.0.tar.xz
New:
----
kauth-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kauth.spec ++++++
--- /var/tmp/diff_new_pack.Tng0uz/_old 2014-04-02 17:21:49.000000000 +0200
+++ /var/tmp/diff_new_pack.Tng0uz/_new 2014-04-02 17:21:49.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Auth5
Name: kauth
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kcoreaddons-devel >= %{_kf5_version}
BuildRequires: kf5-filesystem
++++++ kauth-4.97.0.tar.xz -> kauth-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kauth-4.97.0/CMakeLists.txt new/kauth-4.98.0/CMakeLists.txt
--- old/kauth-4.97.0/CMakeLists.txt 2014-03-01 12:50:07.000000000 +0100
+++ new/kauth-4.98.0/CMakeLists.txt 2014-03-28 19:16:05.000000000 +0100
@@ -2,7 +2,7 @@
project(KAuth)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
set(REQUIRED_QT_VERSION 5.2.0)
@@ -22,7 +22,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KAUTH
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kauth_version.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kauth-4.97.0/README.md new/kauth-4.98.0/README.md
--- old/kauth-4.97.0/README.md 2014-03-01 12:50:07.000000000 +0100
+++ new/kauth-4.98.0/README.md 2014-03-28 19:16:05.000000000 +0100
@@ -40,5 +40,5 @@
- Home page: <https://projects.kde.org/projects/frameworks/kauth>
- Mailing list: <https://mail.kde.org/mailman/listinfo/kde-frameworks-devel>
-- IRC channel: #kde-devel on Freenode
+- IRC channel: \#kde-devel on Freenode
- Git repository: <https://projects.kde.org/projects/frameworks/kauth/repository>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kauth-4.97.0/src/Messages.sh new/kauth-4.98.0/src/Messages.sh
--- old/kauth-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/kauth-4.98.0/src/Messages.sh 2014-03-28 19:16:05.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/kauth5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kauth-4.97.0/src/kauthactionreply.h new/kauth-4.98.0/src/kauthactionreply.h
--- old/kauth-4.97.0/src/kauthactionreply.h 2014-03-01 12:50:07.000000000 +0100
+++ new/kauth-4.98.0/src/kauthactionreply.h 2014-03-28 19:16:05.000000000 +0100
@@ -32,59 +32,107 @@
@namespace KAuth
@section kauth_intro Introduction
- The KDE Authorization API allows developers to write desktop applications that run high-privileged tasks in an easy, secure and cross-platform way. Previously, if an application had to do administrative tasks,
- it had to be run as root, using mechanisms such as sudo or graphical equivalents, or by setting the executable's setuid bit. This approach has some drawbacks. For example, the whole application code,
- including GUI handling and network communication, had to be done as root. More code that runs as root means more possible security holes.
-
- The solution is the caller/helper pattern. With this pattern, the privileged code is isolated in a small helper tool that runs as root. This tool includes only the few lines of code that actually
- need to be run with privileges, not the whole application logic. All the other parts of the application are run as a normal user, and the helper tool is called when needed, using a secure mechanism that
- ensures that the user is authorized to do so. This pattern is not very easy to implement, because the developer has to deal with a lot of details about how to authorize the user, how to call the helper
- with the right privileges, how to exchange data with the helper, etc.. This is where the new KDE Authorization API becomes useful. Thanks to this new library, every developer can implement the
- caller/helper pattern to write application that require high privileges, with a few lines of code in an easy, secure and cross-platform way.
- Not only: the library can also be used to lock down some actions in your application without using a helper but just checking for authorization and verifying if the user is allowed to perform it.
+ The KDE Authorization API allows developers to write desktop applications that
+ run high-privileged tasks in an easy, secure and cross-platform way.
+ Previously, if an application had to do administrative tasks, it had to be run
+ as root, using mechanisms such as sudo or graphical equivalents, or by setting
+ the executable's setuid bit. This approach has some drawbacks. For example, the
+ whole application code, including GUI handling and network communication, had
+ to be done as root. More code that runs as root means more possible security
+ holes.
+
+ The solution is the caller/helper pattern. With this pattern, the privileged
+ code is isolated in a small helper tool that runs as root. This tool includes
+ only the few lines of code that actually need to be run with privileges, not
+ the whole application logic. All the other parts of the application are run as
+ a normal user, and the helper tool is called when needed, using a secure
+ mechanism that ensures that the user is authorized to do so. This pattern is
+ not very easy to implement, because the developer has to deal with a lot of
+ details about how to authorize the user, how to call the helper with the right
+ privileges, how to exchange data with the helper, etc.. This is where the new
+ KDE Authorization API becomes useful. Thanks to this new library, every
+ developer can implement the caller/helper pattern to write application that
+ require high privileges, with a few lines of code in an easy, secure and
+ cross-platform way.
+
+ Not only: the library can also be used to lock down some actions in your
+ application without using a helper but just checking for authorization and
+ verifying if the user is allowed to perform it.
+
+ The KDE Authorization library uses different backends depending on the system
+ where it's built. As far as the user authorization is concerned, it currently
+ uses PolicyKit on linux and Authorization Services on Mac OSX, and a Windows
+ backend will eventually be written, too. At the communication layer, the
+ library uses D-Bus on every supported platform.
- The KDE Authorization library uses different backends depending on the system where it's built. As far as the user authorization is concerned, it currently uses PolicyKit on linux and Authorization Services
- on Mac OSX, and a Windows backend will eventually be written, too. At the communication layer, the library uses D-Bus on every supported platform.
@section kauth_concepts Concepts
- There are a few concepts to understand when using the library. Much of those are carried from underlying APIs such as PolicyKit, so if you know something about them there shouldn't be problems.
- An <i>action</i> is a single task that needs to be done by the application. You refer to an action using an action identifier, which is a string in reverse domain name syntax (to avoid duplicates). For
- example, if the date/time control center module needs to change the date, it would need an action like "org.kde.datatime.change". If your application has to perform more than one privileged task, you
- should configure more than one action. This allows system administrators to fine tune the policies that allow users to perform your actions.
-
- The <i>authorization</i> is the process that is executed to decide if a user can perform an action or not. In order to execute the helper as root, the user has to be authorized. For example, on linux,
- che policykit backend will look at the policykit policy database to see what requirements the user has to meet in order to execute the action you requested. The policy set for that action could allow
- or deny that user, or could say the user has to authenticate in order to gain the authorization.
-
- The <i>authentication</i> is the process that allows the system to know that the person is in front of the console is who he says to be. If an action can be allowed or not depending on the user's identity,
- it has to be proved by entering a password or any other identification data the system requires.
+ There are a few concepts to understand when using the library. Much of those
+ are carried from underlying APIs such as PolicyKit, so if you know something
+ about them there shouldn't be problems.
+
+ An <i>action</i> is a single task that needs to be done by the application. You
+ refer to an action using an action identifier, which is a string in reverse
+ domain name syntax (to avoid duplicates). For example, if the date/time control
+ center module needs to change the date, it would need an action like
+ "org.kde.datatime.change". If your application has to perform more than one
+ privileged task, you should configure more than one action. This allows system
+ administrators to fine tune the policies that allow users to perform your
+ actions.
+
+ The <i>authorization</i> is the process that is executed to decide if a user
+ can perform an action or not. In order to execute the helper as root, the user
+ has to be authorized. For example, on linux, che policykit backend will look at
+ the policykit policy database to see what requirements the user has to meet in
+ order to execute the action you requested. The policy set for that action could
+ allow or deny that user, or could say the user has to authenticate in order to
+ gain the authorization.
+
+ The <i>authentication</i> is the process that allows the system to know that
+ the person is in front of the console is who he says to be. If an action can be
+ allowed or not depending on the user's identity, it has to be proved by
+ entering a password or any other identification data the system requires.
A typical session with the authorization API is like this:
- The user want to perform some privileged task
- The application asks the system if the user is authorized.
- The system asks the user to authenticate, if needed, and reply the application.
- - The application uses some system-provided mechanism to execute the helper's code as the root user. Previously, you had to set the setuid bit to do this, but we have something cool called
+ - The application uses some system-provided mechanism to execute the helper's
+ code as the root user. Previously, you had to set the setuid bit to do this,
+ but we have something cool called
"dbus activation" that doesn't require the setuid bit and is much more flexible.
- - The helper code, immediately after starting, checks if the caller is authorized to do what it asks. If not the helper immediately exits!
+ - The helper code, immediately after starting, checks if the caller is
+ authorized to do what it asks. If not the helper immediately exits!
- If the caller is authorized, the helper executes the task and exits.
- The application receives data back from the helper.
- All these steps are managed by the library. Following sections will focus on how to write the helper to implement your actions and how to call the helper from the application.
+ All these steps are managed by the library. Following sections will focus on
+ how to write the helper to implement your actions and how to call the helper
+ from the application.
@section kauth_helper Writing the helper tool
- The first thing you need to do before writing anything is to decide what actions you need to implement. Every action needs to be identified by a string in the reverse domain name syntax. This helps to
- avoid duplicates. An example of action id is "org.kde.datetime.change" or "org.kde.ksysguard.killprocess". Action names can only contain lowercase letters and dots (not as the first or last char).
- You also need an identifier for your helper. An application using the KDE auth api can implement and use more than one helper, implementing different actions. An helper is uniquely identified in the
- system context with a string. It, again, is in reverse domain name syntax to avoid duplicates. A common approach is to call the helper like the common prefix of your action names.
- For example, the Date/Time kcm module could use a helper called "org.kde.datetime", to perform actions like "org.kde.datetime.changedate" and "org.kde.datetime.changetime". This naming convention
- simplifies the implementation of the helper.
-
- From the code point of view, the helper is implemented as a QObject subclass. Every action is implemented by a public slot. In the example/ directory in the source code tree you find a complete example.
- Let's look at that.
- The helper.h file declares the class that implements the helper. It looks like:
+ The first thing you need to do before writing anything is to decide what
+ actions you need to implement. Every action needs to be identified by a string
+ in the reverse domain name syntax. This helps to avoid duplicates. An example
+ of action id is "org.kde.datetime.change" or "org.kde.ksysguard.killprocess".
+ Action names can only contain lowercase letters and dots (not as the first or
+ last char). You also need an identifier for your helper. An application using
+ the KDE auth api can implement and use more than one helper, implementing
+ different actions. An helper is uniquely identified in the system context with
+ a string. It, again, is in reverse domain name syntax to avoid duplicates. A
+ common approach is to call the helper like the common prefix of your action
+ names. For example, the Date/Time kcm module could use a helper called
+ "org.kde.datetime", to perform actions like "org.kde.datetime.changedate" and
+ "org.kde.datetime.changetime". This naming convention simplifies the
+ implementation of the helper.
+
+ From the code point of view, the helper is implemented as a QObject subclass.
+ Every action is implemented by a public slot. In the example/ directory in the
+ source code tree you find a complete example. Let's look at that. The
+ helper.h file declares the class that implements the helper. It looks like:
@code
#include <kauth.h>
@@ -102,14 +150,23 @@
};
@endcode
- The slot names are the last part of the action name, without the helper's ID if it's a prefix, with all the dots replaced by underscores. In this case, the helper ID is "org.kde.kf5auth.example", so those
- three slots implement the actions "org.kde.kf5auth.example.read", "org.kde.kf5auth.example.write" and "org.kde.kf5auth.example.longaction". The helper ID doesn't have to appear at the beginning of the action
- name, but it's good practice. If you want to extend MyHelper to implement also a different action like "org.kde.datetime.changetime", since the helper ID doesn't match you'll have to implement a
- slot called org_kde_datetime_changetime().
-
- The slot's signature is fixed: the return type is ActionReply, a class that allows you to return results, error codes and custom data to the application when your action has finished to run.
- Please note that due to QMetaObject being picky about namespaces, you NEED to declare the return type as ActionReply and not KAuth::ActionReply. So the using declaration is compulsory
- The QVariantMap object that comes as argument contains custom data coming from the application.
+ The slot names are the last part of the action name, without the helper's ID if
+ it's a prefix, with all the dots replaced by underscores. In this case, the
+ helper ID is "org.kde.kf5auth.example", so those three slots implement the
+ actions "org.kde.kf5auth.example.read", "org.kde.kf5auth.example.write" and
+ "org.kde.kf5auth.example.longaction". The helper ID doesn't have to appear at
+ the beginning of the action name, but it's good practice. If you want to extend
+ MyHelper to implement also a different action like
+ "org.kde.datetime.changetime", since the helper ID doesn't match you'll have to
+ implement a slot called org_kde_datetime_changetime().
+
+ The slot's signature is fixed: the return type is ActionReply, a class that
+ allows you to return results, error codes and custom data to the application
+ when your action has finished to run. Please note that due to QMetaObject
+ being picky about namespaces, you NEED to declare the return type as
+ ActionReply and not KAuth::ActionReply. So the using declaration is compulsory
+ The QVariantMap object that comes as argument contains custom data coming from
+ the application.
Let's look at the read action implementation. Its purpose is to read files:
@@ -135,46 +192,65 @@
}
@endcode
- First, the code creates a default reply object. The default constructor creates a reply that reports success. Then it gets the filename parameter from the argument QVariantMap, that has previously been
- set by the application, before calling the helper. If it fails to open the file, it creates an ActionReply object that notifies that some error has happened in the helper, then set the error code to
- that returned by QFile and returns. If there is no error, it reads the file. The contents are put into the reply.data() object, which is another QVariantMap. It will be sent back to the application
- with the reply.
-
- Because this class will be compiled into a standalone executable, we need a main() function and some code to initialize everything: you don't have to write it. Instead, you use the
- KAUTH_HELPER_MAIN() macro that will take care of everything. It's used like this:
+ First, the code creates a default reply object. The default constructor creates
+ a reply that reports success. Then it gets the filename parameter from the
+ argument QVariantMap, that has previously been set by the application, before
+ calling the helper. If it fails to open the file, it creates an ActionReply
+ object that notifies that some error has happened in the helper, then set the
+ error code to that returned by QFile and returns. If there is no error, it
+ reads the file. The contents are put into the reply.data() object, which is
+ another QVariantMap. It will be sent back to the application with the reply.
+
+ Because this class will be compiled into a standalone executable, we need a
+ main() function and some code to initialize everything: you don't have to write
+ it. Instead, you use the KAUTH_HELPER_MAIN() macro that will take care of
+ everything. It's used like this:
@code
KAUTH_HELPER_MAIN("org.kde.kf5auth.example", MyHelper)
@endcode
- The first parameter is the string containing the helper identifier. Please note that you need to use this same string in the application's code to tell the library which helper to call, so please
- stay away from typos, because we don't have any way to detect them. The second parameter is the name of the helper's class.
- Your helper, if complex, can be composed of a lot of source files, but the important thing is to include this macro in one at least one of them.
+ The first parameter is the string containing the helper identifier. Please note
+ that you need to use this same string in the application's code to tell the
+ library which helper to call, so please stay away from typos, because we don't
+ have any way to detect them. The second parameter is the name of the helper's
+ class. Your helper, if complex, can be composed of a lot of source files, but
+ the important thing is to include this macro in one at least one of them.
- To build the helper, KDE macros provide a function named kauth_install_helper_files(). Use it in your cmake file like this:
+ To build the helper, KDE macros provide a function named
+ kauth_install_helper_files(). Use it in your cmake file like this:
@code
- kde4_add_executable(<helper_target> your sources...)
+ add_executable(<helper_target> your sources...)
target_link_libraries(<helper_target> your libraries...)
install(TARGETS <helper_target> DESTINATION ${LIBEXEC_INSTALL_DIR})
kauth_install_helper_files(<helper_target> <helper_id> <user>)
@endcode
- The first argument is the cmake target name for the helper executable, which you have to build and install separately. Make sure to INSTALL THE HELPER IN ${LIBEXEC_INSTALL_DIR},
- otherwise kauth_install_helper_files will not work. The second argument is the
- helper id. Please be sure to don't misspell it, and to not quote it. The user parameter is the user that the helper has to be run as. It usually is root, but some actions could require less strict
- permissions, so you should use the right user where possible (for example the user apache if you have to mess with apache settings). Note that the target created by this macro already links to
- libkauth and QtCore
+ The first argument is the cmake target name for the helper executable, which
+ you have to build and install separately. Make sure to INSTALL THE HELPER IN
+ ${LIBEXEC_INSTALL_DIR}, otherwise kauth_install_helper_files will not work. The
+ second argument is the helper id. Please be sure to don't misspell it, and to
+ not quote it. The user parameter is the user that the helper has to be run as.
+ It usually is root, but some actions could require less strict permissions, so
+ you should use the right user where possible (for example the user apache if
+ you have to mess with apache settings). Note that the target created by this
+ macro already links to libkauth and QtCore
@section kauth_actions Action registration
- To be able to authorize the actions, they have to be added to the policy database. To do this in a cross-platform way, we provide a cmake macro. It looks like:
+
+ To be able to authorize the actions, they have to be added to the policy
+ database. To do this in a cross-platform way, we provide a cmake macro. It
+ looks like:
@code
- kde4_install_auth_actions(<helper_id> <actions definition file>)
+ kauth_install_actions(<helper_id> <actions definition file>)
@endcode
- The action definition file describes which actions are implemented by your code and which default security options they should have. It is a common text file in ini format, with one section for
- each action and some parameters. The definition for the read action is:
+ The action definition file describes which actions are implemented by your code
+ and which default security options they should have. It is a common text file
+ in ini format, with one section for each action and some parameters. The
+ definition for the read action is:
@verbatim
[org.kde.kf5auth.example.read]
@@ -184,31 +260,49 @@
Persistence=session
@endverbatim
- The name parameter is a text describing the action for <i>who reads the file</i>. The description parameter is the message shown to the user in the authentication dialog. It should be a finite phrase.
- The policy attribute specify the default rule that the user must satisfy to be authorized. Possible values are:
+ The name parameter is a text describing the action for <i>who reads the
+ file</i>. The description parameter is the message shown to the user in the
+ authentication dialog. It should be a finite phrase. The policy attribute
+ specify the default rule that the user must satisfy to be authorized. Possible
+ values are:
- yes: the action should be always allowed
- no: the action should be always denied
- auth_self: the user should authenticate as itself
- auth_admin: the user should authenticate as an administrator user
- The persistence attribute is optional. It says how long an authorization should be retained for that action. The values could be:
+ The persistence attribute is optional. It says how long an authorization should
+ be retained for that action. The values could be:
- session: the authorization persists until the user logs-out
- always: the authorization will persist indefinitely
@section kauth_app Calling the helper from the application
- Once the helper is ready, we need to call it from the main application. In the example's mainwindow.cpp you can see how this is done. To create a reference to an action, an object of type Action has to
- be created. Every Action object refers to an action by its action id. Two objects with the same action id will act on the same action.
- With an Action object, you can authorize and execute the action. To execute an action you have a couple of choices:
- - A synchronous call, using the Action::execute() method, will start the helper, execute the action and return the reply.
- - An asynchronous call, by setting Action::setExecutesAsync(true) and calling ::execute(), will start the helper and return immediately.
-
- The asynchronous call is the most flexible alternative, but you need a way to obtain the reply. This is done by connecting to a signal, but the Action class is not a QObject subclass. Instead, you connect
- to signals exposed by the ActionWatcher class. For every action id you use, there is one ActionWatcher object. You can retrieve it using the Action::watcher() method. If you execute an action using
- Action::executeAsync(), you can connect to the actionPerformed(ActionReply) signal to be notified when the action has been completed (or failed). As a parameter, you'll get a reply object containing
- all the data you need. As a convenience, you can also pass an object and a slot to the executeAsync() method to directly connect them to the signal, if you don't want to mess with watchers.
-
- The piece of code that calls the action of the previous example is located in example/mainwindow.cpp in the on_readAction_triggered() slot. It looks like this:
+ Once the helper is ready, we need to call it from the main application. In the
+ example's mainwindow.cpp you can see how this is done. To create a reference to
+ an action, an object of type Action has to be created. Every Action object
+ refers to an action by its action id. Two objects with the same action id will
+ act on the same action. With an Action object, you can authorize and execute
+ the action. To execute an action you have a couple of choices:
+ - A synchronous call, using the Action::execute() method, will start the
+ helper, execute the action and return the reply.
+ - An asynchronous call, by setting Action::setExecutesAsync(true) and calling
+ Action::execute(), will start the helper and return immediately.
+
+ The asynchronous call is the most flexible alternative, but you need a way to
+ obtain the reply. This is done by connecting to a signal, but the Action class
+ is not a QObject subclass. Instead, you connect to signals exposed by the
+ ActionWatcher class. For every action id you use, there is one ActionWatcher
+ object. You can retrieve it using the Action::watcher() method. If you execute
+ an action using Action::executeAsync(), you can connect to the
+ actionPerformed(ActionReply) signal to be notified when the action has been
+ completed (or failed). As a parameter, you'll get a reply object containing all
+ the data you need. As a convenience, you can also pass an object and a slot to
+ the executeAsync() method to directly connect them to the signal, if you don't
+ want to mess with watchers.
+
+ The piece of code that calls the action of the previous example is located in
+ example/mainwindow.cpp in the on_readAction_triggered() slot. It looks like
+ this:
@code
QVariantMap args;
args["filename"] = filename;
@@ -223,18 +317,32 @@
contents = reply.data()["contents"].toString();
@endcode
- First of all, it creates the action object specifying the action id. Then it loads the filename (we want to read a forbidden file) into the arguments() QVariantMap, which will be directly passed to the
- helper in the read() slot's parameter. This example code uses a synchronous call to execute the action and retrieve the reply. If the reply succeeded, the reply data is retrieved from the returned QVariantMap
- object. Please note that, although the execute() method will return only when the action is completed, the GUI will remain responsive because an internal event loop is entered. This means you should be
- prepared to receive other events in the meanwhile. Also, notice that you have to explicitly set the helper ID to the action: this is done for added safety, to prevent the caller from accidentally invoking
- a helper, and also because KAuth actions may be used without a helper attached (the default). In this case, action.execute() will return ActionSuccess if the authentication went well. This is quite useful
- if you want your user to authenticate before doing something, which however needs no privileged permissions implementation-wise.
+ First of all, it creates the action object specifying the action id. Then it
+ loads the filename (we want to read a forbidden file) into the arguments()
+ QVariantMap, which will be directly passed to the helper in the read() slot's
+ parameter. This example code uses a synchronous call to execute the action and
+ retrieve the reply. If the reply succeeded, the reply data is retrieved from
+ the returned QVariantMap object. Please note that, although the execute()
+ method will return only when the action is completed, the GUI will remain
+ responsive because an internal event loop is entered. This means you should be
+ prepared to receive other events in the meanwhile. Also, notice that you have
+ to explicitly set the helper ID to the action: this is done for added safety,
+ to prevent the caller from accidentally invoking a helper, and also because
+ KAuth actions may be used without a helper attached (the default). In this
+ case, action.execute() will return ActionSuccess if the authentication went
+ well. This is quite useful if you want your user to authenticate before doing
+ something, which however needs no privileged permissions implementation-wise.
+
@section kauth_async Asynchronous calls, data reporting, and action termination
- For a more advanced example, we look at the action "org.kde.kf5auth.example.longaction" in the example helper. This is an action that takes a long time to execute, so we need some features:
- - The helper needs to regularly send data to the application, to inform about the execution status.
- - The application needs to be able to stop the action execution if the user stops it or close the application.
+ For a more advanced example, we look at the action
+ "org.kde.kf5auth.example.longaction" in the example helper. This is an action
+ that takes a long time to execute, so we need some features:
+ - The helper needs to regularly send data to the application, to inform about
+ the execution status.
+ - The application needs to be able to stop the action execution if the user
+ stops it or close the application.
The example code follows:
@code
ActionReply MyHelper::longaction(QVariantMap args)
@@ -249,16 +357,27 @@
}
@endcode
- In this example, the action is only waiting a "long" time using a loop, but we can see some interesting line. The progress status is sent to the application using the HelperSupport::progressStep() method.
- When this method is called, the ActionWatcher associated with this action will emit the progressStep() signal, reporting back the data to the application. There are two overloads of these methods and
- corresponding signals. The one used here takes an integer. Its meaning is application dependent, so you can use it as a sort of percentage. The other overload takes a QVariantMap object that is directly
- passed to the app. In this way, you can report to the application all the custom data you want.
-
- In this example code, the loop exits when the HelperSupport::isStopped() returns true. This happens when the application calls the stop() method on the correponding action object. The stop() method, this
- way, asks the helper to stop the action execution. It's up to the helper to obbey to this request, and if it does so, it should return from the slot, _not_ exit.
-
- The code that calls the action in the application connects a slot to the actionPerformed() signal and then call executeAsync(). The progressStep() signal is directly connected to a QProgressBar, and
- the Stop button in the UI is connected to a slot that calls the Action::stop() method.
+ In this example, the action is only waiting a "long" time using a loop, but we
+ can see some interesting line. The progress status is sent to the application
+ using the HelperSupport::progressStep() method. When this method is called,
+ the ActionWatcher associated with this action will emit the progressStep()
+ signal, reporting back the data to the application. There are two overloads of
+ these methods and corresponding signals. The one used here takes an integer.
+ Its meaning is application dependent, so you can use it as a sort of
+ percentage. The other overload takes a QVariantMap object that is directly
+ passed to the app. In this way, you can report to the application all the
+ custom data you want.
+
+ In this example code, the loop exits when the HelperSupport::isStopped()
+ returns true. This happens when the application calls the stop() method on the
+ correponding action object. The stop() method, this way, asks the helper to
+ stop the action execution. It's up to the helper to obbey to this request, and
+ if it does so, it should return from the slot, _not_ exit.
+
+ The code that calls the action in the application connects a slot to the
+ actionPerformed() signal and then call executeAsync(). The progressStep()
+ signal is directly connected to a QProgressBar, and the Stop button in the UI
+ is connected to a slot that calls the Action::stop() method.
@code
void MainWindow::on_longAction_triggered()
@@ -292,28 +411,41 @@
}
@endcode
- Please pay attention that when you call an action, the helper will be busy executing that action. Therefore, you can't call two execute() methods in sequence like that:
+ Please pay attention that when you call an action, the helper will be busy
+ executing that action. Therefore, you can't call two execute() methods in
+ sequence like that:
@code
action1.execute();
action2.execute();
@endcode
- If you do, you'll get a HelperBusy reply from the second action.
- A solution would be to launch the second action from the slot connected to the first's actionPerformed signal, but this would be very ugly. Read further to know how to solve this problem.
+ If you do, you'll get a HelperBusy reply from the second action. A solution
+ would be to launch the second action from the slot connected to the first's
+ actionPerformed signal, but this would be very ugly. Read further to know how
+ to solve this problem.
@section kauth_other Other features
- To allow to easily execute several actions in sequence, you can execute them in a group. This means using the Action::executeActions() static method, which takes a list of actions and asks the helper
- to execute them with a single request. The helper will execute the actions in the specified order. All the signals will be emitted from the watchers associated with each action.
-
- Sometimes the application needs to know when a particular action has started to execute. For this purpose, you can connect to the actionStarted() signal. It is emitted immediately before the helper's
- slot is called. This isn't very useful if you call execute(), but if you use executeActions() it lets you know when individual actions in the group are started.
-
- It doesn't happen very frequently that you code something that doesn't require some debugging, and you'll need some tool, even a basic one, to debug your helper code as well. For this reason, the
- KDE Authorization library provides a message handler for the Qt debugging system. This means that every call to qDebug() & co. will be reported to the application, and printed using the same qt debugging
- system, with the same debug level.
- If, in the helper code, you write something like:
+ To allow to easily execute several actions in sequence, you can execute them in
+ a group. This means using the Action::executeActions() static method, which
+ takes a list of actions and asks the helper to execute them with a single
+ request. The helper will execute the actions in the specified order. All the
+ signals will be emitted from the watchers associated with each action.
+
+ Sometimes the application needs to know when a particular action has started to
+ execute. For this purpose, you can connect to the actionStarted() signal. It is
+ emitted immediately before the helper's slot is called. This isn't very useful
+ if you call execute(), but if you use executeActions() it lets you know when
+ individual actions in the group are started.
+
+ It doesn't happen very frequently that you code something that doesn't require
+ some debugging, and you'll need some tool, even a basic one, to debug your
+ helper code as well. For this reason, the KDE Authorization library provides a
+ message handler for the Qt debugging system. This means that every call to
+ qDebug() & co. will be reported to the application, and printed using the same
+ qt debugging system, with the same debug level. If, in the helper code, you
+ write something like:
@code
qDebug() << "I'm in the helper";
@endcode
@@ -323,7 +455,8 @@
Debug message from the helper: I'm in the helper
@endverbatim
- Remember that the debug level is preserved, so if you use qFatal() you won't only abort the helper (which isn't suggested anyway), but also the application.
+ Remember that the debug level is preserved, so if you use qFatal() you won't
+ only abort the helper (which isn't suggested anyway), but also the application.
*/
namespace KAuth
@@ -332,37 +465,42 @@
class ActionReplyData;
/**
-* @brief Class that encapsulates a reply coming from the helper after executing an action
+* @brief Class that encapsulates a reply coming from the helper after executing
+* an action
*
-* An instance of ActionReply is returned every time you execute an action with the Action
-* class. You get the reply directly from the Action::execute() method or indirectly as
-* a parameter of the ActionWatcher::actionPerformed() signal.
+* An instance of ActionReply is returned every time you execute an action with
+* the Action class. You get the reply directly from the Action::execute() method
+* or indirectly as a parameter of the ActionWatcher::actionPerformed() signal.
*
-* ActionReply objects can contain both data from a successful action or an error indicator.
-* In case of success, the errorCode() is ActionReply::NoError (zero) and the type() is
-* ActionReply::Success. The data() method returns a QVariantMap object that may contain
-* custom data sent back by the helper.
+* ActionReply objects can contain both data from a successful action or an error
+* indicator. In case of success, the errorCode() is ActionReply::NoError (zero)
+* and the type() is ActionReply::Success. The data() method returns a
+* QVariantMap object that may contain custom data sent back by the helper.
*
-* In case of errors coming from the library, the type() is ActionReply::KAuthError. In this
-* case, errorCode() will always be one of the predefined errors from the ActionReply::Error enum.
-* An error reply of KAuthError type always contains an empty data() object. For some kind of errors
-* you could get a human-readable description with errorDescription().
+* In case of errors coming from the library, the type() is
+* ActionReply::KAuthError. In this case, errorCode() will always be one of the
+* predefined errors from the ActionReply::Error enum. An error reply of
+* KAuthError type always contains an empty data() object. For some kind of
+* errors you could get a human-readable description with errorDescription().
*
-* If, instead, the helper itself has to report some errors occurred during the action execution,
-* the type() will be (and has to be) ActionReply::HelperError. In this case the data() object can
-* contain custom data from the helper, and the errorCode() and errorDescription() values are
-* application-dependent.
+* If, instead, the helper itself has to report some errors occurred during the
+* action execution, the type() will be (and has to be) ActionReply::HelperError.
+* In this case the data() object can contain custom data from the helper, and
+* the errorCode() and errorDescription() values are application-dependent.
*
-* In the helper, to create an action reply object you have two choices: using the constructor, or
-* the predefined replies. For example, to create a successful reply you can use the default constructor
-* but to create a helper error reply, instead of writing <i>ActionReply(ActionReply::HelperError)</i>
-* you could use the more convenient <i>ActionReply::HelperErrorReply</i> constant.
+* In the helper, to create an action reply object you have two choices: using
+* the constructor, or the predefined replies. For example, to create a
+* successful reply you can use the default constructor but to create a helper
+* error reply, instead of writing <i>ActionReply(ActionReply::HelperError)</i>
+* you could use the more convenient <i>ActionReply::HelperErrorReply</i>
+* constant.
*
-* You should not use the predefined error replies to create and return new errors. Replies with the
-* KAuthError type are intended to be returned by the library only. However, you can use them for
-* comparisons.
+* You should not use the predefined error replies to create and return new
+* errors. Replies with the KAuthError type are intended to be returned by the
+* library only. However, you can use them for comparisons.
*
-* To quickly check for success or failure of an action, you can use succeeded() or failed().
+* To quickly check for success or failure of an action, you can use succeeded()
+* or failed().
*
* @since 4.4
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kauth-4.97.0/src/kauthexecutejob.cpp new/kauth-4.98.0/src/kauthexecutejob.cpp
--- old/kauth-4.97.0/src/kauthexecutejob.cpp 2014-03-01 12:50:07.000000000 +0100
+++ new/kauth-4.98.0/src/kauthexecutejob.cpp 2014-03-28 19:16:05.000000000 +0100
@@ -146,7 +146,7 @@
} else if (BackendsManager::authBackend()->capabilities() & KAuth::AuthBackend::AuthorizeFromHelperCapability) {
if (!action.hasHelper()) {
ActionReply r(ActionReply::InvalidActionReply());
- r.setErrorDescription(tr("The current backend only allows helper authorization, but this action does not have an helper."));
+ r.setErrorDescription(tr("The current backend only allows helper authorization, but this action does not have a helper."));
actionPerformedSlot(action.name(), r);
return;
}
--
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 karchive for openSUSE:Factory checked in at 2014-04-02 17:21:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/karchive (Old)
and /work/SRC/openSUSE:Factory/.karchive.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "karchive"
Changes:
--------
--- /work/SRC/openSUSE:Factory/karchive/karchive.changes 2014-03-10 12:17:22.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.karchive.new/karchive.changes 2014-04-02 17:21:47.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:20 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
karchive-4.97.0.tar.xz
New:
----
karchive-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ karchive.spec ++++++
--- /var/tmp/diff_new_pack.D3vCTa/_old 2014-04-02 17:21:48.000000000 +0200
+++ /var/tmp/diff_new_pack.D3vCTa/_new 2014-04-02 17:21:48.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Archive5
Name: karchive
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ karchive-4.97.0.tar.xz -> karchive-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/karchive-4.97.0/CMakeLists.txt new/karchive-4.98.0/CMakeLists.txt
--- old/karchive-4.97.0/CMakeLists.txt 2014-03-01 12:50:05.000000000 +0100
+++ new/karchive-4.98.0/CMakeLists.txt 2014-03-28 19:16:02.000000000 +0100
@@ -2,7 +2,7 @@
project(KArchive)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -45,7 +45,7 @@
include(ECMSetupVersion)
include(ECMGenerateHeaders)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION}
VARIABLE_PREFIX KARCHIVE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/karchive-4.97.0/src/karchive.h new/karchive-4.98.0/src/karchive.h
--- old/karchive-4.97.0/src/karchive.h 2014-03-01 12:50:05.000000000 +0100
+++ new/karchive-4.98.0/src/karchive.h 2014-03-28 19:16:02.000000000 +0100
@@ -133,7 +133,7 @@
* Writes a local directory into the archive, including all its contents, recursively.
* Calls addLocalFile for each file to be added.
*
- * Since KDE 3.2 it will also add a @p path that is a symbolic link to a
+ * It will also add a @p path that is a symbolic link to a
* directory. The symbolic link will be dereferenced and the content of the
* directory it is pointing to added recursively. However, symbolic links
* *under* @p path will be stored as is.
@@ -180,7 +180,7 @@
const QDateTime &mtime = QDateTime(), const QDateTime &ctime = QDateTime());
/**
- * @deprecated use writeFile(const QString&,const QByteArray&,mode_t,const QString&,const QString&,const QDateTime&,const QDateTime&,const QDateTime&)
+ * @deprecated since 5.0, use writeFile(const QString&,const QByteArray&,mode_t,const QString&,const QString&,const QDateTime&,const QDateTime&,const QDateTime&)
*/
#ifndef KARCHIVE_NO_DEPRECATED
KARCHIVE_DEPRECATED bool writeFile(const QString &name, const QString &user, const QString &group,
--
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 kapidox for openSUSE:Factory checked in at 2014-04-02 17:21:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kapidox (Old)
and /work/SRC/openSUSE:Factory/.kapidox.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kapidox"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kapidox/kapidox.changes 2014-03-10 12:18:18.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kapidox.new/kapidox.changes 2014-04-02 17:21:46.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:20 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
kapidox-4.97.0.tar.xz
New:
----
kapidox-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kapidox.spec ++++++
--- /var/tmp/diff_new_pack.HeVg03/_old 2014-04-02 17:21:47.000000000 +0200
+++ /var/tmp/diff_new_pack.HeVg03/_new 2014-04-02 17:21:47.000000000 +0200
@@ -17,7 +17,7 @@
Name: kapidox
-Version: 4.97.0
+Version: 4.98.0
Release: 0
Requires: doxygen
BuildRequires: fdupes
++++++ kapidox-4.97.0.tar.xz -> kapidox-4.98.0.tar.xz ++++++
++++ 2657 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 frameworkintegration for openSUSE:Factory checked in at 2014-04-02 17:21:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/frameworkintegration (Old)
and /work/SRC/openSUSE:Factory/.frameworkintegration.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "frameworkintegration"
Changes:
--------
--- /work/SRC/openSUSE:Factory/frameworkintegration/frameworkintegration.changes 2014-03-10 12:18:19.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.frameworkintegration.new/frameworkintegration.changes 2014-04-02 17:21:45.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:19 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
frameworkintegration-4.97.0.tar.xz
New:
----
frameworkintegration-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ frameworkintegration.spec ++++++
--- /var/tmp/diff_new_pack.TE0t96/_old 2014-04-02 17:21:46.000000000 +0200
+++ /var/tmp/diff_new_pack.TE0t96/_new 2014-04-02 17:21:46.000000000 +0200
@@ -18,10 +18,10 @@
%define lname libKF5Style5
Name: frameworkintegration
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kconfig-devel >= %{_kf5_version}
BuildRequires: kconfigwidgets-devel >= %{_kf5_version}
++++++ frameworkintegration-4.97.0.tar.xz -> frameworkintegration-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/CMakeLists.txt new/frameworkintegration-4.98.0/CMakeLists.txt
--- old/frameworkintegration-4.97.0/CMakeLists.txt 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/CMakeLists.txt 2014-03-28 19:15:59.000000000 +0100
@@ -2,7 +2,7 @@
project(FrameworkIntegration)
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
@@ -19,7 +19,7 @@
set(REQUIRED_QT_VERSION 5.2.0)
find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets DBus)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX FRAMEWORKINTEGRATION
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/frameworkintegration_version.h"
@@ -34,6 +34,13 @@
find_package(KF5Notifications ${KF5_VERSION} REQUIRED)
find_package(KF5WidgetsAddons ${KF5_VERSION} REQUIRED)
+find_package(OxygenFont 0.4)
+
+set_package_properties(OxygenFont PROPERTIES
+ PURPOSE "Default font for KDE Applications"
+ TYPE RUNTIME
+)
+
add_subdirectory(src)
add_subdirectory(autotests)
add_subdirectory(tests)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/autotests/CMakeLists.txt new/frameworkintegration-4.98.0/autotests/CMakeLists.txt
--- old/frameworkintegration-4.97.0/autotests/CMakeLists.txt 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/autotests/CMakeLists.txt 2014-03-28 19:15:59.000000000 +0100
@@ -19,7 +19,7 @@
add_executable(${_testname} ${_testname}.cpp ${ARGN})
add_test(frameworkintegration-${_testname} ${_testname})
ecm_mark_as_test(${_testname})
- target_link_libraries(${_testname} Qt5::Test Qt5::DBus KF5::ConfigWidgets KF5::ConfigCore KF5::IconThemes KF5::Style KF5::KIOFileWidgets KF5::I18n)
+ target_link_libraries(${_testname} Qt5::Test Qt5::DBus KF5::ConfigWidgets KF5::ConfigCore KF5::IconThemes KF5::Style KF5::KIOFileWidgets KF5::I18n KF5::Notifications)
endmacro()
frameworkintegration_tests(
@@ -28,6 +28,7 @@
../src/platformtheme/kfontsettingsdata.cpp
../src/platformtheme/khintssettings.cpp
../src/platformtheme/kdeplatformfiledialoghelper.cpp
+ ../src/platformtheme/kdeplatformsystemtrayicon.cpp
)
frameworkintegration_tests(
@@ -38,3 +39,7 @@
frameworkintegration_tests(
kstyle_unittest
)
+
+frameworkintegration_tests(
+ kfiledialog_unittest
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/autotests/kfiledialog_unittest.cpp new/frameworkintegration-4.98.0/autotests/kfiledialog_unittest.cpp
--- old/frameworkintegration-4.97.0/autotests/kfiledialog_unittest.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/frameworkintegration-4.98.0/autotests/kfiledialog_unittest.cpp 2014-03-28 19:15:59.000000000 +0100
@@ -0,0 +1,69 @@
+/* This file is part of the KDE libraries
+ * Copyright 2014 Dominik Haumann <dhaumann(a)kde.org>
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License or ( at
+ * your option ) version 3 or, at the discretion of KDE e.V. ( which shall
+ * act as a proxy as in section 14 of the GPLv3 ), any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include <QTest>
+#include <QFileDialog>
+
+#include <QDebug>
+
+class KFileDialog_UnitTest : public QObject
+{
+ Q_OBJECT
+private Q_SLOTS:
+ void initTestCase()
+ {
+ }
+
+ void cleanupTestCase()
+ {
+ }
+
+ void testSetNameFilters()
+ {
+ QFileDialog dialog;
+
+ QStringList nameFilterList = QStringList() << "c (*.cpp)" << "h (*.h)";
+ dialog.setNameFilters(nameFilterList);
+ QCOMPARE(dialog.nameFilters(), nameFilterList);
+ }
+
+ void testSelectNameFilter()
+ {
+ QFileDialog dialog;
+
+ QStringList nameFilterList = QStringList() << "c (*.cpp)" << "h (*.h)";
+ dialog.setNameFilters(nameFilterList);
+ QCOMPARE(dialog.nameFilters(), nameFilterList);
+
+ QString selectNameFilter("h (*.h)");
+ dialog.selectNameFilter(selectNameFilter);
+ QEXPECT_FAIL("", "Does currently not work. Works, once the dialog gets shown, though.", Continue);
+ QCOMPARE(dialog.selectedNameFilter(), selectNameFilter);
+
+ dialog.show();
+ QCOMPARE(dialog.selectedNameFilter(), selectNameFilter);
+ }
+
+};
+
+QTEST_MAIN(KFileDialog_UnitTest)
+
+#include "kfiledialog_unittest.moc"
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/autotests/kfontsettingsdata_unittest.cpp new/frameworkintegration-4.98.0/autotests/kfontsettingsdata_unittest.cpp
--- old/frameworkintegration-4.97.0/autotests/kfontsettingsdata_unittest.cpp 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/autotests/kfontsettingsdata_unittest.cpp 2014-03-28 19:15:59.000000000 +0100
@@ -51,7 +51,10 @@
QFile::copy(CONFIGFILE, configPath);
}
-Q_COREAPP_STARTUP_FUNCTION(prepareEnvironment);
+// Run prepareEnvironment before qApp is created! slightly incorrect, QFile::encodeName can be wrong then.
+// But we can't use Q_COREAPP_STARTUP_FUNCTION because the platform theme ends up being created
+// first, with the wrong environment.
+Q_CONSTRUCTOR_FUNCTION(prepareEnvironment);
class KFontSettingsData_UnitTest : public QWidget
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/Messages.sh new/frameworkintegration-4.98.0/src/Messages.sh
--- old/frameworkintegration-4.97.0/src/Messages.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/Messages.sh 2014-03-28 19:15:59.000000000 +0100
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources.
+# The results are stored in a pseudo .cpp file to be picked up by xgettext.
+lst=`find . -name \*.rc -o -name \*.ui -o -name \*.kcfg`
+if [ -n "$lst" ] ; then
+ $EXTRACTRC $lst >> rc.cpp
+fi
+
+# If your framework contains tips-of-the-day, call preparetips as well.
+if [ -f "data/tips" ] ; then
+ ( cd data && $PREPARETIPS > ../tips.cpp )
+fi
+
+# Extract strings from all source files.
+# If your framework depends on KI18n, use $XGETTEXT. If it uses Qt translation
+# system, use $EXTRACT_TR_STRINGS.
+$XGETTEXT `find . -name \*.cpp -o -name \*.h -name \*.qml` -o $podir/frameworkintegration5.pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/CMakeLists.txt new/frameworkintegration-4.98.0/src/platformtheme/CMakeLists.txt
--- old/frameworkintegration-4.97.0/src/platformtheme/CMakeLists.txt 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/CMakeLists.txt 2014-03-28 19:15:59.000000000 +0100
@@ -4,6 +4,7 @@
kfontsettingsdata.cpp
khintssettings.cpp
kdeplatformfiledialoghelper.cpp
+ kdeplatformsystemtrayicon.cpp
main.cpp
)
@@ -23,6 +24,7 @@
KF5::IconThemes
KF5::KIOFileWidgets
KF5::I18n
+ KF5::Notifications
)
install(TARGETS KDEPlatformTheme DESTINATION ${QT_PLUGIN_INSTALL_DIR}/platformthemes)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformfiledialoghelper.cpp new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformfiledialoghelper.cpp
--- old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformfiledialoghelper.cpp 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformfiledialoghelper.cpp 2014-03-28 19:15:59.000000000 +0100
@@ -173,6 +173,9 @@
QStringList nameFilters = options()->nameFilters();
if (!nameFilters.isEmpty()) {
m_dialog->m_fileWidget->setFilter(qt2KdeFilter(nameFilters));
+ if (!options()->initiallySelectedNameFilter().isEmpty()) {
+ selectNameFilter(options()->initiallySelectedNameFilter());
+ }
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformsystemtrayicon.cpp new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformsystemtrayicon.cpp
--- old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformsystemtrayicon.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformsystemtrayicon.cpp 2014-03-28 19:15:59.000000000 +0100
@@ -0,0 +1,327 @@
+/* This file is part of the KDE libraries
+ * Copyright 2014 Martin Gräßlin <mgraesslin(a)kde.org>
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License or ( at
+ * your option ) version 3 or, at the discretion of KDE e.V. ( which shall
+ * act as a proxy as in section 14 of the GPLv3 ), any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+#include "kdeplatformsystemtrayicon.h"
+#include <kstatusnotifieritem.h>
+#include <QAction>
+#include <QIcon>
+#include <QMenu>
+#include <QRect>
+#include <QApplication>
+
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 3, 0))
+SystemTrayMenu::SystemTrayMenu()
+ : QPlatformMenu()
+ , m_tag(0)
+ , m_menu(new QMenu())
+{
+ connect(m_menu.data(), &QMenu::aboutToShow, this, &QPlatformMenu::aboutToShow);
+ connect(m_menu.data(), &QMenu::aboutToHide, this, &QPlatformMenu::aboutToHide);
+}
+
+SystemTrayMenu::~SystemTrayMenu()
+{
+}
+
+QPlatformMenuItem *SystemTrayMenu::createMenuItem() const
+{
+ return new SystemTrayMenuItem();
+}
+
+void SystemTrayMenu::insertMenuItem(QPlatformMenuItem *menuItem, QPlatformMenuItem *before)
+{
+ if (SystemTrayMenuItem *ours = qobject_cast<SystemTrayMenuItem*>(menuItem)) {
+ bool inserted = false;
+ if (SystemTrayMenuItem *oursBefore = qobject_cast<SystemTrayMenuItem*>(before)) {
+ for (auto it = m_items.begin(); it != m_items.end(); ++it) {
+ if (*it == oursBefore) {
+ m_items.insert(it, ours);
+ m_menu->insertAction(oursBefore->action(), ours->action());
+ inserted = true;
+ break;
+ }
+ }
+ }
+ if (!inserted) {
+ m_items.append(ours);
+ m_menu->addAction(ours->action());
+ }
+ }
+}
+
+QPlatformMenuItem *SystemTrayMenu::menuItemAt(int position) const
+{
+ if (position < m_items.size()) {
+ return m_items.at(position);
+ }
+ return Q_NULLPTR;
+}
+
+QPlatformMenuItem *SystemTrayMenu::menuItemForTag(quintptr tag) const
+{
+ auto it = std::find_if(m_items.constBegin(), m_items.constEnd(), [tag](SystemTrayMenuItem *item) {
+ return item->tag() == tag;
+ });
+ if (it != m_items.constEnd()) {
+ return *it;
+ }
+ return Q_NULLPTR;
+}
+
+void SystemTrayMenu::removeMenuItem(QPlatformMenuItem *menuItem)
+{
+ if (SystemTrayMenuItem *ours = qobject_cast<SystemTrayMenuItem*>(menuItem)) {
+ m_items.removeOne(ours);
+ m_menu->removeAction(ours->action());
+ }
+}
+
+void SystemTrayMenu::setEnabled(bool enabled)
+{
+ m_menu->setEnabled(enabled);
+}
+
+void SystemTrayMenu::setIcon(const QIcon &icon)
+{
+ m_menu->setIcon(icon);
+}
+
+void SystemTrayMenu::setTag(quintptr tag)
+{
+ m_tag = tag;
+}
+
+void SystemTrayMenu::setText(const QString &text)
+{
+ m_menu->setTitle(text);
+}
+
+void SystemTrayMenu::setVisible(bool visible)
+{
+ m_menu->setVisible(visible);
+}
+
+void SystemTrayMenu::syncMenuItem(QPlatformMenuItem *menuItem)
+{
+ Q_UNUSED(menuItem)
+ // nothing to do
+}
+
+void SystemTrayMenu::syncSeparatorsCollapsible(bool enable)
+{
+ m_menu->setSeparatorsCollapsible(enable);
+}
+
+quintptr SystemTrayMenu::tag() const
+{
+ return m_tag;
+}
+
+QMenu *SystemTrayMenu::menu() const
+{
+ return m_menu.data();
+}
+
+SystemTrayMenuItem::SystemTrayMenuItem()
+ : QPlatformMenuItem()
+ , m_tag(0)
+ , m_menu(Q_NULLPTR)
+ , m_action(new QAction(this))
+{
+ connect(m_action, &QAction::triggered, this, &QPlatformMenuItem::activated);
+ connect(m_action, &QAction::hovered, this, &QPlatformMenuItem::hovered);
+}
+
+SystemTrayMenuItem::~SystemTrayMenuItem()
+{
+}
+
+void SystemTrayMenuItem::setCheckable(bool checkable)
+{
+ m_action->setCheckable(checkable);
+}
+
+void SystemTrayMenuItem::setChecked(bool isChecked)
+{
+ m_action->setChecked(isChecked);
+}
+
+void SystemTrayMenuItem::setEnabled(bool enabled)
+{
+ m_action->setEnabled(enabled);
+}
+
+void SystemTrayMenuItem::setFont(const QFont &font)
+{
+ m_action->setFont(font);
+}
+
+void SystemTrayMenuItem::setIcon(const QIcon &icon)
+{
+ m_action->setIcon(icon);
+}
+
+void SystemTrayMenuItem::setIsSeparator(bool isSeparator)
+{
+ m_action->setSeparator(isSeparator);
+}
+
+void SystemTrayMenuItem::setMenu(QPlatformMenu *menu)
+{
+ m_menu = menu;
+}
+
+void SystemTrayMenuItem::setRole(QPlatformMenuItem::MenuRole role)
+{
+ Q_UNUSED(role)
+}
+
+void SystemTrayMenuItem::setShortcut(const QKeySequence &shortcut)
+{
+ m_action->setShortcut(shortcut);
+}
+
+void SystemTrayMenuItem::setTag(quintptr tag)
+{
+ m_tag = tag;
+}
+
+void SystemTrayMenuItem::setText(const QString &text)
+{
+ m_action->setText(text);
+}
+
+void SystemTrayMenuItem::setVisible(bool isVisible)
+{
+ m_action->setVisible(isVisible);
+}
+
+quintptr SystemTrayMenuItem::tag() const
+{
+ return m_tag;
+}
+
+QAction *SystemTrayMenuItem::action() const
+{
+ return m_action;
+}
+#endif
+
+KDEPlatformSystemTrayIcon::KDEPlatformSystemTrayIcon()
+ : QPlatformSystemTrayIcon()
+ , m_sni(Q_NULLPTR)
+{
+}
+
+KDEPlatformSystemTrayIcon::~KDEPlatformSystemTrayIcon()
+{
+}
+
+void KDEPlatformSystemTrayIcon::init()
+{
+ if (!m_sni) {
+ m_sni = new KStatusNotifierItem();
+ m_sni->setTitle(QApplication::applicationDisplayName());
+ connect(m_sni, &KStatusNotifierItem::activateRequested, [this](bool active, const QPoint &pos) {
+ Q_UNUSED(active)
+ Q_UNUSED(pos)
+ emit activated(QPlatformSystemTrayIcon::Trigger);
+ });
+ connect(m_sni, &KStatusNotifierItem::secondaryActivateRequested, [this](const QPoint &pos) {
+ Q_UNUSED(pos)
+ emit activated(QPlatformSystemTrayIcon::Context);
+ });
+ }
+}
+
+void KDEPlatformSystemTrayIcon::cleanup()
+{
+ delete m_sni;
+ m_sni = Q_NULLPTR;
+}
+
+void KDEPlatformSystemTrayIcon::updateIcon(const QIcon &icon)
+{
+ if (!m_sni) {
+ return;
+ }
+ if (icon.name().isEmpty()) {
+ m_sni->setIconByPixmap(icon);
+ m_sni->setToolTipIconByPixmap(icon);
+ } else {
+ m_sni->setIconByName(icon.name());
+ m_sni->setToolTipIconByName(icon.name());
+ }
+}
+
+void KDEPlatformSystemTrayIcon::updateToolTip(const QString &tooltip)
+{
+ if (!m_sni) {
+ return;
+ }
+ m_sni->setToolTipTitle(tooltip);
+}
+
+void KDEPlatformSystemTrayIcon::updateMenu(QPlatformMenu *menu)
+{
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 3, 0))
+ if (!m_sni) {
+ return;
+ }
+ if (SystemTrayMenu *ourMenu = qobject_cast<SystemTrayMenu*>(menu)) {
+ m_sni->setContextMenu(ourMenu->menu());
+ }
+#else
+ Q_UNUSED(menu)
+#endif
+}
+
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 3, 0))
+QPlatformMenu *KDEPlatformSystemTrayIcon::createMenu() const
+{
+ return new SystemTrayMenu();
+}
+#endif
+
+QRect KDEPlatformSystemTrayIcon::geometry() const
+{
+ // StatusNotifierItem doesn't provide the geometry
+ return QRect();
+}
+
+void KDEPlatformSystemTrayIcon::showMessage(const QString &msg, const QString &title,
+ const QIcon &icon, MessageIcon iconType, int secs)
+{
+ Q_UNUSED(iconType)
+ if (!m_sni) {
+ return;
+ }
+ m_sni->showMessage(title, msg, icon.themeName(), secs);
+}
+
+bool KDEPlatformSystemTrayIcon::isSystemTrayAvailable() const
+{
+ // TODO: check on DBus
+ return true;
+}
+
+bool KDEPlatformSystemTrayIcon::supportsMessages() const
+{
+ return true;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformsystemtrayicon.h new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformsystemtrayicon.h
--- old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformsystemtrayicon.h 1970-01-01 01:00:00.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformsystemtrayicon.h 2014-03-28 19:15:59.000000000 +0100
@@ -0,0 +1,115 @@
+/* This file is part of the KDE libraries
+ * Copyright 2014 Martin Gräßlin <mgraesslin(a)kde.org>
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License or ( at
+ * your option ) version 3 or, at the discretion of KDE e.V. ( which shall
+ * act as a proxy as in section 14 of the GPLv3 ), any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+#ifndef KDEPLATFORMSYSTEMTRAYICON_H
+#define KDEPLATFORMSYSTEMTRAYICON_H
+
+#include <qpa/qplatformmenu.h>
+#include <qpa/qplatformsystemtrayicon.h>
+
+class KStatusNotifierItem;
+class SystemTrayMenuItem;
+class QAction;
+class QMenu;
+
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 3, 0))
+class SystemTrayMenu : public QPlatformMenu
+{
+ Q_OBJECT
+public:
+ SystemTrayMenu();
+ ~SystemTrayMenu() Q_DECL_OVERRIDE;
+ void insertMenuItem(QPlatformMenuItem *menuItem, QPlatformMenuItem *before) Q_DECL_OVERRIDE;
+ QPlatformMenuItem *menuItemAt(int position) const Q_DECL_OVERRIDE;
+ QPlatformMenuItem *menuItemForTag(quintptr tag) const Q_DECL_OVERRIDE;
+ void removeMenuItem(QPlatformMenuItem *menuItem) Q_DECL_OVERRIDE;
+ void setEnabled(bool enabled) Q_DECL_OVERRIDE;
+ void setIcon(const QIcon &icon) Q_DECL_OVERRIDE;
+ void setTag(quintptr tag) Q_DECL_OVERRIDE;
+ void setText(const QString &text) Q_DECL_OVERRIDE;
+ void setVisible(bool visible) Q_DECL_OVERRIDE;
+ void syncMenuItem(QPlatformMenuItem *menuItem) Q_DECL_OVERRIDE;
+ void syncSeparatorsCollapsible(bool enable) Q_DECL_OVERRIDE;
+ quintptr tag() const Q_DECL_OVERRIDE;
+ QPlatformMenuItem *createMenuItem() const Q_DECL_OVERRIDE;
+
+ QMenu *menu() const;
+
+private:
+ quintptr m_tag;
+ QScopedPointer<QMenu> m_menu;
+ QList<SystemTrayMenuItem*> m_items;
+};
+
+class SystemTrayMenuItem : public QPlatformMenuItem
+{
+ Q_OBJECT
+public:
+ SystemTrayMenuItem();
+ ~SystemTrayMenuItem() Q_DECL_OVERRIDE;
+ void setCheckable(bool checkable) Q_DECL_OVERRIDE;
+ void setChecked(bool isChecked) Q_DECL_OVERRIDE;
+ void setEnabled(bool enabled) Q_DECL_OVERRIDE;
+ void setFont(const QFont &font) Q_DECL_OVERRIDE;
+ void setIcon(const QIcon &icon) Q_DECL_OVERRIDE;
+ void setIsSeparator(bool isSeparator) Q_DECL_OVERRIDE;
+ void setMenu(QPlatformMenu *menu) Q_DECL_OVERRIDE;
+ void setRole(MenuRole role) Q_DECL_OVERRIDE;
+ void setShortcut(const QKeySequence &shortcut) Q_DECL_OVERRIDE;
+ void setTag(quintptr tag) Q_DECL_OVERRIDE;
+ void setText(const QString &text) Q_DECL_OVERRIDE;
+ void setVisible(bool isVisible) Q_DECL_OVERRIDE;
+ quintptr tag() const Q_DECL_OVERRIDE;
+
+ QAction *action() const;
+
+private:
+ quintptr m_tag;
+ QPlatformMenu *m_menu;
+ QAction *m_action;
+};
+#endif
+
+class KDEPlatformSystemTrayIcon : public QPlatformSystemTrayIcon
+{
+public:
+ KDEPlatformSystemTrayIcon();
+ ~KDEPlatformSystemTrayIcon() Q_DECL_OVERRIDE;
+
+ void init() Q_DECL_OVERRIDE;
+ void cleanup() Q_DECL_OVERRIDE;
+ void updateIcon(const QIcon &icon) Q_DECL_OVERRIDE;
+ void updateToolTip(const QString &tooltip) Q_DECL_OVERRIDE;
+ void updateMenu(QPlatformMenu *menu) Q_DECL_OVERRIDE;
+ QRect geometry() const Q_DECL_OVERRIDE;
+ void showMessage(const QString &msg, const QString &title,
+ const QIcon &icon, MessageIcon iconType, int secs) Q_DECL_OVERRIDE;
+
+ bool isSystemTrayAvailable() const Q_DECL_OVERRIDE;
+ bool supportsMessages() const Q_DECL_OVERRIDE;
+
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 3, 0))
+ QPlatformMenu *createMenu() const Q_DECL_OVERRIDE;
+#endif
+
+private:
+ KStatusNotifierItem *m_sni;
+};
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformtheme.cpp new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformtheme.cpp
--- old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformtheme.cpp 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformtheme.cpp 2014-03-28 19:15:59.000000000 +0100
@@ -23,6 +23,7 @@
#include "kfontsettingsdata.h"
#include "khintssettings.h"
#include "kdeplatformfiledialoghelper.h"
+#include "kdeplatformsystemtrayicon.h"
#include <QCoreApplication>
#include <QFont>
@@ -211,3 +212,8 @@
return 0;
}
}
+
+QPlatformSystemTrayIcon *KdePlatformTheme::createPlatformSystemTrayIcon() const
+{
+ return new KDEPlatformSystemTrayIcon;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformtheme.h new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformtheme.h
--- old/frameworkintegration-4.97.0/src/platformtheme/kdeplatformtheme.h 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/kdeplatformtheme.h 2014-03-28 19:15:59.000000000 +0100
@@ -46,6 +46,8 @@
virtual QPlatformDialogHelper *createPlatformDialogHelper(DialogType type) const;
virtual bool usePlatformNativeDialog(DialogType type) const;
+ virtual QPlatformSystemTrayIcon *createPlatformSystemTrayIcon() const Q_DECL_OVERRIDE;
+
private:
void loadSettings();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/kfontsettingsdata.cpp new/frameworkintegration-4.98.0/src/platformtheme/kfontsettingsdata.cpp
--- old/frameworkintegration-4.97.0/src/platformtheme/kfontsettingsdata.cpp 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/kfontsettingsdata.cpp 2014-03-28 19:15:59.000000000 +0100
@@ -52,12 +52,12 @@
static const char DefaultFont[] = "Sans Serif";
static const KFontData DefaultFontData[KFontSettingsData::FontTypesCount] = {
- { GeneralId, "font", DefaultFont, 9, -1, QFont::SansSerif },
- { GeneralId, "fixed", "Monospace", 9, -1, QFont::TypeWriter },
- { GeneralId, "toolBarFont", DefaultFont, 8, -1, QFont::SansSerif },
- { GeneralId, "menuFont", DefaultFont, 9, -1, QFont::SansSerif },
- { "WM", "activeFont", DefaultFont, 8, -1, QFont::SansSerif },
- { GeneralId, "taskbarFont", DefaultFont, 9, -1, QFont::SansSerif },
+ { GeneralId, "font", DefaultFont, 10, -1, QFont::SansSerif },
+ { GeneralId, "fixed", "Oxygen Mono", 9, -1, QFont::TypeWriter },
+ { GeneralId, "toolBarFont", DefaultFont, 9, -1, QFont::SansSerif },
+ { GeneralId, "menuFont", DefaultFont, 10, -1, QFont::SansSerif },
+ { "WM", "activeFont", DefaultFont, 10, -1, QFont::SansSerif },
+ { GeneralId, "taskbarFont", DefaultFont, 10, -1, QFont::SansSerif },
{ GeneralId, "smallestReadableFont", DefaultFont, 8, -1, QFont::SansSerif }
};
@@ -71,7 +71,7 @@
cachedFont->setStyleHint(fontData.StyleHint);
if (!mKdeGlobals) {
- mKdeGlobals = KSharedConfig::openConfig("kdeglobals");
+ mKdeGlobals = KSharedConfig::openConfig("kdeglobals", KConfig::NoGlobals);
}
const KConfigGroup configGroup(mKdeGlobals, fontData.ConfigGroupKey);
QString fontInfo = configGroup.readEntry(fontData.ConfigKey, QString());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/khintssettings.cpp new/frameworkintegration-4.98.0/src/platformtheme/khintssettings.cpp
--- old/frameworkintegration-4.97.0/src/platformtheme/khintssettings.cpp 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/khintssettings.cpp 2014-03-28 19:15:59.000000000 +0100
@@ -44,21 +44,21 @@
KHintsSettings::KHintsSettings() : QObject(0)
{
- KSharedConfig::Ptr ptr = KSharedConfig::openConfig("kdeglobals");
- KConfigGroup cg(ptr, "KDE");
+ mKdeGlobals = KSharedConfig::openConfig("kdeglobals", KConfig::NoGlobals);
+ KConfigGroup cg(mKdeGlobals, "KDE");
m_hints[QPlatformTheme::CursorFlashTime] = qBound(200, cg.readEntry("CursorBlinkRate", 1000), 2000);
m_hints[QPlatformTheme::MouseDoubleClickInterval] = cg.readEntry("DoubleClickInterval", 400);
m_hints[QPlatformTheme::StartDragDistance] = cg.readEntry("StartDragDist", 10);
m_hints[QPlatformTheme::StartDragTime] = cg.readEntry("StartDragTime", 500);
- KConfigGroup cgToolbar(ptr, "Toolbar style");
+ KConfigGroup cgToolbar(mKdeGlobals, "Toolbar style");
m_hints[QPlatformTheme::ToolButtonStyle] = toolButtonStyle(cgToolbar);
- KConfigGroup cgToolbarIcon(ptr, "MainToolbarIcons");
+ KConfigGroup cgToolbarIcon(mKdeGlobals, "MainToolbarIcons");
m_hints[QPlatformTheme::ToolBarIconSize] = cgToolbarIcon.readEntry("Size", 22);
m_hints[QPlatformTheme::ItemViewActivateItemOnSingleClick] = cg.readEntry("SingleClick", true);
- KConfigGroup cgIcons(ptr, "Icons");
+ KConfigGroup cgIcons(mKdeGlobals, "Icons");
m_hints[QPlatformTheme::SystemIconThemeName] = cgIcons.readEntry("Theme", "oxygen");
m_hints[QPlatformTheme::SystemIconFallbackThemeName] = "hicolor";
m_hints[QPlatformTheme::IconThemeSearchPaths] = xdgIconThemePaths();
@@ -131,9 +131,8 @@
void KHintsSettings::toolbarStyleChanged()
{
- KSharedConfig::Ptr ptr = KSharedConfig::openConfig("kdeglobals");
- ptr->reparseConfiguration();
- KConfigGroup cg(ptr, "Toolbar style");
+ mKdeGlobals->reparseConfiguration();
+ KConfigGroup cg(mKdeGlobals, "Toolbar style");
m_hints[QPlatformTheme::ToolButtonStyle] = toolButtonStyle(cg);
//from gtksymbol.cpp
@@ -149,9 +148,8 @@
void KHintsSettings::slotNotifyChange(int type, int arg)
{
- KSharedConfig::Ptr ptr = KSharedConfig::openConfig("kdeglobals");
- ptr->reparseConfiguration();
- KConfigGroup cg(ptr, "KDE");
+ mKdeGlobals->reparseConfiguration();
+ KConfigGroup cg(mKdeGlobals, "KDE");
switch (type) {
case PaletteChanged: {
@@ -205,8 +203,7 @@
{
KIconLoader::Group iconGroup = (KIconLoader::Group) group;
if (iconGroup != KIconLoader::MainToolbar) {
- KSharedConfig::Ptr ptr = KSharedConfig::openConfig("kdeglobals");
- KConfigGroup cgIcons(ptr, "Icons");
+ KConfigGroup cgIcons(mKdeGlobals, "Icons");
m_hints[QPlatformTheme::SystemIconThemeName] = cgIcons.readEntry("Theme", "oxygen");
return;
}
@@ -273,6 +270,5 @@
qDeleteAll(m_palettes);
m_palettes.clear();
- KSharedConfig::Ptr globals = KSharedConfig::openConfig("kdeglobals");
- m_palettes[QPlatformTheme::SystemPalette] = new QPalette(KColorScheme::createApplicationPalette(globals));
+ m_palettes[QPlatformTheme::SystemPalette] = new QPalette(KColorScheme::createApplicationPalette(mKdeGlobals));
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/frameworkintegration-4.97.0/src/platformtheme/khintssettings.h new/frameworkintegration-4.98.0/src/platformtheme/khintssettings.h
--- old/frameworkintegration-4.97.0/src/platformtheme/khintssettings.h 2014-03-01 12:50:02.000000000 +0100
+++ new/frameworkintegration-4.98.0/src/platformtheme/khintssettings.h 2014-03-28 19:15:59.000000000 +0100
@@ -25,6 +25,7 @@
#include <QVariant>
#include <qpa/qplatformtheme.h>
+#include <ksharedconfig.h>
class KConfigGroup;
@@ -80,6 +81,7 @@
QStringList xdgIconThemePaths() const;
QHash<QPlatformTheme::Palette, QPalette *> m_palettes;
QHash<QPlatformTheme::ThemeHint, QVariant> m_hints;
+ KSharedConfigPtr mKdeGlobals;
};
#endif //KHINTS_SETTINGS_H
--
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 attica-qt5 for openSUSE:Factory checked in at 2014-04-02 17:21:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/attica-qt5 (Old)
and /work/SRC/openSUSE:Factory/.attica-qt5.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "attica-qt5"
Changes:
--------
--- /work/SRC/openSUSE:Factory/attica-qt5/attica-qt5.changes 2014-03-10 12:18:28.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.attica-qt5.new/attica-qt5.changes 2014-04-02 17:21:44.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Mar 29 19:47:18 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 4.98.0
+ * API improvements and cleanups
+ * Buildsystem fixes
+ * For more details please see:
+ http://www.kde.org/announcements/announce-frameworks5-beta1.php
+
+-------------------------------------------------------------------
Old:
----
attica-4.97.0.tar.xz
New:
----
attica-4.98.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ attica-qt5.spec ++++++
--- /var/tmp/diff_new_pack.XLK26z/_old 2014-04-02 17:21:45.000000000 +0200
+++ /var/tmp/diff_new_pack.XLK26z/_new 2014-04-02 17:21:45.000000000 +0200
@@ -21,7 +21,7 @@
%define _libname KF5Attica
Name: attica-qt5
-Version: 4.97.0
+Version: 4.98.0
Release: 0
Summary: Open Collaboration Service client library
License: LGPL-2.1+
@@ -30,7 +30,7 @@
Source: %{rname}-%{version}.tar.xz
Source99: baselibs.conf
BuildRequires: cmake >= 2.8.12
-BuildRequires: extra-cmake-modules >= 0.0.11
+BuildRequires: extra-cmake-modules >= 0.0.12
BuildRequires: fdupes
BuildRequires: kf5-filesystem
BuildRequires: pkgconfig(Qt5Core) >= 5.2.0
++++++ attica-4.97.0.tar.xz -> attica-4.98.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/attica-4.97.0/CMakeLists.txt new/attica-4.98.0/CMakeLists.txt
--- old/attica-4.97.0/CMakeLists.txt 2014-03-01 12:50:48.000000000 +0100
+++ new/attica-4.98.0/CMakeLists.txt 2014-03-28 19:17:59.000000000 +0100
@@ -3,7 +3,7 @@
project(Attica)
# ECM setup
-find_package(ECM 0.0.11 REQUIRED NO_MODULE)
+find_package(ECM 0.0.12 REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(FeatureSummary)
@@ -15,7 +15,7 @@
include(KDEFrameworkCompilerSettings)
include(KDECMakeSettings)
-set(KF5_VERSION "4.97.0")
+set(KF5_VERSION "4.98.0")
ecm_setup_version(${KF5_VERSION}
VARIABLE_PREFIX ATTICA
--
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 kf5-filesystem for openSUSE:Factory checked in at 2014-04-02 17:21:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf5-filesystem (Old)
and /work/SRC/openSUSE:Factory/.kf5-filesystem.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kf5-filesystem"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kf5-filesystem/kf5-filesystem.changes 2014-03-10 12:17:17.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kf5-filesystem.new/kf5-filesystem.changes 2014-04-02 17:21:42.000000000 +0200
@@ -1,0 +2,5 @@
+Sat Mar 29 20:20:58 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Bump to 4.98.0
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kf5-filesystem.spec ++++++
--- /var/tmp/diff_new_pack.FQntcw/_old 2014-04-02 17:21:43.000000000 +0200
+++ /var/tmp/diff_new_pack.FQntcw/_new 2014-04-02 17:21:43.000000000 +0200
@@ -18,7 +18,7 @@
Name: kf5-filesystem
Url: http://www.kde.org
-Version: 4.97.0
+Version: 4.98.0
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Summary: KF5 Directory Layout
++++++ macros.kf5 ++++++
--- /var/tmp/diff_new_pack.FQntcw/_old 2014-04-02 17:21:43.000000000 +0200
+++ /var/tmp/diff_new_pack.FQntcw/_new 2014-04-02 17:21:43.000000000 +0200
@@ -25,7 +25,7 @@
%_kf5_servicetypesdir %{_kf5_sharedir}/kde5/servicetypes
%_kf5_htmldir %{_kf5_sharedir}/doc/HTML
-%_kf5_version 4.97.0
+%_kf5_version 4.98.0
%_kf5_build_type release
--
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 extra-cmake-modules for openSUSE:Factory checked in at 2014-04-02 17:21:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/extra-cmake-modules (Old)
and /work/SRC/openSUSE:Factory/.extra-cmake-modules.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "extra-cmake-modules"
Changes:
--------
--- /work/SRC/openSUSE:Factory/extra-cmake-modules/extra-cmake-modules.changes 2014-03-10 12:17:18.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.extra-cmake-modules.new/extra-cmake-modules.changes 2014-04-02 17:21:40.000000000 +0200
@@ -1,0 +2,6 @@
+Sat Mar 29 19:57:28 UTC 2014 - hrvoje.senjan(a)gmail.com
+
+- Update to 0.0.12
+ * Buildsystem improvements
+
+-------------------------------------------------------------------
Old:
----
extra-cmake-modules-0.0.11.tar.xz
New:
----
extra-cmake-modules-0.0.12.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ extra-cmake-modules.spec ++++++
--- /var/tmp/diff_new_pack.FvLcY6/_old 2014-04-02 17:21:41.000000000 +0200
+++ /var/tmp/diff_new_pack.FvLcY6/_new 2014-04-02 17:21:41.000000000 +0200
@@ -21,7 +21,7 @@
License: BSD-3-Clause
Group: Development/Tools/Other
Url: https://projects.kde.org/projects/kdesupport/extra-cmake-modules
-Version: 0.0.11
+Version: 0.0.12
Release: 0
Source0: %{name}-%{version}.tar.xz
BuildArch: noarch
++++++ extra-cmake-modules-0.0.11.tar.xz -> extra-cmake-modules-0.0.12.tar.xz ++++++
++++ 1958 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 glucat for openSUSE:Factory checked in at 2014-04-02 17:20:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/glucat (Old)
and /work/SRC/openSUSE:Factory/.glucat.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "glucat"
Changes:
--------
--- /work/SRC/openSUSE:Factory/glucat/glucat.changes 2013-08-01 15:35:19.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.glucat.new/glucat.changes 2014-04-02 17:20:16.000000000 +0200
@@ -1,0 +2,27 @@
+Mon Mar 31 09:42:12 UTC 2014 - badshah400(a)gmail.com
+
+- Update to version 0.7.2:
+ + When used with PyClical now generates IPython notebooks
+ + The Pyclical tutorials are now accompanied by corresponding
+ IPython notebooks.
+ + The nork() function in matrix.h and matrix_imp.h is now
+ accompanied by the signed_perm_nork() function, which is
+ faster for the case used by fast<>() in matrix_mult_imp.h
+ + Use of the Boost pool allocator with framed_multi<> is now
+ optional, controlled via the new symbol
+ _GLUCAT_USE_BOOST_POOL_ALLOC
+ + GluCat compiles cleanly with g++ 4.8: does not trigger the
+ "unused local typedefs" warning caused by the addition of
+ -Wunused-local-typedefs to -Wall in g++ 4.8. See
+ http://gcc.gnu.org/ml/gcc-patches/2011-07/msg02460.html
+ http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01388.html
+ + Also compiles cleanly and builds correctly with clang++ 3.4
+- Drop glucat-build-with-updated-boost.patch: incorporated
+ upstream
+- Implement a %check section with included tests
+- Drop conditionals solely relevant to end-of-life openSUSE
+ versions
+- Do not package unnecessary INSTALL file
+- Update year in specfile COPYRIGHT.
+
+-------------------------------------------------------------------
Old:
----
glucat-0.7.1.tar.gz
glucat-build-with-updated-boost.patch
New:
----
glucat-0.7.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ glucat.spec ++++++
--- /var/tmp/diff_new_pack.E1M6Fp/_old 2014-04-02 17:20:17.000000000 +0200
+++ /var/tmp/diff_new_pack.E1M6Fp/_new 2014-04-02 17:20:17.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package glucat
#
-# 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: glucat
-Version: 0.7.1
+Version: 0.7.2
Release: 0
Summary: Library of C++ templates implementing universal Clifford algebras
License: LGPL-3.0
@@ -25,8 +25,6 @@
Url: http://glucat.sourceforge.net/
Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Patch0: glucat-fix-32bit-build.patch
-#PATCH-FIX-UPSTREAM glucat-build-with-updated-boost.patch badshah400(a)gmail.com -- Fix building with updated boost; patch came from upstream
-Patch1: glucat-build-with-updated-boost.patch
BuildRequires: boost-devel
BuildRequires: gcc-c++
BuildRequires: python-Cython
@@ -74,24 +72,22 @@
%ifarch i586 ppc
%patch0 -p1
%endif
-%patch1 -p1
+
%build
-# Parallel make fails for openSUSE 11.4 and lower
-%configure --prefix=%{buildroot}%{_prefix}/
+%configure --prefix=%{buildroot}%{_prefix}
-%if 0%{?suse_version} >= 1210
make %{?_smp_mflags}
-%else
-make
-%endif
%install
make DESTDIR=%{buildroot} install
+%check
+./test/test.sh
+
%files devel
%defattr(-,root,root)
%{_includedir}/%{name}/
-%doc AUTHORS INSTALL ChangeLog README COPYING TODO
+%doc AUTHORS ChangeLog README COPYING TODO
%files -n python-glucat
%defattr(-,root,root)
++++++ glucat-0.7.1.tar.gz -> glucat-0.7.2.tar.gz ++++++
++++ 177071 lines of diff (skipped)
++++++ glucat-fix-32bit-build.patch ++++++
--- /var/tmp/diff_new_pack.E1M6Fp/_old 2014-04-02 17:20:18.000000000 +0200
+++ /var/tmp/diff_new_pack.E1M6Fp/_new 2014-04-02 17:20:18.000000000 +0200
@@ -1,13 +1,13 @@
-Index: glucat-0.7.0/glucat/framed_multi_imp.h
+Index: glucat-0.7.2/glucat/framed_multi_imp.h
===================================================================
---- glucat-0.7.0.orig/glucat/framed_multi_imp.h
-+++ glucat-0.7.0/glucat/framed_multi_imp.h
-@@ -215,7 +215,7 @@ namespace glucat
+--- glucat-0.7.2.orig/glucat/framed_multi_imp.h
++++ glucat-0.7.2/glucat/framed_multi_imp.h
+@@ -217,7 +217,7 @@ namespace glucat
const Scalar_T eps = std::numeric_limits<Scalar_T>::epsilon();
const Scalar_T tol = traits_t::abs(val_norm * eps * eps);
#if defined(_GLUCAT_MAP_IS_HASH)
- const size_t max_size = std::min(algebra_dim, matrix::nnz(val.m_matrix));
+ const size_t max_size = std::min<size_t>(algebra_dim, matrix::nnz(val.m_matrix));
*this = multivector_t(_GLUCAT_HASH_SIZE_T(max_size));
- #endif
+ #endif
for (set_value_t
--
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 ghc-transformers for openSUSE:Factory checked in at 2014-04-02 17:20:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-transformers (Old)
and /work/SRC/openSUSE:Factory/.ghc-transformers.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-transformers"
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-transformers/ghc-transformers.changes 2013-08-01 15:34:50.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-transformers.new/ghc-transformers.changes 2014-04-02 17:20:05.000000000 +0200
@@ -1,0 +2,5 @@
+Thu Oct 31 17:47:52 UTC 2013 - peter.trommler(a)ohm-hochschule.de
+
+- regenerate spec file
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-transformers.spec ++++++
--- /var/tmp/diff_new_pack.XHKbVX/_old 2014-04-02 17:20:05.000000000 +0200
+++ /var/tmp/diff_new_pack.XHKbVX/_new 2014-04-02 17:20:05.000000000 +0200
@@ -18,40 +18,50 @@
%global pkg_name transformers
-%global common_summary Haskell concrete functor and monad transformers library
-
-%global common_description A portable library of functor and monad transformers, inspired by the paper "Functional Programming with Overloading and Higher-Order Polymorphism", by Mark P Jones, in Advanced School of Functional Programming, 1995 (http://web.cecs.pdx.edu/~mpj/pubs/springschool.html)
-
Name: ghc-transformers
Version: 0.3.0.0
Release: 0
-Summary: %{common_summary}
+Summary: Concrete functor and monad transformers
License: BSD-3-Clause
Group: System/Libraries
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
-# BEGIN cabal2spec
Url: http://hackage.haskell.org/package/%{pkg_name}
Source0: http://hackage.haskell.org/packages/archive/%{pkg_name}/%{version}/%{pkg_na…
-ExclusiveArch: %{ix86} x86_64 %{ghc_arches}
+BuildRoot: %{_tmppath}/%{name}-%{version}-build
+
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-rpm-macros
-# END cabal2spec
%description
-%{common_description}
+A portable library of functor and monad transformers, inspired by the paper
+\"Functional Programming with Overloading and Higher-Order Polymorphism\", by
+Mark P Jones, in /Advanced School of Functional Programming/, 1995
+(<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
+
+This package contains:
+
+* the monad transformer class (in "Control.Monad.Trans.Class")
+
+* concrete functor and monad transformers, each with associated operations and
+functions to lift operations associated with other transformers.
+
+It can be used on its own in portable Haskell code, or with the monad classes
+in the @mtl@ or @monads-tf@ packages, which automatically lift operations
+introduced by monad transformers through other transformers.
+
%package devel
Summary: Haskell %{pkg_name} library development files
-Group: Development/Languages/Other
-Requires: ghc-compiler
-Requires(post): ghc-compiler
-Requires(postun): ghc-compiler
+Group: Development/Libraries/Other
+Provides: %{name}-static = %{version}-%{release}
+Requires: ghc-compiler = %{ghc_version}
+Requires(post): ghc-compiler = %{ghc_version}
+Requires(postun): ghc-compiler = %{ghc_version}
Requires: %{name} = %{version}-%{release}
%description devel
-%{common_description}
-This package contains the development files.
+This package provides the Haskell %{pkg_name} library development files.
+
%prep
%setup -q -n %{pkg_name}-%{version}
--
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 caribou for openSUSE:Factory checked in at 2014-04-02 17:19:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/caribou (Old)
and /work/SRC/openSUSE:Factory/.caribou.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "caribou"
Changes:
--------
--- /work/SRC/openSUSE:Factory/caribou/caribou.changes 2013-12-02 09:38:26.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.caribou.new/caribou.changes 2014-04-02 17:19:52.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Mar 14 14:39:42 UTC 2014 - mgorse(a)suse.com
+
+- Move caribou schema and keyboard layout files to a caribou-common
+ package. They are required by libcaribou, which is used by
+ gnome-shell if the on-screen keyboard is enabled.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ caribou.spec ++++++
--- /var/tmp/diff_new_pack.y9L0NB/_old 2014-04-02 17:19:52.000000000 +0200
+++ /var/tmp/diff_new_pack.y9L0NB/_new 2014-04-02 17:19:52.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package caribou
#
-# 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
@@ -103,6 +103,7 @@
%package -n libcaribou0
Summary: On-screen Keyboard for GNOME -- Library
Group: System/Libraries
+Requires: %{name}-common >= %{version}
%description -n libcaribou0
Caribou is a text entry and UI navigation application being developed
@@ -110,6 +111,16 @@
for Caribou is to create a usable solution for people whose primary way
of accessing a computer is a switch device.
+%package common
+Summary: On-screen Keyboard for GNOME -- Common data files
+Group: System/Libraries
+
+%description common
+Caribou is a text entry and UI navigation application being developed
+as an alternative to the Gnome On-screen Keyboard. The overarching goal
+for Caribou is to create a usable solution for people whose primary way
+of accessing a computer is a switch device.
+
%package -n typelib-1_0-Caribou-1_0
Summary: On-screen Keyboard for GNOME -- Introspection bindings
Group: System/Libraries
@@ -174,10 +185,8 @@
%{_bindir}/caribou-preferences
%{python_sitelib}/caribou/
%{_datadir}/antler/
-%{_datadir}/caribou/
%{_datadir}/dbus-1/services/org.gnome.Caribou.Antler.service
%{_datadir}/glib-2.0/schemas/org.gnome.antler.gschema.xml
-%{_datadir}/glib-2.0/schemas/org.gnome.caribou.gschema.xml
%{_libexecdir}/antler-keyboard
%{_sysconfdir}/xdg/autostart/caribou-autostart.desktop
@@ -199,6 +208,11 @@
%defattr(-, root, root)
%{_libdir}/libcaribou.so.*
+%files common
+%defattr(-, root, root)
+%{_datadir}/caribou/
+%{_datadir}/glib-2.0/schemas/org.gnome.caribou.gschema.xml
+
%files -n typelib-1_0-Caribou-1_0
%defattr(-, root, root)
%{_libdir}/girepository-1.0/Caribou-1.0.typelib
--
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 ghc-blaze-html for openSUSE:Factory checked in at 2014-04-02 17:19:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-blaze-html (Old)
and /work/SRC/openSUSE:Factory/.ghc-blaze-html.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-blaze-html"
Changes:
--------
New Changes file:
--- /dev/null 2014-02-13 01:09:38.344032506 +0100
+++ /work/SRC/openSUSE:Factory/.ghc-blaze-html.new/ghc-blaze-html.changes 2014-04-02 17:19:31.000000000 +0200
@@ -0,0 +1,38 @@
+-------------------------------------------------------------------
+Mon Oct 21 14:45:53 UTC 2013 - sbahling(a)suse.com
+
+- spec file: Add %defattr(-,root,root,-) to %files devel section
+
+-------------------------------------------------------------------
+Wed May 15 14:25:47 UTC 2013 - peter.trommler(a)ohm-hochschule.de
+
+- update to 0.6.1.1 from upstream (no changelog)
+* base, keygen, and source elements are considered leaf elements
+* dependencies for test framework adjusted
+
+-------------------------------------------------------------------
+Wed Oct 3 07:20:49 UTC 2012 - peter.trommler(a)ohm-hochschule.de
+
+- update to 0.5.1.0 from upstream (no changelog)
+
+-------------------------------------------------------------------
+Wed Jul 4 17:18:33 UTC 2012 - peter.trommler(a)ohm-hochschule.de
+
+- update to 0.5.0.0 from upstream (no changelog)
+
+-------------------------------------------------------------------
+Tue Jun 5 16:55:36 UTC 2012 - peter.trommler(a)ohm-hochschule.de
+
+- cabal2spec 0.25.5 template for spec file
+- required for ghc-rpm-macros 0.90
+
+-------------------------------------------------------------------
+Fri Mar 16 13:58:23 UTC 2012 - peter.trommler(a)ohm-hochschule.de
+
+- added BuildRoof fo SLE_11_SP1/2
+
+-------------------------------------------------------------------
+Fri Mar 2 16:19:12 UTC 2012 - peter.trommler(a)ohm-hochschule.de
+
+- initial packaging
+
New:
----
blaze-html-0.6.1.1.tar.gz
ghc-blaze-html.changes
ghc-blaze-html.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-blaze-html.spec ++++++
#
# spec file for package ghc-blaze-html
#
# 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global pkg_name blaze-html
Name: ghc-blaze-html
Version: 0.6.1.1
Release: 0
Summary: A blazingly fast HTML combinator library for Haskell
License: BSD-3-Clause
Group: System/Libraries
Url: http://hackage.haskell.org/package/%{pkg_name}
Source0: http://hackage.haskell.org/packages/archive/%{pkg_name}/%{version}/%{pkg_na…
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-rpm-macros
# Begin cabal-rpm deps:
BuildRequires: ghc-blaze-builder-devel
BuildRequires: ghc-blaze-markup-devel
BuildRequires: ghc-bytestring-devel
BuildRequires: ghc-text-devel
# End cabal-rpm deps
%description
A blazingly fast HTML combinator library for the Haskell
programming language. The Text.Blaze module is a good
starting point, as well as this tutorial:
<http://jaspervdj.be/blaze/tutorial.html>.
%package devel
Summary: Haskell %{pkg_name} library development files
Group: Development/Libraries/Other
Requires: ghc-compiler
Requires(post): ghc-compiler
Requires(postun): ghc-compiler
Requires: %{name} = %{version}-%{release}
%description devel
A blazingly fast HTML combinator library for the Haskell
programming language. The Text.Blaze module is a good
starting point, as well as this tutorial:
<http://jaspervdj.be/blaze/tutorial.html>.
%prep
%setup -q -n %{pkg_name}-%{version}
%build
%ghc_lib_build
%install
%ghc_lib_install
%post devel
%ghc_pkg_recache
%postun devel
%ghc_pkg_recache
%files -f %{name}.files
%defattr(-,root,root,-)
%doc LICENSE
%files devel -f %{name}-devel.files
%defattr(-,root,root,-)
%changelog
--
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 autofs for openSUSE:Factory checked in at 2014-04-02 17:19:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/autofs (Old)
and /work/SRC/openSUSE:Factory/.autofs.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "autofs"
Changes:
--------
--- /work/SRC/openSUSE:Factory/autofs/autofs.changes 2014-03-26 16:40:47.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.autofs.new/autofs.changes 2014-04-02 17:19:22.000000000 +0200
@@ -1,0 +2,6 @@
+Tue Mar 25 11:23:27 UTC 2014 - werner(a)suse.de
+
+- Avoid bad timings and timeouts if a shutdown was done by a remote
+ user via su and with autofs based home directory
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ autofs.service ++++++
--- /var/tmp/diff_new_pack.EEHiE8/_old 2014-04-02 17:19:23.000000000 +0200
+++ /var/tmp/diff_new_pack.EEHiE8/_new 2014-04-02 17:19:23.000000000 +0200
@@ -1,6 +1,8 @@
[Unit]
Description=Automounts filesystems on demand
-After=network.target remote-fs.target ypbind.service
+Documentation=man:automount(8) man:autofs(5)
+After=network.target remote-fs.target nss-lookup.target nss-user-lookup.target
+Before=systemd-logind.service
[Service]
Type=forking
--
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 aranym for openSUSE:Factory checked in at 2014-04-02 17:19:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/aranym (Old)
and /work/SRC/openSUSE:Factory/.aranym.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "aranym"
Changes:
--------
--- /work/SRC/openSUSE:Factory/aranym/aranym.changes 2014-01-07 14:32:59.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.aranym.new/aranym.changes 2014-04-02 17:19:18.000000000 +0200
@@ -1,0 +2,5 @@
+Sun Mar 30 19:27:48 UTC 2014 - schwab(a)linux-m68k.org
+
+- lilo-load-to-fastram.patch: implement [LILO] LoadToFastRAM
+
+-------------------------------------------------------------------
New:
----
lilo-load-to-fastram.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ aranym.spec ++++++
--- /var/tmp/diff_new_pack.zhXAaM/_old 2014-04-02 17:19:19.000000000 +0200
+++ /var/tmp/diff_new_pack.zhXAaM/_new 2014-04-02 17:19:19.000000000 +0200
@@ -41,6 +41,7 @@
Patch3: fpu-fbccl.patch
Patch4: no-map-32bit.patch
Patch5: fpu-nan-bits.patch
+Patch6: lilo-load-to-fastram.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -78,6 +79,7 @@
%patch3 -p1
%patch4 -p1
%patch5 -p1
+%patch6 -p1
# Don't remove -g from CFLAGS
sed -i -e 's,/-g,/-:,' configure.ac configure
++++++ lilo-load-to-fastram.patch ++++++
Index: aranym-0.9.15/src/bootos_linux.cpp
===================================================================
--- aranym-0.9.15.orig/src/bootos_linux.cpp
+++ aranym-0.9.15/src/bootos_linux.cpp
@@ -409,9 +409,10 @@ int LinuxBootOs::checkKernel(void)
Elf32_Ehdr *kexec_elf; /* header of kernel executable */
Elf32_Phdr *kernel_phdrs;
unsigned long min_addr=0xffffffff, max_addr=0;
- unsigned long kernel_size, mem_ptr;
+ unsigned long kernel_size, mem_ptr, kernel_offset;
int i;
const char *kname, *kernel_name="vmlinux";
+ bool load_to_fastram = bx_options.lilo.load_to_fastram && FastRAMSize > 0;
kexec_elf = (Elf32_Ehdr *) kernel;
if (memcmp( &kexec_elf->e_ident[EI_MAG0], ELFMAG, SELFMAG ) == 0) {
@@ -475,6 +476,10 @@ int LinuxBootOs::checkKernel(void)
kernel_size = max_addr - min_addr;
D(bug("lilo: kernel_size=%lu",kernel_size));
+ if (load_to_fastram)
+ kernel_offset = FastRAMBase;
+ else
+ kernel_offset = 0;
mem_ptr = KERNEL_START;
for (i=0; i<SDL_SwapBE16(kexec_elf->e_phnum); i++) {
unsigned long segment_length;
@@ -490,21 +495,29 @@ int LinuxBootOs::checkKernel(void)
}
segment_ptr = SDL_SwapBE32(kernel_phdrs[i].p_vaddr)-PAGE_SIZE;
- memcpy(((char *)RAMBaseHost) + mem_ptr + segment_ptr, ((char *) kexec_elf) + segment_offset, segment_length);
+ if (load_to_fastram)
+ memcpy(FastRAMBaseHost + mem_ptr + segment_ptr, (char *) kexec_elf + segment_offset, segment_length);
+ else
+ memcpy(RAMBaseHost + mem_ptr + segment_ptr, (char *) kexec_elf + segment_offset, segment_length);
- D(bug("lilo: Copied segment %d: 0x%08x,0x%08x at 0x%08x",i,segment_offset,segment_length,mem_ptr+segment_ptr));
+ D(bug("lilo: Copied segment %d: 0x%08x,0x%08x at 0x%08x",i,segment_offset,segment_length,kernel_offset+mem_ptr+segment_ptr));
}
/*--- Copy the ramdisk after kernel (and reserved bootinfo) ---*/
if (ramdisk && ramdisk_length) {
unsigned long rd_start;
unsigned long rd_len;
+ unsigned long rd_offset;
+ if (load_to_fastram)
+ rd_offset = KERNEL_START + kernel_size + MAX_BI_SIZE;
+ else
+ rd_offset = 0;
rd_len = ramdisk_length - RAMDISK_FS_START;
- if (FastRAMSize>rd_len) {
+ if (FastRAMSize > rd_offset + rd_len) {
/* Load in FastRAM */
- rd_start = FastRAMBase;
- memcpy(FastRAMBaseHost, ((unsigned char *)ramdisk) + RAMDISK_FS_START, rd_len);
+ rd_start = FastRAMBase + rd_offset;
+ memcpy(FastRAMBaseHost + rd_offset, (unsigned char *)ramdisk + RAMDISK_FS_START, rd_len);
} else {
/* Load in ST-RAM */
rd_start = RAMSize - rd_len;
@@ -519,7 +532,7 @@ int LinuxBootOs::checkKernel(void)
for (i=0; i<16; i++) {
uint32 *tmp;
- tmp = (uint32 *)(((unsigned char *)FastRAMBaseHost) /*+ rd_start*/ + 512);
+ tmp = (uint32 *)((unsigned char *)FastRAMBaseHost + rd_offset + 512);
D(bug("lilo: ramdisk[%d]=0x%08x",i, SDL_SwapBE32(tmp[i])));
}
#endif
@@ -557,10 +570,14 @@ int LinuxBootOs::checkKernel(void)
bi.mch_type = SDL_SwapBE32(ATARI_MACH_AB40);
bi.num_memory=0;
- ADD_CHUNK(0, RAMSize);
+ /* If loading to FastRAM switch the order of ST and Fast RAM */
+ if (!load_to_fastram)
+ ADD_CHUNK(0, RAMSize);
if (FastRAMSize>0) {
ADD_CHUNK(FastRAMBase, FastRAMSize);
}
+ if (load_to_fastram)
+ ADD_CHUNK(0, RAMSize);
bi.num_memory=SDL_SwapBE32(bi.num_memory);
if (!create_bootinfo()) {
@@ -569,24 +586,30 @@ int LinuxBootOs::checkKernel(void)
}
/*--- Copy boot info in RAM ---*/
- memcpy(RAMBaseHost + KERNEL_START + kernel_size, &bi_union.record, bi_size);
- D(bug("lilo: bootinfo at 0x%08x",KERNEL_START + kernel_size));
+ if (load_to_fastram)
+ memcpy(FastRAMBaseHost + KERNEL_START + kernel_size, &bi_union.record, bi_size);
+ else
+ memcpy(RAMBaseHost + KERNEL_START + kernel_size, &bi_union.record, bi_size);
+ D(bug("lilo: bootinfo at 0x%08x", kernel_offset + KERNEL_START + kernel_size));
for (i=0; i<16; i++) {
uint32 *tmp;
- tmp = (uint32 *)(((unsigned char *)RAMBaseHost) + KERNEL_START + kernel_size);
+ if (load_to_fastram)
+ tmp = (uint32 *)((unsigned char *)FastRAMBaseHost + KERNEL_START + kernel_size);
+ else
+ tmp = (uint32 *)((unsigned char *)RAMBaseHost + KERNEL_START + kernel_size);
D(bug("lilo: bi_union.record[%d]=0x%08x",i, SDL_SwapBE32(tmp[i])));
}
/*--- Init SP & PC ---*/
uint32 *tmp = (uint32 *)RAMBaseHost;
- tmp[0] = SDL_SwapBE32(KERNEL_START); /* SP */
+ tmp[0] = SDL_SwapBE32(kernel_offset + KERNEL_START); /* SP */
tmp[1] = SDL_SwapBE32(0x00e00000); /* PC = ROMBase */
- ROMBaseHost[4] = KERNEL_START >> 24;
- ROMBaseHost[5] = KERNEL_START >> 16;
- ROMBaseHost[6] = KERNEL_START >> 8;
- ROMBaseHost[7] = KERNEL_START & 0xff;
+ ROMBaseHost[4] = (kernel_offset + KERNEL_START) >> 24;
+ ROMBaseHost[5] = (kernel_offset + KERNEL_START) >> 16;
+ ROMBaseHost[6] = (kernel_offset + KERNEL_START) >> 8;
+ ROMBaseHost[7] = (kernel_offset + KERNEL_START) & 0xff;
D(bug("lilo: ok"));
Index: aranym-0.9.15/src/include/parameters.h
===================================================================
--- aranym-0.9.15.orig/src/include/parameters.h
+++ aranym-0.9.15/src/include/parameters.h
@@ -155,6 +155,7 @@ typedef struct {
char kernel[512]; /* /path/to/vmlinux[.gz] */
char args[512]; /* command line arguments for kernel */
char ramdisk[512]; /* /path/to/ramdisk[.gz] */
+ bool load_to_fastram; /* load kernel to Fast RAM */
} bx_lilo_options_t;
// Midi options
Index: aranym-0.9.15/src/parameters.cpp
===================================================================
--- aranym-0.9.15.orig/src/parameters.cpp
+++ aranym-0.9.15/src/parameters.cpp
@@ -595,6 +595,7 @@ struct Config_Tag lilo_conf[]={
{ "Kernel", Path_Tag, &LILO(kernel), sizeof(LILO(kernel)), 0},
{ "Args", String_Tag, &LILO(args), sizeof(LILO(args)), 0},
{ "Ramdisk", Path_Tag, &LILO(ramdisk), sizeof(LILO(ramdisk)), 0},
+ { "LoadToFastRam", Bool_Tag, &LILO(load_to_fastram), 0, 0},
{ NULL , Error_Tag, NULL, 0, 0 }
};
@@ -603,6 +604,7 @@ void preset_lilo()
safe_strncpy(LILO(kernel), "linux.bin", sizeof(LILO(kernel)));
safe_strncpy(LILO(args), "root=/dev/ram video=atafb:vga16", sizeof(LILO(args)));
safe_strncpy(LILO(ramdisk), "root.bin", sizeof(LILO(ramdisk)));
+ LILO(load_to_fastram) = false;
}
void postload_lilo()
--
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 ghc-aeson for openSUSE:Factory checked in at 2014-04-02 17:18:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-aeson (Old)
and /work/SRC/openSUSE:Factory/.ghc-aeson.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-aeson"
Changes:
--------
New Changes file:
--- /dev/null 2014-02-13 01:09:38.344032506 +0100
+++ /work/SRC/openSUSE:Factory/.ghc-aeson.new/ghc-aeson.changes 2014-04-02 17:18:42.000000000 +0200
@@ -0,0 +1,10 @@
+-------------------------------------------------------------------
+Mon Oct 28 19:50:03 UTC 2013 - sbahling(a)suse.com
+
+- Remove redundant Requires for ghc-compiler
+
+-------------------------------------------------------------------
+Mon Oct 7 13:35:59 UTC 2013 - sbahling(a)suse.com
+
+- Initial package - version 0.6.2.0
+
New:
----
_service
aeson-0.6.2.0.tar.gz
ghc-aeson.changes
ghc-aeson.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-aeson.spec ++++++
#
# spec file for package ghc-aeson
#
# Copyright (c) 2013 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global pkg_name aeson
Name: ghc-aeson
Version: 0.6.2.0
Release: 0
Summary: Fast JSON parsing and encoding
License: BSD-3-Clause
Group: System/Libraries
Url: http://hackage.haskell.org/package/%{pkg_name}
Source0: http://hackage.haskell.org/packages/archive/%{pkg_name}/%{version}/%{pkg_na…
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-rpm-macros
# Begin cabal-rpm deps:
BuildRequires: ghc-attoparsec-devel
BuildRequires: ghc-blaze-builder-devel
BuildRequires: ghc-bytestring-devel
BuildRequires: ghc-containers-devel
BuildRequires: ghc-deepseq-devel
BuildRequires: ghc-dlist-devel
BuildRequires: ghc-hashable-devel
BuildRequires: ghc-mtl-devel
BuildRequires: ghc-old-locale-devel
BuildRequires: ghc-syb-devel
BuildRequires: ghc-template-haskell-devel
BuildRequires: ghc-text-devel
BuildRequires: ghc-time-devel
BuildRequires: ghc-unordered-containers-devel
BuildRequires: ghc-vector-devel
#ExclusiveArch: %{ghc_arches_with_ghci}
# End cabal-rpm deps
%description
A JSON parsing and encoding library optimized for ease of use and high
performance.
To get started, see the documentation for the 'Data.Aeson' module below.
For release notes, see
https://github.com/bos/aeson/blob/master/release-notes.markdown
(A note on naming: in Greek mythology, Aeson was the father of Jason.).
%package devel
Summary: Haskell %{pkg_name} library development files
Group: Development/Libraries/Other
Provides: %{name}-static = %{version}-%{release}
Requires: %{name} = %{version}-%{release}
Requires: ghc-compiler = %{ghc_version}
%description devel
This package provides the Haskell %{pkg_name} library development files.
%prep
%setup -q -n %{pkg_name}-%{version}
%build
%ghc_lib_build
%install
%ghc_lib_install
%post devel
%ghc_pkg_recache
%postun devel
%ghc_pkg_recache
%files -f %{name}.files
%defattr(-,root,root,-)
%doc LICENSE
%files devel -f %{name}-devel.files
%defattr(-,root,root,-)
%doc README.markdown examples
%changelog
++++++ _service ++++++
<services>
<service name='download_files' mode='localonly'/>
</services>
--
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 a2ps for openSUSE:Factory checked in at 2014-04-02 17:17:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/a2ps (Old)
and /work/SRC/openSUSE:Factory/.a2ps.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "a2ps"
Changes:
--------
--- /work/SRC/openSUSE:Factory/a2ps/a2ps.changes 2013-12-10 17:41:52.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.a2ps.new/a2ps.changes 2014-04-02 17:17:41.000000000 +0200
@@ -1,0 +2,6 @@
+Mon Mar 31 08:08:37 UTC 2014 - werner(a)suse.de
+
+- Add patch CVE-2014-0466.diff to fix bnc#871097 - CVE-2014-0466:
+ fixps does not use -dSAFER
+
+-------------------------------------------------------------------
New:
----
CVE-2014-0466.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ a2ps.spec ++++++
--- /var/tmp/diff_new_pack.eNus3Z/_old 2014-04-02 17:17:42.000000000 +0200
+++ /var/tmp/diff_new_pack.eNus3Z/_new 2014-04-02 17:17:42.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package a2ps
#
-# 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
@@ -62,6 +62,8 @@
Patch11: a2ps-4.13-psgen.patch
Patch12: a2ps-4.13-gv-arguments.patch
Patch13: a2ps-4.13-linker.patch
+# PATCH-FIX-USTREAM Bug 871097 - CVE-2014-0466: a2ps: fixps does not use -dSAFER
+Patch14: CVE-2014-0466.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -105,6 +107,7 @@
%patch -P 11 -p 0 -b .psgen
%patch -P 12 -p 1 -b .gvarg
%patch -P 13 -p 0 -b .ldso
+%patch -P 14 -p 1 -b .cve140466
%patch
cp -f %SOURCE1 po/ko.po
rename no nb po/no.*
++++++ CVE-2014-0466.diff ++++++
Description: CVE-2014-0466: fixps does not invoke gs with -dSAFER
A malicious PostScript file could delete files with the privileges of
the invoking user.
Origin: vendor
Bug-Debian: http://bugs.debian.org/742902
Author: Salvatore Bonaccorso <carnil(a)debian.org>
Last-Update: 2014-03-28
--- a/contrib/fixps.in
+++ b/contrib/fixps.in
@@ -389,7 +389,7 @@
eval "$command" ;;
gs)
$verbose "$program: making a full rewrite of the file ($gs)." >&2
- $gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f "$file" ;;
+ $gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f "$file" ;;
esac
)
fi
--- a/contrib/fixps.m4
+++ b/contrib/fixps.m4
@@ -307,7 +307,7 @@
eval "$command" ;;
gs)
$verbose "$program: making a full rewrite of the file ($gs)." >&2
- $gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f "$file" ;;
+ $gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f "$file" ;;
esac
)
fi
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
02 Apr '14
Hello community,
here is the log from the commit of package texlive-filesystem.2684 for openSUSE:13.1:Update checked in at 2014-04-02 12:44:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:13.1:Update/texlive-filesystem.2684 (Old)
and /work/SRC/openSUSE:13.1:Update/.texlive-filesystem.2684.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "texlive-filesystem.2684"
Changes:
--------
New Changes file:
--- /dev/null 2014-02-13 01:09:38.344032506 +0100
+++ /work/SRC/openSUSE:13.1:Update/.texlive-filesystem.2684.new/texlive-filesystem.changes 2014-04-02 12:44:53.000000000 +0200
@@ -0,0 +1,260 @@
+-------------------------------------------------------------------
+Mon Feb 10 10:03:46 UTC 2014 - werner(a)suse.de
+
+- Avoid that missing formats for a hyphen file will cause high
+ load at installation
+
+-------------------------------------------------------------------
+Wed Aug 7 09:57:30 UTC 2013 - werner(a)suse.de
+
+- Repair several wrong paths cause by the move of TEXMFMAIN that is
+ the location of TLUtils.pm used by updmap
+
+-------------------------------------------------------------------
+Mon Aug 5 10:24:25 UTC 2013 - werner(a)suse.de
+
+- Refresh formats if required
+
+-------------------------------------------------------------------
+Tue Jul 30 16:14:46 UTC 2013 - werner(a)suse.de
+
+- Update to TeXLive 2013 (timestamp 20130620)
+ + Distribution layout: the top-level texmf/ directory has been
+ merged into texmf-dist/, for simplicity. Both the TEXMFMAIN
+ and TEXMFDIST Kpathsea variables now point to texmf-dist.
+ + Many small language collections have been merged together,
+ to simplify installation.
+ + MetaPost: native support for PNG output and floating-point
+ (IEEE double) has been added.
+ + LuaTEX: updated to Lua 5.2, and includes a new library
+ (pdfscanner) to process external PDF page content, among
+ much else (see its web pages).
+ + XeTEX (also see its web pages for more):
+ The HarfBuzz library now used for font layout instead of ICU.
+ Graphite2 and HarfBuzz are used instead of SilGraphite for Graphite layout.
+ On Macs, Core Text is used instead of the (deprecated) ATSUI.
+ Prefer TrueType/OpenType fonts to Type1 when the names are the same.
+ Fix occasional mismatch in font finding between XeTEX and xdvipdfmx.
+ Support OpenType math cut-ins.
+ + xdvi: now uses FreeType instead of t1lib for rendering.
+ + microtype.sty: some support for XeTEX (protrusion) and LuaTEX
+ (protrusion, font expansion, tracking), among other enhancements.
+- Update biblatex-biber to 1.7
+- Udpate biblatex of TeXLive 2013 to 2.7a
+
+-------------------------------------------------------------------
+Tue Jul 16 12:39:56 UTC 2013 - werner(a)suse.de
+
+- New rpm had removed "prereq" flag from installation script bits
+ that is that `Requires(prereq)' is not valid anymore :(((
+
+-------------------------------------------------------------------
+Mon May 6 13:31:55 UTC 2013 - werner(a)suse.de
+
+- Asymptote binaries may have the same version as the format files
+ of the asymptote package it self (bnc#813032)
+
+-------------------------------------------------------------------
+Wed Mar 27 13:21:44 UTC 2013 - werner(a)suse.de
+
+- Change Obsoletes from < 2012+subversion to <= 2011 (bnc#811162)
+- Let mathdesign require tex(texnansi.enc) (bnc#808731)
+- Let biber-bin require perl(Text::BibTeX) (bnc#811258)
+- Do not require xfs as we do not use xfs at all, otherwise we
+ have to add some more lua code in the %post scriptlet.
+
+-------------------------------------------------------------------
+Tue Feb 5 09:08:31 UTC 2013 - werner(a)suse.de
+
+- Work around missing support of %posttrans scriptlets in libzypp
+ due missing rpm option for not to execute those scriptlets (bnc#773575)
+
+-------------------------------------------------------------------
+Wed Sep 19 09:51:43 UTC 2012 - werner(a)suse.de
+
+- If update script falis on some points like fmtutils then do not
+ remove the execution tag file to handle this later
+
+-------------------------------------------------------------------
+Wed Sep 12 09:54:02 UTC 2012 - werner(a)suse.de
+
+- Make update script to run updmap-sys only once on texhash
+
+-------------------------------------------------------------------
+Tue Sep 11 15:18:34 UTC 2012 - werner(a)suse.de
+
+- Fix update script: do not override with wrong md5 check sum for
+ language format check
+- Run updmap-sys only if required
+
+-------------------------------------------------------------------
+Thu Aug 2 13:17:40 UTC 2012 - werner(a)suse.de
+
+- Change font config semantic as the font directories below
+ /usr/share/fonts will be always found by freetype
+
+-------------------------------------------------------------------
+Fri Jul 13 07:34:32 UTC 2012 - werner(a)suse.de
+
+- Rename SuSEconfig.texlive to update.texlive to make the quibblers
+ happy. The script was already self-sufficient and does not need
+ any help from the old SuSEconfig infrastructure.
+
+-------------------------------------------------------------------
+Wed Jun 27 09:00:58 UTC 2012 - werner(a)suse.de
+
+- Re-add the rungs script to dvipdfmx-bin
+
+-------------------------------------------------------------------
+Mon Jun 25 12:09:26 UTC 2012 - werner(a)suse.de
+
+- Reoder update script
+
+-------------------------------------------------------------------
+Fri Jun 22 16:45:19 UTC 2012 - werner(a)suse.de
+
+- Run update if required
+
+-------------------------------------------------------------------
+Fri Jun 22 16:28:01 UTC 2012 - werner(a)suse.de
+
+- Do not remove /var/run/texlive, add mtxrun to update script
+
+-------------------------------------------------------------------
+Fri Jun 22 13:11:08 UTC 2012 - werner(a)suse.de
+
+- The new updmap requires the perl mudules TLConfig.pm and TLUtils.pm
+
+-------------------------------------------------------------------
+Wed Jun 20 13:03:13 UTC 2012 - werner(a)suse.de
+
+- Finished package split of texlive and texlive-filesystem
+
+-------------------------------------------------------------------
+Wed Jun 20 10:38:21 UTC 2012 - werner(a)suse.de
+
+- Avoid to be fooled by wrong ownerships during fmtutil that is
+ allow user nobody and group mktex to access the temporary
+ fmtutil directory if the initial user is root
+
+-------------------------------------------------------------------
+Tue Jun 19 15:22:47 UTC 2012 - werner(a)suse.de
+
+- Move old SuSEconfig md5 backup files to new location
+
+-------------------------------------------------------------------
+Tue Jun 19 10:53:41 UTC 2012 - werner(a)suse.de
+
+- Add missed /var/lib/texmf/web2c/ tree to file system
+
+-------------------------------------------------------------------
+Mon Jun 18 07:23:56 UTC 2012 - werner(a)suse.de
+
+- Simplify dependency chain(s)
+
+-------------------------------------------------------------------
+Thu Jun 14 11:55:02 UTC 2012 - werner(a)suse.de
+
+- Make RPMlint happy again
+
+-------------------------------------------------------------------
+Thu Jun 14 10:59:06 UTC 2012 - werner(a)suse.de
+
+- Correct version numbers of kpathsea and ptexenc automatically
+
+-------------------------------------------------------------------
+Wed Jun 13 08:16:02 UTC 2012 - werner(a)suse.de
+
+- Readd well known paclages like texlive-devel, texlive-bin-devel,
+ and texlive-tools. Also cause texlive-latex to install its
+ binary packages.
+
+-------------------------------------------------------------------
+Tue Jun 12 17:56:31 UTC 2012 - werner(a)suse.de
+
+- Update to frozen/final 2012 (timestamp 20120611)
+
+-------------------------------------------------------------------
+Tue Jun 12 12:18:05 UTC 2012 - werner(a)suse.de
+
+- Do not drop the tar scheme and collection tar balls for reference
+- Split off texlive-filesystem, texlive-scheme, and texlive-collection
+ build into a separate spec file
+- Make version comparision work as we use upstream version and
+ release numbers
+
+-------------------------------------------------------------------
+Sat Jun 9 05:44:25 UTC 2012 - coolo(a)suse.com
+
+- relax the version requirements
+
+-------------------------------------------------------------------
+Fri Jun 8 15:04:36 UTC 2012 - coolo(a)suse.com
+
+- split out collections and filesystem
+
+-------------------------------------------------------------------
+Mon Jun 4 07:48:37 UTC 2012 - werner(a)suse.de
++++ 63 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:13.1:Update/.texlive-filesystem.2684.new/texlive-filesystem.changes
New:
----
collection-basic.tar.xz
collection-bibtexextra.tar.xz
collection-binextra.tar.xz
collection-context.tar.xz
collection-fontsextra.tar.xz
collection-fontsrecommended.tar.xz
collection-fontutils.tar.xz
collection-formatsextra.tar.xz
collection-games.tar.xz
collection-genericextra.tar.xz
collection-genericrecommended.tar.xz
collection-htmlxml.tar.xz
collection-humanities.tar.xz
collection-langafrican.tar.xz
collection-langarabic.tar.xz
collection-langcjk.tar.xz
collection-langcyrillic.tar.xz
collection-langczechslovak.tar.xz
collection-langenglish.tar.xz
collection-langeuropean.tar.xz
collection-langfrench.tar.xz
collection-langgerman.tar.xz
collection-langgreek.tar.xz
collection-langindic.tar.xz
collection-langitalian.tar.xz
collection-langother.tar.xz
collection-langpolish.tar.xz
collection-langportuguese.tar.xz
collection-langspanish.tar.xz
collection-latex.tar.xz
collection-latexextra.tar.xz
collection-latexrecommended.tar.xz
collection-luatex.tar.xz
collection-mathextra.tar.xz
collection-metapost.tar.xz
collection-music.tar.xz
collection-omega.tar.xz
collection-pictures.tar.xz
collection-plainextra.tar.xz
collection-pstricks.tar.xz
collection-publishers.tar.xz
collection-science.tar.xz
collection-xetex.tar.xz
dot.dvipsrc
fc-t1-texlive.conf
fc-texlive.conf
fc-truetype-texlive.conf
rc.config.texlive
scheme-basic.tar.xz
scheme-context.tar.xz
scheme-full.tar.xz
scheme-gust.tar.xz
scheme-medium.tar.xz
scheme-minimal.tar.xz
scheme-small.tar.xz
scheme-tetex.tar.xz
scheme-xml.tar.xz
texlive-filesystem-rpmlintrc
texlive-filesystem.changes
texlive-filesystem.spec
texlive.cron
texlive.csh
texlive.sh
update.texlive
zypplugin.in
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ texlive-filesystem.spec ++++++
++++ 19304 lines (skipped)
++++++ dot.dvipsrc ++++++
%% How to print, maybe with lp instead lpr, the priner
%% name <foo> has to be replaced by a real printer name
%% maybe the printer name found in $PRINTER
%%
%o | lpr -P<foo>
%o | lp -P<foo>
%% If your default is A4 uncomment the line with A4
%% otherwise you may choose Letter as your default.
%%
%t A4
%t Letter
++++++ rc.config.texlive ++++++
## Path: Applications/TeX
## Description:
## Type: yesno
## Default: no
## Command:
#
# The automatical font generation of the TeX/LaTeX systems do
# locate the bitmap font into the directory /var/cache/fonts/.
# If CLEAR_TEXMF_FONTS is set to "yes" then this directory
# will be cleared from fonts not used in the last 20 days.
#
CLEAR_TEXMF_FONTS="no"
++++++ texlive-filesystem-rpmlintrc ++++++
addFilter(".*texlive-(collection|scheme)-.*\.noarch:.*suse-filelist-empty.*")
addFilter(".*texlive-(extratools|devel)\.noarch:.*suse-filelist-empty.*")
addFilter(".*texlive.src:.*:.*macro-in-comment.*")
addFilter(".*texlive-scheme-.*.noarch:.*:-*summary-not-capitalized.*")
addFilter(".*texlive-.*noarch:.*:.*filename-too-long-for-joliet.*")
addFilter(".*texlive-.*:.*:.*description-shorter-than-summary.*")
addFilter(".*texlive-.*-devel\..*:.*:.*no-dependency-on.*")
addFilter(".*texlive\..*no-manual-page-for-binary.*nobody.*")
addFilter(".*texlive-.*-bin\..*no-manual-page-for-binary.*")
addFilter(".*world-writable.*/var/lib/texmf/ls-R.*")
addFilter(".*world-writable.*/var/lib/texmf/db/ls-R.*")
addFilter(".*world-writable.*/var/cache/fonts/ls-R.*")
addFilter(".*world-writable.*/var/lib/texmf/.*/ls-R.*")
addFilter(".*incorrect-fsf-address.*")
addFilter(".*name-repeated-in-summary.*")
addFilter(".*non-conffile-in-etc.*/etc/texmf/ls-R.*")
addFilter(".*rpm-buildroot-usage.*")
addFilter(".*binary-or-shlib-calls-gethostbyname.*")
addFilter(".*zero-length.*")
addFilter(".*dangling-symlink.*/usr/lib/mktex/public.*")
addFilter(".*devel-dependency.*texlive-lua-visual-debug.*")
addFilter(".*obsolete-not-provided.*")
++++++ texlive.cron ++++++
#!/bin/bash
#
# Remove pk files older than 20 days
# Remove tfm files older than 60 days
# Remove source files older than 60 days
# Remove crap
# Call texhash
#
test -r /etc/sysconfig/texlive && . /etc/sysconfig/texlive
OLDIFS=$IFS; IFS=':;'
VARTEXFONTS="$(kpsewhich --expand-var '$VARTEXFONTS' 2> /dev/null)"
IFS=$OLDIFS
if test "$CLEAR_TEXMF_FONTS" = "yes" -a -n "$VARTEXFONTS" -a -x /usr/bin/safe-rm ; then
for p in $VARTEXFONTS ; do
test -d $p/pk/ && find $p/pk/ -type f -and -atime +20 -print0
test -d $p/tfm/ && find $p/tfm/ -type f -and -atime +60 -print0
test -d $p/source/ && find $p/source/ -type f -and -atime +60 -print0
done > >(exec -a xargs xargs -r -L100 -0 -- /usr/bin/safe-rm)
fi
if test -n "$VARTEXFONTS" -a -x /usr/bin/safe-rmdir ; then
for p in $VARTEXFONTS ; do
test -d $p/pk/ && find $p/pk/ -type f -and -not -name '*.*pk'
test -d $p/tfm/ && find $p/tfm/ -type f -and -not -name '*.tfm'
test -d $p/source/ && find $p/source/ -type f -and -not -name '*.mf'
test -d $p/ && find $p/ -type f -and -path '*/[^[:alnum:]]*'
done > >(exec -a xargs xargs -r -L100 -0 -- /usr/bin/safe-rm)
for p in $VARTEXFONTS ; do
test -d $p/ && find $p/ -depth -type d -and -path '*/[^[:alnum:]]*'
done > >(exec -a xargs xargs -r -L100 -0 -- /usr/bin/safe-rmdir)
fi
#
# Update the ls-R's
#
mktexlsr > /dev/null
#
exit 0
++++++ texlive.csh ++++++
#
# /etc/profile.d/texlive.csh
#
#
# Expand TEXINPUTS
#
if ( -d ${HOME}/TeX/ ) then
#
# Hmmm ... texmf/ should be used instead of TeX/
#
if ( ${?TEXINPUTS} ) then
setenv TEXINPUTS ${TEXINPUTS}:${HOME}/TeX//:
else
setenv TEXINPUTS ${HOME}/TeX//:
endif
endif
if ( -d /usr/doc/.TeX/ ) then
if ( ${?TEXINPUTS} ) then
setenv TEXINPUTS ${TEXINPUTS}:/usr/doc/.TeX:
else
setenv TEXINPUTS /usr/doc/.TeX:
endif
endif
++++++ texlive.sh ++++++
#
# /etc/profile.d/texlive.sh
#
#
# Expand TEXINPUTS
#
if test -d $HOME/TeX/ ; then
#
# Hmmm ... texmf/ should be used instead of TeX/
#
if test -n "$TEXINPUTS" ; then
TEXINPUTS="$TEXINPUTS:$HOME/TeX//:"
else
TEXINPUTS="$HOME/TeX//:"
fi
fi
if test -d /usr/doc/.TeX/ ; then
if test -n "$TEXINPUTS" ; then
TEXINPUTS="$TEXINPUTS:/usr/doc/.TeX:"
else
TEXINPUTS="/usr/doc/.TeX:"
fi
fi
++++++ update.texlive ++++++
++++ 692 lines (skipped)
++++++ zypplugin.in ++++++
#!/usr/bin/python
#
# $TEXMFDIST/texconfig/zypper.py
#
# The substitute for the %posttrans scriptlets used by rpm.
# Make sure that the update script does its work only once after
# an installation/update transaction as zypper executes rpm for
# each single texlive package.
#
# Copyright (c) 2012 SuSE LINUX Products GmbH, Nuernberg, Germany.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# Author: Werner Fink, 2012
#
from os import listdir, path, access, F_OK,R_OK,X_OK
from subprocess import call
global update, tagdir
update = "%{_texmfdistdir}/texconfig/update"
tagdir = "/var/run/texlive"
if access(update, F_OK|X_OK):
if path.isdir(tagdir) and listdir(tagdir):
call("VERBOSE=false " + update + " 2>&1 || :", shell=True)
--
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 libyaml for openSUSE:Factory checked in at 2014-04-01 11:34:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libyaml (Old)
and /work/SRC/openSUSE:Factory/.libyaml.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libyaml"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libyaml/libyaml.changes 2014-02-10 10:16:56.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libyaml.new/libyaml.changes 2014-04-01 11:34:20.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Mar 28 16:10:41 UTC 2014 - jmassaguerpla(a)suse.com
+
+- update to 0.1.6 is a security update release for:
+ * CVE-2014-2525: heap overflow during parsing (bnc#868944)
+ bnc#860617)
+
+-------------------------------------------------------------------
Old:
----
yaml-0.1.5.tar.gz
New:
----
yaml-0.1.6.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libyaml.spec ++++++
--- /var/tmp/diff_new_pack.55vaN3/_old 2014-04-01 11:34:21.000000000 +0200
+++ /var/tmp/diff_new_pack.55vaN3/_new 2014-04-01 11:34:21.000000000 +0200
@@ -17,7 +17,7 @@
Name: libyaml
-Version: 0.1.5
+Version: 0.1.6
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Url: http://pyyaml.org/wiki/LibYAML
++++++ yaml-0.1.5.tar.gz -> yaml-0.1.6.tar.gz ++++++
++++ 1754 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 samba for openSUSE:Factory checked in at 2014-04-01 11:34:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/samba (Old)
and /work/SRC/openSUSE:Factory/.samba.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "samba"
Changes:
--------
--- /work/SRC/openSUSE:Factory/samba/samba.changes 2014-03-18 13:38:18.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.samba.new/samba.changes 2014-04-01 11:34:19.000000000 +0200
@@ -1,0 +2,16 @@
+Fri Mar 28 11:45:03 UTC 2014 - ddiss(a)suse.com
+
+- Extend vfs_snapper man page to cover permissions; (bnc#870570).
+
+-------------------------------------------------------------------
+Wed Mar 26 14:36:34 UTC 2014 - ddiss(a)suse.com
+
+- Fix RPC server handling of fragmented requests; (bso#10481); (bnc#869707).
+
+-------------------------------------------------------------------
+Fri Mar 21 18:59:29 UTC 2014 - lmuelle(a)suse.com
+
+- Default with the cache and lock directory to the same path to have both
+ non-persistent and persistent data at one location; (bnc#846586).
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ samba.spec ++++++
--- /var/tmp/diff_new_pack.XUEu5n/_old 2014-04-01 11:34:20.000000000 +0200
+++ /var/tmp/diff_new_pack.XUEu5n/_new 2014-04-01 11:34:20.000000000 +0200
@@ -144,7 +144,7 @@
%else
%define build_make_smp_mflags %{?jobs:-j%jobs}
%endif
-%define SOURCE_TIMESTAMP 3208
+%define SOURCE_TIMESTAMP 3213
%define BRANCH %{version}
%global with_mitkrb5 1
%global with_dc 0
@@ -1210,6 +1210,7 @@
--sysconfdir=%{CONFIGDIR} \
--with-configdir=%{CONFIGDIR} \
--libdir=%{_libdir} \
+ --with-cachedir=%{LOCKDIR} \
--with-lockdir=%{LOCKDIR} \
--with-logfilebase=%{LOGDIR} \
--mandir=%{_mandir} \
@@ -1277,7 +1278,6 @@
%{buildroot}/%{_datadir}/omc/svcinfo.d \
%{buildroot}/%{_datadir}/samba/{LDAP,templates} \
%{buildroot}/%{_localstatedir}/adm \
- %{buildroot}/%{_localstatedir}/cache/samba \
%{buildroot}/%{LOCKDIR}/{netlogon,drivers/{WIN40,W32X86,W32MIPS,W32ALPHA,W32PPC,IA64,x64},printing,profiles,winbindd_privileged} \
%{buildroot}/%{LOGDIR} \
%{buildroot}/%{PIDDIR} \
@@ -1968,7 +1968,6 @@
%doc %{DOCDIR}/README.%{VENDOR}
%{_localstatedir}/adm/fillup-templates/samba-client-dhcp.conf
%{_localstatedir}/adm/fillup-templates/sysconfig.dhcp-samba-client
-%dir %{_localstatedir}/cache/samba
%dir %{LOCKDIR}
%attr(0750,root,root) %dir %{LOGDIR}
%ghost %dir %{PIDDIR}
++++++ patches.tar.bz2 ++++++
++++ 4668 lines of diff (skipped)
++++++ vendor-files.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor-files/tools/package-data new/vendor-files/tools/package-data
--- old/vendor-files/tools/package-data 2014-03-12 15:03:41.000000000 +0100
+++ new/vendor-files/tools/package-data 2014-03-28 12:48:55.000000000 +0100
@@ -1,2 +1,2 @@
# This is an autogenrated file.
-SAMBA_PACKAGE_SVN_VERSION="3208"
+SAMBA_PACKAGE_SVN_VERSION="3213"
--
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 dhcp for openSUSE:Factory checked in at 2014-04-01 11:34:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dhcp (Old)
and /work/SRC/openSUSE:Factory/.dhcp.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dhcp"
Changes:
--------
--- /work/SRC/openSUSE:Factory/dhcp/dhcp.changes 2014-03-18 16:21:48.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.dhcp.new/dhcp.changes 2014-04-01 11:34:15.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Mar 28 18:53:28 UTC 2014 - mt(a)suse.de
+
+- Applied fixes for DHCP over IPoIB by Mellanox (bnc#870535)
+ [+ 0017-dhcp-4.2.6-lpf-ip-over-ib-support.patch,
+ + 0018-dhcp-4.2.6-improved-xid.patch]
+
+-------------------------------------------------------------------
New:
----
0017-dhcp-4.2.6-lpf-ip-over-ib-support.patch
0018-dhcp-4.2.6-improved-xid.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dhcp.spec ++++++
--- /var/tmp/diff_new_pack.KqRgiX/_old 2014-04-01 11:34:16.000000000 +0200
+++ /var/tmp/diff_new_pack.KqRgiX/_new 2014-04-01 11:34:16.000000000 +0200
@@ -112,6 +112,10 @@
Patch15: 0015-Ignore-SIGPIPE-to-not-die-in-socket-code.patch
# PATCH-FEATURE-UPSTREAM log-dhcpv6-client-addresses ISC-Bugs#26377
Patch16: 0016-server-log-DHCPv6-addresses-assigned-to-clients.patch
+# PATCH-FIX-SLE dhcp-4.2.6-lpf-ip-over-ib-support bnc#870535
+Patch17: 0017-dhcp-4.2.6-lpf-ip-over-ib-support.patch
+# PATCH-FIX-SLE dhcp-4.2.6-improved-xid bnc#870535
+Patch18: 0018-dhcp-4.2.6-improved-xid.patch
##
PreReq: /bin/touch /sbin/chkconfig sysconfig
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -248,6 +252,8 @@
%patch14 -p1
%patch15 -p1
%patch16 -p1
+%patch17 -p1
+%patch18 -p1
##
find . -type f -name \*.cat\* -exec rm -f {} \;
dos2unix contrib/ms2isc/*
++++++ 0017-dhcp-4.2.6-lpf-ip-over-ib-support.patch ++++++
>From 6bf4a955f815967826994f787d2608d6dadadd91 Mon Sep 17 00:00:00 2001
From: root <root(a)reg-ovm-036-004.lab.mtl.com>
Date: Tue, 25 Mar 2014 23:15:58 +0200
Subject: [PATCH 1/2] dhcp 4.2.6 lpf ip over ib support
---
client/dhclient.c | 31 +++++++
common/bpf.c | 33 ++++++++
common/lpf.c | 236 +++++++++++++++++++++++++++++++++++++++++++++---------
common/socket.c | 8 +-
includes/dhcpd.h | 3 +-
5 files changed, 266 insertions(+), 45 deletions(-)
diff --git a/client/dhclient.c b/client/dhclient.c
index 8af0a42..f7dfbef 100644
--- a/client/dhclient.c
+++ b/client/dhclient.c
@@ -100,6 +100,29 @@ static int check_domain_name_list(const char *ptr, size_t len, int dots);
static int check_option_values(struct universe *universe, unsigned int opt,
const char *ptr, size_t len);
+static void setup_ib_interface(struct interface_info *ip)
+{
+ struct group *g;
+
+ /* Set the broadcast flag */
+ //ip->client->config->bootp_broadcast_always = 1;
+
+ /*
+ * Find out if a dhcp-client-identifier option was specified either
+ * in the config file or on the command line
+ */
+ for (g = ip->client->config->on_transmission; g != NULL; g = g->next) {
+ if ((g->statements != NULL) &&
+ (strcmp(g->statements->data.option->option->name,
+ "dhcp-client-identifier") == 0)) {
+ return;
+ }
+ }
+
+ /* No client ID specified */
+ log_fatal("dhcp-client-identifier must be specified for InfiniBand");
+}
+
int
main(int argc, char **argv) {
int fd;
@@ -619,6 +642,14 @@ main(int argc, char **argv) {
}
srandom(seed + cur_time + (unsigned)getpid());
+ /* Setup specific Infiniband options */
+ for (ip = interfaces; ip; ip = ip->next) {
+ if (ip->client &&
+ (ip->hw_address.hbuf[0] == HTYPE_INFINIBAND)) {
+ setup_ib_interface(ip);
+ }
+ }
+
/* Start a configuration state machine for each interface. */
#ifdef DHCPv6
if (local_family == AF_INET6) {
diff --git a/common/bpf.c b/common/bpf.c
index 076d9bc..124281b 100644
--- a/common/bpf.c
+++ b/common/bpf.c
@@ -198,11 +198,44 @@ struct bpf_insn dhcp_bpf_filter [] = {
BPF_STMT(BPF_RET+BPF_K, 0),
};
+/* Packet filter program for DHCP over Infiniband.
+ *
+ * XXX
+ * Changes to the filter program may require changes to the constant offsets
+ * used in lpf_gen_filter_setup to patch the port in the BPF program!
+ * XXX
+ */
+struct bpf_insn dhcp_ib_bpf_filter [] = {
+ /* Packet filter for Infiniband */
+ /* Make sure it's a UDP packet... */
+ BPF_STMT(BPF_LD + BPF_B + BPF_ABS, 9),
+ BPF_JUMP(BPF_JMP + BPF_JEQ + BPF_K, IPPROTO_UDP, 0, 6),
+
+ /* Make sure this isn't a fragment... */
+ BPF_STMT(BPF_LD + BPF_H + BPF_ABS, 6),
+ BPF_JUMP(BPF_JMP + BPF_JSET + BPF_K, 0x1fff, 4, 0),
+
+ /* Get the IP header length... */
+ BPF_STMT(BPF_LDX + BPF_B + BPF_MSH, 0),
+
+ /* Make sure it's to the right port... */
+ BPF_STMT(BPF_LD + BPF_H + BPF_IND, 2),
+ BPF_JUMP(BPF_JMP + BPF_JEQ + BPF_K, 67, 0, 1),
+
+ /* If we passed all the tests, ask for the whole packet. */
+ BPF_STMT(BPF_RET + BPF_K, (u_int)-1),
+
+ /* Otherwise, drop it. */
+ BPF_STMT(BPF_RET + BPF_K, 0),
+};
+
#if defined (DEC_FDDI)
struct bpf_insn *bpf_fddi_filter;
#endif
int dhcp_bpf_filter_len = sizeof dhcp_bpf_filter / sizeof (struct bpf_insn);
+int dhcp_ib_bpf_filter_len = sizeof dhcp_ib_bpf_filter / sizeof (struct bpf_insn);
+
#if defined (HAVE_TR_SUPPORT)
struct bpf_insn dhcp_bpf_tr_filter [] = {
/* accept all token ring packets due to variable length header */
diff --git a/common/lpf.c b/common/lpf.c
index 6639809..a428870 100644
--- a/common/lpf.c
+++ b/common/lpf.c
@@ -43,6 +43,7 @@
#include "includes/netinet/udp.h"
#include "includes/netinet/if_ether.h"
#include <net/if.h>
+#include <ifaddrs.h>
#ifndef PACKET_AUXDATA
#define PACKET_AUXDATA 8
@@ -60,6 +61,15 @@ struct tpacket_auxdata
/* Reinitializes the specified interface after an address change. This
is not required for packet-filter APIs. */
+/* Default broadcast address for IPoIB */
+static unsigned char default_ib_bcast_addr[20] = {
+ 0x00, 0xff, 0xff, 0xff,
+ 0xff, 0x12, 0x40, 0x1b,
+ 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0xff, 0xff, 0xff
+};
+
#ifdef USE_LPF_SEND
void if_reinitialize_send (info)
struct interface_info *info;
@@ -87,10 +97,21 @@ int if_register_lpf (info)
struct sockaddr common;
} sa;
struct ifreq ifr;
+ int type;
+ int protocol;
/* Make an LPF socket. */
- if ((sock = socket(PF_PACKET, SOCK_RAW,
- htons((short)ETH_P_ALL))) < 0) {
+ get_hw_addr(info);
+
+ if (info->hw_address.hbuf[0] == HTYPE_INFINIBAND) {
+ type = SOCK_DGRAM;
+ protocol = ETHERTYPE_IP;
+ } else {
+ type = SOCK_RAW;
+ protocol = ETH_P_ALL;
+ }
+
+ if ((sock = socket(PF_PACKET, type, htons((short)protocol))) < 0) {
if (errno == ENOPROTOOPT || errno == EPROTONOSUPPORT ||
errno == ESOCKTNOSUPPORT || errno == EPFNOSUPPORT ||
errno == EAFNOSUPPORT || errno == EINVAL) {
@@ -112,6 +133,7 @@ int if_register_lpf (info)
/* Bind to the interface name */
memset (&sa, 0, sizeof sa);
sa.ll.sll_family = AF_PACKET;
+ sa.ll.sll_protocol = htons(protocol);
sa.ll.sll_ifindex = ifr.ifr_ifindex;
if (bind (sock, &sa.common, sizeof sa)) {
if (errno == ENOPROTOOPT || errno == EPROTONOSUPPORT ||
@@ -127,8 +149,6 @@ int if_register_lpf (info)
log_fatal ("Bind socket to interface: %m");
}
- get_hw_addr(info->name, &info->hw_address);
-
return sock;
}
#endif /* USE_LPF_SEND || USE_LPF_RECEIVE */
@@ -183,6 +203,8 @@ void if_deregister_send (info)
in bpf includes... */
extern struct sock_filter dhcp_bpf_filter [];
extern int dhcp_bpf_filter_len;
+extern struct sock_filter dhcp_ib_bpf_filter [];
+extern int dhcp_ib_bpf_filter_len;
#if defined (HAVE_TR_SUPPORT)
extern struct sock_filter dhcp_bpf_tr_filter [];
@@ -200,11 +222,13 @@ void if_register_receive (info)
/* Open a LPF device and hang it on this interface... */
info -> rfdesc = if_register_lpf (info);
- val = 1;
- if (setsockopt (info -> rfdesc, SOL_PACKET, PACKET_AUXDATA, &val,
- sizeof val) < 0) {
- if (errno != ENOPROTOOPT)
- log_fatal ("Failed to set auxiliary packet data: %m");
+ if (info->hw_address.hbuf[0] != HTYPE_INFINIBAND) {
+ val = 1;
+ if (setsockopt (info -> rfdesc, SOL_PACKET, PACKET_AUXDATA,
+ &val, sizeof val) < 0) {
+ if (errno != ENOPROTOOPT)
+ log_fatal ("Failed to set auxiliary packet data: %m");
+ }
}
#if defined (HAVE_TR_SUPPORT)
@@ -250,15 +274,28 @@ static void lpf_gen_filter_setup (info)
memset(&p, 0, sizeof(p));
- /* Set up the bpf filter program structure. This is defined in
- bpf.c */
- p.len = dhcp_bpf_filter_len;
- p.filter = dhcp_bpf_filter;
-
- /* Patch the server port into the LPF program...
- XXX changes to filter program may require changes
- to the insn number(s) used below! XXX */
- dhcp_bpf_filter [8].k = ntohs ((short)local_port);
+ if (info->hw_address.hbuf[0] == HTYPE_INFINIBAND) {
+ /* Set up the bpf filter program structure. */
+ p.len = dhcp_ib_bpf_filter_len;
+ p.filter = dhcp_ib_bpf_filter;
+
+ /* Patch the server port into the LPF program...
+ XXX
+ changes to filter program may require changes
+ to the insn number(s) used below!
+ XXX */
+ dhcp_ib_bpf_filter[6].k = ntohs ((short)local_port);
+ } else {
+ /* Set up the bpf filter program structure.
+ This is defined in bpf.c */
+ p.len = dhcp_bpf_filter_len;
+ p.filter = dhcp_bpf_filter;
+
+ /* Patch the server port into the LPF program...
+ XXX changes to filter program may require changes
+ to the insn number(s) used below! XXX */
+ dhcp_bpf_filter [8].k = ntohs ((short)local_port);
+ }
if (setsockopt (info -> rfdesc, SOL_SOCKET, SO_ATTACH_FILTER, &p,
sizeof p) < 0) {
@@ -315,6 +352,54 @@ static void lpf_tr_filter_setup (info)
#endif /* USE_LPF_RECEIVE */
#ifdef USE_LPF_SEND
+ssize_t send_packet_ib(interface, packet, raw, len, from, to, hto)
+ struct interface_info *interface;
+ struct packet *packet;
+ struct dhcp_packet *raw;
+ size_t len;
+ struct in_addr from;
+ struct sockaddr_in *to;
+ struct hardware *hto;
+{
+ unsigned ibufp = 0;
+ double ih [1536 / sizeof (double)];
+ unsigned char *buf = (unsigned char *)ih;
+ ssize_t result;
+
+ union sockunion {
+ struct sockaddr sa;
+ struct sockaddr_ll sll;
+ struct sockaddr_storage ss;
+ } su;
+
+ assemble_udp_ip_header (interface, buf, &ibufp, from.s_addr,
+ to->sin_addr.s_addr, to->sin_port,
+ (unsigned char *)raw, len);
+ memcpy (buf + ibufp, raw, len);
+
+ memset(&su, 0, sizeof(su));
+ su.sll.sll_family = AF_PACKET;
+ su.sll.sll_protocol = htons(ETHERTYPE_IP);
+
+ if (!(su.sll.sll_ifindex = if_nametoindex(interface->name))) {
+ errno = ENOENT;
+ log_error ("send_packet_ib: %m - failed to get if index");
+ return -1;
+ }
+
+ su.sll.sll_hatype = htons(HTYPE_INFINIBAND);
+ su.sll.sll_halen = sizeof(interface->bcast_addr);
+ memcpy(&su.sll.sll_addr, interface->bcast_addr, 20);
+
+ result = sendto(interface->wfdesc, buf, ibufp + len, 0,
+ &su.sa, sizeof(su));
+
+ if (result < 0)
+ log_error ("send_packet_ib: %m");
+
+ return result;
+}
+
ssize_t send_packet (interface, packet, raw, len, from, to, hto)
struct interface_info *interface;
struct packet *packet;
@@ -335,6 +420,11 @@ ssize_t send_packet (interface, packet, raw, len, from, to, hto)
return send_fallback (interface, packet, raw,
len, from, to, hto);
+ if (interface->hw_address.hbuf[0] == HTYPE_INFINIBAND) {
+ return send_packet_ib(interface, packet, raw, len, from,
+ to, hto);
+ }
+
if (hto == NULL && interface->anycast_mac_addr.hlen)
hto = &interface->anycast_mac_addr;
@@ -356,6 +446,42 @@ ssize_t send_packet (interface, packet, raw, len, from, to, hto)
#endif /* USE_LPF_SEND */
#ifdef USE_LPF_RECEIVE
+ssize_t receive_packet_ib (interface, buf, len, from, hfrom)
+ struct interface_info *interface;
+ unsigned char *buf;
+ size_t len;
+ struct sockaddr_in *from;
+ struct hardware *hfrom;
+{
+ int length = 0;
+ int offset = 0;
+ unsigned char ibuf [1536];
+ unsigned bufix = 0;
+ unsigned paylen;
+
+ length = read(interface->rfdesc, ibuf, sizeof(ibuf));
+
+ if (length <= 0)
+ return length;
+
+ offset = decode_udp_ip_header(interface, ibuf, bufix, from,
+ (unsigned)length, &paylen, 0);
+
+ if (offset < 0)
+ return 0;
+
+ bufix += offset;
+ length -= offset;
+
+ if (length < paylen)
+ log_fatal("Internal inconsistency at %s:%d.", MDL);
+
+ /* Copy out the data in the packet... */
+ memcpy(buf, &ibuf[bufix], paylen);
+
+ return (ssize_t)paylen;
+}
+
ssize_t receive_packet (interface, buf, len, from, hfrom)
struct interface_info *interface;
unsigned char *buf;
@@ -382,6 +508,10 @@ ssize_t receive_packet (interface, buf, len, from, hfrom)
};
struct cmsghdr *cmsg;
+ if (interface->hw_address.hbuf[0] == HTYPE_INFINIBAND) {
+ return receive_packet_ib(interface, buf, len, from, hfrom);
+ }
+
length = recvmsg (interface -> rfdesc, &msg, 0);
if (length <= 0)
return length;
@@ -462,33 +592,41 @@ void maybe_setup_fallback ()
}
void
-get_hw_addr(const char *name, struct hardware *hw) {
- int sock;
- struct ifreq tmp;
- struct sockaddr *sa;
+get_hw_addr(struct interface_info *info)
+{
+ struct hardware *hw = &info->hw_address;
+ char *name = info->name;
+ struct ifaddrs *ifaddrs;
+ struct ifaddrs *ifa;
+ struct sockaddr_ll *sll = NULL;
- if (strlen(name) >= sizeof(tmp.ifr_name)) {
- log_fatal("Device name too long: \"%s\"", name);
- }
+ if (getifaddrs(&ifaddrs) == -1)
+ log_fatal("Failed to get interfaces");
- sock = socket(AF_INET, SOCK_DGRAM, 0);
- if (sock < 0) {
- log_fatal("Can't create socket for \"%s\": %m", name);
+ for (ifa = ifaddrs; ifa != NULL; ifa = ifa->ifa_next) {
+
+ if (ifa->ifa_addr->sa_family != AF_PACKET)
+ continue;
+
+ if (ifa->ifa_flags & IFF_LOOPBACK)
+ continue;
+
+ if (strcmp(ifa->ifa_name, name) == 0) {
+ sll = (struct sockaddr_ll *)(void *)ifa->ifa_addr;
+ break;
+ }
}
- memset(&tmp, 0, sizeof(tmp));
- strcpy(tmp.ifr_name, name);
- if (ioctl(sock, SIOCGIFHWADDR, &tmp) < 0) {
- log_fatal("Error getting hardware address for \"%s\": %m",
- name);
+ if (sll == NULL) {
+ freeifaddrs(ifaddrs);
+ log_fatal("Failed to get HW address for %s\n", name);
}
- sa = &tmp.ifr_hwaddr;
- switch (sa->sa_family) {
+ switch (sll->sll_hatype) {
case ARPHRD_ETHER:
hw->hlen = 7;
hw->hbuf[0] = HTYPE_ETHER;
- memcpy(&hw->hbuf[1], sa->sa_data, 6);
+ memcpy(&hw->hbuf[1], sll->sll_addr, 6);
break;
case ARPHRD_IEEE802:
#ifdef ARPHRD_IEEE802_TR
@@ -496,18 +634,36 @@ get_hw_addr(const char *name, struct hardware *hw) {
#endif /* ARPHRD_IEEE802_TR */
hw->hlen = 7;
hw->hbuf[0] = HTYPE_IEEE802;
- memcpy(&hw->hbuf[1], sa->sa_data, 6);
+ memcpy(&hw->hbuf[1], sll->sll_addr, 6);
break;
case ARPHRD_FDDI:
hw->hlen = 7;
hw->hbuf[0] = HTYPE_FDDI;
- memcpy(&hw->hbuf[1], sa->sa_data, 6);
+ memcpy(&hw->hbuf[1], sll->sll_addr, 6);
break;
+ case ARPHRD_INFINIBAND:
+ /* For Infiniband, save the broadcast address and store
+ * the port GUID into the hardware address.
+ */
+ if (ifa->ifa_flags & IFF_BROADCAST) {
+ struct sockaddr_ll *bll;
+
+ bll = (struct sockaddr_ll *)ifa->ifa_broadaddr;
+ memcpy(&info->bcast_addr, bll->sll_addr, 20);
+ } else {
+ memcpy(&info->bcast_addr, default_ib_bcast_addr,
+ 20);
+ }
+
+ hw->hlen = 1;
+ hw->hbuf[0] = HTYPE_INFINIBAND;
+ break;
default:
+ freeifaddrs(ifaddrs);
log_fatal("Unsupported device type %ld for \"%s\"",
- (long int)sa->sa_family, name);
+ (long int)sll->sll_family, name);
}
- close(sock);
+ freeifaddrs(ifaddrs);
}
#endif
diff --git a/common/socket.c b/common/socket.c
index e111d82..04c86e3 100644
--- a/common/socket.c
+++ b/common/socket.c
@@ -322,7 +322,7 @@ void if_register_send (info)
info->wfdesc = if_register_socket(info, AF_INET, 0, NULL);
/* If this is a normal IPv4 address, get the hardware address. */
if (strcmp(info->name, "fallback") != 0)
- get_hw_addr(info->name, &info->hw_address);
+ get_hw_addr(info);
#if defined (USE_SOCKET_FALLBACK)
/* Fallback only registers for send, but may need to receive as
well. */
@@ -385,7 +385,7 @@ void if_register_receive (info)
#endif /* IP_PKTINFO... */
/* If this is a normal IPv4 address, get the hardware address. */
if (strcmp(info->name, "fallback") != 0)
- get_hw_addr(info->name, &info->hw_address);
+ get_hw_addr(info);
if (!quiet_interface_discovery)
log_info ("Listening on Socket/%s%s%s",
@@ -499,7 +499,7 @@ if_register6(struct interface_info *info, int do_multicast) {
if (req_multi)
if_register_multicast(info);
- get_hw_addr(info->name, &info->hw_address);
+ get_hw_addr(info);
if (!quiet_interface_discovery) {
if (info->shared_network != NULL) {
@@ -555,7 +555,7 @@ if_register_linklocal6(struct interface_info *info) {
info->rfdesc = sock;
info->wfdesc = sock;
- get_hw_addr(info->name, &info->hw_address);
+ get_hw_addr(info);
if (!quiet_interface_discovery) {
if (info->shared_network != NULL) {
diff --git a/includes/dhcpd.h b/includes/dhcpd.h
index 68262e9..a52992b 100644
--- a/includes/dhcpd.h
+++ b/includes/dhcpd.h
@@ -1217,6 +1217,7 @@ struct interface_info {
struct shared_network *shared_network;
/* Networks connected to this interface. */
struct hardware hw_address; /* Its physical address. */
+ u_int8_t bcast_addr[20]; /* Infiniband broadcast address */
struct in_addr *addresses; /* Addresses associated with this
* interface.
*/
@@ -2346,7 +2347,7 @@ void print_dns_status (int, struct dhcp_ddns_cb *, isc_result_t);
#endif
const char *print_time(TIME);
-void get_hw_addr(const char *name, struct hardware *hw);
+void get_hw_addr(struct interface_info *info);
/* socket.c */
#if defined (USE_SOCKET_SEND) || defined (USE_SOCKET_RECEIVE) \
--
1.7.12.4
++++++ 0018-dhcp-4.2.6-improved-xid.patch ++++++
>From 3a2059b67c3adfccd65f1e10aebf8ba73d51bcd1 Mon Sep 17 00:00:00 2001
From: root <root(a)reg-ovm-036-004.lab.mtl.com>
Date: Tue, 25 Mar 2014 23:30:18 +0200
Subject: [PATCH 2/2] dhcp 4.2.6 improved xid
---
client/dhclient.c | 70 ++++++++++++++++++++++++++++++++++++++++++++-----------
1 file changed, 56 insertions(+), 14 deletions(-)
diff --git a/client/dhclient.c b/client/dhclient.c
index f7dfbef..bfa99fb 100644
--- a/client/dhclient.c
+++ b/client/dhclient.c
@@ -619,6 +619,26 @@ main(int argc, char **argv) {
}
}
+ /* We create a backup seed before rediscovering interfaces in order to
+ have a seed built using all of the available interfaces
+ It's interesting if required interfaces doesn't let us defined
+ a really unique seed due to a lack of valid HW addr later
+ (this is the case with DHCP over IB)
+ We only use the last device as using a sum could broke the
+ uniqueness of the seed among multiple nodes
+ */
+ unsigned backup_seed = 0;
+ for (ip = interfaces; ip; ip = ip -> next) {
+ int junk;
+ if ( ip -> hw_address.hlen <= sizeof seed )
+ continue;
+ memcpy (&junk,
+ &ip -> hw_address.hbuf [ip -> hw_address.hlen -
+ sizeof seed], sizeof seed);
+ backup_seed = junk;
+ }
+
+
/* At this point, all the interfaces that the script thinks
are relevant should be running, so now we once again call
discover_interfaces(), and this time ask it to actually set
@@ -633,14 +653,36 @@ main(int argc, char **argv) {
Not much entropy, but we're booting, so we're not likely to
find anything better. */
seed = 0;
+ int seed_flag = 0;
for (ip = interfaces; ip; ip = ip->next) {
int junk;
+ if (ip->hw_address.hlen <= sizeof seed)
+ continue;
memcpy(&junk,
&ip->hw_address.hbuf[ip->hw_address.hlen -
sizeof seed], sizeof seed);
seed += junk;
+ seed_flag = 1;
}
- srandom(seed + cur_time + (unsigned)getpid());
+ if ( seed_flag == 0 ) {
+ if ( backup_seed != 0 ) {
+ seed = backup_seed;
+ log_info ("xid: rand init seed (0x%x) built using all"
+ " available interfaces",seed);
+ }
+ else {
+ seed = cur_time^((unsigned) gethostid()) ;
+ log_info ("xid: warning: no netdev with useable HWADDR found"
+ " for seed's uniqueness enforcement");
+ log_info ("xid: rand init seed (0x%x) built using gethostid",
+ seed);
+ }
+ /* we only use seed and no current time as a broadcast reply */
+ /* will certainly be used by the hwaddrless interface */
+ srandom(seed);
+ }
+ else
+ srandom(seed + cur_time + (unsigned)getpid());
/* Setup specific Infiniband options */
for (ip = interfaces; ip; ip = ip->next) {
@@ -1143,7 +1185,7 @@ void dhcpack (packet)
return;
}
- log_info ("DHCPACK from %s", piaddr (packet -> client_addr));
+ log_info ("DHCPACK from %s (xid=0x%x)", piaddr (packet -> client_addr), client -> xid);
lease = packet_to_lease (packet, client);
if (!lease) {
@@ -1861,7 +1903,7 @@ void dhcpnak (packet)
return;
}
- log_info ("DHCPNAK from %s", piaddr (packet -> client_addr));
+ log_info ("DHCPNAK from %s (xid=0x%x)", piaddr (packet -> client_addr), client -> xid);
if (!client -> active) {
#if defined (DEBUG)
@@ -1988,10 +2030,10 @@ void send_discover (cpp)
client -> packet.secs = htons (65535);
client -> secs = client -> packet.secs;
- log_info ("DHCPDISCOVER on %s to %s port %d interval %ld",
- client -> name ? client -> name : client -> interface -> name,
- inet_ntoa (sockaddr_broadcast.sin_addr),
- ntohs (sockaddr_broadcast.sin_port), (long)(client -> interval));
+ log_info ("DHCPDISCOVER on %s to %s port %d interval %ld (xid=0x%x)",
+ client -> name ? client -> name : client -> interface -> name,
+ inet_ntoa (sockaddr_broadcast.sin_addr),
+ ntohs (sockaddr_broadcast.sin_port), (long)(client -> interval), client -> xid);
/* Send out a packet. */
result = send_packet(client->interface, NULL, &client->packet,
@@ -2260,10 +2302,10 @@ void send_request (cpp)
client -> packet.secs = htons (65535);
}
- log_info ("DHCPREQUEST on %s to %s port %d",
+ log_info ("DHCPREQUEST on %s to %s port %d (xid=0x%x)",
client -> name ? client -> name : client -> interface -> name,
inet_ntoa (destination.sin_addr),
- ntohs (destination.sin_port));
+ ntohs (destination.sin_port), client -> xid);
if (destination.sin_addr.s_addr != INADDR_BROADCAST &&
fallback_interface) {
@@ -2303,10 +2345,10 @@ void send_decline (cpp)
int result;
- log_info ("DHCPDECLINE on %s to %s port %d",
- client->name ? client->name : client->interface->name,
+ log_info ("DHCPDECLINE on %s to %s port %d (xid=0x%x)",
+ client->name ? client->name : client->interface->name,
inet_ntoa(sockaddr_broadcast.sin_addr),
- ntohs(sockaddr_broadcast.sin_port));
+ ntohs (sockaddr_broadcast.sin_port), client -> xid);
/* Send out a packet. */
result = send_packet(client->interface, NULL, &client->packet,
@@ -2349,10 +2391,10 @@ void send_release (cpp)
return;
}
- log_info ("DHCPRELEASE on %s to %s port %d",
+ log_info ("DHCPRELEASE on %s to %s port %d (xid=0x%x)",
client -> name ? client -> name : client -> interface -> name,
inet_ntoa (destination.sin_addr),
- ntohs (destination.sin_port));
+ ntohs (destination.sin_port), client -> xid);
if (fallback_interface) {
result = send_packet(fallback_interface, NULL, &client->packet,
--
1.7.12.4
--
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 wicked for openSUSE:Factory checked in at 2014-04-01 11:34:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wicked (Old)
and /work/SRC/openSUSE:Factory/.wicked.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wicked"
Changes:
--------
--- /work/SRC/openSUSE:Factory/wicked/wicked.changes 2014-03-27 06:16:58.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.wicked.new/wicked.changes 2014-04-01 11:34:14.000000000 +0200
@@ -1,0 +2,20 @@
+Fri Mar 28 18:45:10 UTC 2014 - mt(a)suse.de
+
+- version 0.5.18
+- dhcp4: enabled on infiniband / IPoIB links
+- capture: fixed to wrap link-layer packet sockets as the default
+ address length in sockaddr_ll is not enough for infiniband.
+- dhcp6: enabled on infiniband / IPoIB links
+
+-------------------------------------------------------------------
+Fri Mar 28 12:57:50 UTC 2014 - mt(a)suse.de
+
+- version 0.5.17
+- dhcp4: fixed posix-tz-dbname code and added to parse
+- dhcp4: renew lease via unicast (bnc#866993)
+- macvtap: initial support (fate#315131)
+- ifstatus: do not consider client-state in ifstatus
+- xml: fixed functions retrieving numerical attr values
+- config: generate v5 UUIDs (SHA1) from xml config content
+
+-------------------------------------------------------------------
Old:
----
wicked-0.5.16.tar.bz2
New:
----
wicked-0.5.18.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wicked.spec ++++++
--- /var/tmp/diff_new_pack.gdu5Yi/_old 2014-04-01 11:34:14.000000000 +0200
+++ /var/tmp/diff_new_pack.gdu5Yi/_new 2014-04-01 11:34:14.000000000 +0200
@@ -18,7 +18,7 @@
%define release_prefix %{?snapshot:%{snapshot}}%{!?snapshot:0}
Name: wicked
-Version: 0.5.16
+Version: 0.5.18
Release: %{release_prefix}.0.0
Summary: Network configuration infrastructure
License: GPL-2.0
++++++ wicked-0.5.16.tar.bz2 -> wicked-0.5.18.tar.bz2 ++++++
++++ 2414 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 resource-agents for openSUSE:Factory checked in at 2014-04-01 11:34:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/resource-agents (Old)
and /work/SRC/openSUSE:Factory/.resource-agents.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "resource-agents"
Changes:
--------
--- /work/SRC/openSUSE:Factory/resource-agents/resource-agents.changes 2014-03-17 09:12:52.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.resource-agents.new/resource-agents.changes 2014-04-01 11:34:13.000000000 +0200
@@ -1,0 +2,10 @@
+Fri Mar 28 14:59:47 UTC 2014 - kgronlund(a)suse.com
+
+- mysql: Update mysql with more sensible defaults (bnc#863844)
+
+- added patches:
+ * 0001-Medium-mysql-Update-mysql-with-more-sensible-default.patch
+- removed patches:
+ * resource-agents-mysql-sle11.patch
+
+-------------------------------------------------------------------
Old:
----
resource-agents-mysql-sle11.patch
New:
----
0001-Medium-mysql-Update-mysql-with-more-sensible-default.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ resource-agents.spec ++++++
--- /var/tmp/diff_new_pack.sVWg7R/_old 2014-04-01 11:34:13.000000000 +0200
+++ /var/tmp/diff_new_pack.sVWg7R/_new 2014-04-01 11:34:13.000000000 +0200
@@ -45,8 +45,6 @@
Url: http://linux-ha.org/
Source: resource-agents-%{version}.tar.xz
Source1: resource-agents.conf
-# PATCH-FIX-OPENSUSE: fix path to mysql binary
-Patch1: resource-agents-mysql-sle11.patch
# PATCH-FIX-OPENSUSE: activate VG with partial PV by default
Patch2: lvm-vg-partial-active.diff
# PATCH-FIX-OPENSUSE: fix path to sm-notify
@@ -67,6 +65,8 @@
Patch14: 0001-ldirectord-Add-systemd-unit-file-bnc-863250.patch
# PATCH-FIX-UPSTREAM: exportfs: make unlock_on_stop default to 1 (bnc#864263)
Patch15: 0015-Medium-exportfs-Make-unlock_on_stop_default-1-bnc-86.patch
+# PATCH-FIX-UPSTREAM: mysql: Update mysql with more sensible defaults (bnc#863844)
+Patch16: 0001-Medium-mysql-Update-mysql-with-more-sensible-default.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Obsoletes: heartbeat-resources
@@ -137,7 +137,6 @@
%prep
###########################################################
%setup -q
-%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
@@ -148,6 +147,7 @@
%patch13 -p1
%patch14 -p1
%patch15 -p1
+%patch16 -p1
###########################################################
%build
++++++ 0001-Medium-mysql-Update-mysql-with-more-sensible-default.patch ++++++
>From 2e3b6ff8998ab6b4453d6c31f09c0e580c6b79b7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?= <krig(a)koru.se>
Date: Fri, 28 Mar 2014 15:49:07 +0100
Subject: [PATCH] Medium: mysql: Update mysql with more sensible defaults
The default values used by the mysql RA are outdated. This
patch updates the socket and binary options to more sensible
defaults.
---
heartbeat/mysql | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/heartbeat/mysql b/heartbeat/mysql
index 352af7c6e803..871af79470ca 100755
--- a/heartbeat/mysql
+++ b/heartbeat/mysql
@@ -75,7 +75,7 @@ if [ "X${HOSTOS}" = "XOpenBSD" ];then
OCF_RESKEY_socket_default="/var/run/mysql/mysql.sock"
else
if [ "$OCF_RESKEY_binary_default" = "" ]; then
- OCF_RESKEY_binary_default="/usr/bin/safe_mysqld"
+ OCF_RESKEY_binary_default="/usr/bin/mysqld_safe"
fi
OCF_RESKEY_config_default="/etc/my.cnf"
OCF_RESKEY_datadir_default="/var/lib/mysql"
@@ -83,7 +83,7 @@ else
OCF_RESKEY_group_default="mysql"
OCF_RESKEY_log_default="/var/log/mysqld.log"
OCF_RESKEY_pid_default="/var/run/mysql/mysqld.pid"
- OCF_RESKEY_socket_default="/var/lib/mysql/mysql.sock"
+ OCF_RESKEY_socket_default="/var/run/mysql/mysql.sock"
fi
OCF_RESKEY_client_binary_default="mysql"
OCF_RESKEY_test_user_default="root"
--
1.8.4.5
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
01 Apr '14
Hello community,
here is the log from the commit of package systemd-presets-branding-openSUSE for openSUSE:Factory checked in at 2014-04-01 11:34:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd-presets-branding-openSUSE (Old)
and /work/SRC/openSUSE:Factory/.systemd-presets-branding-openSUSE.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd-presets-branding-openSUSE"
Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd-presets-branding-openSUSE/systemd-presets-branding-openSUSE.changes 2013-12-19 15:09:33.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.systemd-presets-branding-openSUSE.new/systemd-presets-branding-openSUSE.changes 2014-04-01 11:34:12.000000000 +0200
@@ -1,0 +2,15 @@
+Fri Mar 7 17:31:10 UTC 2014 - matwey.kornilov(a)gmail.com
+
+- Enable epmd.socket so that epmd.service can be properly
+ socket-activated instead of forking by beam. The later leads to
+ the issue when epmd is killed at the stop of the specific service
+ and all erlang instances crashes as a consequence.
+ Needed by erlang package. (bnc#869112)
+
+-------------------------------------------------------------------
+Thu Feb 13 11:44:28 PST 2014 - lduncan(a)suse.com
+
+- Enable iscsi daemon socket and iscsi service as installed,
+ so that iscsid.service can be socket-activated. (bnc#853300)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ systemd-presets-branding-openSUSE.spec ++++++
--- /var/tmp/diff_new_pack.ZGZUji/_old 2014-04-01 11:34:12.000000000 +0200
+++ /var/tmp/diff_new_pack.ZGZUji/_new 2014-04-01 11:34:12.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package systemd-presets-branding-openSUSE
#
-# 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
++++++ default-openSUSE.preset ++++++
--- /var/tmp/diff_new_pack.ZGZUji/_old 2014-04-01 11:34:12.000000000 +0200
+++ /var/tmp/diff_new_pack.ZGZUji/_new 2014-04-01 11:34:12.000000000 +0200
@@ -14,3 +14,6 @@
enable iscsi.service
enable hv_kvp_daemon.service
enable hv_vss_daemon.service
+enable iscsid.socket
+enable iscsi.service
+enable epmd.socket
--
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 xorg-x11-proto-devel for openSUSE:Factory checked in at 2014-04-01 06:46:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xorg-x11-proto-devel (Old)
and /work/SRC/openSUSE:Factory/.xorg-x11-proto-devel.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xorg-x11-proto-devel"
Changes:
--------
--- /work/SRC/openSUSE:Factory/xorg-x11-proto-devel/xorg-x11-proto-devel.changes 2014-03-22 19:46:04.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.xorg-x11-proto-devel.new/xorg-x11-proto-devel.changes 2014-04-01 06:46:31.000000000 +0200
@@ -1,0 +2,5 @@
+Sat Mar 29 01:16:53 UTC 2014 - tobias.johannes.klausmann(a)mni.thm.de
+
+- Update util-macros to version 1.19.0
+
+-------------------------------------------------------------------
Old:
----
util-macros-1.18.0.tar.bz2
New:
----
util-macros-1.19.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11-proto-devel.spec ++++++
--- /var/tmp/diff_new_pack.X1BudK/_old 2014-04-01 06:46:33.000000000 +0200
+++ /var/tmp/diff_new_pack.X1BudK/_new 2014-04-01 06:46:33.000000000 +0200
@@ -57,7 +57,7 @@
Source15: http://xorg.freedesktop.org/releases/individual/proto/resourceproto-1.2.0.t…
Source16: http://xorg.freedesktop.org/releases/individual/proto/scrnsaverproto-1.2.2.…
Source17: http://xorg.freedesktop.org/releases/individual/proto/trapproto-3.4.3.tar.b…
-Source18: http://xorg.freedesktop.org/releases/individual/util/util-macros-1.18.0.tar…
+Source18: http://xorg.freedesktop.org/releases/individual/util/util-macros-1.19.0.tar…
Source19: http://xorg.freedesktop.org/releases/individual/proto/videoproto-2.3.1.tar.…
Source20: http://xorg.freedesktop.org/releases/individual/proto/windowswmproto-1.0.4.…
Source21: http://xorg.freedesktop.org/releases/individual/proto/xcmiscproto-1.2.2.tar…
++++++ util-macros-1.18.0.tar.bz2 -> util-macros-1.19.0.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/util-macros-1.18.0/ChangeLog new/util-macros-1.19.0/ChangeLog
--- old/util-macros-1.18.0/ChangeLog 2013-12-03 16:20:46.000000000 +0100
+++ new/util-macros-1.19.0/ChangeLog 2014-03-27 14:22:08.000000000 +0100
@@ -1,3 +1,88 @@
+commit 9a54b858601bd305de2737b06e609084a2a114c2
+Author: Gaetan Nadon <memsize(a)videotron.ca>
+Date: Thu Mar 27 09:10:01 2014 -0400
+
+ Version bump: 1.19.0
+
+ Signed-off-by: Gaetan Nadon <memsize(a)videotron.ca>
+
+commit 0677da7ed48f74a54f9bfd12afea7f0d578d7d38
+Author: Hans de Goede <hdegoede(a)redhat.com>
+Date: Thu Mar 27 12:45:43 2014 +0100
+
+ XORG_PROG_RAWCPP: Add TRADITIONALCPPFLAGS
+
+ In some cases we may want to have -traditional for proper whitespace preserving
+ without -undef, as we actually want the system definitions to be in place
+ so we can #ifdef on them. IE in xinit various .cpp files contain things like
+ #ifdef __APPLE__ and #ifdef __linux__
+
+ So this patch adds a TRADITIONALCPPFLAGS variable which contains just
+ -traditional where applicable without the other RAWCPPFLAGS for unsetting
+ the system definitions.
+
+ Signed-off-by: Hans de Goede <hdegoede(a)redhat.com>
+ Reviewed-by: Gaetan Nadon <memsize(a)videotron.ca>
+
+commit 6768f12b4db660bb691337c6d238a32aae0475ff
+Author: Gaetan Nadon <memsize(a)videotron.ca>
+Date: Thu Mar 27 08:21:51 2014 -0400
+
+ Provide the automake INSTALL file at level 1.11
+
+ Now that the minimum level for automake is 1.11, replace the current
+ INSTALL with the one from automake 1.11.
+
+ Recall that the file in this package is installed in $pkgdatadir
+ and is copied by each xorg module through the make 'dist' target.
+
+ Signed-off-by: Gaetan Nadon <memsize(a)videotron.ca>
+
+commit 7acde944f40dad08fa8c43bc2548205e343afcd1
+Author: Arnaud Fontaine <arnau(a)debian.org>
+Date: Sat Feb 8 10:31:39 2014 -0500
+
+ Add XORG_WITH_M4 macro
+
+ Originally from XCB, this macro checks for the presence of m4 or gm4
+ which supports -I dir.
+
+ The AC_PATH_PROGS_FEATURE_CHECK autoconf macro requires autoconf 2.62.
+
+ Signed-off-by: Gaetan Nadon <memsize(a)videotron.ca>
+
+commit a5092b6a9931c8a60813f4f8a038cc5d9771d212
+Author: Gaetan Nadon <memsize(a)videotron.ca>
+Date: Thu Feb 6 17:47:20 2014 -0500
+
+ Bump minimum Autoconf required version to 2.62
+
+ The main motivation is to catch-up with the development reality and
+ allow use of features in Autoconf 2.62 as well as Automake 1.11.
+
+ As usual this means no features found only in versions above those
+ specified are allowed.
+
+ This is implementing the policy change which is described in:
+ http://www.x.org/wiki/Building_the_X_Window_System/?updated#index2h3
+
+ Discussion on xorg minimum autotools requirements:
+ http://lists.x.org/archives/xorg-devel/2013-October/038325.html
+
+ Signed-off-by: Gaetan Nadon <memsize(a)videotron.ca>
+
+commit 72b211419977a211c871232d66e1a668e3cf702f
+Author: Alan Coopersmith <alan.coopersmith(a)oracle.com>
+Date: Mon Dec 2 16:41:45 2013 -0800
+
+ XORG_COMPILER_FLAGS: Add -Wlogical-op to default warning set
+
+ We've fixed several bugs it uncovered already, only one warning left that
+ it adds in a default build.
+
+ Signed-off-by: Alan Coopersmith <alan.coopersmith(a)oracle.com>
+ Reviewed-by: Gaetan Nadon <memsize(a)videotron.ca>
+
commit 9bc8e154e53ee0ff8d09cc621ba762486f3e93fa
Author: Gaetan Nadon <memsize(a)videotron.ca>
Date: Mon Dec 2 18:43:36 2013 -0500
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/util-macros-1.18.0/INSTALL new/util-macros-1.19.0/INSTALL
--- old/util-macros-1.18.0/INSTALL 2009-11-07 15:34:49.000000000 +0100
+++ new/util-macros-1.19.0/INSTALL 2012-04-02 19:37:09.000000000 +0200
@@ -1,11 +1,13 @@
Installation Instructions
*************************
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
-2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
+Inc.
- This file is free documentation; the Free Software Foundation gives
-unlimited permission to copy, distribute and modify it.
+ Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved. This file is offered as-is,
+without warranty of any kind.
Basic Installation
==================
@@ -13,7 +15,11 @@
Briefly, the shell commands `./configure; make; make install' should
configure, build, and install this package. The following
more-detailed instructions are generic; see the `README' file for
-instructions specific to this package.
+instructions specific to this package. Some packages provide this
+`INSTALL' file but do not implement all of the features documented
+below. The lack of an optional feature in a given package is not
+necessarily a bug. More recommendations for GNU packages can be found
+in *note Makefile Conventions: (standards)Makefile Conventions.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
@@ -42,7 +48,7 @@
you want to change it or regenerate `configure' using a newer version
of `autoconf'.
-The simplest way to compile this package is:
+ The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system.
@@ -53,12 +59,22 @@
2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with
- the package.
+ the package, generally using the just-built uninstalled binaries.
4. Type `make install' to install the programs and any data files and
- documentation.
+ documentation. When installing into a prefix owned by root, it is
+ recommended that the package be configured and built as a regular
+ user, and only the `make install' phase executed with root
+ privileges.
+
+ 5. Optionally, type `make installcheck' to repeat any self-tests, but
+ this time using the binaries in their final installed location.
+ This target does not install anything. Running this target as a
+ regular user, particularly if the prior `make install' required
+ root privileges, verifies that the installation completed
+ correctly.
- 5. You can remove the program binaries and object files from the
+ 6. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
@@ -67,8 +83,15 @@
all sorts of other programs in order to regenerate files that came
with the distribution.
- 6. Often, you can also type `make uninstall' to remove the installed
- files again.
+ 7. Often, you can also type `make uninstall' to remove the installed
+ files again. In practice, not all packages have tested that
+ uninstallation works correctly, even though it is required by the
+ GNU Coding Standards.
+
+ 8. Some packages, particularly those that use Automake, provide `make
+ distcheck', which can by used by developers to test that all other
+ targets like `make install' and `make uninstall' work correctly.
+ This target is generally not run by end users.
Compilers and Options
=====================
@@ -93,7 +116,8 @@
own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.
+source code in the directory that `configure' is in and in `..'. This
+is known as a "VPATH" build.
With a non-GNU `make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have
@@ -120,7 +144,8 @@
By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
-`configure' the option `--prefix=PREFIX'.
+`configure' the option `--prefix=PREFIX', where PREFIX must be an
+absolute file name.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
@@ -131,15 +156,46 @@
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.
+you can set and what kinds of files go in them. In general, the
+default for these options is expressed in terms of `${prefix}', so that
+specifying just `--prefix' will affect all of the other directory
+specifications that were not explicitly provided.
+
+ The most portable way to affect installation locations is to pass the
+correct locations to `configure'; however, many packages provide one or
+both of the following shortcuts of passing variable assignments to the
+`make install' command line to change installation locations without
+having to reconfigure or recompile.
+
+ The first method involves providing an override variable for each
+affected directory. For example, `make install
+prefix=/alternate/directory' will choose an alternate location for all
+directory configuration variables that were expressed in terms of
+`${prefix}'. Any directories that were specified during `configure',
+but not in terms of `${prefix}', must each be overridden at install
+time for the entire installation to be relocated. The approach of
+makefile variable overrides for each directory variable is required by
+the GNU Coding Standards, and ideally causes no recompilation.
+However, some platforms have known limitations with the semantics of
+shared libraries that end up requiring recompilation when using this
+method, particularly noticeable in packages that use GNU Libtool.
+
+ The second method involves providing the `DESTDIR' variable. For
+example, `make install DESTDIR=/alternate/directory' will prepend
+`/alternate/directory' before all installation names. The approach of
+`DESTDIR' overrides is not required by the GNU Coding Standards, and
+does not work on platforms that have drive letters. On the other hand,
+it does better at avoiding recompilation issues, and works well even
+when some directory options were not specified in terms of `${prefix}'
+at `configure' time.
+
+Optional Features
+=================
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
-Optional Features
-=================
-
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
@@ -152,6 +208,13 @@
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
+ Some packages offer the ability to configure how verbose the
+execution of `make' will be. For these packages, running `./configure
+--enable-silent-rules' sets the default to minimal output, which can be
+overridden with `make V=1'; while running `./configure
+--disable-silent-rules' sets the default to verbose, which can be
+overridden with `make V=0'.
+
Particular systems
==================
@@ -159,10 +222,15 @@
CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
- ./configure CC="cc -Ae"
+ ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+ HP-UX `make' updates targets which have the same time stamps as
+their prerequisites, which makes it generally unusable when shipped
+generated files such as `configure' are involved. Use GNU `make'
+instead.
+
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
a workaround. If GNU CC is not installed, it is therefore recommended
@@ -174,6 +242,16 @@
./configure CC="cc -nodtk"
+ On Solaris, don't put `/usr/ucb' early in your `PATH'. This
+directory contains several dysfunctional programs; working variants of
+these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
+in your `PATH', put it _after_ `/usr/bin'.
+
+ On Haiku, software installed for all users goes in `/boot/common',
+not `/usr/local'. It is recommended to use the following options:
+
+ ./configure --prefix=/boot/common
+
Specifying the System Type
==========================
@@ -189,7 +267,8 @@
where SYSTEM can have one of these forms:
- OS KERNEL-OS
+ OS
+ KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
@@ -277,7 +356,7 @@
`configure' can determine that directory automatically.
`--prefix=DIR'
- Use DIR as the installation prefix. *Note Installation Names::
+ Use DIR as the installation prefix. *note Installation Names::
for more details, including other options available for fine-tuning
the installation locations.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/util-macros-1.18.0/configure new/util-macros-1.19.0/configure
--- old/util-macros-1.18.0/configure 2013-12-03 15:52:35.000000000 +0100
+++ new/util-macros-1.19.0/configure 2014-03-27 14:11:05.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for util-macros 1.18.0.
+# Generated by GNU Autoconf 2.68 for util-macros 1.19.0.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
#
@@ -560,8 +560,8 @@
# Identity of this package.
PACKAGE_NAME='util-macros'
PACKAGE_TARNAME='util-macros'
-PACKAGE_VERSION='1.18.0'
-PACKAGE_STRING='util-macros 1.18.0'
+PACKAGE_VERSION='1.19.0'
+PACKAGE_STRING='util-macros 1.19.0'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
PACKAGE_URL=''
@@ -1179,7 +1179,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures util-macros 1.18.0 to adapt to many kinds of systems.
+\`configure' configures util-macros 1.19.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1245,7 +1245,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of util-macros 1.18.0:";;
+ short | recursive ) echo "Configuration of util-macros 1.19.0:";;
esac
cat <<\_ACEOF
@@ -1312,7 +1312,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-util-macros configure 1.18.0
+util-macros configure 1.19.0
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -1329,7 +1329,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by util-macros $as_me 1.18.0, which was
+It was created by util-macros $as_me 1.19.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -2145,7 +2145,7 @@
# Define the identity of the package.
PACKAGE='util-macros'
- VERSION='1.18.0'
+ VERSION='1.19.0'
cat >>confdefs.h <<_ACEOF
@@ -2799,7 +2799,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by util-macros $as_me 1.18.0, which was
+This file was extended by util-macros $as_me 1.19.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -2852,7 +2852,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-util-macros config.status 1.18.0
+util-macros config.status 1.19.0
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/util-macros-1.18.0/configure.ac new/util-macros-1.19.0/configure.ac
--- old/util-macros-1.18.0/configure.ac 2013-12-03 15:42:47.000000000 +0100
+++ new/util-macros-1.19.0/configure.ac 2014-03-27 14:09:06.000000000 +0100
@@ -21,9 +21,9 @@
dnl
dnl Process this file with autoconf to create configure.
-AC_PREREQ([2.60])
+AC_PREREQ([2.62])
AC_INIT([util-macros],
- [1.18.0],
+ [1.19.0],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg]
[util-macros])
AC_CONFIG_SRCDIR([Makefile.am])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/util-macros-1.18.0/xorg-macros.m4.in new/util-macros-1.19.0/xorg-macros.m4.in
--- old/util-macros-1.18.0/xorg-macros.m4.in 2013-12-03 00:10:29.000000000 +0100
+++ new/util-macros-1.19.0/xorg-macros.m4.in 2014-03-27 13:56:56.000000000 +0100
@@ -87,6 +87,7 @@
AC_MSG_RESULT([no])
else
if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then
+ TRADITIONALCPPFLAGS="-traditional"
RAWCPPFLAGS="${RAWCPPFLAGS} -traditional"
AC_MSG_RESULT([yes])
else
@@ -95,6 +96,7 @@
fi
rm -f conftest.$ac_ext
AC_SUBST(RAWCPPFLAGS)
+AC_SUBST(TRADITIONALCPPFLAGS)
]) # XORG_PROG_RAWCPP
# XORG_MANPAGE_SECTIONS()
@@ -882,6 +884,29 @@
AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
]) # XORG_WITH_FOP
+# XORG_WITH_M4([MIN-VERSION])
+# ---------------------------
+# Minimum version: 1.19.0
+#
+# This macro attempts to locate an m4 macro processor which supports
+# -I option and is only useful for modules relying on M4 in order to
+# expand macros in source code files.
+#
+# Interface to module:
+# M4: returns the path of the m4 program found
+# returns the path set by the user in the environment
+#
+AC_DEFUN([XORG_WITH_M4], [
+AC_CACHE_CHECK([for m4 that supports -I option], [ac_cv_path_M4],
+ [AC_PATH_PROGS_FEATURE_CHECK([M4], [m4 gm4],
+ [[$ac_path_M4 -I. /dev/null > /dev/null 2>&1 && \
+ ac_cv_path_M4=$ac_path_M4 ac_path_M4_found=:]],
+ [AC_MSG_ERROR([could not find m4 that supports -I option])],
+ [$PATH:/usr/gnu/bin])])
+
+AC_SUBST([M4], [$ac_cv_path_M4])
+]) # XORG_WITH_M4
+
# XORG_WITH_PS2PDF([DEFAULT])
# ----------------
# Minimum version: 1.6.0
@@ -1650,11 +1675,11 @@
XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-noreturn])
XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-format-attribute])
XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wredundant-decls])
+XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op])
# These are currently disabled because they are noisy. They will be enabled
# in the future once the codebase is sufficiently modernized to silence
# them. For now, I don't want them to drown out the other warnings.
-# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op])
# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wparentheses])
# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align])
# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual])
--
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 xrandr for openSUSE:Factory checked in at 2014-04-01 06:46:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xrandr (Old)
and /work/SRC/openSUSE:Factory/.xrandr.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xrandr"
Changes:
--------
--- /work/SRC/openSUSE:Factory/xrandr/xrandr.changes 2013-10-17 20:46:42.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xrandr.new/xrandr.changes 2014-04-01 06:46:30.000000000 +0200
@@ -1,0 +2,14 @@
+Sat Mar 29 01:24:09 UTC 2014 - tobias.johannes.klausmann(a)mni.thm.de
+
+- Update to version 1.4.2:
+ This minor bugfix release restores the ability to disconnect
+ providers from each other using "0x0" as the provider XID. For
+ example, to disconnect a display offload sink from its source,
+ use: "xrandr --setprovideroutputsource <sink> 0x0"
+ This release also formats the GUID provided by DisplayPort 1.2
+ displays in traditional GUID form.
+ Finally, this release increases the precision of refresh rate
+ calculations to disambiguate modes with very similar refresh
+ rates and to improve the accuracy for interlaced modes.
+
+-------------------------------------------------------------------
Old:
----
xrandr-1.4.1.tar.bz2
New:
----
xrandr-1.4.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xrandr.spec ++++++
--- /var/tmp/diff_new_pack.lHz0Gj/_old 2014-04-01 06:46:30.000000000 +0200
+++ /var/tmp/diff_new_pack.lHz0Gj/_new 2014-04-01 06:46:30.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package xrandr
#
-# 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: xrandr
-Version: 1.4.1
+Version: 1.4.2
Release: 0
Summary: Primitive command line interface to RandR extension
License: MIT
++++++ xrandr-1.4.1.tar.bz2 -> xrandr-1.4.2.tar.bz2 ++++++
++++ 8402 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xrandr-1.4.1/ChangeLog new/xrandr-1.4.2/ChangeLog
--- old/xrandr-1.4.1/ChangeLog 2013-07-17 08:31:09.000000000 +0200
+++ new/xrandr-1.4.2/ChangeLog 2014-03-28 19:04:19.000000000 +0100
@@ -1,3 +1,105 @@
+commit 31f5fa6a47db154abb47cf16e9f6cc4d983ad371
+Author: Aaron Plattner <aplattner(a)nvidia.com>
+Date: Thu Mar 27 11:37:07 2014 -0700
+
+ xrandr 1.4.2
+
+ Signed-off-by: Aaron Plattner <aplattner(a)nvidia.com>
+
+commit 934a424a05a296c0b8af015476e11b191d55eba3
+Author: Aaron Plattner <aplattner(a)nvidia.com>
+Date: Fri Mar 21 10:35:56 2014 -0700
+
+ xrandr: document how to disconnect RandR 1.4 providers
+
+ Commit a6217be2d5a93a4c7b48f4081a4a8e14c3c97014 restored the ability to
+ disconnect RandR 1.4 providers from each other, but it's not clear from the
+ documentation how to actually do that. Try to clarify by mentioning it in the
+ man page.
+
+ Signed-off-by: Aaron Plattner <aplattner(a)nvidia.com>
+ Reviewed-by: Dave Airlie <airlied(a)redhat.com>
+
+commit a6217be2d5a93a4c7b48f4081a4a8e14c3c97014
+Author: Dave Airlie <airlied(a)gmail.com>
+Date: Fri May 3 10:05:04 2013 +1000
+
+ xrandr: allow disconnecting of offload and outputs
+
+ Before the lookup code passing a 0 XID would disconnect,
+ this fixes it backup.
+
+ Signed-off-by: Dave Airlie <airlied(a)redhat.com>
+ Reviewed-by: Aaron Plattner <aplattner(a)nvidia.com>
+ Tested-by: Aaron Plattner <aplattner(a)nvidia.com>
+ Signed-off-by: Aaron Plattner <aplattner(a)nvidia.com>
+
+commit 00c795e99fe29ecd56e05e915e508c7af0ac39ad
+Author: Ville Syrjälä <ville.syrjala(a)linux.intel.com>
+Date: Fri May 31 17:01:54 2013 +0300
+
+ xrandr: Use floating point for VTotal when calculating refresh rate
+
+ Interlaced modes generally have an odd VTotal, so we lose half a line
+ from VTotal when we divide by two. That causes the final refresh rate
+ to be slightly off. Make VTotal a double to avoid the problem.
+
+ Signed-off-by: Ville Syrjälä <ville.syrjala(a)linux.intel.com>
+ Reviewed-by: Aaron Plattner <aplattner(a)nvidia.com>
+
+commit 8f9b993342fddfceaa1afbec2996ce10038f10d7
+Author: Ville Syrjälä <ville.syrjala(a)linux.intel.com>
+Date: Fri May 31 17:01:53 2013 +0300
+
+ xrandr: Use more decimal places when printing various rates
+
+ Using just one decimal place for dotclock and refresh rates loses quite
+ a bit of information. When dealing with 60Hz vs. 59.94Hz refresh rate
+ modes for example, it's useful to see at least two decimal places. For
+ the dotclock in similar cases, three decimal places seems quite a bit
+ better than just one.
+
+ Signed-off-by: Ville Syrjälä <ville.syrjala(a)linux.intel.com>
+ Reviewed-by: Aaron Plattner <aplattner(a)nvidia.com>
+
+commit 7ede207f9064fd88427026e38818819c2c8422bb
+Author: Aaron Plattner <aplattner(a)nvidia.com>
+Date: Fri Jan 3 05:48:17 2014 -0800
+
+ Special-case printing of the GUID property
+
+ Rather than printing GUIDs as 16 signed decimal integers, print them in
+ {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} format.
+
+ Signed-off-by: Aaron Plattner <aplattner(a)nvidia.com>
+ Reviewed-by: Alex Deucher <alexander.deucher(a)amd.com>
+
+commit e7a19c8b5a26c8bfd76a7399a1a15eac01184261
+Author: Aaron Plattner <aplattner(a)nvidia.com>
+Date: Fri Jan 3 05:22:02 2014 -0800
+
+ Move EDID printing into a helper function
+
+ Localize the specialness of EDID printing by moving it into a single function,
+ print_edid, which prints the binary EDID data. Remove the is_edid parameter
+ from everything else.
+
+ Signed-off-by: Aaron Plattner <aplattner(a)nvidia.com>
+ Reviewed-by: Alex Deucher <alexander.deucher(a)amd.com>
+
+commit a29728ca9599fd08da1243e9b422ac26a24cc05b
+Author: Aaron Plattner <aplattner(a)nvidia.com>
+Date: Fri Jan 3 05:14:35 2014 -0800
+
+ Split output property printing into a helper function
+
+ Move the body of the code that prints the actual output property values into a
+ helper function. This will make it easier for this function to select
+ special-case property printers for properties that need special formatting.
+
+ Signed-off-by: Aaron Plattner <aplattner(a)nvidia.com>
+ Reviewed-by: Alex Deucher <alexander.deucher(a)amd.com>
+
commit c5334bb4137d6ea7b8c8b10d51131b9450d1106b
Author: Alan Coopersmith <alan.coopersmith(a)oracle.com>
Date: Tue Jul 16 23:30:27 2013 -0700
@@ -104,7 +206,7 @@
Signed-off-by: Aaron Plattner <aplattner(a)nvidia.com>
commit 3e5f160c4198a5160be5e9a3f21ba3f4130d4318
-Merge: dac72db bd16618
+Merge: dac72dbbc750 bd166184f6c1
Author: Aaron Plattner <aplattner(a)nvidia.com>
Date: Tue Feb 12 12:30:20 2013 -0800
@@ -1370,7 +1472,7 @@
Fix build outside of the source dir
commit 63ba316bcbe8ad61ba63d9fe62c82e7d56dcc399
-Merge: a813c4d 1b95e32
+Merge: a813c4da7f0b 1b95e32b4b0a
Author: Julien Cristau <jcristau(a)debian.org>
Date: Mon Dec 1 21:33:35 2008 +0100
@@ -1848,7 +1950,7 @@
Update version number to 1.2.0 for release.
commit 13cef2baa884039e96f5dfd9245bb949aed99448
-Merge: 065f09c a175972
+Merge: 065f09cc304d a175972de6fb
Author: Keith Packard <keithp(a)neko.keithp.com>
Date: Sun Feb 18 21:26:50 2007 -0800
@@ -1890,7 +1992,7 @@
Display set of available CRTCs per output in --verbose mode.
commit 067cafb5cda0aa6e34773e888fd469ff657760c2
-Merge: 7c25c24 b0a00df
+Merge: 7c25c245bceb b0a00df69f83
Author: Keith Packard <keithp(a)guitar.keithp.com>
Date: Wed Jan 31 15:25:35 2007 -0800
@@ -2049,7 +2151,7 @@
Actually respect the --fb option
commit 7b32611632ab08b6a123db5df1c2b919b3a12104
-Merge: a0df3aa 4bb1a9c
+Merge: a0df3aa81205 4bb1a9cd6f9c
Author: Keith Packard <keithp(a)guitar.keithp.com>
Date: Tue Dec 19 15:58:38 2006 -0800
@@ -2062,7 +2164,7 @@
Correct format for sscanf to double variable "dpi"
commit 4bb1a9cd6f9cc3ed61d7913528afa3f573092833
-Merge: b6c0382 6ef400f
+Merge: b6c03827bae7 6ef400f35d7d
Author: Keith Packard <keithp(a)bouzouki.jf.intel.com>
Date: Wed Dec 13 11:36:36 2006 -0800
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xrandr-1.4.1/configure.ac new/xrandr-1.4.2/configure.ac
--- old/xrandr-1.4.1/configure.ac 2013-07-17 08:30:53.000000000 +0200
+++ new/xrandr-1.4.2/configure.ac 2014-03-27 19:36:53.000000000 +0100
@@ -22,7 +22,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
-AC_INIT([xrandr], [1.4.1],
+AC_INIT([xrandr], [1.4.2],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg] [xrandr])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xrandr-1.4.1/man/xrandr.man new/xrandr-1.4.2/man/xrandr.man
--- old/xrandr-1.4.1/man/xrandr.man 2013-07-17 08:30:53.000000000 +0200
+++ new/xrandr-1.4.2/man/xrandr.man 2014-03-21 18:34:57.000000000 +0100
@@ -126,10 +126,14 @@
Set \fIsource\fP as the source of display output images for \fIprovider\fP.
This is only possible if \fIsource\fP and \fIprovider\fP have the \fBSource
Output\fR and \fBSink Output\fR capabilities, respectively.
+If \fIsource\fP is \fB0x0\fP, then \fIprovider\fP is disconnected from its
+current output source.
.IP "\-\-setprovideroffloadsink \fIprovider\fP \fIsink\fP"
Set \fIprovider\fP as a render offload device for \fIsink\fP.
This is only possible if \fIprovider\fP and \fIsink\fP have the \fBSource
Offload\fR and \fBSink Offload\fR capabilities, respectively.
+If \fIsink\fP is \fB0x0\fP, then \fIprovider\fP is disconnected from its current
+render offload sink.
.PP
.SH "RandR version 1.3 options"
.PP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xrandr-1.4.1/missing new/xrandr-1.4.2/missing
--- old/xrandr-1.4.1/missing 2013-07-17 08:30:58.000000000 +0200
+++ new/xrandr-1.4.2/missing 2014-03-27 19:52:34.000000000 +0100
@@ -1,7 +1,7 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2012-06-26.16; # UTC
+scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard(a)iro.umontreal.ca>, 1996.
@@ -160,7 +160,7 @@
;;
autom4te*)
echo "You might have modified some maintainer files that require"
- echo "the 'automa4te' program to be rebuilt."
+ echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xrandr-1.4.1/xrandr.c new/xrandr-1.4.2/xrandr.c
--- old/xrandr-1.4.1/xrandr.c 2013-07-17 08:30:53.000000000 +0200
+++ new/xrandr-1.4.2/xrandr.c 2014-03-12 16:49:20.000000000 +0100
@@ -543,7 +543,7 @@
mode_refresh (XRRModeInfo *mode_info)
{
double rate;
- unsigned int vTotal = mode_info->vTotal;
+ double vTotal = mode_info->vTotal;
if (mode_info->modeFlags & RR_DoubleScan) {
/* doublescan doubles the number of lines */
@@ -1566,7 +1566,7 @@
rr_outputs[o] = crtc->outputs[o]->output.xid;
mode = crtc->mode_info->id;
if (verbose) {
- printf ("crtc %d: %12s %6.1f +%d+%d", crtc->crtc.index,
+ printf ("crtc %d: %12s %6.2f +%d+%d", crtc->crtc.index,
crtc->mode_info->name, mode_refresh (crtc->mode_info),
crtc->x, crtc->y);
for (o = 0; o < crtc->noutput; o++)
@@ -2342,19 +2342,10 @@
static void
-print_output_property_value(Bool is_edid,
- int value_format, /* 8, 16, 32 */
+print_output_property_value(int value_format, /* 8, 16, 32 */
Atom value_type, /* XA_{ATOM,INTEGER,CARDINAL} */
const void *value_bytes)
{
- /* special-case the EDID */
- if (is_edid && value_format == 8)
- {
- const uint8_t *val = value_bytes;
- printf ("%02" PRIx8, *val);
- return;
- }
-
if (value_type == XA_ATOM && value_format == 32)
{
const Atom *val = value_bytes;
@@ -2415,6 +2406,88 @@
}
static void
+print_edid(int nitems, const unsigned char *prop)
+{
+ int k;
+
+ printf ("\n\t\t");
+
+ for (k = 0; k < nitems; k++)
+ {
+ if (k != 0 && (k % 16) == 0)
+ {
+ printf ("\n\t\t");
+ }
+
+ printf("%02" PRIx8, prop[k]);
+ }
+
+ printf("\n");
+}
+
+static void
+print_guid(const unsigned char *prop)
+{
+ int k;
+
+ printf("{");
+
+ for (k = 0; k < 16; k++)
+ {
+ printf("%02" PRIX8, prop[k]);
+ if (k == 3 || k == 5 || k == 7 || k == 9)
+ {
+ printf("-");
+ }
+ }
+
+ printf("}\n");
+}
+
+static void
+print_output_property(const char *atom_name,
+ int value_format,
+ Atom value_type,
+ int nitems,
+ const unsigned char *prop)
+{
+ int bytes_per_item = value_format / 8;
+ int k;
+
+ /*
+ * Check for properties that need special formatting.
+ */
+ if (strcmp (atom_name, "EDID") == 0 && value_format == 8 &&
+ value_type == XA_INTEGER)
+ {
+ print_edid (nitems, prop);
+ return;
+ }
+ else if (strcmp (atom_name, "GUID") == 0 && value_format == 8 &&
+ value_type == XA_INTEGER && nitems == 16)
+ {
+ print_guid (prop);
+ return;
+ }
+
+ for (k = 0; k < nitems; k++)
+ {
+ if (k != 0)
+ {
+ if ((k % 16) == 0)
+ {
+ printf ("\n\t\t");
+ }
+ }
+ print_output_property_value (value_format, value_type,
+ prop + (k * bytes_per_item));
+ printf (" ");
+ }
+
+ printf ("\n");
+}
+
+static void
get_providers (void)
{
XRRProviderResources *pr;
@@ -2448,6 +2521,8 @@
{
int i;
+ if ((name->kind & name_xid) && name->xid == 0)
+ return NULL;
for (i = 0; i < num_providers; i++) {
provider_t *p = &providers[i];
name_kind_t common = name->kind & p->provider.kind;
@@ -3231,7 +3306,7 @@
provider = find_provider (&provider_name);
source = find_provider(&output_source_provider_name);
- XRRSetProviderOutputSource(dpy, provider->provider.xid, source->provider.xid);
+ XRRSetProviderOutputSource(dpy, provider->provider.xid, source ? source->provider.xid : 0);
}
if (provsetoffsink)
{
@@ -3246,7 +3321,7 @@
provider = find_provider (&provider_name);
sink = find_provider(&offload_sink_provider_name);
- XRRSetProviderOffloadSink(dpy, provider->provider.xid, sink->provider.xid);
+ XRRSetProviderOffloadSink(dpy, provider->provider.xid, sink ? sink->provider.xid : 0);
}
if (setit_1_2)
{
@@ -3510,8 +3585,7 @@
Atom actual_type;
XRRPropertyInfo *propinfo;
char *atom_name = XGetAtomName (dpy, props[j]);
- Bool is_edid = strcmp (atom_name, "EDID") == 0;
- int bytes_per_item, k;
+ int k;
XRRGetOutputProperty (dpy, output->output.xid, props[j],
0, 100, False, False,
@@ -3522,33 +3596,10 @@
propinfo = XRRQueryOutputProperty(dpy, output->output.xid,
props[j]);
- bytes_per_item = actual_format / 8;
-
printf ("\t%s: ", atom_name);
- if (is_edid)
- {
- printf ("\n\t\t");
- }
-
- for (k = 0; k < nitems; k++)
- {
- if (k != 0)
- {
- if ((k % 16) == 0)
- {
- printf ("\n\t\t");
- }
- }
- print_output_property_value (is_edid, actual_format,
- actual_type,
- prop + (k * bytes_per_item));
- if (!is_edid)
- {
- printf (" ");
- }
- }
- printf ("\n");
+ print_output_property(atom_name, actual_format,
+ actual_type, nitems, prop);
if (propinfo->range && propinfo->num_values > 0)
{
@@ -3557,10 +3608,10 @@
for (k = 0; k < propinfo->num_values / 2; k++)
{
printf ("(");
- print_output_property_value (False, 32, actual_type,
+ print_output_property_value (32, actual_type,
(unsigned char *) &(propinfo->values[k * 2]));
printf (", ");
- print_output_property_value (False, 32, actual_type,
+ print_output_property_value (32, actual_type,
(unsigned char *) &(propinfo->values[k * 2 + 1]));
printf (")");
if (k < propinfo->num_values / 2 - 1)
@@ -3573,7 +3624,7 @@
printf ("\t\tsupported: ");
for (k = 0; k < propinfo->num_values; k++)
{
- print_output_property_value (False, 32, actual_type,
+ print_output_property_value (32, actual_type,
(unsigned char *) &(propinfo->values[k]));
if (k < propinfo->num_values - 1)
printf (", ");
@@ -3592,7 +3643,7 @@
XRRModeInfo *mode = find_mode_by_xid (output_info->modes[j]);
int f;
- printf (" %s (0x%x) %6.1fMHz",
+ printf (" %s (0x%x) %6.3fMHz",
mode->name, (int)mode->id,
(double)mode->dotClock / 1000000.0);
for (f = 0; mode_flags[f].flag; f++)
@@ -3603,10 +3654,10 @@
if (j < output_info->npreferred)
printf (" +preferred");
printf ("\n");
- printf (" h: width %4d start %4d end %4d total %4d skew %4d clock %6.1fKHz\n",
+ printf (" h: width %4d start %4d end %4d total %4d skew %4d clock %6.2fKHz\n",
mode->width, mode->hSyncStart, mode->hSyncEnd,
mode->hTotal, mode->hSkew, mode_hsync (mode) / 1000);
- printf (" v: height %4d start %4d end %4d total %4d clock %6.1fHz\n",
+ printf (" v: height %4d start %4d end %4d total %4d clock %6.2fHz\n",
mode->height, mode->vSyncStart, mode->vSyncEnd, mode->vTotal,
mode_refresh (mode));
mode->modeFlags |= ModeShown;
@@ -3633,7 +3684,7 @@
if (strcmp (jmode->name, kmode->name) != 0) continue;
mode_shown[k] = True;
kmode->modeFlags |= ModeShown;
- printf (" %6.1f", mode_refresh (kmode));
+ printf (" %6.2f", mode_refresh (kmode));
if (kmode == output->mode_info)
printf ("*");
else
@@ -3654,13 +3705,13 @@
if (!(mode->modeFlags & ModeShown))
{
- printf (" %s (0x%x) %6.1fMHz\n",
+ printf (" %s (0x%x) %6.3fMHz\n",
mode->name, (int)mode->id,
(double)mode->dotClock / 1000000.0);
- printf (" h: width %4d start %4d end %4d total %4d skew %4d clock %6.1fKHz\n",
+ printf (" h: width %4d start %4d end %4d total %4d skew %4d clock %6.2fKHz\n",
mode->width, mode->hSyncStart, mode->hSyncEnd,
mode->hTotal, mode->hSkew, mode_hsync (mode) / 1000);
- printf (" v: height %4d start %4d end %4d total %4d clock %6.1fHz\n",
+ printf (" v: height %4d start %4d end %4d total %4d clock %6.2fHz\n",
mode->height, mode->vSyncStart, mode->vSyncEnd, mode->vTotal,
mode_refresh (mode));
}
@@ -3750,7 +3801,7 @@
if (rate == rates[i])
break;
if (i == nrate) {
- fprintf (stderr, "Rate %.1f Hz not available for this size\n", rate);
+ fprintf (stderr, "Rate %.2f Hz not available for this size\n", rate);
exit (1);
}
}
--
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 dracut for openSUSE:Factory checked in at 2014-04-01 06:46:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dracut (Old)
and /work/SRC/openSUSE:Factory/.dracut.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dracut"
Changes:
--------
--- /work/SRC/openSUSE:Factory/dracut/dracut.changes 2014-03-27 06:12:39.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.dracut.new/dracut.changes 2014-04-01 06:46:28.000000000 +0200
@@ -1,0 +2,8 @@
+Fri Mar 28 17:39:08 UTC 2014 - trenn(a)suse.de
+
+- systemd always tries to load autofs4 otherwise it reports:
+ Failed to insert module 'autofs4'
+ dracut already adds it, but only if loaded already.
+ Always load autofs4 even if not already loaded (bnc#869411)
+ Add: dracut-really-always-add-autofs4.patch
+-------------------------------------------------------------------
New:
----
dracut-really-always-add-autofs4.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dracut.spec ++++++
--- /var/tmp/diff_new_pack.BXR5yj/_old 2014-04-01 06:46:30.000000000 +0200
+++ /var/tmp/diff_new_pack.BXR5yj/_new 2014-04-01 06:46:30.000000000 +0200
@@ -49,6 +49,7 @@
Patch22: dracut-warpclock_module.patch
Patch23: s390-dcssblk.patch
Patch24: dracut-install-persistent-rule.patch
+Patch25: dracut-really-always-add-autofs4.patch
BuildRequires: asciidoc
BuildRequires: bash
BuildRequires: docbook-xsl-stylesheets
@@ -102,6 +103,7 @@
%patch22 -p1
%patch23 -p1
%patch24 -p1
+%patch25 -p1
%build
%configure\
++++++ dracut-really-always-add-autofs4.patch ++++++
Index: dracut-036/modules.d/98systemd/module-setup.sh
===================================================================
--- dracut-036.orig/modules.d/98systemd/module-setup.sh
+++ dracut-036/modules.d/98systemd/module-setup.sh
@@ -20,7 +20,7 @@ depends() {
}
installkernel() {
- instmods autofs4 ipv6
+ hostonly='' instmods autofs4 ipv6
}
# called by dracut
--
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 sqlite3 for openSUSE:Factory checked in at 2014-04-01 06:46:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sqlite3 (Old)
and /work/SRC/openSUSE:Factory/.sqlite3.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sqlite3"
Changes:
--------
--- /work/SRC/openSUSE:Factory/sqlite3/sqlite3.changes 2014-03-21 15:47:49.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.sqlite3.new/sqlite3.changes 2014-04-01 06:46:26.000000000 +0200
@@ -1,0 +2,8 @@
+Sat Mar 29 14:32:55 UTC 2014 - andreas.stieger(a)gmx.de
+
+- SQLite 3.8.4.2:
+ * Fix a potential buffer overread that could result when trying
+ to search a corrupt database file.
+- fix duplicate file warning on current.html on -doc package
+
+-------------------------------------------------------------------
Old:
----
sqlite-autoconf-3080401.tar.gz
sqlite-doc-3080401.zip
New:
----
sqlite-autoconf-3080402.tar.gz
sqlite-doc-3080402.zip
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sqlite3.spec ++++++
--- /var/tmp/diff_new_pack.jRHsDG/_old 2014-04-01 06:46:28.000000000 +0200
+++ /var/tmp/diff_new_pack.jRHsDG/_new 2014-04-01 06:46:28.000000000 +0200
@@ -21,9 +21,9 @@
%define oname sqlite
Name: %pname
-Version: 3.8.4.1
+Version: 3.8.4.2
Release: 0
-%define tarversion 3080401
+%define tarversion 3080402
Summary: Embeddable SQL Database Engine
License: SUSE-Public-Domain
Group: Productivity/Databases/Servers
@@ -119,6 +119,8 @@
%prep
%setup -q -n sqlite-autoconf-%tarversion -a2
+rm -v sqlite-doc-%{tarversion}/releaselog/current.html
+ln -sv `echo %{version} | sed "s/\./_/g"`.html sqlite-doc-%{tarversion}/releaselog/current.html
%build
export CFLAGS="%optflags -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS4"
++++++ sqlite-autoconf-3080401.tar.gz -> sqlite-autoconf-3080402.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqlite-autoconf-3080401/configure new/sqlite-autoconf-3080402/configure
--- old/sqlite-autoconf-3080401/configure 2014-03-11 16:33:18.000000000 +0100
+++ new/sqlite-autoconf-3080402/configure 2014-03-26 20:13:02.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for sqlite 3.8.4.1.
+# Generated by GNU Autoconf 2.69 for sqlite 3.8.4.2.
#
# Report bugs to <http://www.sqlite.org>.
#
@@ -590,8 +590,8 @@
# Identity of this package.
PACKAGE_NAME='sqlite'
PACKAGE_TARNAME='sqlite'
-PACKAGE_VERSION='3.8.4.1'
-PACKAGE_STRING='sqlite 3.8.4.1'
+PACKAGE_VERSION='3.8.4.2'
+PACKAGE_STRING='sqlite 3.8.4.2'
PACKAGE_BUGREPORT='http://www.sqlite.org'
PACKAGE_URL=''
@@ -1313,7 +1313,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures sqlite 3.8.4.1 to adapt to many kinds of systems.
+\`configure' configures sqlite 3.8.4.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1383,7 +1383,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of sqlite 3.8.4.1:";;
+ short | recursive ) echo "Configuration of sqlite 3.8.4.2:";;
esac
cat <<\_ACEOF
@@ -1489,7 +1489,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-sqlite configure 3.8.4.1
+sqlite configure 3.8.4.2
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1813,7 +1813,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by sqlite $as_me 3.8.4.1, which was
+It was created by sqlite $as_me 3.8.4.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2631,7 +2631,7 @@
# Define the identity of the package.
PACKAGE='sqlite'
- VERSION='3.8.4.1'
+ VERSION='3.8.4.2'
cat >>confdefs.h <<_ACEOF
@@ -13196,7 +13196,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by sqlite $as_me 3.8.4.1, which was
+This file was extended by sqlite $as_me 3.8.4.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -13253,7 +13253,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-sqlite config.status 3.8.4.1
+sqlite config.status 3.8.4.2
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqlite-autoconf-3080401/configure.ac new/sqlite-autoconf-3080402/configure.ac
--- old/sqlite-autoconf-3080401/configure.ac 2014-03-11 16:33:16.000000000 +0100
+++ new/sqlite-autoconf-3080402/configure.ac 2014-03-26 20:13:01.000000000 +0100
@@ -8,7 +8,7 @@
#
AC_PREREQ(2.61)
-AC_INIT(sqlite, 3.8.4.1, http://www.sqlite.org)
+AC_INIT(sqlite, 3.8.4.2, http://www.sqlite.org)
AC_CONFIG_SRCDIR([sqlite3.c])
# Use automake.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqlite-autoconf-3080401/sqlite3.c new/sqlite-autoconf-3080402/sqlite3.c
--- old/sqlite-autoconf-3080401/sqlite3.c 2014-03-11 16:33:16.000000000 +0100
+++ new/sqlite-autoconf-3080402/sqlite3.c 2014-03-26 20:13:00.000000000 +0100
@@ -1,6 +1,6 @@
/******************************************************************************
** This file is an amalgamation of many separate C source files from SQLite
-** version 3.8.4.1. By combining all the individual C code files into this
+** version 3.8.4.2. By combining all the individual C code files into this
** single large file, the entire code can be compiled as a single translation
** unit. This allows many compilers to do optimizations that would not be
** possible if the files were compiled separately. Performance improvements
@@ -222,9 +222,9 @@
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
** [sqlite_version()] and [sqlite_source_id()].
*/
-#define SQLITE_VERSION "3.8.4.1"
+#define SQLITE_VERSION "3.8.4.2"
#define SQLITE_VERSION_NUMBER 3008004
-#define SQLITE_SOURCE_ID "2014-03-11 15:27:36 018d317b1257ce68a92908b05c9c7cf1494050d0"
+#define SQLITE_SOURCE_ID "2014-03-26 18:51:19 02ea166372bdb2ef9d8dfbb05e78a97609673a8e"
/*
** CAPI3REF: Run-Time Library Version Numbers
@@ -64782,6 +64782,7 @@
}else{
idx1 = getVarint32(aKey1, szHdr1);
d1 = szHdr1;
+ if( d1>(unsigned)nKey1 ) return 1; /* Corruption */
i = 0;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqlite-autoconf-3080401/sqlite3.h new/sqlite-autoconf-3080402/sqlite3.h
--- old/sqlite-autoconf-3080401/sqlite3.h 2014-03-11 16:33:16.000000000 +0100
+++ new/sqlite-autoconf-3080402/sqlite3.h 2014-03-26 20:13:00.000000000 +0100
@@ -107,9 +107,9 @@
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
** [sqlite_version()] and [sqlite_source_id()].
*/
-#define SQLITE_VERSION "3.8.4.1"
+#define SQLITE_VERSION "3.8.4.2"
#define SQLITE_VERSION_NUMBER 3008004
-#define SQLITE_SOURCE_ID "2014-03-11 15:27:36 018d317b1257ce68a92908b05c9c7cf1494050d0"
+#define SQLITE_SOURCE_ID "2014-03-26 18:51:19 02ea166372bdb2ef9d8dfbb05e78a97609673a8e"
/*
** CAPI3REF: Run-Time Library Version Numbers
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqlite-autoconf-3080401/tea/configure new/sqlite-autoconf-3080402/tea/configure
--- old/sqlite-autoconf-3080401/tea/configure 2014-03-11 16:33:18.000000000 +0100
+++ new/sqlite-autoconf-3080402/tea/configure 2014-03-26 20:13:03.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for sqlite 3.8.4.1.
+# Generated by GNU Autoconf 2.69 for sqlite 3.8.4.2.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -577,8 +577,8 @@
# Identity of this package.
PACKAGE_NAME='sqlite'
PACKAGE_TARNAME='sqlite'
-PACKAGE_VERSION='3.8.4.1'
-PACKAGE_STRING='sqlite 3.8.4.1'
+PACKAGE_VERSION='3.8.4.2'
+PACKAGE_STRING='sqlite 3.8.4.2'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1292,7 +1292,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures sqlite 3.8.4.1 to adapt to many kinds of systems.
+\`configure' configures sqlite 3.8.4.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1353,7 +1353,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of sqlite 3.8.4.1:";;
+ short | recursive ) echo "Configuration of sqlite 3.8.4.2:";;
esac
cat <<\_ACEOF
@@ -1455,7 +1455,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-sqlite configure 3.8.4.1
+sqlite configure 3.8.4.2
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1866,7 +1866,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by sqlite $as_me 3.8.4.1, which was
+It was created by sqlite $as_me 3.8.4.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -9354,7 +9354,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by sqlite $as_me 3.8.4.1, which was
+This file was extended by sqlite $as_me 3.8.4.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -9407,7 +9407,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-sqlite config.status 3.8.4.1
+sqlite config.status 3.8.4.2
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqlite-autoconf-3080401/tea/configure.in new/sqlite-autoconf-3080402/tea/configure.in
--- old/sqlite-autoconf-3080401/tea/configure.in 2014-03-11 16:33:18.000000000 +0100
+++ new/sqlite-autoconf-3080402/tea/configure.in 2014-03-26 20:13:03.000000000 +0100
@@ -19,7 +19,7 @@
# so you can encode the package version directly into the source files.
#-----------------------------------------------------------------------
-AC_INIT([sqlite], [3.8.4.1])
+AC_INIT([sqlite], [3.8.4.2])
#--------------------------------------------------------------------
# Call TEA_INIT as the first TEA_ macro to set up initial vars.
--
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 mozilla-nss for openSUSE:Factory checked in at 2014-04-01 06:46:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mozilla-nss (Old)
and /work/SRC/openSUSE:Factory/.mozilla-nss.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mozilla-nss"
Changes:
--------
--- /work/SRC/openSUSE:Factory/mozilla-nss/mozilla-nss.changes 2014-02-26 23:20:37.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.mozilla-nss.new/mozilla-nss.changes 2014-04-01 06:46:24.000000000 +0200
@@ -1,0 +2,37 @@
+Fri Mar 21 21:16:31 UTC 2014 - wr(a)rosenauer.org
+
+- update to 3.16
+ * required for Firefox 29
+ * bmo#903885 - (CVE-2014-1492) In a wildcard certificate, the wildcard
+ character should not be embedded within the U-label of an
+ internationalized domain name. See the last bullet point in RFC 6125,
+ Section 7.2.
+ * Supports the Linux x32 ABI. To build for the Linux x32 target, set
+ the environment variable USE_X32=1 when building NSS.
+ New Functions:
+ * NSS_CMSSignerInfo_Verify
+ New Macros
+ * TLS_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_3DES_EDE_CBC_SHA, etc.,
+ cipher suites that were first defined in SSL 3.0 can now be referred
+ to with their official IANA names in TLS, with the TLS_ prefix.
+ Previously, they had to be referred to with their names in SSL 3.0,
+ with the SSL_ prefix.
+ Notable Changes:
+ * ECC is enabled by default. It is no longer necessary to set the
+ environment variable NSS_ENABLE_ECC=1 when building NSS. To disable
+ ECC, set the environment variable NSS_DISABLE_ECC=1 when building NSS.
+ * libpkix should not include the common name of CA as DNS names when
+ evaluating name constraints.
+ * AESKeyWrap_Decrypt should not return SECSuccess for invalid keys.
+ * Fix a memory corruption in sec_pkcs12_new_asafe.
+ * If the NSS_SDB_USE_CACHE environment variable is set, skip the runtime
+ test sdb_measureAccess.
+ * The built-in roots module has been updated to version 1.97, which
+ adds, removes, and distrusts several certificates.
+ * The atob utility has been improved to automatically ignore lines of
+ text that aren't in base64 format.
+ * The certutil utility has been improved to support creation of
+ version 1 and version 2 certificates, in addition to the existing
+ version 3 support.
+
+-------------------------------------------------------------------
Old:
----
nss-3.15.5.tar.gz
New:
----
nss-3.16.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mozilla-nss.spec ++++++
--- /var/tmp/diff_new_pack.r2QsSh/_old 2014-04-01 06:46:25.000000000 +0200
+++ /var/tmp/diff_new_pack.r2QsSh/_new 2014-04-01 06:46:25.000000000 +0200
@@ -25,7 +25,7 @@
BuildRequires: pkg-config
BuildRequires: sqlite-devel
BuildRequires: zlib-devel
-Version: 3.15.5
+Version: 3.16
Release: 0
# bug437293
%ifarch ppc64
@@ -36,8 +36,8 @@
License: MPL-2.0
Group: System/Libraries
Url: http://www.mozilla.org/projects/security/pki/nss/
-Source: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_15_5_RT…
-# hg clone https://hg.mozilla.org/projects/nss nss-3.15.5/nss ; cd nss-3.15.5/nss ; hg up NSS_3_15_5_RTM
+Source: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_16_RTM/…
+# hg clone https://hg.mozilla.org/projects/nss nss-3.16/nss ; cd nss-3.16/nss ; hg up NSS_3_16_RTM
#Source: nss-%{version}.tar.gz
Source1: nss.pc.in
Source3: nss-config.in
@@ -195,7 +195,7 @@
%endif
export NSS_USE_SYSTEM_SQLITE=1
#export SQLITE_LIB_NAME=nsssqlite3
-MAKE_FLAGS="BUILD_OPT=1 NSS_ENABLE_ECC=1"
+MAKE_FLAGS="BUILD_OPT=1"
make nss_build_all $MAKE_FLAGS
# run testsuite
%if 0%{?run_testsuite}
++++++ nss-3.15.5.tar.gz -> nss-3.16.tar.gz ++++++
/work/SRC/openSUSE:Factory/mozilla-nss/nss-3.15.5.tar.gz /work/SRC/openSUSE:Factory/.mozilla-nss.new/nss-3.16.tar.gz differ: char 5, line 1
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0