]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
5b02a0f76ebf925253788f632668bafdbdf8546f
[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 KF6::ColorScheme
234
235 ${FTS_LIB}
236 )
237
238 if(HAVE_BALOO)
239 target_link_libraries(
240 dolphinprivate PUBLIC
241 KF6::Baloo
242 KF6::BalooWidgets
243 )
244 endif()
245
246 set_target_properties(dolphinprivate PROPERTIES
247 VERSION ${DOLPHINPRIVATE_VERSION}
248 SOVERSION ${DOLPHINPRIVATE_SOVERSION}
249 )
250
251 install(TARGETS dolphinprivate ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP)
252 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphin_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR} COMPONENT Devel)
253
254 ##########################################
255 configure_file(dolphinpart.json.in ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.json @ONLY)
256
257 add_library(dolphinpart MODULE)
258
259 target_sources(dolphinpart PRIVATE
260 dolphinpart.cpp
261 dolphinpart_ext.cpp
262 dolphindebug.cpp
263 dolphinpart.h
264 dolphinpart_ext.h
265 dolphindebug.h
266
267 dolphinpart.qrc
268 )
269
270 target_link_libraries(dolphinpart
271 dolphinprivate
272 )
273
274 install(TARGETS dolphinpart DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf6/parts)
275 install(FILES dolphinpartactions.desktop DESTINATION "${KDE_INSTALL_DATADIR}/dolphin/")
276
277 ##########################################
278
279 add_library(dolphinstatic STATIC)
280
281 target_sources(dolphinstatic PRIVATE
282 admin/bar.cpp
283 admin/workerintegration.cpp
284 animatedheightwidget.cpp
285 disabledactionnotifier.cpp
286 dolphinbookmarkhandler.cpp
287 dolphindockwidget.cpp
288 dolphinmainwindow.cpp
289 dolphinviewcontainer.cpp
290 dolphincontextmenu.cpp
291 dolphinnavigatorswidgetaction.cpp
292 dolphintabbar.cpp
293 dolphinpackageinstaller.cpp
294 dolphinplacesmodelsingleton.cpp
295 dolphinrecenttabsmenu.cpp
296 dolphintabpage.cpp
297 dolphintabwidget.cpp
298 dolphinurlnavigator.cpp
299 dolphinurlnavigatorscontroller.cpp
300 trash/dolphintrash.cpp
301 filterbar/filterbar.cpp
302 kitemviews/kfileitemlisttostring.cpp
303 panels/places/placespanel.cpp
304 panels/panel.cpp
305 panels/folders/foldersitemlistwidget.cpp
306 panels/folders/treeviewcontextmenu.cpp
307 panels/folders/folderspanel.cpp
308 panels/terminal/terminalpanel.cpp
309 search/bar.cpp
310 search/barsecondrowflowlayout.cpp
311 search/chip.cpp
312 search/dolphinquery.cpp
313 search/popup.cpp
314 search/selectors/dateselector.cpp
315 search/selectors/filetypeselector.cpp
316 search/selectors/minimumratingselector.cpp
317 search/selectors/tagsselector.cpp
318 search/widgetmenu.cpp
319 selectionmode/actiontexthelper.cpp
320 selectionmode/actionwithwidget.cpp
321 selectionmode/backgroundcolorhelper.cpp
322 selectionmode/bottombar.cpp
323 selectionmode/bottombarcontentscontainer.cpp
324 selectionmode/topbar.cpp
325 settings/interface/folderstabssettingspage.cpp
326 settings/interface/statusandlocationbarssettingspage.cpp
327 settings/interface/confirmationssettingspage.cpp
328 settings/interface/interfacesettingspage.cpp
329 settings/interface/previewssettingspage.cpp
330 settings/dolphinsettingsdialog.cpp
331 settings/contextmenu/contextmenusettingspage.cpp
332 settings/settingspagebase.cpp
333 settings/servicemodel.cpp
334 settings/trash/trashsettingspage.cpp
335 settings/viewmodes/dolphinfontrequester.cpp
336 settings/viewmodes/viewsettingspage.cpp
337 settings/viewmodes/viewmodesettings.cpp
338 settings/viewmodes/viewsettingstab.cpp
339 settings/viewmodes/contentdisplaytab.cpp
340 settings/viewmodes/generalviewsettingspage.cpp
341 statusbar/diskspaceusagemenu.cpp
342 statusbar/dolphinstatusbar.cpp
343 statusbar/mountpointobserver.cpp
344 statusbar/mountpointobservercache.cpp
345 statusbar/spaceinfoobserver.cpp
346 statusbar/statusbarspaceinfo.cpp
347 views/zoomlevelinfo.cpp
348 dolphindebug.cpp
349 global.cpp
350 dolphin.qrc
351
352 admin/bar.h
353 admin/workerintegration.h
354 animatedheightwidget.h
355 dolphinbookmarkhandler.h
356 dolphindockwidget.h
357 dolphinmainwindow.h
358 dolphinviewcontainer.h
359 dolphincontextmenu.h
360 dolphinnavigatorswidgetaction.h
361 dolphintabbar.h
362 dolphinpackageinstaller.h
363 dolphinplacesmodelsingleton.h
364 dolphinrecenttabsmenu.h
365 dolphintabpage.h
366 dolphintabwidget.h
367 dolphinurlnavigator.h
368 dolphinurlnavigatorscontroller.h
369 trash/dolphintrash.h
370 filterbar/filterbar.h
371 kitemviews/kfileitemlisttostring.h
372 panels/places/placespanel.h
373 panels/panel.h
374 panels/folders/foldersitemlistwidget.h
375 panels/folders/treeviewcontextmenu.h
376 panels/folders/folderspanel.h
377 panels/terminal/terminalpanel.h
378 search/bar.h
379 search/barsecondrowflowlayout.h
380 search/chip.h
381 search/dolphinquery.h
382 search/popup.h
383 search/selectors/dateselector.h
384 search/selectors/filetypeselector.h
385 search/selectors/minimumratingselector.h
386 search/selectors/tagsselector.h
387 search/widgetmenu.h
388 selectionmode/actiontexthelper.h
389 selectionmode/actionwithwidget.h
390 selectionmode/backgroundcolorhelper.h
391 selectionmode/bottombar.h
392 selectionmode/bottombarcontentscontainer.h
393 selectionmode/topbar.h
394 settings/interface/folderstabssettingspage.h
395 settings/interface/statusandlocationbarssettingspage.h
396 settings/interface/confirmationssettingspage.h
397 settings/interface/interfacesettingspage.h
398 settings/interface/previewssettingspage.h
399 settings/dolphinsettingsdialog.h
400 settings/contextmenu/contextmenusettingspage.h
401 settings/settingspagebase.h
402 settings/servicemodel.h
403 settings/trash/trashsettingspage.h
404 settings/viewmodes/dolphinfontrequester.h
405 settings/viewmodes/viewsettingspage.h
406 settings/viewmodes/viewmodesettings.h
407 settings/viewmodes/viewsettingstab.h
408 settings/viewmodes/contentdisplaytab.h
409 settings/viewmodes/generalviewsettingspage.h
410 statusbar/diskspaceusagemenu.h
411 statusbar/dolphinstatusbar.h
412 statusbar/mountpointobserver.h
413 statusbar/mountpointobservercache.h
414 statusbar/spaceinfoobserver.h
415 statusbar/statusbarspaceinfo.h
416 views/zoomlevelinfo.h
417 dolphindebug.h
418 global.h
419 )
420
421 if(HAVE_BALOO)
422 target_sources(dolphinstatic PRIVATE
423 panels/information/informationpanel.cpp
424 panels/information/informationpanelcontent.cpp
425 panels/information/pixmapviewer.cpp
426 panels/information/phononwidget.cpp
427 settings/interface/panelsettingspage.cpp
428 panels/information/informationpanel.h
429 panels/information/informationpanelcontent.h
430 panels/information/pixmapviewer.h
431 panels/information/phononwidget.h
432 settings/interface/panelsettingspage.h
433 )
434
435 kconfig_add_kcfg_files(dolphinstatic
436 panels/information/dolphin_informationpanelsettings.kcfgc
437 )
438
439 endif()
440
441 if(HAVE_KUSERFEEDBACK)
442 target_sources(dolphinstatic PRIVATE
443 userfeedback/dolphinfeedbackprovider.cpp
444 userfeedback/settingsdatasource.cpp
445 userfeedback/placesdatasource.cpp
446 settings/userfeedback/userfeedbacksettingspage.cpp
447 userfeedback/dolphinfeedbackprovider.h
448 userfeedback/settingsdatasource.h
449 userfeedback/placesdatasource.h
450 settings/userfeedback/userfeedbacksettingspage.h
451 )
452 endif()
453
454 kconfig_add_kcfg_files(dolphinstatic
455 panels/folders/dolphin_folderspanelsettings.kcfgc
456 panels/places/dolphin_placespanelsettings.kcfgc
457 settings/dolphin_compactmodesettings.kcfgc
458 settings/dolphin_detailsmodesettings.kcfgc
459 settings/dolphin_contextmenusettings.kcfgc
460 settings/dolphin_iconsmodesettings.kcfgc
461 settings/dolphin_contentdisplaysettings.kcfgc
462 search/dolphin_searchsettings.kcfgc
463 settings/dolphin_versioncontrolsettings.kcfgc
464 )
465 kconfig_add_kcfg_files(dolphinstatic GENERATE_MOC
466 settings/dolphin_generalsettings.kcfgc
467 )
468
469 qt_generate_dbus_interface(${CMAKE_CURRENT_SOURCE_DIR}/dolphinmainwindow.h org.kde.DolphinMainWindow.xml)
470 qt_add_dbus_adaptor(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindow.h DolphinMainWindow)
471 qt_add_dbus_interface(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindowinterface)
472 qt_add_dbus_interface(dolphin_dbus_SRCS panels/terminal/org.kde.KIOFuse.VFS.xml kiofuse_interface)
473
474 target_sources(dolphinstatic PRIVATE
475 ${dolphin_dbus_SRCS}
476 )
477
478 target_include_directories(dolphinstatic SYSTEM PRIVATE ${PHONON_INCLUDES})
479 target_link_libraries(dolphinstatic
480 dolphinprivate
481 KF6::CoreAddons
482 KF6::GuiAddons
483 KF6::KCMUtils
484 KF6::DBusAddons
485 KF6::Notifications
486 KF6::BookmarksWidgets
487 Phonon::phonon4qt6
488 )
489
490 if(HAVE_PACKAGEKIT)
491 target_link_libraries(
492 dolphinstatic
493 PK::packagekitqt6
494 )
495 endif()
496
497 if (HAVE_KUSERFEEDBACK)
498 target_link_libraries(
499 dolphinstatic
500 KF6::UserFeedbackCore
501 KF6::UserFeedbackWidgets
502 )
503 endif()
504
505 add_executable(dolphin)
506
507 target_sources(dolphin PRIVATE
508 dbusinterface.cpp
509 dbusinterface.h
510 main.cpp
511 )
512
513 if(FLATPAK)
514 target_compile_definitions(dolphin PRIVATE FLATPAK)
515 endif()
516
517 # Install the icons on macOS and Windows
518 ecm_add_app_icon(dolphin
519 ICONS
520 icons/128-apps-org.kde.dolphin.png
521 icons/16-apps-org.kde.dolphin.png
522 icons/22-apps-org.kde.dolphin.png
523 icons/32-apps-org.kde.dolphin.png
524 icons/48-apps-org.kde.dolphin.png
525 icons/64-apps-org.kde.dolphin.png
526 )
527
528 install(FILES icons/org.kde.dolphin.svg DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/scalable/apps)
529
530 target_link_libraries(dolphin
531 PRIVATE
532 dolphinprivate
533 dolphinstatic
534 KF6::Crash
535 )
536
537 if (HAVE_X11)
538 target_link_libraries(dolphin PRIVATE Qt::GuiPrivate)
539 endif()
540
541 include(DbusInterfaceMacros)
542
543 generate_and_install_dbus_interface(
544 dolphin
545 dbusinterface.h
546 org.freedesktop.FileManager1.xml
547 OPTIONS -a
548 )
549
550 install(TARGETS dolphin ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
551
552 ##########################################
553
554 if(NOT WIN32)
555 # The settings are still accessible from the hamburger menu
556 add_library(kcm_dolphinviewmodes MODULE)
557 add_library(kcm_dolphingeneral MODULE)
558 target_compile_definitions(kcm_dolphingeneral PUBLIC IS_KCM)
559
560 target_sources(kcm_dolphinviewmodes PRIVATE
561 settings/kcm/kcmdolphinviewmodes.cpp
562 settings/viewmodes/dolphinfontrequester.cpp
563 settings/viewmodes/viewmodesettings.cpp
564 settings/viewmodes/viewsettingstab.cpp
565 settings/settingspagebase.cpp
566 views/zoomlevelinfo.cpp
567 settings/kcm/kcmdolphinviewmodes.h
568 settings/viewmodes/dolphinfontrequester.h
569 settings/viewmodes/viewmodesettings.h
570 settings/viewmodes/viewsettingstab.h
571 views/zoomlevelinfo.h)
572
573 target_sources(kcm_dolphingeneral PRIVATE
574 settings/kcm/kcmdolphingeneral.cpp
575 settings/interface/folderstabssettingspage.cpp
576 settings/interface/statusandlocationbarssettingspage.cpp
577 settings/interface/previewssettingspage.cpp
578 settings/interface/confirmationssettingspage.cpp
579 settings/settingspagebase.cpp
580 settings/servicemodel.cpp
581 dolphin_generalsettings.cpp
582 dolphindebug.cpp
583 dolphinmainwindowinterface.cpp
584 views/viewproperties.cpp
585 dolphin_directoryviewpropertysettings.cpp
586 global.cpp
587 settings/kcm/kcmdolphingeneral.h
588 settings/interface/folderstabssettingspage.h
589 settings/interface/statusandlocationbarssettingspage.h
590 settings/interface/previewssettingspage.h
591 settings/interface/confirmationssettingspage.h
592 settings/settingspagebase.h
593 settings/servicemodel.h
594 dolphin_generalsettings.h
595 dolphindebug.h
596 dolphinmainwindowinterface.h
597 views/viewproperties.h
598 dolphin_directoryviewpropertysettings.h
599 global.h
600 )
601
602 kconfig_add_kcfg_files(kcm_dolphinviewmodes
603 settings/dolphin_compactmodesettings.kcfgc
604 settings/dolphin_directoryviewpropertysettings.kcfgc
605 settings/dolphin_detailsmodesettings.kcfgc
606 settings/dolphin_iconsmodesettings.kcfgc
607 settings/dolphin_contentdisplaysettings.kcfgc
608 settings/dolphin_generalsettings.kcfgc
609 settings/dolphin_versioncontrolsettings.kcfgc
610 GENERATE_MOC
611 )
612
613 kconfig_add_kcfg_files(kcm_dolphingeneral
614 settings/dolphin_generalsettings.kcfgc
615 GENERATE_MOC
616 )
617
618 target_link_libraries(kcm_dolphinviewmodes dolphinprivate)
619 target_link_libraries(kcm_dolphingeneral dolphinprivate)
620
621 install( FILES org.kde.dolphin.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR} )
622
623 install(TARGETS kcm_dolphinviewmodes DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms )
624 install(TARGETS kcm_dolphingeneral DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms )
625 endif()
626
627 if(NOT WIN32)
628 add_subdirectory(settings/contextmenu/servicemenuinstaller)
629 install( FILES settings/contextmenu/servicemenu.knsrc DESTINATION ${KDE_INSTALL_KNSRCDIR} )
630 endif()
631
632 ########### install files ###############
633
634 install( PROGRAMS org.kde.dolphin.desktop DESTINATION ${KDE_INSTALL_APPDIR} )
635
636 install( DIRECTORY DESTINATION "${KDE_INSTALL_FULL_DATAROOTDIR}/kglobalaccel" )
637
638 install(
639 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\")"
640 )
641
642 install( FILES settings/dolphin_directoryviewpropertysettings.kcfg
643 settings/dolphin_generalsettings.kcfg
644 settings/dolphin_contextmenusettings.kcfg
645 settings/dolphin_compactmodesettings.kcfg
646 settings/dolphin_iconsmodesettings.kcfg
647 settings/dolphin_detailsmodesettings.kcfg
648 settings/dolphin_contentdisplaysettings.kcfg
649 settings/dolphin_versioncontrolsettings.kcfg
650 DESTINATION ${KDE_INSTALL_KCFGDIR} )
651
652 install( FILES settings/dolphin_detailsmodesettings.upd
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 add_subdirectory(itemactions)