commit:     a133cf0b93333aa18165d667d85a2a797599d28c
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  7 17:48:48 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Sep  7 17:48:48 2020 +0000
URL:        https://gitweb.gentoo.org/proj/kde-sunset.git/commit/?id=a133cf0b

dev-libs/libdbusmenu-qt: Import latest version with IUSE="qt4,qt5"

This package will most likely reach EOL with Qt5 anyway.

Package-Manager: Portage-3.0.5, Repoman-3.0.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../libdbusmenu-qt-0.9.3_pre20160218-cmake.patch   | 258 +++++++++++++++++++++
 .../libdbusmenu-qt-0.9.3_pre20160218-r3.ebuild     |  95 ++++++++
 2 files changed, 353 insertions(+)

diff --git 
a/dev-libs/libdbusmenu-qt/files/libdbusmenu-qt-0.9.3_pre20160218-cmake.patch 
b/dev-libs/libdbusmenu-qt/files/libdbusmenu-qt-0.9.3_pre20160218-cmake.patch
new file mode 100644
index 00000000..e4668a52
--- /dev/null
+++ b/dev-libs/libdbusmenu-qt/files/libdbusmenu-qt-0.9.3_pre20160218-cmake.patch
@@ -0,0 +1,258 @@
+From 56669bd4e5ed21cfd2b0f5b94983792396695e5e Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlech...@gmail.com>
+Date: Sun, 17 Feb 2019 19:10:55 +0100
+Subject: [PATCH] Use more GNUInstallDirs, fix pkgconfig libdir path, general
+ cleanup
+
+---
+ CMakeLists.txt                | 45 ++++++++++++-----------------------
+ cmake/modules/FindQJSON.cmake |  2 +-
+ dbusmenu-qt-config.cmake.in   |  2 +-
+ dbusmenu-qt.pc.in             |  6 ++---
+ src/CMakeLists.txt            | 16 ++++++-------
+ tests/CMakeLists.txt          | 10 ++++----
+ tools/testapp/CMakeLists.txt  |  2 +-
+ 7 files changed, 34 insertions(+), 49 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 72cbc45..2d757ec 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 2.8.11)
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} 
"${CMAKE_SOURCE_DIR}/cmake/modules")
+ 
+ # Build options
+-option(WITH_DOC "Build documentation (requires Doxygen)" ON)
++option(WITH_DOC "Build documentation (requires Doxygen)" OFF)
+ 
+ # Versions
+ ## Package version
+@@ -24,28 +24,8 @@ set(dbusmenu_qt_lib_PATCH_VERSION 0)
+ 
+ set(dbusmenu_qt_lib_VERSION 
${dbusmenu_qt_lib_SOVERSION}.${dbusmenu_qt_lib_API_VERSION}.${dbusmenu_qt_lib_PATCH_VERSION})
+ 
+-# Check if we want to explicitly select the Qt version to be used or 
autodetect
+-if (NOT USE_QT4 AND NOT USE_QT5)
+-    # Autodetect, prefering Qt5
+-    message(STATUS "Autodetecting Qt version to use")
+-    find_package(Qt5Widgets QUIET)
+-    if (Qt5Widgets_FOUND)
+-        set(USE_QT5 TRUE)
+-    endif()
+-endif()
+-
+ # Detect for which Qt version we're building
+-if (USE_QT5)
+-    find_package(Qt5Widgets REQUIRED)
+-    find_package(Qt5DBus REQUIRED)
+-    include_directories(${Qt5Widgets_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS})
+-    find_package(Qt5Core REQUIRED)
+-    set(CMAKE_AUTOMOC ON)
+-    set(CMAKE_AUTOMOC_RELAXED_MODE ON)
+-    set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+-
+-    set(QT_SUFFIX "qt5")
+-else()
++if (USE_QT4)
+     find_package(Qt4 REQUIRED)
+     include_directories(
+       ${QT_INCLUDE_DIR}
+@@ -55,6 +35,14 @@ else()
+       )
+ 
+     set(QT_SUFFIX "qt")
++else()
++    find_package(Qt5 CONFIG REQUIRED Core DBus Widgets)
++    include_directories(${Qt5Widgets_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS})
++    set(CMAKE_AUTOMOC ON)
++    set(CMAKE_AUTOMOC_RELAXED_MODE ON)
++    set(CMAKE_POSITION_INDEPENDENT_CODE ON)
++
++    set(QT_SUFFIX "qt5")
+ endif()
+ 
+ include (CheckCXXCompilerFlag)
+@@ -76,9 +64,7 @@ endif (__DBUSMENU_HAVE_CXX11)
+ 
+ include(CMakePackageConfigHelpers)
+ include(GNUInstallDirs)
+-set(LIB_DESTINATION "${CMAKE_INSTALL_LIBDIR}")
+-set(CMAKECONFIG_INSTALL_DIR "${LIB_DESTINATION}/cmake/dbusmenu-${QT_SUFFIX}")
+-set(INCLUDE_INSTALL_DIR "include/dbusmenu-${QT_SUFFIX}")
++set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}/dbusmenu-${QT_SUFFIX}")
+ 
+ # dist targets
+ set(ARCHIVE_NAME libdbusmenu-${QT_SUFFIX}-${dbusmenu_qt_VERSION})
+@@ -103,7 +89,7 @@ add_dependencies(distcheck dist)
+ configure_file(dbusmenu-qt.pc.in ${CMAKE_BINARY_DIR}/dbusmenu-${QT_SUFFIX}.pc 
@ONLY)
+ 
+ install(FILES ${CMAKE_BINARY_DIR}/dbusmenu-${QT_SUFFIX}.pc
+-        DESTINATION ${LIB_DESTINATION}/pkgconfig
++        DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
+     )
+ 
+ add_subdirectory(src)
+@@ -118,7 +104,7 @@ if(WITH_DOC)
+         )
+ 
+     install(DIRECTORY ${CMAKE_BINARY_DIR}/html/
+-        DESTINATION share/doc/libdbusmenu-${QT_SUFFIX}-doc
++        DESTINATION ${CMAKE_INSTALL_DOCDIR}
+         )
+ endif(WITH_DOC)
+ 
+@@ -126,8 +112,8 @@ endif(WITH_DOC)
+ configure_package_config_file(
+     dbusmenu-qt-config.cmake.in
+     ${CMAKE_BINARY_DIR}/dbusmenu-${QT_SUFFIX}-config.cmake
+-    INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}
++    INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/dbusmenu-${QT_SUFFIX}
+     PATH_VARS INCLUDE_INSTALL_DIR
+     )
+ 
+ write_basic_package_version_file(
+@@ -140,6 +126,6 @@ write_basic_package_version_file(
+ install(FILES
+     ${CMAKE_BINARY_DIR}/dbusmenu-${QT_SUFFIX}-config.cmake
+     ${CMAKE_BINARY_DIR}/dbusmenu-${QT_SUFFIX}-config-version.cmake
+-    DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
++    DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/dbusmenu-${QT_SUFFIX}"
+     COMPONENT Devel
+     )
+--- a/cmake/modules/FindQJSON.cmake
++++ b/cmake/modules/FindQJSON.cmake
+@@ -34,7 +34,7 @@ else (QJSON_INCLUDE_DIR AND QJSON_LIBRARIES)
+     qjson/parser.h
+     PATHS
+     ${PC_QJSON_INCLUDE_DIRS}
+-    ${INCLUDE_INSTALL_DIR}
++    ${CMAKE_INSTALL_INCLUDEDIR}
+     ${KDE4_INCLUDE_DIR}
+   )
+ 
+--- a/dbusmenu-qt.pc.in
++++ b/dbusmenu-qt.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-exec_prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=@CMAKE_INSTALL_PREFIX@/lib
+-includedir=@CMAKE_INSTALL_PREFIX@/include/dbusmenu-@QT_SUFFIX@
++exec_prefix=${prefix}
++libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@/dbusmenu-@QT_SUFFIX@
+ 
+ Name: libdbusmenu-@QT_SUFFIX@
+ Description: Qt implementation of dbusmenu spec
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -29,7 +29,7 @@ endif (__DBUSMENU_HAVE_CXX11)
+ # Check whether QIcon::name() exists. It was added in late Qt 4.7 cycle, and 
is
+ # not present in betas.
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     set(CMAKE_REQUIRED_INCLUDES "${QT_INCLUDE_DIR}")
+     set(CMAKE_REQUIRED_LIBRARIES 
"${QT_QTGUI_LIBRARIES};${QT_QTCORE_LIBRARIES}")
+ else()
+@@ -64,7 +64,7 @@ include_directories(
+     ${CMAKE_BINARY_DIR}/src
+     )
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     qt4_automoc(${dbusmenu_qt_SRCS})
+     qt4_add_dbus_adaptor(dbusmenu_qt_SRCS
+         ${CMAKE_CURRENT_SOURCE_DIR}/com.canonical.dbusmenu.xml
+@@ -88,7 +88,7 @@ set_target_properties(dbusmenu-${QT_SUFFIX} PROPERTIES
+     )
+ 
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     target_link_libraries(dbusmenu-${QT_SUFFIX}
+         ${QT_QTGUI_LIBRARIES}
+         ${QT_QTDBUS_LIBRARIES}
+@@ -105,23 +105,23 @@ endif()
+ 
+ # Make sure linking to the target adds dbusmenu-qt install directory
+ target_include_directories(dbusmenu-${QT_SUFFIX}
+-    INTERFACE "$<INSTALL_INTERFACE:${INCLUDE_INSTALL_DIR}>")
++    INTERFACE 
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/dbusmenu-${QT_SUFFIX}>")
+ 
+ install(TARGETS dbusmenu-${QT_SUFFIX}
+     EXPORT dbusmenu-${QT_SUFFIX}-targets
+-    LIBRARY DESTINATION ${LIB_DESTINATION}
++    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+     RUNTIME DESTINATION bin
+     )
+ 
+ install(EXPORT dbusmenu-${QT_SUFFIX}-targets
+-    DESTINATION ${CMAKECONFIG_INSTALL_DIR})
++    DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/dbusmenu-${QT_SUFFIX})
+ 
+ install(DIRECTORY .
+-    DESTINATION ${INCLUDE_INSTALL_DIR}
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dbusmenu-${QT_SUFFIX}
+     FILES_MATCHING PATTERN "*.h"
+     PATTERN "*_p.h" EXCLUDE
+     )
+ 
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dbusmenu_version.h
+-    DESTINATION ${INCLUDE_INSTALL_DIR}
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dbusmenu-${QT_SUFFIX}
+     )
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -1,9 +1,9 @@
+-if (NOT USE_QT5)
++if (USE_QT4)
+     qt4_automoc(slowmenu.cpp)
+ endif()
+ add_executable(slowmenu slowmenu.cpp)
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     target_link_libraries(slowmenu
+         ${QT_QTGUI_LIBRARIES}
+         ${QT_QTDBUS_LIBRARIES}
+@@ -77,7 +77,7 @@ set(dbusmenuexportertest_SRCS
+     testutils.cpp
+     )
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     qt4_automoc(${dbusmenuexportertest_SRCS})
+ endif()
+ 
+@@ -94,7 +94,7 @@ set(dbusmenuimportertest_SRCS
+     testutils.cpp
+     )
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     qt4_automoc(${dbusmenuimportertest_SRCS})
+ endif()
+ 
+@@ -110,7 +110,7 @@ set(dbusmenushortcuttest_SRCS
+     dbusmenushortcuttest.cpp
+     )
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     qt4_automoc(${dbusmenushortcuttest_SRCS})
+ endif()
+ 
+--- a/tools/testapp/CMakeLists.txt
++++ b/tools/testapp/CMakeLists.txt
+@@ -4,7 +4,7 @@ set(qtapp_SRCS
+ 
+ add_executable(dbusmenubench-qtapp ${qtapp_SRCS})
+ 
+-if (NOT USE_QT5)
++if (USE_QT4)
+     # Qt4
+     include_directories(
+         ${CMAKE_CURRENT_SOURCE_DIR}/../../src
+-- 
+2.20.1
+

diff --git a/dev-libs/libdbusmenu-qt/libdbusmenu-qt-0.9.3_pre20160218-r3.ebuild 
b/dev-libs/libdbusmenu-qt/libdbusmenu-qt-0.9.3_pre20160218-r3.ebuild
new file mode 100644
index 00000000..9540f7de
--- /dev/null
+++ b/dev-libs/libdbusmenu-qt/libdbusmenu-qt-0.9.3_pre20160218-r3.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+MY_PV=${PV/_pre/+16.04.}
+inherit cmake-multilib multibuild
+
+DESCRIPTION="Library providing Qt implementation of DBusMenu specification"
+HOMEPAGE="https://launchpad.net/libdbusmenu-qt/";
+SRC_URI="https://launchpad.net/ubuntu/+archive/primary/+files/${PN}_${MY_PV}.orig.tar.gz";
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="+qt4 qt5"
+
+REQUIRED_USE="|| ( qt4 qt5 )"
+
+DEPEND="
+       qt4? (
+               >=dev-qt/qtcore-4.8.6:4[${MULTILIB_USEDEP}]
+               >=dev-qt/qtdbus-4.8.6:4[${MULTILIB_USEDEP}]
+               >=dev-qt/qtgui-4.8.6:4[${MULTILIB_USEDEP}]
+       )
+       qt5? (
+               dev-qt/qtcore:5
+               dev-qt/qtdbus:5
+               dev-qt/qtgui:5
+               dev-qt/qtwidgets:5
+       )
+"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"/${PN}-${MY_PV}
+
+PATCHES=( "${FILESDIR}/${P}-cmake.patch" )
+
+pkg_setup() {
+       MULTIBUILD_VARIANTS=( $(usex qt4 4) $(usex qt5 5) )
+}
+
+src_prepare() {
+       cmake_src_prepare
+
+       cmake_comment_add_subdirectory tools
+       # tests fail due to missing connection to dbus
+       cmake_comment_add_subdirectory tests
+}
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               -DWITH_DOC=OFF
+       )
+       [[ ${QT_MULTIBUILD_VARIANT} = 4 ]] && mycmakeargs+=(
+               -DUSE_QT4=ON
+               
-DQT_QMAKE_EXECUTABLE="/usr/$(get_libdir)/qt${QT_MULTIBUILD_VARIANT}/bin/qmake"
+       )
+       cmake_src_configure
+}
+
+src_configure() {
+       myconfigure() {
+               local QT_MULTIBUILD_VARIANT=${MULTIBUILD_VARIANT}
+               if [[ ${MULTIBUILD_VARIANT} = 4 ]] ; then
+                       cmake-multilib_src_configure
+               elif [[ ${MULTIBUILD_VARIANT} = 5 ]] ; then
+                       multilib_src_configure
+               fi
+       }
+       multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+       mycompile() {
+               if [[ ${MULTIBUILD_VARIANT} = 4 ]] ; then
+                       cmake-multilib_src_compile
+               elif [[ ${MULTIBUILD_VARIANT} = 5 ]] ; then
+                       cmake_src_compile
+               fi
+       }
+       multibuild_foreach_variant mycompile
+}
+
+src_install() {
+       myinstall() {
+               if [[ ${MULTIBUILD_VARIANT} = 4 ]] ; then
+                       cmake-multilib_src_install
+               elif [[ ${MULTIBUILD_VARIANT} = 5 ]] ; then
+                       cmake_src_install
+               fi
+       }
+       multibuild_foreach_variant myinstall
+}

Reply via email to