commit:     ccf30fa3e98841494c0f0cd826edf1aa4c522b18
Author:     Johannes Huber <johu <AT> gentoo <DOT> org>
AuthorDate: Thu Jun  2 13:54:58 2016 +0000
Commit:     Johannes Huber <johu <AT> gentoo <DOT> org>
CommitDate: Thu Jun  2 13:55:11 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ccf30fa3

net-libs/telepathy-qt: Build fixes and restrict tests

Revision bump adds 3 upstream patches to fix build failures:
- Ensure to pick python 2.7 interpreter
- Fix includes
- Add service dependencies

Gentoo-bug: 549448
Gentoo-bug: 568318
Gentoo-bug: 577382

Package-Manager: portage-2.3.0_rc1

 .../files/telepathy-qt-0.9.6.1-includes.patch      |  24 +++++
 .../files/telepathy-qt-0.9.6.1-python.patch        |  43 ++++++++
 .../files/telepathy-qt-0.9.6.1-qtpath.patch        |   4 +-
 ...telepathy-qt-0.9.6.1-service-dependencies.patch |  22 ++++
 .../telepathy-qt/telepathy-qt-0.9.6.1-r1.ebuild    | 112 +++++++++++++++++++++
 5 files changed, 203 insertions(+), 2 deletions(-)

diff --git a/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-includes.patch 
b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-includes.patch
new file mode 100644
index 0000000..6496d25
--- /dev/null
+++ b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-includes.patch
@@ -0,0 +1,24 @@
+From 1e1f53e9d91684918c34ec50392f86287e001a1e Mon Sep 17 00:00:00 2001
+From: Alexandr Akulich <[email protected]>
+Date: Fri, 15 Jan 2016 18:52:59 +0500
+Subject: [PATCH] BaseChannel: Reduced includes (doesn't depend on client stuff
+ anymore).
+
+---
+ TelepathyQt/base-channel.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/TelepathyQt/base-channel.cpp b/TelepathyQt/base-channel.cpp
+index eb41463..720d58e 100644
+--- a/TelepathyQt/base-channel.cpp
++++ b/TelepathyQt/base-channel.cpp
+@@ -26,7 +26,8 @@
+ 
+ #include "TelepathyQt/_gen/base-channel.moc.hpp"
+ #include "TelepathyQt/_gen/base-channel-internal.moc.hpp"
+-#include "TelepathyQt/future-internal.h"
++#include "TelepathyQt/_gen/future-constants.h"
++#include "TelepathyQt/_gen/future-types.h"
+ 
+ #include "TelepathyQt/debug-internal.h"
+ 

