- kde-3.5.10

This commit is contained in:
Rex Dieter 2008-08-26 18:47:44 +00:00
parent 219ceafafb
commit 33e3ff6597
5 changed files with 21 additions and 195 deletions

View File

@ -1 +1 @@
kdelibs-3.5.9.tar.bz2
kdelibs-3.5.10.tar.bz2

View File

@ -1,169 +0,0 @@
kdecore/Makefile.am | 2 +
kdecore/klibloader.cpp | 86 +++++++++++++++++++++++++++----------------------
kdecore/klibloader.h | 2 -
kinit/kinit.cpp | 8 +---
4 files changed, 55 insertions(+), 43 deletions(-)
--- kdelibs-3.5.5/kdecore/Makefile.am.orig 2006-10-01 19:33:38.000000000 +0200
+++ kdelibs-3.5.5/kdecore/Makefile.am 2007-01-05 00:17:27.235678750 +0100
@@ -115,8 +115,10 @@
kuser.cpp kconfigskeleton.cpp kconfigdialogmanager.cpp klockfile.cpp \
kqiodevicegzip_p.cpp ktimezones.cpp
+CXXFLAGS += -fexceptions
libkdecore_la_LDFLAGS = $(QT_LDFLAGS) $(KDE_RPATH) $(KDE_MT_LDFLAGS) $(X_LDFLAGS) $(USER_LDFLAGS) -version-info 6:0:2 -no-undefined
libkdecore_la_LIBADD = malloc/libklmalloc.la network/libkdecorenetwork.la $(SVGICON_LIB) ../dcop/libDCOP.la ../libltdl/libltdlc.la $(LIB_XEXT) $(LIBRESOLV) $(LIBUTIL) $(LIBART_LIBS) $(LIB_IDN) ../kdefx/libkdefx.la
+libkdecore_la_LIBADD += -lboost_filesystem -lboost_regex
libkdecore_la_NMCHECK = $(srcdir)/libkdecore.nmcheck
libkdecore_la_NMCHECKWEAK = $(srcdir)/libkdecore_weak.nmcheck $(srcdir)/libqt-mt_weak.nmcheck \
$(top_srcdir)/dcop/libDCOP_weak.nmcheck $(top_srcdir)/kdecore/standard_weak.nmcheck
--- kdelibs-3.5.5/kdecore/klibloader.h.orig 2005-10-10 17:06:03.000000000 +0200
+++ kdelibs-3.5.5/kdecore/klibloader.h 2007-01-04 23:19:39.868039250 +0100
@@ -270,7 +270,7 @@
* wants to open modules.
* @param name of the library. If it is not a path, the function searches in
* the "module" and "lib" resources. If there is no extension,
- * ".la" will be appended.
+ * ".so*" will be appended.
* @param instance a KInstance used to get the standard paths
*/
static QString findLibrary( const char * name, const KInstance * instance = KGlobal::instance() );
--- kdelibs-3.5.5/kdecore/klibloader.cpp.orig 2006-01-19 17:06:18.000000000 +0000
+++ kdelibs-3.5.5/kdecore/klibloader.cpp 2007-01-05 00:08:39.215039750 +0000
@@ -331,43 +331,59 @@
d = 0L;
}
-static inline QCString makeLibName( const char* name )
+#include <boost/filesystem/exception.hpp>
+#include <boost/filesystem/operations.hpp>
+#include <boost/filesystem/path.hpp>
+#include <boost/regex.hpp>
+
+QCString makeSharedLibraryName( char const* name, QString const& dir )
{
- QCString libname(name);
- // only append ".la" if there is no extension
- // this allows to load non-libtool libraries as well
- // (mhk, 20000228)
- int pos = libname.findRev('/');
- if (pos < 0)
- pos = 0;
- if (libname.find('.', pos) < 0)
- libname += ".la";
- return libname;
+ try
+ {
+ boost::filesystem::path d( dir.ascii() );
+ std::string p = d.string() + "/" + name + ".so";
+ if ( boost::filesystem::exists( p ) )
+ return p.c_str();
+ boost::regex re( p + "\\..+", boost::regex::extended );
+ for ( boost::filesystem::directory_iterator i( d );
+ i != boost::filesystem::directory_iterator(); ++i )
+ {
+ boost::smatch m;
+ if ( boost::regex_match( i->string(), m, re ) )
+ return m.str().c_str();
+ }
+ }
+ catch ( boost::filesystem::filesystem_error const& )
+ {
+ }
+ return QCString();
}
-//static
QString KLibLoader::findLibrary( const char * name, const KInstance * instance )
{
- QCString libname = makeLibName( name );
-
- // only look up the file if it is not an absolute filename
- // (mhk, 20000228)
- QString libfile;
- if (!QDir::isRelativePath(libname))
- libfile = QFile::decodeName( libname );
- else
- {
- libfile = instance->dirs()->findResource( "module", libname );
- if ( libfile.isEmpty() )
- {
- libfile = instance->dirs()->findResource( "lib", libname );
-#ifndef NDEBUG
- if ( !libfile.isEmpty() && libname.left(3) == "lib" ) // don't warn for kdeinit modules
- kdDebug(150) << "library " << libname << " not found under 'module' but under 'lib'" << endl;
-#endif
- }
- }
- return libfile;
+ try
+ {
+ if ( boost::filesystem::exists( name ) )
+ return name;
+ }
+ catch ( boost::filesystem::filesystem_error const& )
+ {
+ }
+ QStringList dirs = instance->dirs()->resourceDirs( "module" );
+ for ( QStringList::ConstIterator i = dirs.begin(); i != dirs.end(); ++i )
+ {
+ QCString p = makeSharedLibraryName( name, *i );
+ if ( !p.isNull() )
+ return p;
+ }
+ dirs = instance->dirs()->resourceDirs( "lib" );
+ for ( QStringList::ConstIterator i = dirs.begin(); i != dirs.end(); ++i )
+ {
+ QCString p = makeSharedLibraryName( name, *i );
+ if ( !p.isNull() )
+ return p;
+ }
+ return QString::null;
}
@@ -418,11 +434,7 @@
QString libfile = findLibrary( name );
if ( libfile.isEmpty() )
{
- const QCString libname = makeLibName( name );
-#ifndef NDEBUG
- kdDebug(150) << "library=" << name << ": No file named " << libname << " found in paths." << endl;
-#endif
- d->errorMessage = i18n("Library files for \"%1\" not found in paths.").arg(libname);
+ d->errorMessage = i18n("Library files for \"%1\" not found in paths.").arg(name);
return 0;
}
--- kdelibs-3.5.5/kinit/kinit.cpp.orig 2006-10-01 19:33:32.000000000 +0200
+++ kdelibs-3.5.5/kinit/kinit.cpp 2007-01-04 23:39:00.780591750 +0100
@@ -447,7 +447,7 @@
{
/* Relative name without '.la' */
name = _name;
- lib = name + ".la";
+ lib = name;
exec = name;
libpath = QFile::encodeName(KLibLoader::findLibrary( lib, s_instance ));
execpath = execpath_avoid_loops( exec, envc, envs, avoid_loops );
@@ -458,9 +458,7 @@
name = _name;
name = name.mid( name.findRev('/') + 1);
exec = _name;
- if (lib.right(3) == ".la")
- libpath = lib;
- else
+ if ( libpath.findRev( ".so" ) == -1 )
execpath = exec;
}
if (!args)
@@ -1807,7 +1805,7 @@
#ifndef __CYGWIN__
if (!d.suicide && !getenv("KDE_IS_PRELINKED"))
{
- QString konq = locate("lib", "libkonq.la", s_instance);
+ QString konq = KLibLoader::findLibrary( "libkonq", s_instance );
if (!konq.isEmpty())
(void) lt_dlopen(QFile::encodeName(konq).data());
}

