summaryrefslogtreecommitdiff
path: root/app-portage/kuroo/files/kuroo-1.2.1-cmake.patch
blob: a84a503f7d7d42a02bfed4ee9f2b75e9590ac389 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
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 )