diff --git a/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-python.patch 
b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-python.patch
new file mode 100644
index 0000000..9eb6c32
--- /dev/null
+++ b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-python.patch
@@ -0,0 +1,43 @@
+From 3716c048d65d4984513591cb8b1031858201db6c Mon Sep 17 00:00:00 2001
+From: Alex Merry <[email protected]>
+Date: Sun, 16 Aug 2015 20:30:41 +0100
+Subject: [PATCH] Tell CMake what version of Python we want to find.
+
+This ensures that Python 2 is found if possible, rather than Python 3.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=91659
+
+Reviewed-by: Alexandr Akulich <[email protected]>
+---
+ CMakeLists.txt                        | 2 +-
+ cmake/modules/FindPythonLibrary.cmake | 3 ++-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9a014ce..a01b586 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -133,8 +133,8 @@ macro_log_feature(QT_GLIB_SUPPORT "Qt Glib Support"
+ set(CMAKE_REQUIRED_FLAGS "")
+ 
+ # Find python version >= 2.5
+-find_package(PythonLibrary REQUIRED)
+ set(REQUIRED_PY 2.5)
++find_package(PythonLibrary ${REQUIRED_PY} REQUIRED)
+ if(${PYTHON_SHORT_VERSION} VERSION_GREATER ${REQUIRED_PY} OR 
${PYTHON_SHORT_VERSION} VERSION_EQUAL ${REQUIRED_PY})
+     message(STATUS "Python ${PYTHON_SHORT_VERSION} found")
+ else(${PYTHON_SHORT_VERSION} VERSION_GREATER ${REQUIRED_PY} OR 
${PYTHON_SHORT_VERSION} VERSION_EQUAL ${REQUIRED_PY})
+diff --git a/cmake/modules/FindPythonLibrary.cmake 
b/cmake/modules/FindPythonLibrary.cmake
+index 2585859..c6bb712 100644
+--- a/cmake/modules/FindPythonLibrary.cmake
++++ b/cmake/modules/FindPythonLibrary.cmake
+@@ -28,7 +28,8 @@ if(EXISTS PYTHON_LIBRARY)
+   # Already in cache, be silent
+   set(PYTHONLIBRARY_FOUND TRUE)
+ else(EXISTS PYTHON_LIBRARY)
+-  FIND_PACKAGE(PythonInterp)
++  message(STATUS "PythonLibrary find version: ${PythonLibrary_FIND_VERSION}")
++  FIND_PACKAGE(PythonInterp ${PythonLibrary_FIND_VERSION})
+ 
+   if(PYTHONINTERP_FOUND)
+     FIND_FILE(_find_lib_python_py FindLibPython.py PATHS ${CMAKE_MODULE_PATH})

diff --git a/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-qtpath.patch 
b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-qtpath.patch
index 3753b90..a14e1da 100644
--- a/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-qtpath.patch
+++ b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-qtpath.patch
@@ -8,8 +8,8 @@ is necessary to find the correct version explicitly.
 
 Once qmake is found, it is queried for the correct location of all other items.
 
---- cmake/modules/FindQt.cmake
-+++ cmake/modules/FindQt.cmake
+--- a/cmake/modules/FindQt.cmake
++++ b/cmake/modules/FindQt.cmake
 @@ -19,7 +19,7 @@
  IF(NOT QT5_INSTALLED)
      IF(NOT QT_QMAKE_EXECUTABLE)

diff --git 
a/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-service-dependencies.patch 
b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-service-dependencies.patch
new file mode 100644
index 0000000..1b3bd76
--- /dev/null
+++ 
b/net-libs/telepathy-qt/files/telepathy-qt-0.9.6.1-service-dependencies.patch
@@ -0,0 +1,22 @@
+From 7389dc990c67d4269f3a79c924c054e87f2e4ac5 Mon Sep 17 00:00:00 2001
+From: Alexandr Akulich <[email protected]>
+Date: Fri, 15 Jan 2016 18:54:09 +0500
+Subject: [PATCH] CMakeLists: Added missing service dependence.
+
+telepathy-qt-service depends on generated stable and future types and consts.
+---
+ TelepathyQt/CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/TelepathyQt/CMakeLists.txt b/TelepathyQt/CMakeLists.txt
+index 58668cd..1b32d32 100644
+--- a/TelepathyQt/CMakeLists.txt
++++ b/TelepathyQt/CMakeLists.txt
+@@ -953,6 +953,7 @@ if(ENABLE_SERVICE_SUPPORT)
+     #endif (ENABLE_COMPILER_COVERAGE)
+     # lets build a static only library until we have a stable API/ABI
+     add_library(telepathy-qt${QT_VERSION_MAJOR}-service STATIC 
${telepathy_qt_service_SRCS})
++    add_dependencies(telepathy-qt${QT_VERSION_MAJOR}-service stable-typesgen 
future-typesgen)
+ 
+     # generate service moc files
+     foreach(moc_src ${telepathy_qt_service_MOC_SRCS})

diff --git a/net-libs/telepathy-qt/telepathy-qt-0.9.6.1-r1.ebuild 
b/net-libs/telepathy-qt/telepathy-qt-0.9.6.1-r1.ebuild
new file mode 100644
index 0000000..1ac2c44
--- /dev/null
+++ b/net-libs/telepathy-qt/telepathy-qt-0.9.6.1-r1.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+inherit python-any-r1 cmake-utils virtualx multibuild
+
+DESCRIPTION="Qt bindings for the Telepathy D-Bus protocol"
+HOMEPAGE="https://telepathy.freedesktop.org/";
+SRC_URI="https://telepathy.freedesktop.org/releases/${PN}/${P}.tar.gz";
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug farstream +qt4 qt5 test"
+
+REQUIRED_USE="|| ( qt4 qt5 )"
+
+RDEPEND="
+       farstream? (
+               >=net-libs/telepathy-farstream-0.2.2
+               >=net-libs/telepathy-glib-0.18.0
+       )
+       qt4? (
+               dev-qt/qtcore:4
+               dev-qt/qtdbus:4
+       )
+       qt5? (
+               dev-qt/qtcore:5
+               dev-qt/qtdbus:5
+               dev-qt/qtgui:5
+               dev-qt/qtnetwork:5
+               dev-qt/qtxml:5
+       )
+       !net-libs/telepathy-qt4
+"
+DEPEND="${RDEPEND}
+       ${PYTHON_DEPS}
+       virtual/pkgconfig
+       test? (
+               dev-libs/dbus-glib
+               dev-libs/glib:2
+               dev-python/dbus-python
+               qt4? ( dev-qt/qttest:4 )
+               qt5? ( dev-qt/qttest:5 )
+       )
+"
+
+DOCS=( AUTHORS ChangeLog HACKING NEWS README )
+
+PATCHES=(
+       "${FILESDIR}/${P}-default-source.patch"
+       "${FILESDIR}/${P}-yes-release.patch"
+       "${FILESDIR}/${P}-gstreamer-1.5.patch"
+       "${FILESDIR}/${P}-qtpath.patch"
+       "${FILESDIR}/${P}-python.patch"
+       "${FILESDIR}/${P}-includes.patch"
+       "${FILESDIR}/${P}-service-dependencies.patch"
+)
+
+# bug 549448 - last checked with 0.9.6.1
+RESTRICT="test"
+
+pkg_setup() {
+       python-any-r1_pkg_setup
+
+       MULTIBUILD_VARIANTS=( $(usev qt4) $(usev qt5) )
+}
+
+src_configure() {
+       myconfigure() {
+               local mycmakeargs=(
+                       -DENABLE_DEBUG_OUTPUT=$(usex debug)
+                       -DENABLE_FARSTREAM=$(usex farstream)
+                       -DENABLE_TESTS=$(usex test)
+                       -DENABLE_EXAMPLES=OFF
+               )
+               if [[ ${MULTIBUILD_VARIANT} = qt4 ]]; then
+                       mycmakeargs+=( -DDESIRED_QT_VERSION=4 )
+               fi
+               if [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then
+                       mycmakeargs+=( -DDESIRED_QT_VERSION=5 )
+               fi
+               cmake-utils_src_configure
+       }
+
+       multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+       multibuild_foreach_variant cmake-utils_src_compile
+}
+
+src_test() {
+       _test_runner() {
+               ctest -E '(CallChannel)'
+       }
+
+       mytest() {
+               pushd "${BUILD_DIR}" > /dev/null || die
+               virtx _test_runner
+               popd > /dev/null || die
+       }
+
+       multibuild_foreach_variant mytest
+}
+
+src_install() {
+       multibuild_foreach_variant cmake-utils_src_install
+}

Reply via email to