summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-portage/kuroo/files/kuroo-1.2.1-cmake.patch108
-rw-r--r--app-portage/kuroo/kuroo-1.2.1.ebuild2
2 files changed, 110 insertions, 0 deletions
diff --git a/app-portage/kuroo/files/kuroo-1.2.1-cmake.patch b/app-portage/kuroo/files/kuroo-1.2.1-cmake.patch
new file mode 100644
index 000000000000..a84a503f7d7d
--- /dev/null
+++ b/app-portage/kuroo/files/kuroo-1.2.1-cmake.patch
@@ -0,0 +1,108 @@
+Drop bogus dependencies, add implicit.
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -11,25 +11,32 @@
+ include(ECMInstallIcons)
+ include(ECMAddTests)
+
+-find_package(Qt5Widgets REQUIRED)
++# Works without this explicit declaration but it ought to be here for correctness
++find_package( SQLite3 REQUIRED )
+
+-find_package( KF5 ${KF5_MIN_VERSION} REQUIRED
+- Auth
+- Config
+- ConfigWidgets
+- CoreAddons
+- I18n
+- IconThemes
+- ItemModels
+- ItemViews
++# These are actually all deps of other things
++find_package( Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
++ Core
++ Gui
++ Widgets
++)
++
++find_package( KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
++ # These are all required directly and not provided by any dependencies. It "compiles and works" on the development system with just these
+ KIO
+ Notifications
+ ThreadWeaver
+ TextWidgets
+- Su
+- WidgetsAddons
+- WindowSystem
+- XmlGui
++ # Required in link step
++ XmlGui # MainWindow is XmlGuiWindow
++ ItemViews # TreeWidgetSearchLine
++ # These seem to be provided by deps, but should be direct deps too
++ ConfigWidgets
++ I18n # i18n(QStr)
++ Config # Config dialogs
++ Auth # KAuthExecuteJob &c.
++ CoreAddons # AboutData? Job Process User?
++ WidgetsAddons # Font(Chooser|Requester)? PageWidget? MessageBox ...
+ )
+
+ #
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -102,25 +102,37 @@
+ kde_enable_exceptions()
+
+ target_link_libraries( kuroo
++ # These are all used directly and not provided by any other dependency. It "compiles and works" on the development system with just these
++ KF5::KIOCore
++ KF5::Notifications
++ KF5::ThreadWeaver
++ KF5::TextWidgets
++ KF5::XmlGui
++ sqlite3 # TODO: use some sort of ORM maybe find_package?
++ KF5::ItemViews
++ # Builds without these specified, but they should be necessary
+ Qt5::Core
++ Qt5::Gui
++ Qt5::Widgets
+ KF5::Auth
++ KF5::AuthCore
+ KF5::ConfigCore
+ KF5::ConfigGui
++ KF5::ConfigWidgets
+ KF5::CoreAddons
+ KF5::I18n
+- KF5::ItemViews
+- KF5::KIOCore
+- KF5::Notifications
+- KF5::ThreadWeaver
+- KF5::TextWidgets
+ KF5::WidgetsAddons
+- KF5::WindowSystem
+- KF5::XmlGui
+- sqlite3
+ )
+
+ add_executable( kuroo_helper auth/kuroohelper.cpp )
+-target_link_libraries( kuroo_helper Qt5::Core KF5::KIOCore KF5::Auth KF5::CoreAddons )
++target_link_libraries( kuroo_helper
++ # These are all used directly and not provided by any other dependency. It "compiles and works" on the development system with just these
++ KF5::KIOCore
++ KF5::Auth
++ # Builds without explicit declaration, but these make sense
++ Qt5::Core
++ KF5::CoreAddons # KProcess
++)
+ install( TARGETS kuroo_helper DESTINATION ${KAUTH_HELPER_INSTALL_DIR} )
+ kauth_install_helper_files( kuroo_helper org.gentoo.portage.kuroo root )
+ kauth_install_actions( org.gentoo.portage.kuroo auth/org.gentoo.portage.kuroo.actions )
+@@ -139,6 +151,6 @@
+ ########### install ###############
+ install( TARGETS kuroo ${INSTALL_TARGETS_DEFAULT_ARGS} )
+ #install( FILES DESTINATION ${DATA_INSTALL_DIR}/autostart )
+-install( FILES config/kurooconfig.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
++install( FILES config/kurooconfig.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR} )
+ install( FILES kurooui.rc DESTINATION ${KXMLGUI_INSTALL_DIR}/kuroo )
+ install( FILES kuroo.desktop DESTINATION ${XDG_APPS_INSTALL_DIR}/System )
diff --git a/app-portage/kuroo/kuroo-1.2.1.ebuild b/app-portage/kuroo/kuroo-1.2.1.ebuild
index 8924ea2ecde2..c8ec7215a7e3 100644
--- a/app-portage/kuroo/kuroo-1.2.1.ebuild
+++ b/app-portage/kuroo/kuroo-1.2.1.ebuild
@@ -38,6 +38,8 @@ RDEPEND="${DEPEND}
kde-apps/kompare:5
"
+PATCHES=( "${FILESDIR}/${P}-cmake.patch" ) # bug 811693
+
pkg_postinst() {
if ! has_version app-admin/logrotate ; then
elog "Installing app-admin/logrotate is recommended to keep"