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