View File

@ -1,11 +0,0 @@
--- kdelibs/kate/part/katesupercursor.cpp 2008/02/08 14:17:43 772352
+++ kdelibs/kate/part/katesupercursor.cpp 2008/02/20 11:02:18 777286
@@ -186,7 +186,7 @@
{
if (newLine)
{
- if (m_line > int(line) || (m_line == int(line) && m_col > int(col)))
+ if (m_line > int(line) || (m_line == int(line) && m_col >= int(col)))
{
if(m_line == int(line))
m_col -= col;

View File

@ -7,11 +7,16 @@
%define kde_settings 1
%define arts 1
%define arts_epoch 8
%define arts_version 1.5.9
%define arts_ev 8:1.5.9
%define qt3_epoch 1
%if 0%{?fedora} > 8
%define qt3 qt3
%else
%define qt3_epoch 1:
%define qt3 qt
%endif
%define qt3_version 3.3.8b
%define qt3_ev %{?qt3_epoch}%{qt3_version}
# unfortunately, this doesn't work for 3.3.8b which still identifies as 3.3.8
#global qt3_ver %(pkg-config --modversion qt-mt 2>/dev/null || echo %{qt3_version})
%define qt3_ver %{qt3_version}
@ -30,8 +35,8 @@
%define include_crystalsvg 1
Summary: K Desktop Environment 3 - Libraries
Version: 3.5.9
Release: 18%{?dist}
Version: 3.5.10
Release: 1%{?dist}
%if 0%{?fedora} > 8
Name: kdelibs3
@ -94,10 +99,9 @@ Patch102: kdelibs-3.5.6-137675.patch
Patch103: kdelibs-3.5.0-101956.patch
## upstream patches
Patch200: kdelibs-3.5.9-kate-regression.patch
#{?arts:Requires: arts >= %{arts_epoch}:%{arts_version}}
#Requires: qt3 >= %{qt3_epoch}:%{qt3_ver}
#{?arts:Requires: arts >= %{arts_ev}}
#Requires: %{qt3} >= %{qt3_ev}
Requires: hicolor-icon-theme
%if %{kde_settings}
Requires: kde-settings >= 3.5
@ -132,8 +136,8 @@ BuildRequires: kde4-macros(api)
BuildRequires: gettext
BuildRequires: pcre-devel
BuildRequires: cups-devel cups
BuildRequires: qt3-devel qt3-devel-docs
%{?arts:BuildRequires: arts-devel >= %{arts_epoch}:%{arts_version}}
BuildRequires: %{qt3}-devel %{qt3}-devel-docs
%{?arts:BuildRequires: arts-devel >= %{arts_ev}}
BuildRequires: flex >= 2.5.4a-13
BuildRequires: doxygen
BuildRequires: libxslt-devel
@ -211,7 +215,7 @@ Obsoletes: kdelibs-devel < 6:%{version}-%{release}
Provides: kdelibs-devel = 6:%{version}-%{release}
%endif
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: qt3-devel
Requires: %{qt3}-devel
Requires: openssl-devel
%{?arts:Requires: arts-devel}
%{?libkdnssd:Requires: libkdnssd-devel}
@ -269,10 +273,9 @@ format for easy browsing
%patch100 -p1 -b .kstandarddirs
%patch101 -p1 -b .libtool-shlibext
%patch102 -p0 -b .kde#137675
#patch102 -p0 -b .kde#137675
# upstream patches
%patch200 -p1 -b .kate-regression
sed -i -e "s,^#define KDE_VERSION_STRING .*,#define KDE_VERSION_STRING \"%{version}-%{release} %{distname}\"," kdecore/kdeversion.h
@ -625,6 +628,9 @@ touch --no-create %{_datadir}/icons/crystalsvg 2> /dev/null || :
%changelog
* Tue Aug 26 2008 Rex Dieter <rdieter@fedoraproject.org> 3.5.10-1
- kde-3.5.10
* Fri Aug 22 2008 Kevin Kofler <Kevin@tigcc.ticalc.org> 3.5.9-18
- fix build against Rawhide kernel headers (fix flock and flock64 redefinition)

View File

@ -1 +1 @@
55e5f00874933d1a7ba7c95e369a205e kdelibs-3.5.9.tar.bz2
43cd55ed15f63b5738d620ef9f9fd568 kdelibs-3.5.10.tar.bz2