summaryrefslogtreecommitdiffstats
path: root/deps/soprano
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2015-01-09 00:06:49 +0100
committer Eric Hameleers <alien@slackware.com>2015-01-09 00:06:49 +0100
commitda1be5a21ba06235b67a999f696ec66e35dc17a1 (patch)
tree6df637d821a6ac0ad65f8caaf967ea2a6956a862 /deps/soprano
parentb1b35d20ce6b70330b23a9d056dcb44b58795bd6 (diff)
downloadktown-da1be5a21ba06235b67a999f696ec66e35dc17a1.tar.gz
ktown-da1be5a21ba06235b67a999f696ec66e35dc17a1.tar.xz
Prepare for new KDE 5: Frameworks 5.6.0, Plasma 5.1.2, Applications 14.12.0.
KDE 5_1501 ========== This is going to be KDE 5 for Slackware-current, composed of Frameworks 5.6.0, Plasma 5.1.2 and Applications 14.12.0. Note that there is still a lot of KDE 4 stuff in here, which is necessary to support all the Applications that have not yet been ported to KDE Frameworks 5. The Applications 15.04 (march 2015) release should offer a lot more KF5 ports. Preliminary build procedure (not verified 100% yet): ---------------------------------------------------- - (crude) get rid of Slackware's KDE: removepkg /var/log/packages/*-4.10.5-* - build all the deps using "updates.SlackBuild" script in the "deps/" directory - note that extra-cmake-modules is required here as well as when building the frameworks, so I just copied it from frameworks to deps. - logoff/login to activate Qt5 profile script. - removepkg akonadi-qt5 or else kdepimlibs-4.14.3 picks up Qt5 dependencies and its compilation will fail as a result - build all the KDE 4 stuff in the "kde/" directory, using "./KDE.SlackBuild kde libs kdebase:nepomuk-core kdepimlibs kdebase kdebindings kdebase:kde-workspace k depim extragear" - installpkg akonadi-qt5 - build the remaining KDE 5 stuff in the "kde/" directory, using "./KDE.SlackBui ld frameworks plasma plasma-extra polkit-kde applications" - build kdei ============================================================================== Eric Hameleers / alien at slackware dot com / 09-jan-2015
Diffstat (limited to 'deps/soprano')
-rw-r--r--deps/soprano/slack-desc19
-rwxr-xr-xdeps/soprano/soprano.SlackBuild110
-rw-r--r--deps/soprano/soprano_tcpclient_stub.diff196
3 files changed, 325 insertions, 0 deletions
diff --git a/deps/soprano/slack-desc b/deps/soprano/slack-desc
new file mode 100644
index 0000000..44327e0
--- /dev/null
+++ b/deps/soprano/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler-----------------------------------------------------|
+soprano: soprano (C++/Qt4 framework for RDF data)
+soprano:
+soprano: Soprano (formally known as QRDF) is a library which provides
+soprano: a nice Qt interface to RDF storage solutions. It has a modular
+soprano: structure which allows to replace the actual RDF storage
+soprano: implementation used.
+soprano:
+soprano: Homepage: http://soprano.sourceforge.net/
+soprano:
+soprano:
+soprano:
diff --git a/deps/soprano/soprano.SlackBuild b/deps/soprano/soprano.SlackBuild
new file mode 100755
index 0000000..cf96b7b
--- /dev/null
+++ b/deps/soprano/soprano.SlackBuild
@@ -0,0 +1,110 @@
+#!/bin/sh
+
+# Copyright 2007-2008 Robby Workman, Northport, Alabama, USA
+# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# 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.
+
+# Modified 2012, 2015 by Eric Hameleers <alien at slackware.com> for ARM port.
+
+
+PKGNAM=soprano
+VERSION=${VERSION:-2.9.4}
+BUILD=${BUILD:-2}
+
+NUMJOBS=${NUMJOBS:--j7}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i486 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7lh ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-soprano
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf soprano-$VERSION
+tar xvf $CWD/soprano-$VERSION.tar.bz2 || exit 1
+cd soprano-${VERSION}* || exit 1
+
+# Restore SC/BC with a stub implementation of tcpclient (fixes smokekde):
+# (fixed in soprano-2.7.57)
+#cat $CWD/soprano_tcpclient_stub.diff | patch -p1 --verbose || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ QTDIR=/usr/lib${LIBDIRSUFFIX}/qt \
+ PATH=$QTDIR/bin:$PATH \
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ ..
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/soprano-$VERSION
+cp -a \
+ AUTHORS COPYING* ChangeLog INSTALL README TODO \
+ $PKG/usr/doc/soprano-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/soprano-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/deps/soprano/soprano_tcpclient_stub.diff b/deps/soprano/soprano_tcpclient_stub.diff
new file mode 100644
index 0000000..2b04f66
--- /dev/null
+++ b/deps/soprano/soprano_tcpclient_stub.diff
@@ -0,0 +1,196 @@
+commit ed17a950a9c6f83590fa62cb97e7278ba7f3e234
+Author: Aaron Seigo <aseigo@kde.org>
+Date: Wed May 30 10:18:52 2012 +0200
+
+ restore SC / BC with a stub impl of tcpclient
+
+diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt
+index 2689568..4e73e3c 100644
+--- a/client/CMakeLists.txt
++++ b/client/CMakeLists.txt
+@@ -14,6 +14,8 @@ include_directories(
+ )
+
+ set(soprano_client_SRC
++ ${soprano_server_SOURCE_DIR}/datastream.cpp
++ tcpclient.cpp
+ socket.cpp
+ socketstream.cpp
+ localsocketclient.cpp
+@@ -94,6 +96,7 @@ INSTALL(TARGETS sopranoclient
+
+ install(
+ FILES
++ tcpclient.h
+ localsocketclient.h
+ DESTINATION include/soprano
+ )
+diff --git a/client/tcpclient.cpp b/client/tcpclient.cpp
+index 796ca59..01dce0e 100644
+--- a/client/tcpclient.cpp
++++ b/client/tcpclient.cpp
+@@ -33,151 +33,58 @@ Q_DECLARE_METATYPE( QAbstractSocket::SocketError )
+ const quint16 Soprano::Client::TcpClient::DEFAULT_PORT = 5000;
+
+
+-namespace Soprano {
+- namespace Client {
+- class TcpClientConnection : public ClientConnection
+- {
+- public:
+- TcpClientConnection( const QHostAddress& address, int port, QObject* parent );
+- ~TcpClientConnection();
+-
+- protected:
+- QIODevice* newConnection();
+- bool isConnected( QIODevice* );
+-
+- private:
+- QHostAddress m_address;
+- int m_port;
+- };
+-
+- TcpClientConnection::TcpClientConnection( const QHostAddress& address, int port, QObject* parent )
+- : ClientConnection( parent ),
+- m_address( address ),
+- m_port( port )
+- {
+- }
+-
+- TcpClientConnection::~TcpClientConnection()
+- {
+- }
+-
+- QIODevice* TcpClientConnection::newConnection()
+- {
+- clearError();
+-
+- QTcpSocket* socket = new QTcpSocket;
+- socket->connectToHost( m_address, m_port );
+- if ( socket->waitForConnected() ) {
+- QObject::connect( socket, SIGNAL(error(QAbstractSocket::SocketError)),
+- parent(), SLOT(slotError(QAbstractSocket::SocketError)) );
+- return socket;
+- }
+- else {
+- setError( socket->errorString() );
+- delete socket;
+- return 0;
+- }
+- }
+-
+- bool TcpClientConnection::isConnected( QIODevice* device ) {
+- return device ? ( static_cast<QTcpSocket*>( device )->state() == QAbstractSocket::ConnectedState ) : false;
+- }
+- }
+-}
+-
+-
+-class Soprano::Client::TcpClient::Private
+-{
+-public:
+- Private()
+- : connection( 0 ) {
+- }
+-
+- TcpClientConnection* connection;
+-};
+-
+-
+ Soprano::Client::TcpClient::TcpClient( QObject* parent )
+ : QObject( parent ),
+- d( new Private() )
++ d( 0 )
+ {
+- qRegisterMetaType<QAbstractSocket::SocketError>();
++ qWarning() << "This class is deprecated, and the implementation is only a stub now. DO NOT USE IT IN YOUR APPLICATION.";
+ }
+
+
+ Soprano::Client::TcpClient::~TcpClient()
+ {
+- disconnect();
+- delete d;
++ //delete d;
+ }
+
+
+ bool Soprano::Client::TcpClient::connect( const QHostAddress& address, int port )
+ {
+- if ( !isConnected() ) {
+- if ( !d->connection )
+- d->connection = new TcpClientConnection( address, port, this );
+- if ( d->connection->connect() &&
+- d->connection->checkProtocolVersion() ) {
+- return true;
+- }
+- else {
+- disconnect();
+- return false;
+- }
+- }
+- else {
+- setError( "Already connected" );
+- return false;
+- }
++ Q_UNUSED(address)
++ Q_UNUSED(port)
++ return false;
+ }
+
+
+ bool Soprano::Client::TcpClient::isConnected()
+ {
+- return d->connection ? d->connection->isConnected() : false;
++ return false;
+ }
+
+
+ void Soprano::Client::TcpClient::disconnect()
+ {
+- delete d->connection;
+- d->connection = 0;
+ }
+
+
+ Soprano::Model* Soprano::Client::TcpClient::createModel( const QString& name, const QList<BackendSetting>& settings )
+ {
+- if ( d->connection ) {
+- int modelId = d->connection->createModel( name, settings );
+- setError( d->connection->lastError() );
+- if ( modelId > 0 ) {
+- StorageModel* model = new ClientModel( 0, modelId, d->connection );
+- return model;
+- }
+- }
+- else {
+- setError( "Not connected" );
+- }
+-
++ Q_UNUSED(name)
++ Q_UNUSED(settings)
++ setError( "Not connected" );
+ return 0;
+ }
+
+
+ void Soprano::Client::TcpClient::removeModel( const QString& name )
+ {
+- if ( d->connection ) {
+- d->connection->removeModel( name );
+- setError( d->connection->lastError() );
+- }
+- else {
+- setError( "Not connected" );
+- }
++ Q_UNUSED(name)
++ setError( "Not connected" );
+ }
+
+
+ void Soprano::Client::TcpClient::slotError( QAbstractSocket::SocketError error )
+ {
++ Q_UNUSED(error)
+ qDebug() << "Error: " << error;
+ }
+