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