]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
Guide users to using kio-admin instead of sudo
[dolphin.git] / src / CMakeLists.txt
1 include(ECMAddAppIcon)
2
3 set(ADMIN_WORKER_PACKAGE_NAME "kio-admin")
4 configure_file(config-dolphin.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-dolphin.h)
5
6 add_definitions(
7 -DTRANSLATION_DOMAIN=\"dolphin\"
8 )
9 remove_definitions(
10 -DQT_NO_CAST_FROM_BYTEARRAY
11 -DQT_NO_CAST_FROM_ASCII
12 -DQT_NO_CAST_TO_ASCII
13 )
14
15 ##########################################
16
17 add_library(dolphinvcs SHARED)
18
19 target_sources(dolphinvcs PRIVATE
20 views/versioncontrol/kversioncontrolplugin.cpp
21 )
22
23 generate_export_header(dolphinvcs BASE_NAME dolphinvcs)
24
25 target_link_libraries(
26 dolphinvcs PUBLIC
27 Qt6::Widgets
28 )
29
30 set_target_properties(dolphinvcs PROPERTIES
31 VERSION ${DOLPHINVCS_VERSION}
32 SOVERSION ${DOLPHINVCS_SOVERSION}
33 EXPORT_NAME DolphinVcs
34 )
35
36 ecm_generate_headers(dolphinvcs_LIB_HEADERS
37 HEADER_NAMES
38 KVersionControlPlugin
39
40 RELATIVE "views/versioncontrol"
41 REQUIRED_HEADERS dolphinvcs_LIB_HEADERS
42 )
43 target_include_directories(dolphinvcs INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR}>")
44
45 install(TARGETS dolphinvcs EXPORT DolphinVcsTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
46
47 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphinvcs_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR} COMPONENT Devel)
48 install(FILES ${dolphinvcs_LIB_HEADERS} DESTINATION "${KDE_INSTALL_INCLUDEDIR}/Dolphin" COMPONENT Devel)
49
50 ########### next target ###############
51
52 add_library(dolphinprivate SHARED)
53
54 target_sources(dolphinprivate PRIVATE
55 kitemviews/kfileitemlistview.cpp
56 kitemviews/kfileitemlistwidget.cpp
57 kitemviews/kfileitemlisttostring.cpp
58 kitemviews/kfileitemmodel.cpp
59 kitemviews/kfileitemmodelrolesupdater.cpp
60 kitemviews/kitemlistcontainer.cpp
61 kitemviews/kitemlistcontroller.cpp
62 kitemviews/kitemlistgroupheader.cpp
63 kitemviews/kitemlistheader.cpp
64 kitemviews/kitemlistselectionmanager.cpp
65 kitemviews/kitemliststyleoption.cpp
66 kitemviews/kitemlistview.cpp
67 kitemviews/kitemlistviewaccessible.cpp
68 kitemviews/kitemlistwidget.cpp
69 kitemviews/kitemmodelbase.cpp
70 kitemviews/kitemset.cpp
71 kitemviews/kstandarditemlistgroupheader.cpp
72 kitemviews/kstandarditemlistwidget.cpp
73 kitemviews/kstandarditemlistview.cpp
74 kitemviews/private/kdirectorycontentscounter.cpp
75 kitemviews/private/kdirectorycontentscounterworker.cpp
76 kitemviews/private/kfileitemclipboard.cpp
77 kitemviews/private/kfileitemmodelfilter.cpp
78 kitemviews/private/kitemlistheaderwidget.cpp
79 kitemviews/private/kitemlistkeyboardsearchmanager.cpp
80 kitemviews/private/kitemlistroleeditor.cpp
81 kitemviews/private/kitemlistrubberband.cpp
82 kitemviews/private/kitemlistselectiontoggle.cpp
83 kitemviews/private/kitemlistsizehintresolver.cpp
84 kitemviews/private/kitemlistsmoothscroller.cpp
85 kitemviews/private/kitemlistviewanimation.cpp
86 kitemviews/private/kitemlistviewlayouter.cpp
87 kitemviews/private/kitemviewsutils.cpp
88 kitemviews/private/kpixmapmodifier.cpp
89 settings/applyviewpropsjob.cpp
90 settings/viewmodes/viewmodesettings.cpp
91 settings/viewpropertiesdialog.cpp
92 settings/viewpropsprogressinfo.cpp
93 selectionmode/actiontexthelper.cpp
94 views/dolphinfileitemlistwidget.cpp
95 views/dolphinitemlistview.cpp
96 views/dolphinnewfilemenuobserver.cpp
97 views/dolphinremoteencoding.cpp
98 views/dolphinview.cpp
99 views/dolphinviewactionhandler.cpp
100 views/draganddrophelper.cpp
101 views/versioncontrol/updateitemstatesthread.cpp
102 views/versioncontrol/versioncontrolobserver.cpp
103 views/viewmodecontroller.cpp
104 views/viewproperties.cpp
105 views/zoomlevelinfo.cpp
106 dolphinremoveaction.cpp
107 middleclickactioneventfilter.cpp
108 dolphinnewfilemenu.cpp
109
110 kitemviews/kfileitemlistview.h
111 kitemviews/kfileitemlistwidget.h
112 kitemviews/kfileitemlisttostring.h
113 kitemviews/kfileitemmodel.h
114 kitemviews/kfileitemmodelrolesupdater.h
115 kitemviews/kitemlistcontainer.h
116 kitemviews/kitemlistcontroller.h
117 kitemviews/kitemlistgroupheader.h
118 kitemviews/kitemlistheader.h
119 kitemviews/kitemlistselectionmanager.h
120 kitemviews/kitemliststyleoption.h
121 kitemviews/kitemlistview.h
122 kitemviews/kitemlistviewaccessible.h
123 kitemviews/kitemlistwidget.h
124 kitemviews/kitemmodelbase.h
125 kitemviews/kitemset.h
126 kitemviews/kstandarditemlistgroupheader.h
127 kitemviews/kstandarditemlistwidget.h
128 kitemviews/kstandarditemlistview.h
129 kitemviews/private/kdirectorycontentscounter.h
130 kitemviews/private/kdirectorycontentscounterworker.h
131 kitemviews/private/kfileitemclipboard.h
132 kitemviews/private/kfileitemmodelfilter.h
133 kitemviews/private/kitemlistheaderwidget.h
134 kitemviews/private/kitemlistkeyboardsearchmanager.h
135 kitemviews/private/kitemlistroleeditor.h
136 kitemviews/private/kitemlistrubberband.h
137 kitemviews/private/kitemlistselectiontoggle.h
138 kitemviews/private/kitemlistsizehintresolver.h
139 kitemviews/private/kitemlistsmoothscroller.h
140 kitemviews/private/kitemlistviewanimation.h
141 kitemviews/private/kitemlistviewlayouter.h
142 kitemviews/private/kpixmapmodifier.h
143 settings/applyviewpropsjob.h
144 settings/viewmodes/viewmodesettings.h
145 settings/viewpropertiesdialog.h
146 settings/viewpropsprogressinfo.h
147 selectionmode/actiontexthelper.h
148 views/dolphinfileitemlistwidget.h
149 views/dolphinitemlistview.h
150 views/dolphinnewfilemenuobserver.h
151 views/dolphinremoteencoding.h
152 views/dolphinview.h
153 views/dolphinviewactionhandler.h
154 views/draganddrophelper.h
155 views/versioncontrol/updateitemstatesthread.h
156 views/versioncontrol/versioncontrolobserver.h
157 views/viewmodecontroller.h
158 views/viewproperties.h
159 views/zoomlevelinfo.h
160 dolphinremoveaction.h
161 middleclickactioneventfilter.h
162 dolphinnewfilemenu.h
163 )
164
165 ecm_qt_declare_logging_category(dolphinprivate
166 HEADER dolphindebug.h
167 IDENTIFIER DolphinDebug
168 CATEGORY_NAME org.kde.dolphin
169 DESCRIPTION "dolphin"
170 EXPORT DOLPHIN
171 )
172
173 if(HAVE_BALOO)
174 target_sources(dolphinprivate PRIVATE
175 views/tooltips/dolphinfilemetadatawidget.cpp
176 views/tooltips/tooltipmanager.cpp
177 kitemviews/private/kbaloorolesprovider.cpp
178 views/tooltips/dolphinfilemetadatawidget.h
179 views/tooltips/tooltipmanager.h
180 kitemviews/private/kbaloorolesprovider.h
181 )
182 endif()
183
184 kconfig_add_kcfg_files(dolphinprivate
185 settings/dolphin_compactmodesettings.kcfgc
186 settings/dolphin_directoryviewpropertysettings.kcfgc
187 settings/dolphin_detailsmodesettings.kcfgc
188 settings/dolphin_iconsmodesettings.kcfgc
189 settings/dolphin_contentdisplaysettings.kcfgc
190 settings/dolphin_generalsettings.kcfgc
191 settings/dolphin_contextmenusettings.kcfgc
192 settings/dolphin_versioncontrolsettings.kcfgc
193 GENERATE_MOC
194 )
195
196 generate_export_header(dolphinprivate BASE_NAME dolphin)
197
198 target_link_libraries(
199 dolphinprivate PUBLIC
200 dolphinvcs
201 Qt6::Concurrent
202 Qt6::DBus
203 Qt6::Gui
204 KF6::I18n
205 KF6::IconThemes
206 KF6::KIOCore
207 KF6::KIOWidgets
208 KF6::KIOFileWidgets
209 KF6::Completion
210 KF6::TextWidgets
211 KF6::ConfigCore
212 KF6::NewStuffWidgets # KNSWidgets::Button
213 KF6::Parts
214 KF6::WindowSystem
215 KF6::WidgetsAddons
216 KF6::Codecs
217 KF6::KCMUtils
218
219 ${FTS_LIB}
220 )
221
222 if(HAVE_BALOO)
223 target_link_libraries(
224 dolphinprivate PUBLIC
225 KF6::FileMetaData
226 KF6::Baloo
227 KF6::BalooWidgets
228 )
229 endif()
230
231 set_target_properties(dolphinprivate PROPERTIES
232 VERSION ${DOLPHINPRIVATE_VERSION}
233 SOVERSION ${DOLPHINPRIVATE_SOVERSION}
234 )
235
236 install(TARGETS dolphinprivate ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP)
237 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphin_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR} COMPONENT Devel)
238
239 ##########################################
240 configure_file(dolphinpart.json.in ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.json @ONLY)
241
242 add_library(dolphinpart MODULE)
243
244 target_sources(dolphinpart PRIVATE
245 dolphinpart.cpp
246 dolphinpart_ext.cpp
247 dolphindebug.cpp
248 dolphinpart.h
249 dolphinpart_ext.h
250 dolphindebug.h
251
252 dolphinpart.qrc
253 )
254
255 target_link_libraries(dolphinpart
256 dolphinprivate
257 )
258
259 install(TARGETS dolphinpart DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf6/parts)
260 install(FILES dolphinpartactions.desktop DESTINATION "${KDE_INSTALL_DATADIR}/dolphin/")
261
262 ##########################################
263
264 add_library(dolphinstatic STATIC)
265
266 target_sources(dolphinstatic PRIVATE
267 admin/bar.cpp
268 admin/workerintegration.cpp
269 animatedheightwidget.cpp
270 disabledactionnotifier.cpp
271 dolphinbookmarkhandler.cpp
272 dolphindockwidget.cpp
273 dolphinmainwindow.cpp
274 dolphinviewcontainer.cpp
275 dolphincontextmenu.cpp
276 dolphinnavigatorswidgetaction.cpp
277 dolphintabbar.cpp
278 dolphinpackageinstaller.cpp
279 dolphinplacesmodelsingleton.cpp
280 dolphinrecenttabsmenu.cpp
281 dolphintabpage.cpp
282 dolphintabwidget.cpp
283 dolphinurlnavigator.cpp
284 dolphinurlnavigatorscontroller.cpp
285 trash/dolphintrash.cpp
286 filterbar/filterbar.cpp
287 kitemviews/kfileitemlisttostring.cpp
288 panels/places/placespanel.cpp
289 panels/panel.cpp
290 panels/folders/foldersitemlistwidget.cpp
291 panels/folders/treeviewcontextmenu.cpp
292 panels/folders/folderspanel.cpp
293 panels/terminal/terminalpanel.cpp
294 search/dolphinfacetswidget.cpp
295 search/dolphinquery.cpp
296 search/dolphinsearchbox.cpp
297 selectionmode/actiontexthelper.cpp
298 selectionmode/actionwithwidget.cpp
299 selectionmode/backgroundcolorhelper.cpp
300 selectionmode/bottombar.cpp
301 selectionmode/bottombarcontentscontainer.cpp
302 selectionmode/topbar.cpp
303 settings/interface/folderstabssettingspage.cpp
304 settings/interface/statusandlocationbarssettingspage.cpp
305 settings/interface/confirmationssettingspage.cpp
306 settings/interface/interfacesettingspage.cpp
307 settings/interface/previewssettingspage.cpp
308 settings/dolphinsettingsdialog.cpp
309 settings/contextmenu/contextmenusettingspage.cpp
310 settings/settingspagebase.cpp
311 settings/servicemodel.cpp
312 settings/trash/trashsettingspage.cpp
313 settings/viewmodes/dolphinfontrequester.cpp
314 settings/viewmodes/viewsettingspage.cpp
315 settings/viewmodes/viewmodesettings.cpp
316 settings/viewmodes/viewsettingstab.cpp
317 settings/viewmodes/contentdisplaytab.cpp
318 settings/viewmodes/generalviewsettingspage.cpp
319 statusbar/dolphinstatusbar.cpp
320 statusbar/mountpointobserver.cpp
321 statusbar/mountpointobservercache.cpp
322 statusbar/spaceinfoobserver.cpp
323 statusbar/statusbarspaceinfo.cpp
324 views/zoomlevelinfo.cpp
325 dolphindebug.cpp
326 global.cpp
327 dolphin.qrc
328
329 admin/bar.h
330 admin/workerintegration.h
331 animatedheightwidget.h
332 dolphinbookmarkhandler.h
333 dolphindockwidget.h
334 dolphinmainwindow.h
335 dolphinviewcontainer.h
336 dolphincontextmenu.h
337 dolphinnavigatorswidgetaction.h
338 dolphintabbar.h
339 dolphinpackageinstaller.h
340 dolphinplacesmodelsingleton.h
341 dolphinrecenttabsmenu.h
342 dolphintabpage.h
343 dolphintabwidget.h
344 dolphinurlnavigator.h
345 dolphinurlnavigatorscontroller.h
346 trash/dolphintrash.h
347 filterbar/filterbar.h
348 kitemviews/kfileitemlisttostring.h
349 panels/places/placespanel.h
350 panels/panel.h
351 panels/folders/foldersitemlistwidget.h
352 panels/folders/treeviewcontextmenu.h
353 panels/folders/folderspanel.h
354 panels/terminal/terminalpanel.h
355 search/dolphinfacetswidget.h
356 search/dolphinquery.h
357 search/dolphinsearchbox.h
358 selectionmode/actiontexthelper.h
359 selectionmode/actionwithwidget.h
360 selectionmode/backgroundcolorhelper.h
361 selectionmode/bottombar.h
362 selectionmode/bottombarcontentscontainer.h
363 selectionmode/topbar.h
364 settings/interface/folderstabssettingspage.h
365 settings/interface/statusandlocationbarssettingspage.h
366 settings/interface/confirmationssettingspage.h
367 settings/interface/interfacesettingspage.h
368 settings/interface/previewssettingspage.h
369 settings/dolphinsettingsdialog.h
370 settings/contextmenu/contextmenusettingspage.h
371 settings/settingspagebase.h
372 settings/servicemodel.h
373 settings/trash/trashsettingspage.h
374 settings/viewmodes/dolphinfontrequester.h
375 settings/viewmodes/viewsettingspage.h
376 settings/viewmodes/viewmodesettings.h
377 settings/viewmodes/viewsettingstab.h
378 settings/viewmodes/contentdisplaytab.h
379 settings/viewmodes/generalviewsettingspage.h
380 statusbar/dolphinstatusbar.h
381 statusbar/mountpointobserver.h
382 statusbar/mountpointobservercache.h
383 statusbar/spaceinfoobserver.h
384 statusbar/statusbarspaceinfo.h
385 views/zoomlevelinfo.h
386 dolphindebug.h
387 global.h
388 )
389
390 if(HAVE_BALOO)
391 target_sources(dolphinstatic PRIVATE
392 panels/information/informationpanel.cpp
393 panels/information/informationpanelcontent.cpp
394 panels/information/pixmapviewer.cpp
395 panels/information/phononwidget.cpp
396 settings/interface/panelsettingspage.cpp
397 panels/information/informationpanel.h
398 panels/information/informationpanelcontent.h
399 panels/information/pixmapviewer.h
400 panels/information/phononwidget.h
401 settings/interface/panelsettingspage.h
402 )
403
404 kconfig_add_kcfg_files(dolphinstatic
405 panels/information/dolphin_informationpanelsettings.kcfgc
406 )
407
408 endif()
409
410 if(HAVE_KUSERFEEDBACK)
411 target_sources(dolphinstatic PRIVATE
412 userfeedback/dolphinfeedbackprovider.cpp
413 userfeedback/settingsdatasource.cpp
414 userfeedback/placesdatasource.cpp
415 settings/userfeedback/userfeedbacksettingspage.cpp
416 userfeedback/dolphinfeedbackprovider.h
417 userfeedback/settingsdatasource.h
418 userfeedback/placesdatasource.h
419 settings/userfeedback/userfeedbacksettingspage.h
420 )
421 endif()
422
423 kconfig_add_kcfg_files(dolphinstatic
424 panels/folders/dolphin_folderspanelsettings.kcfgc
425 panels/places/dolphin_placespanelsettings.kcfgc
426 settings/dolphin_compactmodesettings.kcfgc
427 settings/dolphin_detailsmodesettings.kcfgc
428 settings/dolphin_contextmenusettings.kcfgc
429 settings/dolphin_iconsmodesettings.kcfgc
430 settings/dolphin_contentdisplaysettings.kcfgc
431 search/dolphin_searchsettings.kcfgc
432 settings/dolphin_versioncontrolsettings.kcfgc
433 )
434 kconfig_add_kcfg_files(dolphinstatic GENERATE_MOC
435 settings/dolphin_generalsettings.kcfgc
436 )
437
438 qt_generate_dbus_interface(${CMAKE_CURRENT_SOURCE_DIR}/dolphinmainwindow.h org.kde.DolphinMainWindow.xml)
439 qt_add_dbus_adaptor(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindow.h DolphinMainWindow)
440 qt_add_dbus_interface(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindowinterface)
441 qt_add_dbus_interface(dolphin_dbus_SRCS panels/terminal/org.kde.KIOFuse.VFS.xml kiofuse_interface)
442
443 target_sources(dolphinstatic PRIVATE
444 ${dolphin_dbus_SRCS}
445 )
446
447 target_include_directories(dolphinstatic SYSTEM PRIVATE ${PHONON_INCLUDES})
448 target_link_libraries(dolphinstatic
449 dolphinprivate
450 KF6::CoreAddons
451 KF6::KCMUtils
452 KF6::DBusAddons
453 KF6::Notifications
454 KF6::BookmarksWidgets
455 Phonon::phonon4qt6
456 )
457
458 if (HAVE_PLASMA_ACTIVITIES)
459 target_link_libraries(
460 dolphinstatic
461 Plasma::Activities
462 )
463 endif()
464
465 if(HAVE_PACKAGEKIT)
466 target_link_libraries(
467 dolphinstatic
468 PK::packagekitqt6
469 )
470 endif()
471
472 if (HAVE_KUSERFEEDBACK)
473 target_link_libraries(
474 dolphinstatic
475 KF6::UserFeedbackCore
476 KF6::UserFeedbackWidgets
477 )
478 endif()
479
480 add_executable(dolphin)
481
482 target_sources(dolphin PRIVATE
483 dbusinterface.cpp
484 dbusinterface.h
485 main.cpp
486 )
487
488 if(FLATPAK)
489 target_compile_definitions(dolphin PRIVATE FLATPAK)
490 endif()
491
492 # Install the icons on macOS and Windows
493 ecm_add_app_icon(dolphin
494 ICONS
495 icons/128-apps-org.kde.dolphin.png
496 icons/16-apps-org.kde.dolphin.png
497 icons/22-apps-org.kde.dolphin.png
498 icons/32-apps-org.kde.dolphin.png
499 icons/48-apps-org.kde.dolphin.png
500 icons/64-apps-org.kde.dolphin.png
501 )
502
503 install(FILES icons/org.kde.dolphin.svg DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/scalable/apps)
504
505 target_link_libraries(dolphin
506 PRIVATE
507 dolphinprivate
508 dolphinstatic
509 KF6::Crash
510 )
511
512 if (HAVE_X11)
513 target_link_libraries(dolphin PRIVATE Qt::GuiPrivate)
514 endif()
515
516 include(DbusInterfaceMacros)
517
518 generate_and_install_dbus_interface(
519 dolphin
520 dbusinterface.h
521 org.freedesktop.FileManager1.xml
522 OPTIONS -a
523 )
524
525 install(TARGETS dolphin ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
526
527 ##########################################
528
529 if(NOT WIN32)
530 # The settings are still accessible from the hamburger menu
531 add_library(kcm_dolphinviewmodes MODULE)
532 add_library(kcm_dolphingeneral MODULE)
533
534 target_sources(kcm_dolphinviewmodes PRIVATE
535 settings/kcm/kcmdolphinviewmodes.cpp
536 settings/viewmodes/dolphinfontrequester.cpp
537 settings/viewmodes/viewmodesettings.cpp
538 settings/viewmodes/viewsettingstab.cpp
539 settings/settingspagebase.cpp
540 views/zoomlevelinfo.cpp
541 settings/kcm/kcmdolphinviewmodes.h
542 settings/viewmodes/dolphinfontrequester.h
543 settings/viewmodes/viewmodesettings.h
544 settings/viewmodes/viewsettingstab.h
545 views/zoomlevelinfo.h)
546
547 target_sources(kcm_dolphingeneral PRIVATE
548 settings/kcm/kcmdolphingeneral.cpp
549 settings/interface/folderstabssettingspage.cpp
550 settings/interface/statusandlocationbarssettingspage.cpp
551 settings/interface/previewssettingspage.cpp
552 settings/interface/confirmationssettingspage.cpp
553 settings/settingspagebase.cpp
554 settings/servicemodel.cpp
555 dolphin_generalsettings.cpp
556 dolphindebug.cpp
557 dolphinmainwindowinterface.cpp
558 views/viewproperties.cpp
559 dolphin_directoryviewpropertysettings.cpp
560 global.cpp
561 settings/kcm/kcmdolphingeneral.h
562 settings/interface/folderstabssettingspage.h
563 settings/interface/statusandlocationbarssettingspage.h
564 settings/interface/previewssettingspage.h
565 settings/interface/confirmationssettingspage.h
566 settings/settingspagebase.h
567 settings/servicemodel.h
568 dolphin_generalsettings.h
569 dolphindebug.h
570 dolphinmainwindowinterface.h
571 views/viewproperties.h
572 dolphin_directoryviewpropertysettings.h
573 global.h
574 )
575
576 kconfig_add_kcfg_files(kcm_dolphinviewmodes
577 settings/dolphin_compactmodesettings.kcfgc
578 settings/dolphin_directoryviewpropertysettings.kcfgc
579 settings/dolphin_detailsmodesettings.kcfgc
580 settings/dolphin_iconsmodesettings.kcfgc
581 settings/dolphin_contentdisplaysettings.kcfgc
582 settings/dolphin_generalsettings.kcfgc
583 settings/dolphin_versioncontrolsettings.kcfgc
584 GENERATE_MOC
585 )
586
587 kconfig_add_kcfg_files(kcm_dolphingeneral
588 settings/dolphin_generalsettings.kcfgc
589 GENERATE_MOC
590 )
591
592 target_link_libraries(kcm_dolphinviewmodes dolphinprivate)
593 target_link_libraries(kcm_dolphingeneral dolphinprivate)
594
595 install( FILES org.kde.dolphin.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR} )
596
597 install(TARGETS kcm_dolphinviewmodes DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms )
598 install(TARGETS kcm_dolphingeneral DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms )
599 endif()
600
601 if(NOT WIN32)
602 add_subdirectory(settings/contextmenu/servicemenuinstaller)
603 install( FILES settings/contextmenu/servicemenu.knsrc DESTINATION ${KDE_INSTALL_KNSRCDIR} )
604 endif()
605
606 ########### install files ###############
607
608 install( PROGRAMS org.kde.dolphin.desktop DESTINATION ${KDE_INSTALL_APPDIR} )
609
610 install( DIRECTORY DESTINATION "${KDE_INSTALL_FULL_DATAROOTDIR}/kglobalaccel" )
611
612 install(
613 CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"${KDE_INSTALL_FULL_APPDIR}/org.kde.dolphin.desktop\" \"\$ENV{DESTDIR}${KDE_INSTALL_FULL_DATAROOTDIR}/kglobalaccel/org.kde.dolphin.desktop\")"
614 )
615
616 install( FILES settings/dolphin_directoryviewpropertysettings.kcfg
617 settings/dolphin_generalsettings.kcfg
618 settings/dolphin_contextmenusettings.kcfg
619 settings/dolphin_compactmodesettings.kcfg
620 settings/dolphin_iconsmodesettings.kcfg
621 settings/dolphin_detailsmodesettings.kcfg
622 settings/dolphin_contentdisplaysettings.kcfg
623 settings/dolphin_versioncontrolsettings.kcfg
624 DESTINATION ${KDE_INSTALL_KCFGDIR} )
625
626 install( FILES settings/dolphin_detailsmodesettings.upd
627 settings/dolphin_directorysizemode.upd
628 settings/dolphin_directorysizemode.py
629 DESTINATION ${KDE_INSTALL_KCONFUPDATEDIR} )
630
631 if(BUILD_TESTING)
632 add_subdirectory(tests)
633 endif()
634
635 # movetonewfolderitemaction plugin
636
637 kcoreaddons_add_plugin(movetonewfolderitemaction
638 SOURCES itemactions/movetonewfolderitemaction.cpp itemactions/movetonewfolderitemaction.h
639 INSTALL_NAMESPACE "kf6/kfileitemaction")
640
641 target_link_libraries(movetonewfolderitemaction
642 KF6::I18n
643 KF6::KIOCore
644 KF6::KIOWidgets
645 KF6::KIOFileWidgets)