diff --git a/pkgs/desktops/kde-4.5/default.nix b/pkgs/desktops/kde-4.5/default.nix index 9381107ef6fb..e231ef104c02 100644 --- a/pkgs/desktops/kde-4.5/default.nix +++ b/pkgs/desktops/kde-4.5/default.nix @@ -37,8 +37,6 @@ rec { polkit_qt_1 = callPackage ./support/polkit-qt-1 { }; - soprano = callPackage ./support/soprano { }; - ### LIBS kdelibs = callPackage ./libs { }; diff --git a/pkgs/desktops/kde-4.5/support/soprano/default.nix b/pkgs/desktops/kde-4.5/support/soprano/default.nix deleted file mode 100644 index 8d07f352d17d..000000000000 --- a/pkgs/desktops/kde-4.5/support/soprano/default.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ stdenv, fetchurl, cmake, qt4, clucene_core, redland, libiodbc }: - -stdenv.mkDerivation rec { - name = "soprano-2.7.0"; - - src = fetchurl { - url = "mirror://sourceforge/soprano/${name}.tar.bz2"; - sha256 = "1ki92wg0i9nhn1fh5mdcls5h9h3lf2k5r66snsags4x7zw0dmv2z"; - }; - - # We disable the Java backend, since we do not need them and they make the closure size much bigger - buildInputs = [ cmake qt4 clucene_core redland libiodbc ]; - - meta = { - homepage = http://soprano.sourceforge.net/; - description = "An object-oriented C++/Qt4 framework for RDF data"; - license = "LGPL"; - maintainers = with stdenv.lib.maintainers; [ sander urkud ]; - inherit (qt4.meta) platforms; - }; -} diff --git a/pkgs/desktops/kde-4.7/default.nix b/pkgs/desktops/kde-4.7/default.nix index 9d6981f1168f..0e2377f25359 100644 --- a/pkgs/desktops/kde-4.7/default.nix +++ b/pkgs/desktops/kde-4.7/default.nix @@ -43,7 +43,6 @@ kde.modules // kde.individual // inherit (kde) manifest modules individual splittedModuleList; akonadi = callPackage ./support/akonadi { }; - soprano = callPackage ./support/soprano { }; qt4 = qt47; diff --git a/pkgs/desktops/kde-4.7/support/soprano/find-virtuoso.patch b/pkgs/desktops/kde-4.7/support/soprano/find-virtuoso.patch deleted file mode 100644 index 649f22a3b746..000000000000 --- a/pkgs/desktops/kde-4.7/support/soprano/find-virtuoso.patch +++ /dev/null @@ -1,77 +0,0 @@ -From: Yury G. Kudryashov -Subject: [PATCH] Find virtuoso if virtuoso-t is in PATH - ---- - backends/virtuoso/virtuosobackend.cpp | 29 ++++++++++++++++++++--------- - backends/virtuoso/virtuosobackend.h | 2 +- - 2 files changed, 21 insertions(+), 10 deletions(-) - -diff --git a/backends/virtuoso/virtuosobackend.cpp b/backends/virtuoso/virtuosobackend.cpp -index c83605d..c24854e 100644 ---- a/backends/virtuoso/virtuosobackend.cpp -+++ b/backends/virtuoso/virtuosobackend.cpp -@@ -188,19 +188,19 @@ namespace { - - bool Soprano::Virtuoso::BackendPlugin::isAvailable() const - { --#ifndef Q_OS_WIN -- if ( findVirtuosoDriver().isEmpty() ) { -- qDebug() << Q_FUNC_INFO << "could not find Virtuoso ODBC driver"; -- return false; -- } --#endif -- - QString virtuosoBin = VirtuosoController::locateVirtuosoBinary(); - if ( virtuosoBin.isEmpty() ) { - qDebug() << Q_FUNC_INFO << "could not find virtuoso-t binary"; - return false; - } - -+#ifndef Q_OS_WIN -+ if ( findVirtuosoDriver(virtuosoBin).isEmpty() ) { -+ qDebug() << Q_FUNC_INFO << "could not find Virtuoso ODBC driver"; -+ return false; -+ } -+#endif -+ - QString vs = determineVirtuosoVersion( virtuosoBin ); - if ( vs.isEmpty() ) { - qDebug() << Q_FUNC_INFO << "Failed to determine version of the Virtuoso server at" << virtuosoBin; -@@ -217,9 +217,20 @@ bool Soprano::Virtuoso::BackendPlugin::isAvailable() const - - - #ifndef Q_OS_WIN --QString Soprano::Virtuoso::BackendPlugin::findVirtuosoDriver() const -+QString Soprano::Virtuoso::BackendPlugin::findVirtuosoDriver( const QString &virtuosoBinHint ) const - { -- return Soprano::findLibraryPath( "virtodbc_r", QStringList(), QStringList() << QLatin1String( "virtuoso/plugins/" ) << QLatin1String( "odbc/" ) ); -+ QString virtuosoBin; -+ if (virtuosoBinHint.isEmpty()) -+ virtuosoBin = VirtuosoController::locateVirtuosoBinary(); -+ else -+ virtuosoBin = virtuosoBinHint; -+ -+ QDir virtuosoBinDir = QFileInfo(virtuosoBin).absoluteDir(); -+ return Soprano::findLibraryPath( "virtodbc_r", -+ QStringList() << virtuosoBinDir.absolutePath() -+ << virtuosoBinDir.absoluteFilePath("../lib"), -+ QStringList() << QLatin1String( "virtuoso/plugins/" ) << -+ QLatin1String( "odbc/" ) ); - } - #endif - -diff --git a/backends/virtuoso/virtuosobackend.h b/backends/virtuoso/virtuosobackend.h -index 3971b83..0807e5d 100644 ---- a/backends/virtuoso/virtuosobackend.h -+++ b/backends/virtuoso/virtuosobackend.h -@@ -50,7 +50,7 @@ namespace Soprano { - - #ifndef Q_OS_WIN - private: -- QString findVirtuosoDriver() const; -+ QString findVirtuosoDriver(const QString &virtuosoBinHint = QString()) const; - #endif - }; - } --- -tg: (432b73f..) t/find-virtuoso (depends on: master) diff --git a/pkgs/desktops/kde-4.7/support/soprano/default.nix b/pkgs/development/libraries/soprano/default.nix similarity index 85% rename from pkgs/desktops/kde-4.7/support/soprano/default.nix rename to pkgs/development/libraries/soprano/default.nix index 9dc6d1d1de60..49e6e6b96df9 100644 --- a/pkgs/desktops/kde-4.7/support/soprano/default.nix +++ b/pkgs/development/libraries/soprano/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { }; patches = - [ (fetchurl { + [ (fetchurl { # Applied upstream, remove if upgrading url = https://git.reviewboard.kde.org/r/102466/diff/raw/; name = "soprano-virtuoso-restart.patch"; sha256 = "0jk038fp7ii6847mbxdajhhc7f6ap6lriaklxcqqxf6ddj37gf3y"; @@ -18,7 +18,9 @@ stdenv.mkDerivation rec { ]; # We disable the Java backend, since we do not need them and they make the closure size much bigger - buildInputs = [ cmake qt4 clucene_core librdf_redland libiodbc ]; + buildInputs = [ qt4 clucene_core librdf_redland libiodbc ]; + + buildNativeInputs = [ cmake ]; meta = { homepage = http://soprano.sourceforge.net/; diff --git a/pkgs/development/libraries/soprano/find-virtuoso.patch b/pkgs/development/libraries/soprano/find-virtuoso.patch new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6c16d51f9960..c43215b787fd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4442,6 +4442,8 @@ let # optional }; + soprano = callPackage ../development/libraries/soprano { }; + soqt = callPackage ../development/libraries/soqt { }; speechd = callPackage ../development/libraries/speechd { };