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