diff options
17 files changed, 767 insertions, 69 deletions
diff --git a/redhat/applications/kaffeine-mozilla/kaffeine-mozilla-3.5.13-fix_nspr_include.patch b/redhat/applications/kaffeine-mozilla/kaffeine-mozilla-3.5.13-fix_nspr_include.patch new file mode 100644 index 000000000..210fff5f1 --- /dev/null +++ b/redhat/applications/kaffeine-mozilla/kaffeine-mozilla-3.5.13-fix_nspr_include.patch @@ -0,0 +1,22 @@ +--- kaffeine-mozilla/src/jni_md.h.ORI 2012-04-26 20:44:15.080210122 +0200 ++++ kaffeine-mozilla/src/jni_md.h 2012-04-26 20:44:28.006895031 +0200 +@@ -40,7 +40,7 @@ + #ifndef JNI_MD_H + #define JNI_MD_H + +-#include <nspr/prtypes.h> /* needed for _declspec */ ++#include <nspr4/prtypes.h> /* needed for _declspec */ + + /******************************************************************************* + * WHAT'S UP WITH THIS FILE? +--- kaffeine-mozilla/src/jri_md.h.ORI 2012-04-26 20:44:20.528077329 +0200 ++++ kaffeine-mozilla/src/jri_md.h 2012-04-26 20:44:36.239694357 +0200 +@@ -43,7 +43,7 @@ + #define JRI_MD_H + + #include <assert.h> +-#include <nspr/prtypes.h> /* Needed for HAS_LONG_LONG ifdefs */ ++#include <nspr4/prtypes.h> /* Needed for HAS_LONG_LONG ifdefs */ + + #ifdef __cplusplus + extern "C" { diff --git a/redhat/applications/kaffeine-mozilla/trinity-kaffeine-mozilla.spec b/redhat/applications/kaffeine-mozilla/trinity-kaffeine-mozilla.spec index e693dadb9..8a037a459 100644 --- a/redhat/applications/kaffeine-mozilla/trinity-kaffeine-mozilla.spec +++ b/redhat/applications/kaffeine-mozilla/trinity-kaffeine-mozilla.spec @@ -1,7 +1,7 @@ # Default version for this component %define kdecomp kaffeine-mozilla -%define version 0.4.3.1.dfsg -%define release 1 +%define version 0.4.3.1 +%define release 2 %define _prefix /usr @@ -35,6 +35,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Source0: %{kdecomp}-3.5.13.tar.gz +# Fix 'nspr' includes location +Patch1: kaffeine-mozilla-3.5.13-fix_nspr_include.patch BuildRequires: tqtinterface-devel BuildRequires: trinity-kdelibs-devel @@ -53,15 +55,12 @@ when a page containing a supported media format is loaded. %prep unset QTDIR; . /etc/profile.d/qt.sh %setup -q -n applications/%{kdecomp} +%patch1 -p1 %__cp -f "/usr/share/aclocal/libtool.m4" . %__cp -f "/usr/share/libtool/config/ltmain.sh" . -autoreconf +autoreconf -fiv -for i in src/jri_md.h src/jni_md.h; do - %__sed -i "${i}" \ - -e "s|nspr/prtypes.h|nspr4/prtypes.h|g" -done %build export PATH="%{_bindir}:${PATH}" @@ -105,6 +104,9 @@ gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : %Changelog +* Thu Apr 26 2012 Francois Andriot <francois.andriot@free.fr> - 0.4.3.1-2 +- Rebuild with nicer patch. + * Sat Dec 03 2011 Francois Andriot <francois.andriot@free.fr> - 0.4.3.1.dfsg-1 - Initial build for RHEL 5, RHEL 6, Fedora 15, Fedora 16 diff --git a/redhat/applications/koffice/koffice-3.5.13-fix_gcc47_compilation.patch b/redhat/applications/koffice/koffice-3.5.13-fix_gcc47_compilation.patch new file mode 100644 index 000000000..d632a9d79 --- /dev/null +++ b/redhat/applications/koffice/koffice-3.5.13-fix_gcc47_compilation.patch @@ -0,0 +1,56 @@ +--- koffice/chalk/plugins/viewplugins/scripting/chalkcore/krs_iterator.h.ORI 2012-04-26 20:22:29.322777779 +0200 ++++ koffice/chalk/plugins/viewplugins/scripting/chalkcore/krs_iterator.h 2012-04-26 20:23:21.216311169 +0200 +@@ -137,12 +137,12 @@ + } + initiales = initiales.upper(); + // set/get general +- addFunction("set" + initiales, &Iterator::setPixel); +- addFunction("get" + initiales, &Iterator::getPixel); ++ this->addFunction("set" + initiales, &Iterator::setPixel); ++ this->addFunction("get" + initiales, &Iterator::getPixel); + kdDebug(41011) << ( "get" + initiales ) << endl; + // Various colorSpace +- addFunction("invertColor", &Iterator::invertColor); +- addFunction("darken", &Iterator::darken); ++ this->addFunction("invertColor", &Iterator::invertColor); ++ this->addFunction("darken", &Iterator::darken); + } + + ~Iterator() +--- koffice/filters/chalk/png/kis_png_converter.cc.gcc47 2012-04-26 16:38:35.805156927 -0400 ++++ koffice/filters/chalk/png/kis_png_converter.cc 2012-04-26 16:49:27.179323394 -0400 +@@ -43,6 +43,8 @@ + #include <kis_paint_layer.h> + #include <kis_group_layer.h> + ++#include <zlib.h> ++ + namespace { + + const TQ_UINT8 PIXEL_BLUE = 0; +@@ -222,6 +224,7 @@ + + // Read image profile + png_charp profile_name, profile_data; ++ unsigned char* uprofile_data = reinterpret_cast<unsigned char*>(profile_data); + int compression_type; + png_uint_32 proflen; + int number_of_passes = 1; +@@ -230,7 +233,7 @@ + number_of_passes = png_set_interlace_handling(png_ptr); + + KisProfile* profile = 0; +- if(png_get_iCCP(png_ptr, info_ptr, &profile_name, &compression_type, &profile_data, &proflen)) ++ if(png_get_iCCP(png_ptr, info_ptr, &profile_name, &compression_type, &uprofile_data, &proflen)) + { + TQByteArray profile_rawdata; + // XXX: Hardcoded for icc type -- is that correct for us? +@@ -627,7 +630,7 @@ + } else { // Profile + char* name = new char[(*it)->type().length()+1]; + strcpy(name, (*it)->type().ascii()); +- png_set_iCCP(png_ptr, info_ptr, name, PNG_COMPRESSION_TYPE_BASE, (char*)(*it)->annotation().data(), (*it) -> annotation() . size()); ++ png_set_iCCP(png_ptr, info_ptr, name, PNG_COMPRESSION_TYPE_BASE, (unsigned char*)(*it)->annotation().data(), (*it) -> annotation() . size()); + } + ++it; + } diff --git a/redhat/applications/koffice/koffice-3.5.13-fix_libpng.patch b/redhat/applications/koffice/koffice-3.5.13-fix_libpng.patch new file mode 100644 index 000000000..cba4b2584 --- /dev/null +++ b/redhat/applications/koffice/koffice-3.5.13-fix_libpng.patch @@ -0,0 +1,11 @@ +--- /dev/shm/applications/koffice/filters/chalk/png/kis_png_converter.cc 2011-06-27 13:54:18.000000000 -0500 ++++ /dev/shm/applications/koffice/filters/chalk/png/kis_png_converter.cc.new 2011-11-07 15:38:47.918508855 -0600 +@@ -785,7 +785,7 @@ + + void KisPNGConverter::progress(png_structp png_ptr, png_uint_32 row_number, int pass) + { +- if(png_ptr == NULL || row_number > PNG_MAX_UINT || pass > 7) return; ++ if(png_ptr == NULL || row_number > PNG_UINT_31_MAX || pass > 7) return; + // setProgress(row_number); + } + diff --git a/redhat/applications/koffice/koffice-3.5.13-fix_ruby_1.9.patch b/redhat/applications/koffice/koffice-3.5.13-fix_ruby_1.9.patch new file mode 100644 index 000000000..9802009fa --- /dev/null +++ b/redhat/applications/koffice/koffice-3.5.13-fix_ruby_1.9.patch @@ -0,0 +1,118 @@ +diff -urN koffice/configure.in koffice.new/configure.in +--- koffice/configure.in 2011-08-21 18:30:53.000000000 -0500 ++++ koffice.new/configure.in 2011-12-08 17:56:31.000000000 -0600 +@@ -1539,14 +1539,22 @@ + # Check for Ruby + + if test "x$compile_kross" = "xyes" ; then +- AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18], ruby) ++ AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18 ruby1.9 ruby19], ruby) + + if test -n "$RUBY"; then + AC_MSG_CHECKING(for Ruby dirs) + RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'` + RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'` + RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'` +- RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyincludedir"@:>@)'` ++ if test -n "$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyhdrdir"@:>@)'"; then ++ # Ruby 1.9 ++ RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyhdrdir"@:>@)'` ++ RUBY_VERSION_H=ruby/version.h ++ else ++ # not Ruby 1.9 ++ RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyincludedir"@:>@)'` ++ RUBY_VERSION_H=version.h ++ fi + RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'` + RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` + RUBY_ENABLESHARED=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"ENABLE_SHARED"@:>@)'` +@@ -1599,7 +1607,7 @@ + [ + AC_TRY_COMPILE([ + #include <ruby.h> +- #include <version.h> ++ #include <$RUBY_VERSION_H> + ],[ + + #if(RUBY_VERSION_MAJOR==1 && RUBY_VERSION_MINOR == 8 && RUBY_VERSION_TEENY <= 1) +diff -urN koffice/lib/kross/configure.in.in koffice.new/lib/kross/configure.in.in +--- koffice/lib/kross/configure.in.in 2010-08-11 22:16:27.000000000 -0500 ++++ koffice.new/lib/kross/configure.in.in 2011-12-08 17:56:28.000000000 -0600 +@@ -21,14 +21,22 @@ + # Check for Ruby + + if test "x$compile_kross" = "xyes" ; then +- AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18], ruby) ++ AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18 ruby1.9 ruby19], ruby) + + if test -n "$RUBY"; then + AC_MSG_CHECKING(for Ruby dirs) + RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'` + RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'` + RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'` +- RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyincludedir"@:>@)'` ++ if test -n "$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyhdrdir"@:>@)'"; then ++ # Ruby 1.9 ++ RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyhdrdir"@:>@)'` ++ RUBY_VERSION_H=ruby/version.h ++ else ++ # not Ruby 1.9 ++ RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyincludedir"@:>@)'` ++ RUBY_VERSION_H=version.h ++ fi + RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'` + RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` + RUBY_ENABLESHARED=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"ENABLE_SHARED"@:>@)'` +@@ -81,7 +89,7 @@ + [ + AC_TRY_COMPILE([ + #include <ruby.h> +- #include <version.h> ++ #include <$RUBY_VERSION_H> + ],[ + + #if(RUBY_VERSION_MAJOR==1 && RUBY_VERSION_MINOR == 8 && RUBY_VERSION_TEENY <= 1) +diff -urN koffice/lib/kross/ruby/rubyextension.cpp koffice.new/lib/kross/ruby/rubyextension.cpp +--- koffice/lib/kross/ruby/rubyextension.cpp 2011-08-17 20:25:04.000000000 -0500 ++++ koffice.new/lib/kross/ruby/rubyextension.cpp 2011-12-08 21:18:42.000000000 -0600 +@@ -18,7 +18,7 @@ + ***************************************************************************/ + #include "rubyextension.h" + +-#include <st.h> ++#include <ruby/st.h> + + #include <tqmap.h> + #include <tqstring.h> +@@ -211,7 +211,7 @@ + case T_ARRAY: + { + TQValueList<Kross::Api::Object::Ptr> l; +- for(int i = 0; i < RARRAY(value)->len; i++) ++ for(int i = 0; i < RARRAY_LEN(value); i++) + { + Kross::Api::Object::Ptr o = toObject( rb_ary_entry( value , i ) ); + if(o) l.append(o); +diff -urN koffice/lib/kross/ruby/rubyscript.cpp koffice.new/lib/kross/ruby/rubyscript.cpp +--- koffice/lib/kross/ruby/rubyscript.cpp 2011-06-25 13:42:29.000000000 -0500 ++++ koffice.new/lib/kross/ruby/rubyscript.cpp 2011-12-08 21:45:36.000000000 -0600 +@@ -21,8 +21,8 @@ + + #include <ruby.h> + #include <env.h> +-#include <rubysig.h> +-#include <node.h> ++#include <ruby/backward/rubysig.h> ++#include <ruby/node.h> + + #include <main/scriptcontainer.h> + +@@ -70,6 +70,8 @@ + krossdebug("RubyScript::compile()"); + #endif + int critical; ++ int ruby_nerrs; ++ int ruby_in_eval; + + ruby_nerrs = 0; + ruby_errinfo = Qnil; diff --git a/redhat/applications/koffice/trinity-koffice.spec b/redhat/applications/koffice/trinity-koffice.spec index 5e8a87d0c..9f487c4e6 100644 --- a/redhat/applications/koffice/trinity-koffice.spec +++ b/redhat/applications/koffice/trinity-koffice.spec @@ -1,12 +1,12 @@ # Default version for this component %define kdecomp koffice %define version 1.6.3 -%define release 3 +%define release 4 # If TDE is built in a specific prefix (e.g. /opt/trinity), the release will be suffixed with ".opt". %if "%{?_prefix}" != "/usr" %define _variant .opt -%define _docdir %{_prefix}/share/doc +%define _docdir %{_datadir}/doc %endif # TDE 3.5.13 specific building variables @@ -20,6 +20,16 @@ BuildRequires: autoconf automake libtool m4 %define with_kross 1 %endif +%if 0%{?fedora} >= 17 +%define with_ruby 0 +%else +%define with_ruby 1 +%endif + +# Ruby 1.9 includes are located in strance directories ... (taken from ruby 1.9 spec file) +%global _normalized_cpu %(echo %{_target_cpu} | sed 's/^ppc/powerpc/;s/i.86/i386/;s/sparcv./sparc/;s/armv.*/arm/') + + Name: trinity-%{kdecomp} Summary: An integrated office suite Version: %{?version} @@ -36,7 +46,6 @@ Prefix: %{_prefix} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Source0: %{kdecomp}-3.5.13.tar.gz -Source1: chalk.xpm Source100: koshell.png # [koffice] Disable GraphicksMagick version >= 1.2.0 [Bug #353] @@ -55,6 +64,12 @@ Patch8: kexi-mysql_migrate_long_text-1.1.3.patch Patch9: kexi-fix-support-for-boolean-types.patch Patch10: kexi-thoushand_objects_support-1.1.3-2.patch Patch11: kexi-fp_expressions-1.1.3.patch +# [koffice] Fix compilation with GCC 4.7 [Bug #958] +Patch12: koffice-3.5.13-fix_gcc47_compilation.patch +# [koffice] Fix compilation with Ruby 1.9 [Bug #735] +Patch13: koffice-3.5.13-fix_ruby_1.9.patch +# [koffice] Fix compilation with libpng [Bug #603] +Patch14: koffice-3.5.13-fix_libpng.patch # BuildRequires: world-devel ;) BuildRequires: trinity-kdelibs-devel @@ -77,8 +92,9 @@ BuildRequires: gettext-devel BuildRequires: mysql-devel BuildRequires: desktop-file-utils BuildRequires: perl -BuildRequires: wv2-devel >= 0.4.0 -BuildRequires: libpqxx2-devel +BuildRequires: trinity-wv2-devel >= 0.4.0 +#BuildRequires: trinity-libpqxx-devel >= 2.6.0 +BuildRequires: libpqxx-devel BuildRequires: doxygen BuildRequires: aspell-devel BuildRequires: libxslt-devel @@ -86,20 +102,15 @@ BuildRequires: OpenEXR-devel BuildRequires: libexif-devel BuildRequires: libGL-devel libGLU-devel BuildRequires: readline-devel +%if 0%{?with_ruby} BuildRequires: ruby ruby-devel >= 1.8.2 +%endif BuildRequires: libpaper-devel BuildRequires: libXi-devel BuildRequires: libutempter-devel BuildRequires: poppler-qt-devel >= 0.1.2 BuildRequires: GraphicsMagick-devel >= 1.1.0 - -# libwpd for FC15 and FC16 is too recent for Koffice ! (0.9.x) -# So we built an alternate 0.8.x package ! -%if 0%{?fedora} >= 15 -BuildRequires: libwpd08-devel -%else -BuildRequires: libwpd-devel -%endif +BuildRequires: trinity-libwpd-devel %description @@ -259,7 +270,7 @@ Requires: %{name}-core = %{version}-%{release} %{summary}. %package chalk -Summary: pixel-based image manipulation program for the KDE Office Suite [Trinity] +Summary: pixel-based image manipulation program for the TDE Office Suite [Trinity] Group: Applications/Productivity Requires: %{name}-core = %{version}-%{release} Requires: %{name}-chalk-data = %{version}-%{release} @@ -268,18 +279,18 @@ Requires: %{name}-filters Chalk is a painting and image editing application for KOffice. Chalk contains both ease-of-use and fun features like guided painting. -This package is part of the KDE Office Suite. +This package is part of the TDE Office Suite. %package chalk-data Summary: data files for Chalk painting program [Trinity] Group: Applications/Productivity %description chalk-data This package contains architecture-independent data files for Chalk, -the painting program shipped with the KDE Office Suite. +the painting program shipped with the TDE Office Suite. See the chalk package for further information. -This package is part of the KDE Office Suite. +This package is part of the TDE Office Suite. @@ -296,9 +307,12 @@ This package is part of the KDE Office Suite. %patch9 -p0 %patch10 -p0 %patch11 -p0 +%patch12 -p1 -b .gcc47 +%patch13 -p1 +%patch14 -p5 # use LGC variant instead -sed -i.dejavu-lgc \ +%__sed -i.dejavu-lgc \ -e 's|DejaVu Sans|DejaVu LGC Sans|' \ -e 's|dejavu sans|dejavu lgc sans|' \ lib/kformula/{contextstyle,fontstyle,symboltable}.cc @@ -306,8 +320,8 @@ sed -i.dejavu-lgc \ # Ugly hack to modify TQT include directory inside autoconf files. # If TQT detection fails, it fallbacks to TQT4 instead of TQT3 ! %__sed -i admin/acinclude.m4.in \ - -e "s,/usr/include/tqt,%{_includedir}/tqt,g" \ - -e "s,kde_htmldir='.*',kde_htmldir='%{tde_docdir}/HTML',g" + -e "s|/usr/include/tqt|%{_includedir}/tqt|g" \ + -e "s|kde_htmldir='.*'|kde_htmldir='%{tde_docdir}/HTML'|g" %__cp -f "/usr/share/aclocal/libtool.m4" "admin/libtool.m4.in" %__cp -f "/usr/share/libtool/config/ltmain.sh" "admin/ltmain.sh" @@ -390,12 +404,9 @@ rm -f %{buildroot}%{_libdir}/libkformdesigner.so rm -f %{buildroot}%{_libdir}/libkplato*.so rm -f %{buildroot}%{_libdir}/libkpresenter*.so rm -f %{buildroot}%{_libdir}/libkword*.so -#rm -f %{buildroot}%{_libdir}/libkrita*.so rm -f %{buildroot}%{_libdir}/libkross*.so rm -f %{buildroot}%{_libdir}/libkugar*.so -# Chalk icon -%__install -D -m 644 %{SOURCE1} %{buildroot}%{_datadir}/pixmaps/chalk.xpm %clean %__rm -rf %{buildroot} @@ -526,8 +537,10 @@ update-desktop-database -q &> /dev/null ||: %if 0%{?with_kross} > 0 %{_datadir}/apps/kross/ %{tde_libdir}/krosspython.* +%if 0%{?with_ruby} %{tde_libdir}/krossruby.* %endif +%endif %files libs %defattr(-,root,root,-) @@ -961,7 +974,6 @@ update-desktop-database -q &> /dev/null ||: %endif %files chalk-data -%{_datadir}/pixmaps/chalk.xpm %{_datadir}/applications/kde/chalk.desktop %{_datadir}/applnk/.hidden/chalk_*.desktop %{_datadir}/apps/konqueror/servicemenus/chalk_konqi.desktop @@ -971,10 +983,16 @@ update-desktop-database -q &> /dev/null ||: %{_datadir}/icons/hicolor/*/apps/chalk.png %{_datadir}/services/chalk*.desktop %{_datadir}/servicetypes/chalk*.desktop -#%{_datadir}/applnk/.hidden/chalk_pdf.desktop %changelog +* Thu Apr 26 2012 Francois Andriot <francois.andriot@free.fr> - 1.6.3-4 +- Updates BuildRequires +- Build for Fedora 17 +- Fix compilation with GCC 4.7 [Bug #958] +- Fix compilation with Ruby 1.9 [Bug #735] +- Fix compilation with libpng [Bug #603] + * Sat Jan 07 2012 Francois Andriot <francois.andriot@free.fr> - 1.6.3-3 - Fix GraphicksMagick 1.3 support [Bug #353] - Various patches for kexi [Bug #777] diff --git a/redhat/dependencies/qt3/qt3.spec b/redhat/dependencies/qt3/qt3.spec index f12c6b2c5..8bb96a5f9 100644 --- a/redhat/dependencies/qt3/qt3.spec +++ b/redhat/dependencies/qt3/qt3.spec @@ -19,16 +19,19 @@ # ...maybe others !!!! Name: qt3 +Epoch: 1 Version: %{?version} -Release: 6%{?dist} +Release: 7%{?dist} Summary: The shared library for the Qt 3 GUI toolkit License: QPL or GPLv2 or GPLv3 Group: System Environment/Libraries URL: http://www.trinitydesktop.org/ -Obsoletes: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} +%if 0%{?rhel} <= 5 +Obsoletes: qt < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt = %{?epoch:%{epoch}:}%{version}-%{release} +%endif BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -165,8 +168,10 @@ BuildRequires: make Summary: Graphical configuration tool for programs using Qt 3 Group: User Interface/Desktops Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Obsoletes: %{name}-config < %{version}-%{release} -Provides: %{name}-config = %{version}-%{release} +%if 0%{?rhel} <= 5 +Obsoletes: qt-config < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-config = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %package devel @@ -191,63 +196,65 @@ Requires: libjpeg-devel Requires: libmng-devel Requires: mesa-libGL-devel Requires: mesa-libGLU-devel - -Obsoletes: %{name}-devel < %{version}-%{release} -Provides: %{name}-devel = %{version}-%{release} - +%if 0%{?rhel} <= 5 +Obsoletes: qt-devel < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-devel = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %package devel-docs Summary: Documentation for the Qt 3 GUI toolkit Group: Development/Libraries Requires: %{name}-devel = %{?epoch:%{epoch}:}%{version}-%{release} - -Obsoletes: %{name}-devel-docs < %{version}-%{release} -Provides: %{name}-devel-docs = %{version}-%{release} - +%if 0%{?rhel} <= 5 +Obsoletes: qt-devel-docs < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-devel-docs = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %package ODBC Summary: ODBC drivers for Qt 3's SQL classes Group: System Environment/Libraries Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} - -Obsoletes: %{name}-ODBC < %{version}-%{release} -Provides: %{name}-ODBC = %{version}-%{release} - +%if 0%{?rhel} <= 5 +Obsoletes: qt-ODBC < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-ODBC = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %package MySQL Summary: MySQL drivers for Qt 3's SQL classes Group: System Environment/Libraries Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} - -Obsoletes: %{name}-MySQL < %{version}-%{release} -Provides: %{name}-MySQL = %{version}-%{release} - +%if 0%{?rhel} <= 5 +Obsoletes: qt-MySQL < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-MySQL = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %package PostgreSQL Summary: PostgreSQL drivers for Qt 3's SQL classes Group: System Environment/Libraries Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} - -Obsoletes: %{name}-PostgreSQL < %{version}-%{release} -Provides: %{name}-PostgreSQL = %{version}-%{release} - +%if 0%{?rhel} <= 5 +Obsoletes: qt-PostgreSQL < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-PostgreSQL = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %package sqlite Summary: sqlite drivers for Qt 3's SQL classes Group: System Environment/Libraries Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} - -Obsoletes: %{name}-sqlite < %{version}-%{release} -Provides: %{name}-sqlite = %{version}-%{release} +%if 0%{?rhel} <= 5 +Obsoletes: qt-sqlite < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-sqlite = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %package designer Summary: Interface designer (IDE) for the Qt 3 toolkit Group: Development/Tools Requires: %{name}-devel = %{?epoch:%{epoch}:}%{version}-%{release} - -Obsoletes: %{name}-designer < %{version}-%{release} -Provides: %{name}-designer = %{version}-%{release} +%if 0%{?rhel} <= 5 +Obsoletes: qt-designer < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: qt-designer = %{?epoch:%{epoch}:}%{version}-%{release} +%endif %description @@ -714,6 +721,9 @@ rm -rf %{buildroot} %changelog +* Sat Apr 28 2012 Francois Andriot <francois.andriot@free.fr> - 3.3.8.d-7 +- Fix Provides and Obsoletes. Now only for RHEL 5. + * Tue Apr 24 2012 Francois Andriot <francois.andriot@free.fr> - 3.3.8.d-6 - Fix Qt3 builds with libpng15. [Bug #683] diff --git a/redhat/kdebase/kdebase-3.5.13-engage_lock_in_near_real_time.patch b/redhat/kdebase/kdebase-3.5.13-engage_lock_in_near_real_time.patch new file mode 100644 index 000000000..54e35c45a --- /dev/null +++ b/redhat/kdebase/kdebase-3.5.13-engage_lock_in_near_real_time.patch @@ -0,0 +1,252 @@ +commit 8d521d0b6ba88c6e679e7453f02897c8db7bbdf5 +Author: Timothy Pearson <kb9vqf@pearsoncomputing.net> +Date: 1328671935 -0600 + + Update lock process to engage the lock in near real time + +diff --git a/kdesktop/lock/CMakeLists.txt b/kdesktop/lock/CMakeLists.txt +index 5530d4c..7a35121 100644 +--- a/kdesktop/lock/CMakeLists.txt ++++ b/kdesktop/lock/CMakeLists.txt +@@ -35,6 +35,6 @@ set( ${target}_SRCS + + tde_add_executable( ${target} AUTOMOC + SOURCES ${${target}_SRCS} +- LINK kdesktopsettings-static dmctl-static kio-shared Xext ${GL_LIBRARY} ++ LINK kdesktopsettings-static dmctl-static kio-shared Xext ${GL_LIBRARY} "-z\ now" + DESTINATION ${BIN_INSTALL_DIR} + ) +diff --git a/kdesktop/lock/main.cc b/kdesktop/lock/main.cc +index 0cbef60..132ff30 100644 +--- a/kdesktop/lock/main.cc ++++ b/kdesktop/lock/main.cc +@@ -1,6 +1,7 @@ + /* This file is part of the KDE project + Copyright (C) 1999 David Faure + Copyright (c) 2003 Oswald Buddenhagen <ossi@kde.org> ++ Copyright (c) 2010-2012 Timothy Pearson <kb9vqf@pearsoncomputing.net> + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public +@@ -43,6 +44,13 @@ bool trinity_desktop_lock_use_sak = FALSE; + + bool trinity_desktop_lock_forced = FALSE; + ++bool signalled_forcelock; ++bool signalled_dontlock; ++bool signalled_securedialog; ++bool signalled_blank; ++bool signalled_run; ++bool in_internal_mode = FALSE; ++ + bool MyApp::x11EventFilter( XEvent *ev ) + { + if (ev->type == XKeyPress || ev->type == ButtonPress) { +diff --git a/kdesktop/lockeng.cc b/kdesktop/lockeng.cc +index 5307c5c..79d27db 100644 +--- a/kdesktop/lockeng.cc ++++ b/kdesktop/lockeng.cc +@@ -1,8 +1,9 @@ + //=========================================================================== + // +-// This file is part of the KDE project ++// This file is part of the TDE project + // + // Copyright (c) 1999 Martin R. Jones <mjones@kde.org> ++// Copyright (c) 2012 Timothy Pearson <kb9vqf@pearsoncomputing.net> + // + + +@@ -29,6 +30,14 @@ extern xautolock_corner_t xautolock_corners[ 4 ]; + + bool trinity_lockeng_sak_available = TRUE; + ++SaverEngine* m_masterSaverEngine = NULL; ++static void sigusr1_handler(int) ++{ ++ if (m_masterSaverEngine) { ++ m_masterSaverEngine->lockProcessWaiting(); ++ } ++} ++ + //=========================================================================== + // + // Screen saver engine. Doesn't handle the actual screensaver window, +@@ -42,6 +51,16 @@ SaverEngine::SaverEngine() + mSAKProcess(NULL), + mTerminationRequested(false) + { ++ struct sigaction act; ++ ++ // handle SIGUSR1 ++ m_masterSaverEngine = this; ++ act.sa_handler= sigusr1_handler; ++ sigemptyset(&(act.sa_mask)); ++ sigaddset(&(act.sa_mask), SIGUSR1); ++ act.sa_flags = 0; ++ sigaction(SIGUSR1, &act, 0L); ++ + // Save X screensaver parameters + XGetScreenSaver(qt_xdisplay(), &mXTimeout, &mXInterval, + &mXBlanking, &mXExposures); +@@ -60,6 +79,19 @@ SaverEngine::SaverEngine() + TQTimer::singleShot( 0, this, TQT_SLOT(handleSecureDialog()) ); + + configure(); ++ ++ mLockProcess.clearArguments(); ++ TQString path = KStandardDirs::findExe( "kdesktop_lock" ); ++ if( path.isEmpty()) ++ { ++ kdDebug( 1204 ) << "Can't find kdesktop_lock!" << endl; ++ } ++ mLockProcess << path; ++ mLockProcess << TQString( "--internal" ) << TQString( "%1" ).arg(getpid()); ++ if (mLockProcess.start() == false ) ++ { ++ kdDebug( 1204 ) << "Failed to start kdesktop_lock!" << endl; ++ } + } + + //--------------------------------------------------------------------------- +@@ -68,6 +100,10 @@ SaverEngine::SaverEngine() + // + SaverEngine::~SaverEngine() + { ++ if (mState == Waiting) { ++ kill(mLockProcess.pid(), SIGKILL); ++ } ++ + mLockProcess.detach(); // don't kill it if we crash + delete mXAutoLock; + +@@ -86,9 +122,9 @@ void SaverEngine::lock() + { + mSAKProcess->kill(SIGTERM); + ok = startLockProcess( ForceLock ); +-// It takes a while for kdesktop_lock to start and lock the screen. +-// Therefore delay the DCOP call until it tells kdesktop that the locking is in effect. +-// This is done only for --forcelock . ++ // It takes a while for kdesktop_lock to start and lock the screen. ++ // Therefore delay the DCOP call until it tells kdesktop that the locking is in effect. ++ // This is done only for --forcelock . + if( ok && mState != Saving ) + { + DCOPClientTransaction* trans = kapp->dcopClient()->beginTransaction(); +@@ -283,40 +319,42 @@ bool SaverEngine::startLockProcess( LockType lock_type ) + kdDebug(1204) << "SaverEngine: starting saver" << endl; + emitDCOPSignal("KDE_start_screensaver()", TQByteArray()); + +- if (mLockProcess.isRunning()) +- { +- stopLockProcess(); +- } +- mLockProcess.clearArguments(); +- TQString path = KStandardDirs::findExe( "kdesktop_lock" ); +- if( path.isEmpty()) +- { +- kdDebug( 1204 ) << "Can't find kdesktop_lock!" << endl; +- return false; ++ if (!mLockProcess.isRunning()) { ++ mLockProcess.clearArguments(); ++ TQString path = KStandardDirs::findExe( "kdesktop_lock" ); ++ if( path.isEmpty()) ++ { ++ kdDebug( 1204 ) << "Can't find kdesktop_lock!" << endl; ++ return false; ++ } ++ mLockProcess << path; ++ mLockProcess << TQString( "--internal" ) << TQString( "%1" ).arg(getpid()); ++ if (mLockProcess.start() == false ) ++ { ++ kdDebug( 1204 ) << "Failed to start kdesktop_lock!" << endl; ++ return false; ++ } + } +- mLockProcess << path; ++ + switch( lock_type ) + { + case ForceLock: +- mLockProcess << TQString( "--forcelock" ); ++ mLockProcess.kill(SIGUSR1); // Request forcelock + break; + case DontLock: +- mLockProcess << TQString( "--dontlock" ); ++ mLockProcess.kill(SIGUSR2); // Request dontlock + break; + case SecureDialog: +- mLockProcess << TQString( "--securedialog" ); ++ mLockProcess.kill(SIGWINCH); // Request secure dialog + break; + default: + break; + } +- if (mBlankOnly) +- mLockProcess << TQString( "--blank" ); +- +- if (mLockProcess.start() == false ) +- { +- kdDebug( 1204 ) << "Failed to start kdesktop_lock!" << endl; +- return false; ++ if (mBlankOnly) { ++ mLockProcess.kill(SIGTTIN); // Request blanking + } ++ ++ mLockProcess.kill(SIGTTOU); // Start lock + XSetScreenSaver(qt_xdisplay(), 0, mXInterval, PreferBlanking, mXExposures); + + mState = Preparing; +@@ -359,9 +397,7 @@ void SaverEngine::stopLockProcess() + + void SaverEngine::lockProcessExited() + { +-printf("Lock process exited\n\r"); fflush(stdout); + bool abnormalExit = false; +- kdDebug(1204) << "SaverEngine: lock exited" << endl; + if (mLockProcess.normalExit() == false) { + abnormalExit = true; + } +@@ -387,6 +423,28 @@ printf("Lock process exited\n\r"); fflush(stdout); + system("logout"); + } + } ++ else { ++ // Restart the lock process ++ if (!mLockProcess.isRunning()) { ++ mLockProcess.clearArguments(); ++ TQString path = KStandardDirs::findExe( "kdesktop_lock" ); ++ if( path.isEmpty()) ++ { ++ kdDebug( 1204 ) << "Can't find kdesktop_lock!" << endl; ++ } ++ mLockProcess << path; ++ mLockProcess << TQString( "--internal" ) << TQString( "%1" ).arg(getpid()); ++ if (mLockProcess.start() == false ) ++ { ++ kdDebug( 1204 ) << "Failed to start kdesktop_lock!" << endl; ++ } ++ } ++ } ++} ++ ++void SaverEngine::lockProcessWaiting() ++{ ++ kdDebug(1204) << "SaverEngine: lock exited" << endl; + if (trinity_lockeng_sak_available == TRUE) { + handleSecureDialog(); + } +diff --git a/kdesktop/lockeng.h b/kdesktop/lockeng.h +index ae81f90..ae08e9a 100644 +--- a/kdesktop/lockeng.h ++++ b/kdesktop/lockeng.h +@@ -78,6 +78,9 @@ public: + */ + virtual void saverLockReady(); + ++public slots: ++ void lockProcessWaiting(); ++ + protected slots: + void idleTimeout(); + void lockProcessExited(); diff --git a/redhat/kdebase/1335166907:e72f4926c094b2bd94501518fbcd2a3e66a74f6a.diff b/redhat/kdebase/kdebase-3.5.13-fix_kio_sftp.patch index 64dfa8e21..64dfa8e21 100644 --- a/redhat/kdebase/1335166907:e72f4926c094b2bd94501518fbcd2a3e66a74f6a.diff +++ b/redhat/kdebase/kdebase-3.5.13-fix_kio_sftp.patch diff --git a/redhat/kdebase/kdebase-3.5.13-fix_kio_sftp_nonstandard_ports.patch b/redhat/kdebase/kdebase-3.5.13-fix_kio_sftp_nonstandard_ports.patch new file mode 100644 index 000000000..00d3eea50 --- /dev/null +++ b/redhat/kdebase/kdebase-3.5.13-fix_kio_sftp_nonstandard_ports.patch @@ -0,0 +1,23 @@ +commit 073dc86aceaa060597d7653747c3c6c14d0ed59d +Author: Timothy Pearson <kb9vqf@pearsoncomputing.net> +Date: 1335311121 -0500 + + Fix sftp when nonstandard port is specified in ssh config + +diff --git a/kioslave/sftp/kio_sftp.cpp b/kioslave/sftp/kio_sftp.cpp +index 2316c8c..04a2b33 100644 +--- a/kioslave/sftp/kio_sftp.cpp ++++ b/kioslave/sftp/kio_sftp.cpp +@@ -481,11 +481,7 @@ void sftpProtocol::setHost (const TQString& h, int port, const TQString& user, c + if( port > 0 ) + mPort = port; + else { +- struct servent *pse; +- if( (pse = getservbyname("ssh", "tcp") ) == NULL ) +- mPort = 22; +- else +- mPort = ntohs(pse->s_port); ++ mPort = -1; + } + + mUsername = user; diff --git a/redhat/kdebase/1333232616:f752bcbf6585c61f414963ad83e1300a1da08504.diff b/redhat/kdebase/kdebase-3.5.13-fix_kxdglauncher_document.patch index 015270759..015270759 100644 --- a/redhat/kdebase/1333232616:f752bcbf6585c61f414963ad83e1300a1da08504.diff +++ b/redhat/kdebase/kdebase-3.5.13-fix_kxdglauncher_document.patch diff --git a/redhat/kdebase/kdebase-3.5.13-fix_lock_failure.patch b/redhat/kdebase/kdebase-3.5.13-fix_lock_failure.patch new file mode 100644 index 000000000..73220e70d --- /dev/null +++ b/redhat/kdebase/kdebase-3.5.13-fix_lock_failure.patch @@ -0,0 +1,84 @@ +commit 67a3a8f34892a6491ba0073a3f583503b44e58e7 +Author: Timothy Pearson <kb9vqf@pearsoncomputing.net> +Date: 1335211141 -0500 + + Fix desktop lock failure due to race condition within signal handler between qt and xcb + +diff --git a/kdesktop/lock/lockprocess.cc b/kdesktop/lock/lockprocess.cc +index c0050d3..3c67ac0 100644 +--- a/kdesktop/lock/lockprocess.cc ++++ b/kdesktop/lock/lockprocess.cc +@@ -659,6 +659,7 @@ void LockProcess::startSecureDialog() + mBusy = false; + trinity_desktop_lock_in_sec_dlg = false; + if (ret == 0) { ++ trinity_desktop_lock_closing_windows = 1; + kapp->quit(); + } + if (ret == 1) { +@@ -687,6 +688,7 @@ void LockProcess::startSecureDialog() + mBusy = false; + } + if (ret == 2) { ++ trinity_desktop_lock_closing_windows = 1; + if (system("ksysguard &") == -1) { + // Error handler to shut up gcc warnings + } +diff --git a/kdesktop/lock/main.cc b/kdesktop/lock/main.cc +index 5853da1..225d9c5 100644 +--- a/kdesktop/lock/main.cc ++++ b/kdesktop/lock/main.cc +@@ -168,7 +168,7 @@ int main( int argc, char **argv ) + + bool rt; + bool sig = false; +- if( !child && args->isSet( "forcelock" )) ++ if( (!child) && (args->isSet( "forcelock" ))) + { + rt = process.lock(); + sig = true; +diff --git a/kdesktop/lockeng.cc b/kdesktop/lockeng.cc +index 9eb88e1..f24d02f 100644 +--- a/kdesktop/lockeng.cc ++++ b/kdesktop/lockeng.cc +@@ -34,7 +34,7 @@ SaverEngine* m_masterSaverEngine = NULL; + static void sigusr1_handler(int) + { + if (m_masterSaverEngine) { +- m_masterSaverEngine->lockProcessWaiting(); ++ m_masterSaverEngine->slotLockProcessWaiting(); + } + } + +@@ -445,6 +445,13 @@ void SaverEngine::lockProcessExited() + } + } + ++void SaverEngine::slotLockProcessWaiting() ++{ ++ // lockProcessWaiting cannot be called directly from a signal handler, as it will hang in certain obscure circumstances ++ // Instead we use a single-shot timer to immediately call lockProcessWaiting once control has returned to the Qt main loop ++ TQTimer::singleShot(0, this, SLOT(lockProcessWaiting())); ++} ++ + void SaverEngine::lockProcessWaiting() + { + kdDebug(1204) << "SaverEngine: lock exited" << endl; +diff --git a/kdesktop/lockeng.h b/kdesktop/lockeng.h +index ae08e9a..e42a048 100644 +--- a/kdesktop/lockeng.h ++++ b/kdesktop/lockeng.h +@@ -79,11 +79,12 @@ public: + virtual void saverLockReady(); + + public slots: +- void lockProcessWaiting(); ++ void slotLockProcessWaiting(); + + protected slots: + void idleTimeout(); + void lockProcessExited(); ++ void lockProcessWaiting(); + + private slots: + void handleSecureDialog(); diff --git a/redhat/kdebase/kdebase-3.5.13-fix_race_condition.patch b/redhat/kdebase/kdebase-3.5.13-fix_race_condition.patch new file mode 100644 index 000000000..868c8c3cb --- /dev/null +++ b/redhat/kdebase/kdebase-3.5.13-fix_race_condition.patch @@ -0,0 +1,22 @@ +commit 9e172fa7a1e93cc77e09616eb793b823d29ebaec +Author: Darrell Anderson <humanreadable@yahoo.com> +Date: 1333594438 -0500 + + Temporary fix for a probable race condition on some systems. + Still needs to be resolved by determining the root cause. + Partially resolves bug report 760. + +diff --git a/kioslave/system/kdedmodule/systemdirnotify.cpp b/kioslave/system/kdedmodule/systemdirnotify.cpp +index 162d966..99b9ac7 100644 +--- a/kioslave/system/kdedmodule/systemdirnotify.cpp ++++ b/kioslave/system/kdedmodule/systemdirnotify.cpp +@@ -36,6 +36,9 @@ SystemDirNotify::SystemDirNotify() + void SystemDirNotify::init() + { + if( mInited ) ++ // FIXME Work around a race condition by inserting kdDebug delay before following ++ // code is executed -- the root cause of the race should be investigated and fixed. ++ kdDebug() << "SystemDirNotify::init(" << mInited << ")" << endl; + return; + mInited = true; + KGlobal::dirs()->addResourceType("system_entries", diff --git a/redhat/kdebase/kdebase-3.5.13-start_dcop_in_tdm.patch b/redhat/kdebase/kdebase-3.5.13-start_dcop_in_tdm.patch new file mode 100644 index 000000000..53d7d6cde --- /dev/null +++ b/redhat/kdebase/kdebase-3.5.13-start_dcop_in_tdm.patch @@ -0,0 +1,34 @@ +--- kdebase/kdm/kfrontend/kgapp.cpp.orig 2012-04-27 22:08:53.729331548 +0200 ++++ kdebase/kdm/kfrontend/kgapp.cpp 2012-04-27 22:06:29.169359295 +0200 +@@ -190,6 +190,7 @@ + KProcess *tsak = 0; + KProcess *proc = 0; + KProcess *comp = 0; ++ KProcess *dcop = 0; + KProcess *kwin = 0; + + trinity_desktop_lock_use_sak = _useSAK; +@@ -310,6 +311,13 @@ + } + + if (!_windowManager.isEmpty()) { ++ if (_windowManager == "kwin") { ++ // Special case ++ // Start DCOP... ++ dcop = new KProcess; ++ *dcop << TQCString( argv0, strrchr( argv0, '/' ) - argv0 + 2 ) + "dcopserver" << TQCString("--suicide"); ++ dcop->start(); ++ } + kwin = new KProcess; + *kwin << TQCString( argv0, strrchr( argv0, '/' ) - argv0 + 2 ) + _windowManager.ascii(); + kwin->start(); +@@ -453,7 +461,9 @@ + if (kwin) { + kwin->closeStdin(); + kwin->detach(); ++ dcop->detach(); + delete kwin; ++ delete dcop; + } + delete proc; + UnsecureDisplay( dpy ); diff --git a/redhat/kdebase/trinity-kdebase-3.5.13.spec b/redhat/kdebase/trinity-kdebase-3.5.13.spec index 1feb46f18..7b569588c 100644 --- a/redhat/kdebase/trinity-kdebase-3.5.13.spec +++ b/redhat/kdebase/trinity-kdebase-3.5.13.spec @@ -2,7 +2,7 @@ %if "%{?version}" == "" %define version 3.5.13 %endif -%define release 19 +%define release 20 # If TDE is built in a specific prefix (e.g. /opt/trinity), the release will be suffixed with ".opt". %if "%{?_prefix}" != "/usr" @@ -122,11 +122,21 @@ Patch43: kdebase-3.5.13-kate_focus_fix.patch ## [kdebase/kicker] Ensures that 'pagersettings.kcfg' is installed [Bug #908, Commit bd9c1479] Patch44: kdebase-3.5.13-ensure_pagersettings_is_installed.patch ## [kdebase] Fix "Malformed URL $( kxdglauncher --getpath xdgname DOCUMENTS )" error dialog. -Patch45: 1333232616:f752bcbf6585c61f414963ad83e1300a1da08504.diff +Patch45: kdebase-3.5.13-fix_kxdglauncher_document.patch ## [kdebase/kioslave] Fix sftp failure on newer systems [Bug #897] -Patch46: 1335166907:e72f4926c094b2bd94501518fbcd2a3e66a74f6a.diff +Patch46: kdebase-3.5.13-fix_kio_sftp.patch ## [kdebase/kicker] Fix compilation with GCC 4.7 [Bug #958] Patch47: kdebase-3.5.13-kicker-easyvector.patch +## [kdebase/kioslave] Fix sftp when nonstandard port is specified in ssh config [Bug #897] +Patch48: kdebase-3.5.13-fix_kio_sftp_nonstandard_ports.patch +## [kdebase/kdm] Start minimal dcop system to support twin in tdm [Commit #66a19439] +Patch49: kdebase-3.5.13-start_dcop_in_tdm.patch +## [kdebase/kdesktop/lock] Update lock process to engage the lock in near real time [Commit #8d521d0b] +Patch50: kdebase-3.5.13-engage_lock_in_near_real_time.patch +## [kdebase/kdesktop/lock] Fix desktop lock failure due to race condition within signal handler between qt and xcb [Commit #67a3a8f3] +Patch51: kdebase-3.5.13-fix_lock_failure.patch +## [kdebase/kioslave] Temporary fix for a probable race condition on some systems. [Bug #760] +Patch52: kdebase-3.5.13-fix_race_condition.patch # Fedora 15 Theme: "Lovelock" %if 0%{?fedora} == 15 @@ -362,6 +372,11 @@ Protocol handlers (KIOslaves) for personal information management, including: %patch45 -p1 %patch46 -p1 %patch47 -p0 +%patch48 -p1 +%patch49 -p1 +%patch50 -p1 +%patch51 -p1 +%patch52 -p1 # Applies an optional distro-specific graphical theme %if "%{?tde_bg}" != "" @@ -748,6 +763,13 @@ update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || : %{_datadir}/cmake/*.cmake %changelog +* Fri Apr 27 2012 Francois Andriot <francois.andriot@free.fr> - 3.5.13-20 +- Fix sftp when nonstandard port is specified in ssh config [Bug #897] +- Start minimal dcop system to support twin in tdm [Commit #66a19439] +- Update lock process to engage the lock in near real time [Commit #8d521d0b] +- Fix desktop lock failure due to race condition within signal handler between qt and xcb [Commit #67a3a8f3] +- Temporary fix for a probable race condition on some systems. [Bug #760] + * Tue Apr 24 2012 Francois Andriot <francois.andriot@free.fr> - 3.5.13-19 - Build for Fedora 17 - Fix compilation with GCC 4.7 [Bug #958] diff --git a/redhat/kdevelop/kdevelop-3.5.13-gcc47.patch b/redhat/kdevelop/kdevelop-3.5.13-gcc47.patch new file mode 100644 index 000000000..6d5814210 --- /dev/null +++ b/redhat/kdevelop/kdevelop-3.5.13-gcc47.patch @@ -0,0 +1,22 @@ +--- kdevelop/languages/cpp/cppcodecompletion.cpp.gcc47 2011-08-13 07:59:50.000000000 +0200 ++++ kdevelop/languages/cpp/cppcodecompletion.cpp 2012-04-26 20:33:55.645135959 +0200 +@@ -3892,15 +3892,15 @@ + ArgumentList fArgs = ( *it ) ->argumentList(); + if ( fArgs.count() != args.count() ) + continue; +- ArgumentList::iterator it = args.begin(); ++ ArgumentList::iterator it3 = args.begin(); + ArgumentList::iterator it2 = fArgs.begin(); + bool hit = true; +- while ( it != args.end() ) { +- if ( ( *it ) ->type() != ( *it2 ) ->type() ) { ++ while ( it3 != args.end() ) { ++ if ( ( *it3 ) ->type() != ( *it2 ) ->type() ) { + hit = false; + break; + } +- ++it; ++ ++it3; + ++it2; + } + if ( hit ) { diff --git a/redhat/kdevelop/trinity-kdevelop-3.5.13.spec b/redhat/kdevelop/trinity-kdevelop-3.5.13.spec index ca27fc19f..e47bc717e 100644 --- a/redhat/kdevelop/trinity-kdevelop-3.5.13.spec +++ b/redhat/kdevelop/trinity-kdevelop-3.5.13.spec @@ -45,7 +45,8 @@ Patch1: c_cpp_reference-2.0.2-config.patch # TDE 3.5.13 patches ## RHEL / Fedora RPM specific patches Patch2: kdevelop-3.5.13-kdevdesigner-ftbfs.patch - +# Fix compilation with GCC 4.7 +Patch3: kdevelop-3.5.13-gcc47.patch Provides: kdevelop3 = %{version}-%{release} @@ -126,12 +127,13 @@ Requires: %{name} = %{version}-%{release} %setup -q -n kdevelop -a1 %patch1 -p0 -b .config %patch2 -p1 +%patch3 -p1 -b .gcc47 # Ugly hack to modify TQT include directory inside autoconf files. # If TQT detection fails, it fallbacks to TQT4 instead of TQT3 ! %__sed -i admin/acinclude.m4.in \ - -e "s,/usr/include/tqt,%{_includedir}/tqt,g" \ - -e "s,kde_htmldir='.*',kde_htmldir='%{tde_docdir}/HTML',g" + -e "s|/usr/include/tqt|%{_includedir}/tqt|g" \ + -e "s|kde_htmldir='.*'|kde_htmldir='%{tde_docdir}/HTML'|g" %__rm -rf c_cpp_reference-2.0.2_for_KDE_3.0/admin |