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