]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
Details view: Optionally remember user changed column-widths
[dolphin.git] / src / CMakeLists.txt
1 macro_optional_find_package(Nepomuk)
2 macro_log_feature(Nepomuk_FOUND "Nepomuk" "Nepomuk" "http://www.kde.org" FALSE "" "For adding desktop-wide tagging support to dolphin")
3 macro_bool_to_01(Nepomuk_FOUND HAVE_NEPOMUK)
4 configure_file(config-nepomuk.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-nepomuk.h )
5
6 macro_bool_to_01(X11_Xrender_FOUND HAVE_XRENDER)
7 configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h )
8
9 include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
10
11 if (Nepomuk_FOUND)
12 # Yes, Soprano includes is what we need here
13 include_directories( ${SOPRANO_INCLUDE_DIR} ${NEPOMUK_INCLUDE_DIR} )
14 endif (Nepomuk_FOUND)
15
16 add_subdirectory(tests)
17
18 ########### next target ###############
19
20 set(dolphinprivate_LIB_SRCS
21 kitemviews/kfileitemclipboard.cpp
22 kitemviews/kfileitemlistgroupheader.cpp
23 kitemviews/kfileitemlistview.cpp
24 kitemviews/kfileitemlistwidget.cpp
25 kitemviews/kfileitemmodel.cpp
26 kitemviews/kfileitemmodelfilter.cpp
27 kitemviews/kfileitemmodelrolesupdater.cpp
28 kitemviews/kitemlistcontainer.cpp
29 kitemviews/kitemlistcontroller.cpp
30 kitemviews/kitemlistgroupheader.cpp
31 kitemviews/kitemlistheader.cpp
32 kitemviews/kitemlistheaderwidget.cpp
33 kitemviews/kitemlistkeyboardsearchmanager.cpp
34 kitemviews/kitemlistrubberband.cpp
35 kitemviews/kitemlistselectionmanager.cpp
36 kitemviews/kitemlistselectiontoggle.cpp
37 kitemviews/kitemlistsizehintresolver.cpp
38 kitemviews/kitemlistsmoothscroller.cpp
39 kitemviews/kitemliststyleoption.cpp
40 kitemviews/kitemlistview.cpp
41 kitemviews/kitemlistviewanimation.cpp
42 kitemviews/kitemlistviewlayouter.cpp
43 kitemviews/kitemlistwidget.cpp
44 kitemviews/kitemmodelbase.cpp
45 kitemviews/kpixmapmodifier.cpp
46 settings/additionalinfodialog.cpp
47 settings/applyviewpropsjob.cpp
48 settings/viewmodes/viewmodesettings.cpp
49 settings/viewpropertiesdialog.cpp
50 settings/viewpropsprogressinfo.cpp
51 views/dolphindirlister.cpp
52 views/dolphinfileitemlistwidget.cpp
53 views/dolphinitemlistcontainer.cpp
54 views/dolphinnewfilemenuobserver.cpp
55 views/dolphinplacesmodel.cpp
56 views/dolphinremoteencoding.cpp
57 views/dolphinview.cpp
58 views/dolphinviewactionhandler.cpp
59 views/draganddrophelper.cpp
60 views/renamedialog.cpp
61 views/tooltips/filemetadatatooltip.cpp
62 views/tooltips/tooltipmanager.cpp
63 views/versioncontrol/updateitemstatesthread.cpp
64 views/versioncontrol/versioncontrolobserver.cpp
65 views/viewmodecontroller.cpp
66 views/viewproperties.cpp
67 views/zoomlevelinfo.cpp
68 )
69
70 kde4_add_kcfg_files(dolphinprivate_LIB_SRCS
71 settings/dolphin_compactmodesettings.kcfgc
72 settings/dolphin_directoryviewpropertysettings.kcfgc
73 settings/dolphin_detailsmodesettings.kcfgc
74 settings/dolphin_iconsmodesettings.kcfgc
75 settings/dolphin_generalsettings.kcfgc
76 settings/dolphin_versioncontrolsettings.kcfgc
77 )
78
79 kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS})
80
81 target_link_libraries(dolphinprivate ${KDE4_KFILE_LIBS} konq ${KDE4_KNEWSTUFF3_LIBS})
82 if (Nepomuk_FOUND)
83 target_link_libraries(dolphinprivate ${NEPOMUK_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} nepomukutils ${SOPRANO_LIBRARIES})
84 endif (Nepomuk_FOUND)
85 if(X11_Xrender_FOUND)
86 target_link_libraries(dolphinprivate ${X11_Xrender_LIB} )
87 endif(X11_Xrender_FOUND)
88
89
90
91 set_target_properties(dolphinprivate PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} )
92 install(TARGETS dolphinprivate ${INSTALL_TARGETS_DEFAULT_ARGS})
93
94
95 ##########################################
96
97 set(dolphinpart_SRCS
98 dolphinpart.cpp
99 )
100
101 kde4_add_plugin(dolphinpart ${dolphinpart_SRCS})
102
103 target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KFILE_LIBS})
104
105 install(TARGETS dolphinpart DESTINATION ${PLUGIN_INSTALL_DIR})
106
107 install(FILES dolphinpart.rc DESTINATION ${DATA_INSTALL_DIR}/dolphinpart)
108 install(FILES dolphinpart.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
109 install(FILES views/versioncontrol/fileviewversioncontrolplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR})
110
111 ##########################################
112
113 set(dolphin_SRCS
114 dolphinapplication.cpp
115 dolphindockwidget.cpp
116 dolphinmainwindow.cpp
117 dolphinnewfilemenu.cpp
118 dolphinviewcontainer.cpp
119 dolphincontextmenu.cpp
120 filterbar/filterbar.cpp
121 main.cpp
122 panels/information/filemetadataconfigurationdialog.cpp
123 panels/information/informationpanel.cpp
124 panels/information/informationpanelcontent.cpp
125 panels/information/pixmapviewer.cpp
126 panels/information/phononwidget.cpp
127 panels/places/placespanel.cpp
128 panels/panel.cpp
129 panels/folders/treeviewcontextmenu.cpp
130 panels/folders/folderspanel.cpp
131 search/dolphinsearchbox.cpp
132 search/dolphinsearchinformation.cpp
133 settings/general/behaviorsettingspage.cpp
134 settings/general/configurepreviewplugindialog.cpp
135 settings/general/contextmenusettingspage.cpp
136 settings/general/generalsettingspage.cpp
137 settings/general/previewssettingspage.cpp
138 settings/general/statusbarsettingspage.cpp
139 settings/dolphinsettingsdialog.cpp
140 settings/navigation/navigationsettingspage.cpp
141 settings/services/servicessettingspage.cpp
142 settings/settingspagebase.cpp
143 settings/serviceitemdelegate.cpp
144 settings/servicemodel.cpp
145 settings/startup/startupsettingspage.cpp
146 settings/trash/trashsettingspage.cpp
147 settings/viewmodes/dolphinfontrequester.cpp
148 settings/viewmodes/viewsettingspage.cpp
149 settings/viewmodes/viewmodesettings.cpp
150 settings/viewmodes/viewsettingstab.cpp
151 statusbar/dolphinstatusbar.cpp
152 statusbar/statusbarspaceinfo.cpp
153 views/zoomlevelinfo.cpp
154 )
155
156 kde4_add_kcfg_files(dolphin_SRCS
157 panels/folders/dolphin_folderspanelsettings.kcfgc
158 panels/information/dolphin_informationpanelsettings.kcfgc
159 settings/dolphin_compactmodesettings.kcfgc
160 settings/dolphin_detailsmodesettings.kcfgc
161 settings/dolphin_generalsettings.kcfgc
162 settings/dolphin_iconsmodesettings.kcfgc
163 search/dolphin_searchsettings.kcfgc
164 settings/dolphin_versioncontrolsettings.kcfgc
165 )
166
167 if(Nepomuk_FOUND)
168 set(dolphin_SRCS
169 ${dolphin_SRCS}
170 panels/search/searchpanel.cpp
171 )
172 endif(Nepomuk_FOUND)
173
174 if(NOT WIN32)
175 set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp)
176 endif(NOT WIN32)
177
178 kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-file-manager.png")
179
180 kde4_add_kdeinit_executable(dolphin ${dolphin_SRCS})
181
182 target_link_libraries(kdeinit_dolphin
183 ${KDE4_KDEPRINT_LIBS}
184 ${KDE4_KFILE_LIBS}
185 ${KDE4_KPARTS_LIBS}
186 ${KDE4_KCMUTILS_LIBRARY}
187 konq
188 dolphinprivate
189 knewstuff3
190 ${KDE4_PHONON_LIBS}
191 )
192
193 if (Nepomuk_FOUND)
194 target_link_libraries(kdeinit_dolphin
195 ${NEPOMUK_LIBRARIES}
196 ${SOPRANO_LIBRARIES}
197 ${NEPOMUK_QUERY_LIBRARIES}
198 nepomukutils
199 )
200 endif (Nepomuk_FOUND)
201
202 install(TARGETS kdeinit_dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
203 install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
204
205 ##########################################
206
207 set(kcm_dolphinviewmodes_PART_SRCS
208 settings/kcm/kcmdolphinviewmodes.cpp
209 settings/viewmodes/dolphinfontrequester.cpp
210 settings/viewmodes/viewmodesettings.cpp
211 settings/viewmodes/viewsettingstab.cpp
212 views/zoomlevelinfo.cpp)
213
214 set(kcm_dolphinnavigation_PART_SRCS
215 settings/kcm/kcmdolphinnavigation.cpp
216 settings/navigation/navigationsettingspage.cpp
217 settings/settingspagebase.cpp)
218
219 set(kcm_dolphinservices_PART_SRCS
220 settings/kcm/kcmdolphinservices.cpp
221 settings/services/servicessettingspage.cpp
222 settings/settingspagebase.cpp
223 settings/serviceitemdelegate.cpp
224 settings/servicemodel.cpp)
225
226 set(kcm_dolphingeneral_PART_SRCS
227 settings/kcm/kcmdolphingeneral.cpp
228 settings/general/behaviorsettingspage.cpp
229 settings/general/previewssettingspage.cpp
230 settings/general/configurepreviewplugindialog.cpp
231 settings/general/contextmenusettingspage.cpp
232 settings/settingspagebase.cpp
233 settings/serviceitemdelegate.cpp
234 settings/servicemodel.cpp)
235
236 kde4_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS
237 settings/dolphin_compactmodesettings.kcfgc
238 settings/dolphin_directoryviewpropertysettings.kcfgc
239 settings/dolphin_detailsmodesettings.kcfgc
240 settings/dolphin_iconsmodesettings.kcfgc
241 settings/dolphin_generalsettings.kcfgc
242 settings/dolphin_versioncontrolsettings.kcfgc
243 )
244
245 kde4_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS
246 settings/dolphin_generalsettings.kcfgc)
247
248 kde4_add_kcfg_files(kcm_dolphinservices_PART_SRCS
249 settings/dolphin_generalsettings.kcfgc
250 settings/dolphin_versioncontrolsettings.kcfgc)
251
252 kde4_add_kcfg_files(kcm_dolphingeneral_PART_SRCS
253 settings/dolphin_generalsettings.kcfgc)
254
255 kde4_add_plugin(kcm_dolphinviewmodes ${kcm_dolphinviewmodes_PART_SRCS})
256 kde4_add_plugin(kcm_dolphinnavigation ${kcm_dolphinnavigation_PART_SRCS})
257 kde4_add_plugin(kcm_dolphinservices ${kcm_dolphinservices_PART_SRCS})
258 kde4_add_plugin(kcm_dolphingeneral ${kcm_dolphingeneral_PART_SRCS})
259
260 target_link_libraries(kcm_dolphinviewmodes ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
261 target_link_libraries(kcm_dolphinnavigation ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
262 target_link_libraries(kcm_dolphinservices ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KNEWSTUFF3_LIBRARY} dolphinprivate)
263 target_link_libraries(kcm_dolphingeneral ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} dolphinprivate)
264 if (Nepomuk_FOUND)
265 target_link_libraries(kcm_dolphinviewmodes ${NEPOMUK_LIBRARIES})
266 target_link_libraries(kcm_dolphinnavigation ${NEPOMUK_LIBRARIES})
267 target_link_libraries(kcm_dolphinservices ${NEPOMUK_LIBRARIES})
268 target_link_libraries(kcm_dolphingeneral ${NEPOMUK_LIBRARIES})
269 endif (Nepomuk_FOUND)
270
271 install(TARGETS kcm_dolphinviewmodes DESTINATION ${PLUGIN_INSTALL_DIR} )
272 install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} )
273 install(TARGETS kcm_dolphinservices DESTINATION ${PLUGIN_INSTALL_DIR} )
274 install(TARGETS kcm_dolphingeneral DESTINATION ${PLUGIN_INSTALL_DIR} )
275
276 #########################################
277
278 set(kio_search_PART_SRCS
279 search/filenamesearchprotocol.cpp)
280 kde4_add_plugin(kio_filenamesearch ${kio_search_PART_SRCS})
281 target_link_libraries(kio_filenamesearch ${KDE4_KIO_LIBS})
282 install(TARGETS kio_filenamesearch DESTINATION ${PLUGIN_INSTALL_DIR})
283
284 ########### install files ###############
285
286 install( PROGRAMS dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
287 install( FILES settings/dolphin_directoryviewpropertysettings.kcfg
288 settings/dolphin_generalsettings.kcfg
289 settings/dolphin_compactmodesettings.kcfg
290 settings/dolphin_iconsmodesettings.kcfg
291 settings/dolphin_detailsmodesettings.kcfg
292 settings/dolphin_versioncontrolsettings.kcfg
293 DESTINATION ${KCFG_INSTALL_DIR} )
294 install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin )
295 install( FILES search/filenamesearch.protocol DESTINATION ${SERVICES_INSTALL_DIR} )
296 install( FILES settings/kcm/kcmdolphinviewmodes.desktop DESTINATION
297 ${SERVICES_INSTALL_DIR} )
298 install( FILES settings/kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
299 install( FILES settings/kcm/kcmdolphinservices.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
300 install( FILES settings/kcm/kcmdolphingeneral.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
301 install( FILES settings/services/servicemenu.knsrc DESTINATION ${CONFIG_INSTALL_DIR} )
302 install( PROGRAMS settings/services/servicemenuinstallation DESTINATION ${BIN_INSTALL_DIR} )
303 install( PROGRAMS settings/services/servicemenudeinstallation DESTINATION ${BIN_INSTALL_DIR} )
304